Numerical solution for trascendental equations

1 view (last 30 days)
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 Comments
Paul
Paul on 13 Feb 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)
z = 
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
z = 
subs(eq1,omega,z)
ans = 
0
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.

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 13 Feb 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.
  1 Comment
Giacomo Db
Giacomo Db on 14 Feb 2022
thank you so much for the help.
in the end i solved numerically using vpasolve

Sign in to comment.

More Answers (0)

Products


Release

R2015b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!