How to use the solve function?!!

3 vues (au cours des 30 derniers jours)
Alex Mannings
Alex Mannings le 19 Nov 2013
Commenté : Alex Mannings le 19 Nov 2013
Hi Everyone, this is my second question since the first one i stated it with a mistake.
I am trying to solve this equation for Mx :
nux= ((gam+1)/(gam-1))^(1/2) * atan(((gam-1)/(gam+1))*(Mx^2-1))^(1/2)-atan(Mx^2-1)^(1/2);
The values of nux and gam are given.
I tried solve this equation using the solve function (according to http://www.mathworks.com/help/symbolic/solve.html this link) but it didn't work, this is how i wrote it:
Mx=solve(nux-((gam+1)/(gam-1))^(1/2) * atan(((gam-1)/(gam+1))*(Mx^2-1))^(1/2)-atan(Mx^2-1)^(1/2)==0, Mx, 'Real');
The error that i kept getting was:
"Cannot find an exact (case-sensitive) match for 'Mx'
The closest match is: mx in C:\Program Files\MATLAB\R2012a\toolbox\robust\rctobsolete\mutools\commands\mx.m"
Please help me fix this problem, because i need the solution for that equation asap.
Thank you.

Réponses (1)

Walter Roberson
Walter Roberson le 19 Nov 2013
syms Mx
output_MX = solve(nux-((gam+1)./(gam-1)).^(1/2) * atan(((gam-1)./(gam+1)).*(Mx.^2-1)).^(1/2)-atan(Mx.^2-1).^(1/2)==0, Mx, 'Real');
  1 commentaire
Alex Mannings
Alex Mannings le 19 Nov 2013
Thank you Walter, your change did get the code to move little bit but i got this error now:
Error using solve>processOnOff (line 294)
'Real' requires a value.
Error in solve>getEqns (line 257) [k, options] = processOnOff(k, options, v, vc, nargin, varargin);
Error in solve (line 150)
[eqns,vars,options] = getEqns(varargin{:});
Error in DDcode (line 36)
output_MX = solve(nux-((gam+1)./(gam-1)).^(1/2) * atan(((gam-1)./(gam+1)).*(Mx.^2-1)).^(1/2)-atan(Mx.^2-1).^(1/2)==0, Mx, 'Real');

Connectez-vous pour commenter.

Catégories

En savoir plus sur Symbolic Math Toolbox dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by