MATLAB矩阵求逆(矩阵元素是复数)很奇怪,MATLAB矩阵求逆我会计算,且计算纯实数或者纯虚数是结果正确,为什么当矩阵元素是复数的时候怎么计算结果都不正确呢?完成下列计算:clcYnn=[ 4.8770
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/28 08:10:52
![MATLAB矩阵求逆(矩阵元素是复数)很奇怪,MATLAB矩阵求逆我会计算,且计算纯实数或者纯虚数是结果正确,为什么当矩阵元素是复数的时候怎么计算结果都不正确呢?完成下列计算:clcYnn=[ 4.8770](/uploads/image/z/3687920-8-0.jpg?t=MATLAB%E7%9F%A9%E9%98%B5%E6%B1%82%E9%80%86%EF%BC%88%E7%9F%A9%E9%98%B5%E5%85%83%E7%B4%A0%E6%98%AF%E5%A4%8D%E6%95%B0%EF%BC%89%E5%BE%88%E5%A5%87%E6%80%AA%2CMATLAB%E7%9F%A9%E9%98%B5%E6%B1%82%E9%80%86%E6%88%91%E4%BC%9A%E8%AE%A1%E7%AE%97%2C%E4%B8%94%E8%AE%A1%E7%AE%97%E7%BA%AF%E5%AE%9E%E6%95%B0%E6%88%96%E8%80%85%E7%BA%AF%E8%99%9A%E6%95%B0%E6%98%AF%E7%BB%93%E6%9E%9C%E6%AD%A3%E7%A1%AE%2C%E4%B8%BA%E4%BB%80%E4%B9%88%E5%BD%93%E7%9F%A9%E9%98%B5%E5%85%83%E7%B4%A0%E6%98%AF%E5%A4%8D%E6%95%B0%E7%9A%84%E6%97%B6%E5%80%99%E6%80%8E%E4%B9%88%E8%AE%A1%E7%AE%97%E7%BB%93%E6%9E%9C%E9%83%BD%E4%B8%8D%E6%AD%A3%E7%A1%AE%E5%91%A2%3F%E5%AE%8C%E6%88%90%E4%B8%8B%E5%88%97%E8%AE%A1%E7%AE%97%EF%BC%9AclcYnn%3D%5B++++4.8770)
MATLAB矩阵求逆(矩阵元素是复数)很奇怪,MATLAB矩阵求逆我会计算,且计算纯实数或者纯虚数是结果正确,为什么当矩阵元素是复数的时候怎么计算结果都不正确呢?完成下列计算:clcYnn=[ 4.8770
MATLAB矩阵求逆(矩阵元素是复数)
很奇怪,MATLAB矩阵求逆我会计算,且计算纯实数或者纯虚数是结果正确,为什么当矩阵元素是复数的时候怎么计算结果都不正确呢?
完成下列计算:
clc
Ynn=[
4.87704-10.04076i -0.62402+3.90015i -0.75471+2.64150i 0 0
-0.62402+3.90015i 3.17530-67.84152i -0.82987-3.11203i 0+63.49206i 0
-0.75471+2.64150i -0.82987+3.11203i 5.02929-36.94818i 0 0+31.74663i
0 0+63.49206i 0 0-88.88889i 0
0 0 0+31.74603i 0 0-58.33333i
]
Ynf=[
0+2i 0 0
0 0 0
0 0 0
0 0+22.22222i 0
0 0 0+25i
]
Yfn=[
0+2i 0 0 0 0
0 0 0 0-22.22222i 0
0 0 0 0 0+25i
]
Yff=[
0-2i 0 0
0 0-22.22222i 0
0 0 0-25i
]
F=Yff-Yfn*inv(Ynn)*Ynf
MATLAB矩阵求逆(矩阵元素是复数)很奇怪,MATLAB矩阵求逆我会计算,且计算纯实数或者纯虚数是结果正确,为什么当矩阵元素是复数的时候怎么计算结果都不正确呢?完成下列计算:clcYnn=[ 4.8770
你可以把矩阵和代码贴出来.
如果你能确保程序没写错,那么你的矩阵很有可能是非常病态的.
当然还有可能是matlab的bug.一般来讲matlab本身是不会有问题的,不过我听说有一个版本的matlab(好像是2009b)解方程组的时候有bug.
看起来是没什么毛病,矩阵也是良态的.
F =
0.1790 - 1.6485i 0.2474 + 0.5375i 0.0906 + 0.2807i
-0.1856 - 0.4421i -1.6807 -39.2235i 0.8009 + 0.8343i
0.1803 + 0.3884i 0.4263 + 2.0594i 2.2267 - 5.3067i
然后呢?哪里有问题?
另外,F=Yff-Yfn*inv(Ynn)*Ynf 写成 F=Yff-Yfn*(Ynn\Ynf) 比较好,如果求逆是中间过程尽量避免inv.