
How can I calculate the value in an equation?
    7 views (last 30 days)
  
       Show older comments
    
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 Comments
Accepted Answer
  Sam Chak
      
      
 on 26 Apr 2022
        Please verify if the nonlinear equation is correct.

Looks like there are no real solutions for this one.
4 Comments
  Sam Chak
      
      
 on 27 Apr 2022
				
      Edited: Sam Chak
      
      
 on 27 Apr 2022
  
			@Ali Deniz, Thanks for the correction.
By the way, the nonlinear function 
 has a limit, 
.
.So, if 
, then it has roots. Please check again.
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

More Answers (1)
  Torsten
      
      
 on 26 Apr 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 Comments
See Also
Categories
				Find more on Acoustics, Noise and Vibration 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!