Getting the error: Solution does not exist because the system is inconsistent.

10 views (last 30 days)
Hello, I am trying to do nodal anlysis of a power amplifier circuit but somehow I get an error. My code goes as follows:
syms Vplus Vmin Vi Vo V1;
syms w;
Vi=18;
R1= 220000;
C1= (810^-6);
R2=1000;
R3=20000;
C2=(20010^-12);
R4=1000;
C3=(27010^-6);
R5=24000;
eqns = [Vi(1/R1 + 1iwC1) - V1(1iwC1)==0,
V1(1iwC1 + (1/R2) + (1/R3)) - Vi(1iwC1)- Vplus(1/R3)==0,
Vplus(1/R3 + 1iwC2 + 1/(10^12)) - V1(1/R3) - Vmin(1/(10^12)) ==0,
Vmin(1/(10^12) + ((1iwC3)/(R41iwC3+1)) + 1/R5) - Vplus(1/(10^12)) - Vo(1/R5)==0,
Vo( 1/R5 + 1/125) - Vmin(1/R5) - (10^6)Vi(1/125)==0];
[A,b] = equationsToMatrix(eqns,[V1, Vplus, Vmin, Vo]);
vars = symvar(eqns);
X = linsolve(A,b);
Vo = X(4);
T = (Vo/Vi);
f = logspace(1,1000000);
T = subs(T, w, 2pi*f);
H = abs(T);
The error log says:
>> PowerAmplifierMatLab
Warning: Solution does not exist because the system is inconsistent.
In symengine
In sym/privBinaryOp (line 1034)
In sym/linsolve (line 63)
In PowerAmplifierMatLab (line 19)
I don't know what I am doing wrong and why the system is inconsistent. Can anyone help me? Thanks in advance.

Answers (1)

Walter Roberson
Walter Roberson on 11 Jan 2021
MATLAB has absolutely no implied multiplication. () always means one of the following:
  1. grouping for precedence
  2. indexing an array
  3. parameters for a function call
A(B) never indicates A multiplied by B.

Products

Community Treasure Hunt

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

Start Hunting!