조회 수: 2(최근 30일)

Hey guys,

I am fairly new to matlab and I am currently using it to process some data. I have some power and thrust coefficient values (20 Cp and 20 Ct values). I have to use them in order to solve a set of four equations (See attachment Equations_1 and Equations_2).

Cp, Ct and beta are known values. From these 4 equations I need to extract values for and and plug them into the next set of equations (see attachment Equations_3) in order to get new values for Cp, Ct and lamda.

I forgot to mention that lamda values are also known.

My main issue is how to solve the first set of 4 equations.

Can someone help?

Thanks in advance,

Stef

David Goodmanson
31 Jul 2020

편집: David Goodmanson
31 Jul 2020

Hi Stefanos,

As has already been mentioned, the 4th equation is just the definition of V0' and is independent of the first three equaitions. The same is true for the last three equations, so it's all down to the first three equations. Three of the variables appear as u2/u1, uT/u1 and V0//u1, so they are all scaled by u1. Letting u2 stand for u2/u1 and so forth (or just pretending that u1 = 1) we have

uT = (-1 + sqrt(1 + beta*(u2^2-1)))./(beta*(u2-1));

V0 = u2 - beta*uT.*(u2-1);

V0 = sqrt((u2.^2-1)/cT)

so despite apprearances it's really three equations, three unknowns. Leaving the rhs of the third eqn as is, and doing some substitution on the lhs results in

u2 + 1 - sqrt(1 + beta*(u2^2-1)) = sqrt((u2.^2-1)/cT)

and this can be solved with fzero. Here I just took a guess at some values.

beta = .1;

cT = .7;

f1 = @(x) ( x + 1 - sqrt(1+beta*(x.^2-1)));

f2 = @(x) sqrt((x.^2-1)/cT);

f12 = @(x) f1(x) - f2(x);

u2 = fzero(@(x) f12(x),[1 100])

% back substitute

uT = (-1 + sqrt(1 + beta*(u2^2-1)))./(beta*(u2-1));

V0 = u2 - beta*uT.*(u2-1);

V0 - sqrt((u2root.^2-1)/cT) % consistency check, should be small

% plot for visual purposes

u2vec = 1:0.001:5;

plot(u2vec,f1(u2vec),u2vec,f2(u2vec))

Here u2 really means u2/u1 etc. Fortunately the last four equations (with eqn 4 in the form V0'/V0 = (...) ) are all in terms of ratios, so the particular value of u1 cancels out and is not needed. The procedure can be enclosed by a for loop for different values of cT.

Opportunities for recent engineering grads.

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

Start Hunting!
## 댓글 수: 2

## 이 댓글에 대한 바로 가기 링크

https://kr.mathworks.com/matlabcentral/answers/572794-how-can-i-solve-this-set-of-complex-equations#comment_955177

⋮## 이 댓글에 대한 바로 가기 링크

https://kr.mathworks.com/matlabcentral/answers/572794-how-can-i-solve-this-set-of-complex-equations#comment_955177

## 이 댓글에 대한 바로 가기 링크

https://kr.mathworks.com/matlabcentral/answers/572794-how-can-i-solve-this-set-of-complex-equations#comment_955267

⋮## 이 댓글에 대한 바로 가기 링크

https://kr.mathworks.com/matlabcentral/answers/572794-how-can-i-solve-this-set-of-complex-equations#comment_955267

댓글을 달려면 로그인하십시오.