我的脚本使用几个'for'循环创建一个矩阵和2个向量,作为示例,它们返回如下:
K =
1.0e+006 *
1.2409 0.6250 0.8153 0.1250
0.6250 3.6591 -0.1250 3.5375
0.8153 -0.1250 1.2409 -0.6250
0.1250 3.5375 -0.6250 3.6591
F =
1.0e+006 *
0.1733
1.3533
-0.1066
1.3371
U =
u3
v3
u4
v4
可以看出,'U'向量是一组变量,我需要为'K*U=F'中包含的变量求解'U'。
当我尝试使用linsolve或solve时,我会得到意想不到的结果,并发出一条消息,表明矩阵的逆矩阵接近于奇异。
但是,当我制作另一个脚本并输入相同的矩阵和矢量BY HANDS时,一切正常,我无法弄清楚出了什么问题。
这是否与MATLAB存储由循环函数创建的矩阵的方式有关,我需要在循环之后将矩阵的状态更改为某些内容?
另外,当我手工放置矩阵时,它会显示它而前面没有1.0e+006乘数:
K11 =
1240900 625000 815300 125000
625000 3659100 -125000 3537500
815300 -125000 1240900 -625000
125000 3537500 -625000 3659100
可以相关吗?
提前致谢。