用matlab解矩阵,怎么定义未知数呢?

问题描述:

用matlab解矩阵,怎么定义未知数呢?
类似于这种的应该怎么定义呢?不是一个数一个数打出来哈!是要找某种规律.TTTTTTTTTT

1个回答 分类:综合 2014-10-02

问题解答:

我来补答
参考下面的代码:
>> n=5;
>> for i=1:n+1, eval(sprintf('syms d%i;d(i)=d%i;',i,i));end
>> diag( -( 1./d(1:n) + 1./d(2:n+1) ) )
 
ans =
 
[ -1/d1-1/d2,          0,          0,          0,          0]
[          0, -1/d2-1/d3,          0,          0,          0]
[          0,          0, -1/d3-1/d4,          0,          0]
[          0,          0,          0, -1/d4-1/d5,          0]
[          0,          0,          0,          0, -1/d5-1/d6]
 
>> diag( 1./d(2:n), 1 )
 
ans =
 
[    0, 1/d2,    0,    0,    0]
[    0,    0, 1/d3,    0,    0]
[    0,    0,    0, 1/d4,    0]
[    0,    0,    0,    0, 1/d5]
[    0,    0,    0,    0,    0]
 
需要注意,MATLAB不支持维数未知的矩阵,所以n必需预先指定.
 
 
展开全文阅读
剩余:2000