简体   繁体   中英

Solving a non-linear system of three equations (MATLAB)

I am trying to solve the following system of equations:

{a*[1+b*(5+c)]}^(-1/2) = 2388;

{a*[1+b*(5+c)]}^(-1/2) = 2633;

{a*[1+b*(5+c)]}^(-1/2) = 2763;

for which I need to get the values of a, b and c. Can anyone advise on how to proceed? I'm not sure which MATLAB function to use, i tried a normal "solve" as

syms x y z 

eqn1 = (x*(1+y*(5+z)))^(-1/2) == 2388;
eqn2 = (x*(1+y*(5+z)))^(-1/2) == 2633;
eqn3 = (x*(1+y*(5+z)))^(-1/2) == 2763;

solutions = solve([eqn1 eqn2 eqn2],(x,y,z));

but it clearly doesn't work. Any suggestions?

The first issue is what @AnderBiguri already mentioned: The same expression cannot simultaniously have multiple values, so there is no hope of actually finding a solution.

The second part is that your syntax is incorrect: Lists/Arrays must be written with square brackets instead of parenthesis, as the error message that you get by running this is probably gonna tell you. I recommend reading the example from the documentation .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM