how to use solve
2 views (last 30 days)
Show older comments
hi ; i need help
I have this equation with 2 parametres a and b
syms b x a
solve ((2*cos(x) - b*(sin(x) + sin(a*x))) == 0) %chooses 'x' as the unknown and returns
I use solve but it return
Warning: Cannot find explicit solution.
1 Comment
VBBV
on 6 Apr 2023
Moved: VBBV
on 6 Apr 2023
Consider these input values for a and b, for which solve function cant handle the solution. In such cases, use vpasolve to solve equation numerically as recommended by Matlab
syms x real
a = 4; % assume some value
b = 1.5; % assume value
sol=solve ((2*cos(x) - b*(sin(x) + sin(a*x))) == 0,[x]) %
sol = vpasolve((2*cos(x) - b*(sin(x) + sin(a*x))) == 0,[x])
Accepted Answer
VBBV
on 6 Apr 2023
syms b x a
sol=solve ((2*cos(x) - b*(sin(x) + sin(a*x))) == 0,[x a b])
%chooses 'x' as the unknown and returns
sol.x
sol.a
sol.b
5 Comments
More Answers (1)
Chunru
on 6 Apr 2023
There is no close form solution when a and b are arbitrary constant for the equation.
If you want to find the numerical solution of the equation with specified a and b, you can use vpasolve:
syms b x a
solve ((2*cos(x) - b*(sin(x) + sin(a*x))) == 0)
a = 2; b=0.1;
vpasolve ((2*cos(x) - b*(sin(x) + sin(a*x))) == 0) %chooses 'x' as the unknown and returns
3 Comments
See Also
Categories
Find more on Calculus in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!