MATLAB:为什么求解返回一个空的sym对象?

MATLAB:为什么求解返回一个空的sym对象?

问题描述:

我试图在MATLAB中求解这组方程,但得到一个空的sym对象:

I´m trying to solve this set of equations in MATLAB and I get an empty sym object:

equations = {'I2B+I2EQAB=I22B+I2EQBC',...
             'I2A=I2EQAB+I2EQAC+I22A',...
             'I2C+I2EQBC+I2EQAC=I22C',...
             'I22B=IZB+IC1B',...
             'IZB=IC2B+IZBB',...
             'I22C=-I2C*Z2C*YC/2+IZC',...
             'IZC=IC2C+IZCC',...
             'I22A=IC1A+IZA1',...
             'IC4A+IZA2=IZBB+IZCC',...
             'IZB*Z2LB+IC2B*2/YB=IC1B*2/YB',...
             'I2C*Z2C=-IC2C*2/YC+IZC*Z2LC',...
             'IZA1*m*Z2LA+IC2A*2/(m*YA)=IC1A*2/(m*YA)',...
             'IC4A*2/((1-m)*YA)=IC2A*2/(m*YA)+IZA2*(1-m)*Z2LA',...
             'I2EQBC*Z2EQBC+IZC*Z2LC=IZB*Z2LB',...
             'I2B*Z2B+IC1B*2/YB',...
             'I2C*Z2C+IC1C*2/YC',...
             'I2A*Z2A+IC1A*2/(m*YA)',...
             'IZB*Z2LB+(1-m)*Z2LA*IZA2=IZA1*m*ZL2A-I2EQAB*Z2EQAB',...
             'IZA1*m*Z2LA=IZA2*(1-m)*Z2LA+IZC*Z2LC+I2EQAC*Z2EQAC',...
             'IC4A/((1-m)*YA)=IC2C/YC'};
variables = {'m','I2A','I2B','I2C','I2EQAB','I2EQAC','I2EQBC',...
             'IZA1','IC1A','IC2A','IZA2','IC4A','IC1B','IZB',...
             'IC2B','IZBB','IZC','IC2C','IZCC'};
LL = solve(equations{:},variables{:})

您能帮我找出问题所在吗?

Can you help me figure out what's going wrong?

Warning: 20 equations in 19 variables. 
> In solve at 139
Warning: Explicit solution could not be found. 
> In solve at 170

LL =

[ empty sym ]

我认为这是自我解释,如果不查看与

I think that's self explanatory, if not check out the documentation related to DSOLVE where:

诊断如果dsolve找不到 一个方程的解析解 打印警告:警告:明确 找不到解决方案.和 返回一个空的sym对象.

Diagnostics If dsolve cannot find an analytic solution for an equation, it prints the warning: Warning: Explicit solution could not be found. and returns an empty sym object.