solving two equations with 4 unknowns

3 views (last 30 days)
Hello all,
Can you please tell me how can I solve 4 equations with 2 unknowns in MATLAB?
  3 Comments
Sean de Wolski
Sean de Wolski on 7 Jul 2011
How is this urgent? Is it going to cure Cancer, end world hunger/tyranny, get us out of work early on this gorgeous Thursday, anything?

Sign in to comment.

Accepted Answer

Sean de Wolski
Sean de Wolski on 7 Jul 2011
Edited: Walk before you run:
syms x y
results = solve('3*x+y=9','x-7*y=-3',x,y)
results.x
results.y
look at
doc solve
to learn more.
  5 Comments
Bahareh
Bahareh on 7 Jul 2011
can you please explain your last sentence more?

Sign in to comment.

More Answers (2)

Walter Roberson
Walter Roberson on 16 Jul 2011
syms T12 T11 T21 T22 R11 R12 R21 R22 H21_1 H21_2 H12_1 H12_2 lambda beta alpha
solve((T21.^2.* H21_1.^2+beta^(-1) ).* R11.^2+(T21.* T2_2.* H21_1.* H21_2 ) .*R11.* R12 - (lambda*alpha).*((R21.^2.* H12_1.^2+lambda).* T11.^2+(R21.* R22 H12_1.* H12_2 ).* T11.* T12 ), lambda)
Notice that the A=B form you had has been replaced by A-B, which solve will interpret as indicating that (A-B)=0 is desired.
In the second line, replace the "lambda" at the end by the name of the variable you want to solve for. As you only have one equation, you can only effectively solve for a single variable.

SooShiant
SooShiant on 20 Feb 2014
Combine 2 equation to gain 1 then use this way:
Here is a simple example which you can change the equation and range and solve yours. The equation is 12x+9y+7z-60=0 where x,y,z are integers varies 0 to 10:
x=[0:1:10];
y=[0:1:10];
z=[0:1:10];
[X,Y,Z]=ndgrid(x,y,z);
F=12.*X+9.*Y+7.*Z-60;
idx=find(F==0);
[X(idx(:)),Y(idx(:)),Z(idx(:))];
Equations of this type are known as Diophantine equations.

Community Treasure Hunt

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

Start Hunting!