使用diff命令
符號運算
diff函式用以演算一函式的微分項,相關的函式語法有下列4個:
diff(f) 傳回f對預設獨立變數的一次微分值
diff(f,"t") 傳回f對獨立變數t的一次微分值
diff(f,n) 傳回f對預設獨立變數的n次微分值
diff(f,"t",n) 傳回f對獨立變數t的n次微分值
也即matlab求導命令diff呼叫格式:
diff(函式) , 求的一階導數;
diff(函式, n) , 求的n階導數(n是具體整數);
diff(函式,變數名), 求對的偏導數;
diff(函式, 變數名,n) ,求對的n階偏導數;
數值微分函式也是用diff,因此這個函式是靠輸入的引數決定是以數值或是符號微分,如果引數為向量則執行數值微分,如果引數為符號表示式則執行符號微分。 如果輸入一個長度為n的一維向量,則該函式將會返回長度為n-1的向量,向量的值是原向量相鄰元素的差,於是可以計算一階導數的有限差分近似。
先定義下列三個方程式,接著再演算其微分項:
>>S1 = "6*x^3-4*x^2+b*x-5";
>>S2 = "sin(a)";
>>S3 = "(1 - t^3)/(1 + t^4)";
>>diff(S1)
ans=18*x^2-8*x+b
>>diff(S1,2)
ans= 36*x-8
>>diff(S1,"b")
ans= x
>>diff(S2)
ans= cos(a)
>>diff(S3)
ans=-3*t^2/(1+t^4)-4*(1-t^3)/(1+t^4)^2*t^3
>>simplify(diff(S3))
ans= t^2*(-3+t^4-4*t)/(1+t^4)^2
使用diff命令
符號運算
diff函式用以演算一函式的微分項,相關的函式語法有下列4個:
diff(f) 傳回f對預設獨立變數的一次微分值
diff(f,"t") 傳回f對獨立變數t的一次微分值
diff(f,n) 傳回f對預設獨立變數的n次微分值
diff(f,"t",n) 傳回f對獨立變數t的n次微分值
也即matlab求導命令diff呼叫格式:
diff(函式) , 求的一階導數;
diff(函式, n) , 求的n階導數(n是具體整數);
diff(函式,變數名), 求對的偏導數;
diff(函式, 變數名,n) ,求對的n階偏導數;
數值微分函式也是用diff,因此這個函式是靠輸入的引數決定是以數值或是符號微分,如果引數為向量則執行數值微分,如果引數為符號表示式則執行符號微分。 如果輸入一個長度為n的一維向量,則該函式將會返回長度為n-1的向量,向量的值是原向量相鄰元素的差,於是可以計算一階導數的有限差分近似。
先定義下列三個方程式,接著再演算其微分項:
>>S1 = "6*x^3-4*x^2+b*x-5";
>>S2 = "sin(a)";
>>S3 = "(1 - t^3)/(1 + t^4)";
>>diff(S1)
ans=18*x^2-8*x+b
>>diff(S1,2)
ans= 36*x-8
>>diff(S1,"b")
ans= x
>>diff(S2)
ans= cos(a)
>>diff(S3)
ans=-3*t^2/(1+t^4)-4*(1-t^3)/(1+t^4)^2*t^3
>>simplify(diff(S3))
ans= t^2*(-3+t^4-4*t)/(1+t^4)^2