MATLAB Answers

system equation solve error

1 view (last 30 days)
Stella Banou
Stella Banou on 17 Oct 2019
Commented: KALYAN ACHARJYA on 17 Oct 2019
Hello,
I am trying to solve this simple system:
freq = 100000;
epsilon = 1119.2;
sigma = 0.00045128;
syms x y
eq1=x-1i*y==1119.2;
eq2=(2*pi*freq*y+sigma)/(2*pi*freq*x)==0.07248;
eqns=[eq1 eq2];
S=solve(eqns, [x,y]);
I keep getting the error:
One or more output arguments not assigned during call to "varargout".
I have ran out of options on trouble shooting this. It is a system of two equations and two unknowns written exactly like the example for the solve function. Any ideas?

  2 Comments

Walter Roberson
Walter Roberson on 17 Oct 2019
You should be using vpasolve() not solve()
KALYAN ACHARJYA
KALYAN ACHARJYA on 17 Oct 2019
No coding error in any case

Sign in to comment.

Answers (1)

Sulaymon Eshkabilov
Sulaymon Eshkabilov on 17 Oct 2019
Hi,
Your code's problem is that you are using this code inside your function file. Here is the corrected code:
function Solution = MY_fun101
freq = 100000;
epsilon = 1119.2;
sigma = 0.00045128;
syms x y
eq1=x-1i*y==1119.2;
eq2=(2*pi*freq*y+sigma)/(2*pi*freq*x)==0.07248;
eqns=[eq1 eq2];
S=solve(eqns, [x,y]);
Solution = double([S.x, S.y]);
end
Note that the output variable Solution is defined inside the code that was the error in your code.
Good luck.

  1 Comment

KALYAN ACHARJYA
KALYAN ACHARJYA on 17 Oct 2019
freq = 100000;
epsilon = 1119.2;
sigma = 0.00045128;
syms x y
eq1=x-1i*y==1119.2;
eq2=(2*pi*freq*y+sigma)/(2*pi*freq*x)==0.07248;
eqns=[eq1 eq2];
S=solve(eqns, [x,y]);

Sign in to comment.

Products


Release

R2019a

Community Treasure Hunt

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

Start Hunting!