![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/979880/image.png)
How can I calculate the value in an equation?
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
gamma=1.4
V_M_2 = 20;
V_M_2 = sqrt((gamma+1)/(gamma-1)) * atan(sqrt((gamma-1)/(gamma+1)*(M_2^2-1)))-atan(sqrt(M_2^2-1))
How can I find the M_2 from this equation? Thank you.
0 commentaires
Réponse acceptée
Sam Chak
le 26 Avr 2022
Please verify if the nonlinear equation is correct.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/979880/image.png)
Looks like there are no real solutions for this one.
4 commentaires
Sam Chak
le 27 Avr 2022
Modifié(e) : Sam Chak
le 27 Avr 2022
@Ali Deniz, Thanks for the correction.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/980245/image.png)
By the way, the nonlinear function
has a limit,
.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/980255/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/980260/image.png)
So, if
, then it has roots. Please check again.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/980265/image.png)
gamma = 1.4;
V_M_2 = 2.0;
% function to be solved
f = @(x) sqrt((gamma + 1)/(gamma - 1))*atan(sqrt((gamma - 1)/(gamma + 1)*(x^2 - 1))) - atan(sqrt(x^2 - 1)) - V_M_2;
% initial guess
x0 = 20;
% root-finding solver
xsol = fzero(f, x0)
xsol =
17.9584
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/980250/image.png)
Plus de réponses (1)
Torsten
le 26 Avr 2022
I don't see a root:
gamma=1.4
V_M_2 = 20;
fun = @(M_2)V_M_2 - (sqrt((gamma+1)/(gamma-1)) * atan(sqrt((gamma-1)/(gamma+1)*(M_2-1)))-atan(sqrt(M_2-1)));
M_2 = -20:0.1:200;
plot(M_2,fun(M_2))
0 commentaires
Voir également
Catégories
En savoir plus sur Aerodynamics 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!