最近在學電動力學,要手算各種向量微分,耗時又易錯。為此,我編寫了matlab符號運算向量微分的函式,用matlab算微分,省了很多精力。這裡分享給大家。
舉例:1、在笛卡爾座標系下求 u(x
,y,z
)=x+
2y+3
zu(x,y,z) =x+2y+3z
u(x,y,
z)=x
+2y+
3z的梯度
輸入:
clc;clear;
syms x y zvd(
1*x+
2*y+
3*z,
[x y z]
,'g'
,'car'
)
輸出:
ans =[1
,2,3
]
2、在球座標系下求 u⃗(
r,θ,
ϕ)=r
2r
^\vec(r,\theta,\phi)=r^2\hat
u(r,θ,
ϕ)=r
2r^ 的散度
輸入:
clc;clear;
syms r the phi
u=[r^2,
0,0]
;% u是向量函式,寫成三個分量的形式。注意這三個分量必須對應於該座標系,不一定是x,y,z分量。
vd(u,
[r,the,phi]
,'d'
,'sph'
)% 即使表示式中沒有出現the和phi,也要補全在vd函式裡。
輸出:
ans =
4*r
(m檔案中有英文說明) Matlab 自定義函式擬合
randomaccess j0237 2 reference basketballpass,bqsqare,blowingbubbles,racehorses,close all clear all rd 1507.09 40.64 755.76 36.89 376.83 33.56 196.96 ...
matlab學習 matlab自定義函式的編寫
判斷乙個數是否為素數 function p myprime a for i 2 a 1if 0 rem a,i p 0 break elseif i a 1 p 1 endend 測試 clc n input 請輸入乙個數 res myprime n if res 1disp 是素數 else di...
Matlab自定義初始化函式
有時候,有些輸出的初始化不能在模型中直接設定,這時候可以通過設定模型引數配置。開啟 configuration parameters code generation custom code 選項卡,在右側的上半部分 insert custom c code in generated 選項卡裡選擇 i...