作者nago (dirty bit !!)
看板MATLAB
标题[请教] 关於函数
时间Sun Nov 6 11:24:12 2011
大家好...小弟我是个新手...
在写程式时有个问题真的不知该如何解决...>O<
所以写信想请教大家...
以下是我的m-file
function a=fun(m)
a=zeros(m+1);
for i=0:m
for j=0:m
if i > j
a(i+1,j+1) = 3 / (i-0.4*j)^3;
end
if i == j
a(i+1,j+1) = -sum(a(i+1,1:j));
end
end
end
其实我想写出一个函数矩阵,此函数矩阵是由 m+1 跟 x 决定
m+1 是我要设立的方阵大小
x 也就是函数的变数
上面的程式码是我写出计算的系数(以m=4为例)
fun(4)
结果
[ 0 0 0 0 0 ]
[ 3 -3 0 0 0 ]
[0.3750 0.7324 -1.1074 0 0 ]
[0.1111 0.1707 0.2817 -0.5635 0 ]
[0.0469 0.0643 0.0916 0.1367 -0.3394 ]
但我最终是希望写出的结果是这样
[ 0 0 0 0 0 ]
[ 3x^2 -3x^2 0 0 0 ]
[0.3750x^2 0.7324x^2 -1.1074x^2 0 0 ]
[0.1111x^2 0.1707x^2 0.2817x^2 -0.5635x^2 0 ]
[0.0469x^2 0.0643x^2 0.0916x^2 0.1367x^2 -0.3394x^2 ]
等於是个 x的函数矩阵
也就是上面程式码中第6行应该是 a(i+1,j+1) = 3* (x^2) / (i-0.4*j)^3;
但是我改成这样 甚至前面有多 x=sym('x') 或是 syms x
都没有办法计算出来...
因此希望好心的大大能帮忙解答...
真的由衷感谢...^^"
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.168.106.66
※ 编辑: nago 来自: 118.168.106.66 (11/06 11:24)
1F:推 Gwaewluin:你那0矩阵也必须是symbolic才行,不然symbolic放不进去 11/06 11:55
2F:→ Gwaewluin:改成a=sym(zeros(m+1))即可 11/06 11:55
3F:→ nago:OK了!! 由衷感谢大大的帮忙~~~!! ^^" 11/07 04:44