V1 V2 V3 Vo R1 R2a R2b R3 R2 X VDM VCM: Symbols
V1 V2 V3 Vo R1 R2a R2b R3 R2 X VDM VCM: Symbols
unknown V3,Vo
basic equations
eq1= V1==V3*R2b/(R2b+R1*(1-x))
eq1 =
kcl on "v2"
1
eq2=(V2-Vo)/R2a+(V2-V3)/(R1*x)==0
eq2 =
solve
sol=solve([eq1,eq2],[Vo,V3]);
Vo=sol.Vo
Vo =
A=collect(Vo/(V2-V1),V2)
A =
Aideal=subs(A,R2a,R2); % matching R2
Aideal=subs(Aideal,R2b,R2);
Aideal=collect(Aideal,V2)
Aideal =
simplify(subs(Aideal,x,0.5))
ans =
Adm=subs(A,V1,-Vdm/2);
Adm=subs(Adm,V2,Vdm/2);
Adm=simplify(Adm)
Adm =
2
Acm=subs(Vo/Vcm,V1,Vcm);
Acm=subs(Acm,V2,Vcm);
Acm=simplify(Acm)
Acm =
cmrr=simplify(Adm/Acm)
cmrr =
solve(1/cmrr==0,x)
Warning: Solutions are valid under the following conditions: R1*R2a ~= R1*R2b + R1*(R2a + R2b) + 2*R2b*(R2a
+ R2b) & R2a ~= 0 | R2a + R2b == 0. To include parameters and conditions in the solution, specify the
'ReturnConditions' value as 'true'.
ans =