solving an equation not by sym
Ältere Kommentare anzeigen
Hello
My equation is developed in a step-by-step manner as follows with some assumptions. x is the unknown in here. This is just a simplified form of my equation.
E(1,1)=0
E(2,1)=(2/x)+(4*E(1,1))
E(3,1)=(2/x)+(4*E(2,1))
.....
E(n+1,1)=(2/x)+(4*E(n,1))
I set E(n+1,1) equal to zero and find the x via sym. However, it takes a long time via sym. Is there any alternative solution?
Antworten (4)
Walter Roberson
am 28 Okt. 2022
0 Stimmen
https://www.mathworks.com/help/symbolic/compute-z-transforms-and-inverse-z-transforms.html
You appear to have a recurrence relationship. Those are potentially solvable with ztrans.
John D'Errico
am 28 Okt. 2022
Bearbeitet: John D'Errico
am 28 Okt. 2022
0 Stimmen
You have this basic first order linear recurrence relation:
E(n+1,x) = 2/x + 4*E(n,x)
Where E(1,x) = 0 is a given, but also for some chosen value of N, you will then also want E(N,x) = 0.
Of course, the recurrence relation as shown has a trivial solution. 2/x is a effectively a constant with respect to n. Can we solve this problem using z-transforms? That seems the simplest way. The general solution would be to solve for E(n,x), by taking the z-transform of your recurrence, solving using the inverse z-transform, then set the nth term to zero, and solve for x.
2 Kommentare
Walter Roberson
am 28 Okt. 2022
This particular case can be resolved without ztrans by constructing a numerator (to be divided by x) in base 4. The sequence goes 0, 2, 22, 222, 2222 and so on. At the end, the base 4 numerator divided by x, has to equal 0 because the E(n+1,1) is said to be 0. The only solutions are x being ±infinity
John D'Errico
am 28 Okt. 2022
Bearbeitet: John D'Errico
am 28 Okt. 2022
And why I did not actually write out a solution to this specific problem, because it was clearly not the problem of interest. I'm not even positive the question is about a simple linear one term recurrence. But a z-transform is probably the solution method to use, as we both suggrested.
Linear system of equations in E(1,1),...,E(n+1) and 2/x.
Setup for n = 4 (solution variables are E(1,1),E(2,1),E(3,1), E(4,1), E(5,1) and 2/x in this order):
A = [1 0 0 0 0 0;-4 1 0 0 0 -1;0 -4 1 0 0 -1; 0 0 -4 1 0 -1; 0 0 0 -4 1 -1; 0 0 0 0 1 0];
b = [0 0 0 0 0 0].';
rank(A)
sol = A\b
x = 2/sol(6)
Pooneh Shah Malekpoor
am 28 Okt. 2022
Bearbeitet: Pooneh Shah Malekpoor
am 28 Okt. 2022
9 Kommentare
Pooneh Shah Malekpoor
am 28 Okt. 2022
Bearbeitet: Pooneh Shah Malekpoor
am 28 Okt. 2022
Pooneh Shah Malekpoor
am 28 Okt. 2022
Bearbeitet: Pooneh Shah Malekpoor
am 28 Okt. 2022
Pooneh Shah Malekpoor
am 28 Okt. 2022
x1 = 4;
sol1 = fzero(@fun,x1)
fun(sol1)
x2 = -2;
sol2 = fzero(@fun,x2)
fun(sol2)
x = -10:0.01:10;
plot(x,fun(x),x1,sol1,'o',x2,sol2,'o')
%E(1) = 0;
%E(2) = 4*E(1) + 2/x;
%E(3) = 4*E(2) + 3/x;
%E(4) = 4*E(3) - 5*x + 2;
%E(5) = 4*E(4) + sin(x)
%E(5) = 0;
function res = fun(x)
res = 0;
res = 4*res + 2./x;
res = 4*res + 3./x;
res = 4*res - 5*x + 2;
res = 4*res + sin(x);
end
Pooneh Shah Malekpoor
am 31 Okt. 2022
Torsten
am 31 Okt. 2022
Given x, the function "fun" calculates the resulting value for E(5).
"fzero" tries to adjust x so that E(5) becomes 0.
Kategorien
Mehr zu Symbolic Math Toolbox finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
