作者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