Empty sym: 0-by-1

9 次查看(过去 30 天)
ABHISHEK SARATH
ABHISHEK SARATH 2020-3-18
clear
syms a b c d phi(t) thi(t) beta(t) wo wb wa
assume(d,'real');
thi(t)=wa*t;
beta(t)=wb*t;
phi(t)=wo*t;
eq1=a*cos(thi(t))+b*cos(beta(t))-c*cos(phi(t))==d;%% equating real part
eq2=a*sin(thi(t))+b*sin(beta(t))-c*sin(phi(t))==0;%% equating imaginary part
eq3=diff(eq1,t);
eq4=diff(eq2,t);
solve([eq3,eq4],wo)

回答(1 个)

Walter Roberson
Walter Roberson 2020-3-22
You are asking to solve two simultaneous trig equations for a single variable, and MATLAB is deciding it does not know how to do that.
If you were to solve for wo and wa simulteneously, then MATLAB would not get any further, because MATLAB does not do a good job of finding solutions to complicated trig equations. It, would, however, be possible to find general forms for wo and wa in terms of the roots of sin(t*wb)*b*t*wb - t*b*wb*sin(b*t*wb/c) + Z*a*sin(Z) = 0 solved for Z . For particular values of the parameters, that gets down to solutions of constant + Z*sin(Z) = 0 which has an infinite number of solutions starting at approximately Z = constant . When those are put back into the overall equation, the overall equation oscillates a lot making it tricky to find the first root .
You are unlikely to find a useful symbolic solution.

类别

Help CenterFile Exchange 中查找有关 Symbolic Math Toolbox 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by