how to use solve
1 次查看(过去 30 天)
显示 更早的评论
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 个评论
VBBV
2023-4-6
移动:VBBV
2023-4-6
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])
采纳的回答
VBBV
2023-4-6
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
更多回答(1 个)
Chunru
2023-4-6
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 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!