Hi,
I am trying to write a code to find the intersection of the two curve:
A = @(m) -2.*(1/1.895.*((1+(1.4-1).*m.^2/2).^(1.4/(1.4-1)))-1)./(1.4.*m.^2);B = @(m) (0.38./sqrt(1-m.^2));m_lower = 0;m_upper = 1;m_mid = (m_lower+m_upper)/2;{while abs(A(m_mid))-(B(m_mid))) > 0 if (A(m_mid))<(B(m_mid)) m_lower = m_mid else m_upper = m_mid end m_mid = (m_lower+m_upper)/2end
However, when I tried to plot the curves, (i.e. fplot(A,[0 1]);) it gives me an incorrect curve. but when I tried to solve individually A(1) etc. etc., it produce the correct answer. Similarly when I tried to loop the equation in the while loop, it just goes to infinity because it using the wrong curve.
Many thanks in advance!
Best Answer