Message Boards Message Boards

[Solved] Trying to solve polynomial system

Posted 3 days ago

Hello, I am new to wolfram and the wolfram language. I am trying to solve a system of polynomial equations describing a very simple electrical circuit and I do not understand why this is not working. Solve is giving me no solutions. I am sure I must be missing something basic...
Feedback is welcome,
thanks!

POSTED BY: Ali Hammoud
3 Replies
Posted 3 days ago

Thanks for the reply. This makes sense and it solved my issue.

POSTED BY: Ali Hammoud

You cannot solve a system of equation with respect to just one variable:

Solve[{x + y == 1, y - 1 == 2}, x]

because you cannot make the two equations true by just replacing the value of x. In your case you must give the full list of unknowns, or else let the system figure out what the unknowns are:

Solve[eqns]
POSTED BY: Gianluca Gorni

You must add a list of variables in Solve[] function, something like this:

eq1 = (IDSAT - ((1/2*mun0*Coxn*W/L)*((VGS - Vth)^2)*(1 + 
         lambdan*VDS)) == 0);
eq2 = (IRSS - (VX/RSS) == 0);
eq3 = (IRD - (VDD/RD) + (VOUT/RD) == 0);
eq4 = (VGS - VG + VX == 0);
eq5 = (VDS - VOUT + VX == 0);
eq6 = (VG - VIN == 0);
eq7 = (IDSAT - IRD == 0);
eq8 = (IRD - IRSS == 0);

eqns = {eq1, eq2, eq3, eq4, eq5, eq6, eq7, eq8};
Solve[eqns, {VOUT, IRD, IRSS, VX, VGS, VDS, VG, IDSAT}]

or:

eq1 = (ID == ((0.5mun0CoxnW/L)((VGS - Vth)^2)(1 + lambdanVOUT))); eq2 = (IRD == ID); eq3 = (IRD == (VDD - VOUT)/RD);

eqnsp2 = {eq1, eq2, eq3}; Solve[eqnsp2, {VOUT, IRD, ID}]

Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard

Group Abstract Group Abstract