Numerical solution for trascendental equations
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Giacomo Db
le 13 Fév 2022
Commenté : Giacomo Db
le 14 Fév 2022
i would like to solve the following trascendental eqn using the following code:
syms omega
syms a
omega = sqrt(a^(2) - 1) - a*exp(-(2*pi - asin(1/a))/(omega));
z=solve(omega)
Eventually i would like to plot (omega,a)
but i get the Warning: The solutions are parametrized by the symbols:
k = Z_ minus {(log((a^2 - 1)^(1/2)/a)*I)/(2*PI)}
do you have any suggestion to solve this type of eqns?
2 commentaires
Paul
le 13 Fév 2022
Running the code here exactly as it was presented yields a different result.
syms omega
syms a
omega = sqrt(a^(2) - 1) - a*exp(-(2*pi - asin(1/a))/(omega));
z = solve(omega)
As best I can tell, what this code is really doing is
clear omega
syms omega
eq1 = sqrt(a^(2) - 1) - a*exp(-(2*pi - asin(1/a))/(omega));
z = solve(eq1,omega) % solve the equation eq1 == 0
subs(eq1,omega,z)
Are you sure about this line:
omega = sqrt(a^(2) - 1) - a*exp(-(2*pi - asin(1/a))/(omega));
Just asking because it looks peculilar to have omega on the LHS and the RHS of an assignment.
Réponse acceptée
Walter Roberson
le 13 Fév 2022
If your values are confined to real then as far as I can see at this time of night, substitute 0 for k in the answer you get.
MATLAB computes a general solution. However because asin is periodic, a periodic solution has to be given. That leads to the general solution having a term of + 2*pi*1i*k, with integer k, except that there are particular a values that the term is not valid for.
Notice that the term is complex valued when k is not 0. So the immediate instinct would be to say "Oh, k has to be zero then, to avoid the complex values."
But... the expression involved itself has complex terms, and also involves log of a value that could be negative, which would generate a complex value. So hypothetically there might be a range of integer k values and a values such that there are an even number of 1i, leading to a real-valued result.
My analysis suggests that there are no real solutions at all for k ~= 0, and that for k=0 there are solutions only for a>1. But it might be worth rechecking non-zero k, as my late-night analysis for that case might not have been thorough enough.
Plus de réponses (0)
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!