matlab的矩阵维数不一致>> t=0:0.01:1;>> [a,b]=dsolve('0.02*Dx=y','Dy*0.5+y*12.5=x','y(0)=0','x(0)=1','t') a = 1/(2*exp((25*t)/2 + (5*41^(1/2)*t)/2)) + exp((5*41^(1/2)*t)/2 - (25*t)/2)/2 - (5*41^(1/2))/(82*exp((25*t)/2 + (5*41^(1/2)*t)/2)) + (5
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/24 07:38:01
matlab的矩阵维数不一致>> t=0:0.01:1;>> [a,b]=dsolve('0.02*Dx=y','Dy*0.5+y*12.5=x','y(0)=0','x(0)=1','t') a = 1/(2*exp((25*t)/2 + (5*41^(1/2)*t)/2)) + exp((5*41^(1/2)*t)/2 - (25*t)/2)/2 - (5*41^(1/2))/(82*exp((25*t)/2 + (5*41^(1/2)*t)/2)) + (5
matlab的矩阵维数不一致
>> t=0:0.01:1;
>> [a,b]=dsolve('0.02*Dx=y','Dy*0.5+y*12.5=x','y(0)=0','x(0)=1','t')
a =
1/(2*exp((25*t)/2 + (5*41^(1/2)*t)/2)) + exp((5*41^(1/2)*t)/2 - (25*t)/2)/2 - (5*41^(1/2))/(82*exp((25*t)/2 + (5*41^(1/2)*t)/2)) + (5*41^(1/2)*exp((5*41^(1/2)*t)/2 - (25*t)/2))/82
b =
(2*41^(1/2)*exp((5*41^(1/2)*t)/2 - (25*t)/2))/205 - (2*41^(1/2))/(205*exp((25*t)/2 + (5*41^(1/2)*t)/2))
>> B=(2*41^(1/2)*exp((5*41^(1/2)*t)/2 - (25*t)/2))/205 - (2*41^(1/2))/(205*exp((25*t)/2 + (5*41^(1/2)*t)/2))
? Error using ==> mldivide
Matrix dimensions must agree.
我只设了一个矩阵,怎么维数前后就不一致了呢
matlab的矩阵维数不一致>> t=0:0.01:1;>> [a,b]=dsolve('0.02*Dx=y','Dy*0.5+y*12.5=x','y(0)=0','x(0)=1','t') a = 1/(2*exp((25*t)/2 + (5*41^(1/2)*t)/2)) + exp((5*41^(1/2)*t)/2 - (25*t)/2)/2 - (5*41^(1/2))/(82*exp((25*t)/2 + (5*41^(1/2)*t)/2)) + (5
(2*41^(1/2)*exp((5*41^(1/2)*t)/2 - (25*t)/2))/205 - (2*41^(1/2)) ./ (205*exp((25*t)/2 + (5*41^(1/2)*t)/2))
|
应该是这个位置要用 “ ./ ”
作为函数形式,所有的*, / , ^都是对单个输入值而言的,就是输入一个值,输出一个值
那么参与运算的所有所有值都是标量,或者理解为1x1的矩阵
这个时候 *,/,^ 和 .*,./,.^是等价的
但是 *,/,^确切来说在matlab里面表示矩阵的乘除,乘方运算
你这里t是一个向量,那么
(205*exp((25*t)/2 + (5*41^(1/2)*t)/2))的结果就是一个长度和t相同的向量
直接用矩阵乘法会报错的