首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么MATLAB对同一个线性系统返回不同的结果?

为什么MATLAB对同一个线性系统返回不同的结果?
EN

Stack Overflow用户
提问于 2017-01-27 19:00:21
回答 1查看 63关注 0票数 0

我有这个4x4系统

其中变量为EorEotEo2rEo2t (即Eodn1n2n3g2g3已知E 112复杂E 213编号)。

我感兴趣的不是变量本身,而是其他值:

代码语言:javascript
运行
复制
p_tot = Eor/Eo;
t_tot = Eot/Eo;
p_1 = Eo2r/Eo;
t_1 = Eo2t/Eo;

我试着用MATLAB来解决这个问题,因为用手做会很繁琐。

这些常量的值如下:

代码语言:javascript
运行
复制
e0 = 8.854187817*10^(-12);
u0 = 4*pi*10^(-7);
n0 = sqrt(u0/e0);

f = 10^9;
w = 2*pi*f;
d = 0.3;
tg_p = 0.23;

g2 = w*sqrt(u0*e0*9)*sqrt(1-i*tg_p);
g3 = w*sqrt(u0*e0);

n1 = n0;
n2 = w*u0/g2;
n3 = n0;
Eo = 1;

当我用这个脚本求解线性系统时

代码语言:javascript
运行
复制
syms Eor Eo2t Eo2r Eot

eq1 = Eo+Eor == Eo2t + Eo2r;
eq2 = Eo-Eor == (n1/n2)*(Eo2t-Eo2r);
eq3 = Eo2t*exp(-i*g2*d)+Eo2r*exp(i*g2*d) == Eot*exp(-i*g3*d);
eq4 = Eo2t*exp(-i*g2*d)-Eo2r*exp(i*g2*d) == (n2/n3)*Eot*exp(-i*g3*d);

[SEor, SEo2t, SEo2r, SEot] = solve([eq1,eq2,eq3,eq4] , [Eor, Eo2t, Eo2r, Eot]);
S = [SEor; SEo2t; SEo2r; SEot];

p_tot = double(SEor/Eo)
t_1 = double(SEo2t/Eo)
p_1 = double(SEo2r/Eo)
t_tot = double(SEot/Eo)

如果将系统解为Ax=b,然后执行MATLAB操作A\b,我得到的结果与我得到的结果完全不同。

代码语言:javascript
运行
复制
A = [1  -1  -1  0;
     1  n1/n2 -n1/n2 0;
     0 exp(-j*g2*d) exp(j*g2*d) -exp(-j*g3*d);
     0 exp(-j*g2*d) -exp(j*g2*d) -exp(-j*g3*d)*(n3/n2)];

b = [-1;1;0;0];

S = A\b;

p_tot = S(1)/Eo
t_1 = S(2)/Eo
p_1 = S(3)/Eo
t_tot = S(4)/Eo

所以问题是,对于同一个问题,我使用两种不同的方法(应该是等价的)得到两个不同的结果。

我得到的结果是:

使用Ax =b方法的

代码语言:javascript
运行
复制
p_tot =

  -0.5109 + 0.0436i


t_1 =

   0.4924 + 0.0427i


p_1 =

  -0.0032 + 0.0009i


t_tot =
   0.0284 + 0.0011i

直接求解系统

代码语言:javascript
运行
复制
p_tot =

  -0.5011 + 0.0406i


t_1 =

   0.4956 + 0.0415i


p_1 =

   0.0033 - 0.0009i


t_tot =

   0.0866 - 0.0066i

我做错了什么,哪一个是真正的解决方案?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-27 19:52:38

问题是,在您的A矩阵中,第4行、第4列中的值并不反映您在问题中提出的方程组。

而不是(n3/n2),它应该是(n2/n3)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41901184

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档