看板 MATLAB 關於我們 聯絡資訊
http://truth.bahamut.com.tw/s01/201303/f5e24b73446d22a515c98713daf72881.JPG
以上是mathematica的程式碼 網址是巴哈姆特的圖片上傳空間 '西格馬'大家應該看的懂@@(symsum) if大家應該也看的懂 重點是c(i,j,k,l)、ci(n)、sd(k,l)都是函數,英文字姆部分都只是個代號 解釋一下圖片程式在寫啥: k=l時是c(i,j,k,l)*ci(n)*sd(k,l),l>k的時候是c(i,j,k,l)*ci(n)*(sd(k,l)+sd(l,k)),k>l時為0 故最後加起來的解是: c(i,j,1,1)*ci(n)*sd(1,1)+c(i,j,2,2)*ci(n)*sd(2,2)+c(i,j,3,3)*ci(n)*sd(3,3)+c(i,j,1,2)*ci(n)*(sd(1,2)+sd(2,1))+c(i,j,1,3)*ci(n)*(sd(1,3)+sd(3,1))+c(i,j,2,3)*ci(n)*(sd(2,3)+sd(3,2)) 現在困難點是c()、ci()、sd()都是函數,但是又不想定義他是啥麼,想讓他直接以未知函數的形式來表示 就像上面的解那樣顯示 一直想都想不出來怎寫... 求高手救救我這個剛來matlab的新手! 感謝!!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.130.17.1
math99:c(), ci(), sd() 你可以用匿名函數定義 03/14 20:40
math99:eg. sd = @(s,t) 2*s + sin(t) 03/14 20:41
candy88257:但是這樣有2個問題... 03/14 20:50
candy88257:1. 我的c( ) 、ci( ) 、sd( )是個有假設的函數 03/14 20:51
candy88257:也就是IF ??? > ???,值會是多少的那種,但是不想先代 03/14 20:52
candy88257:函數進去看,想先看代號的形式(c()、ci()、sd())來檢查 03/14 20:52
candy88257:算式有沒有正確。 03/14 20:53
candy88257:2. 用匿名函數的話,不就等於代進去了? 這樣沒達到我 03/14 20:54
candy88257:說要以代號來顯示達案這個目的阿@@ 03/14 20:54
candy88257:回到第一個問題,用匿名函數的話,好像沒辦法用IF...? 03/14 20:55
candy88257:還是說...在matlab要用代號來推導理論是非常難的!? 03/14 21:00
math99:是可以辨到 help symfun 但符號計算還是交給 mathematica 03/15 13:01
candy88257:感謝! 這指令好像辦的到! 03/15 14:33