矩张量计算 matlab,用来计算广义相对论常用张量计算的Matlab程序
該樓層疑似違規(guī)已被系統(tǒng)折疊?隱藏此樓查看此樓
有了這個(gè),算一些常用張量就可以方便很多了。
這里給出的程序中的默認(rèn)情況是計(jì)算帶點(diǎn)球?qū)ΨQ靜態(tài)解的,可以直接給出二階協(xié)變度規(guī)(就是常用的那個(gè)度規(guī)的倒數(shù)),Christoff聯(lián)絡(luò)、Ricci張量與Ricci標(biāo)量。
別的形式的度規(guī)嘛,改改函數(shù)就好了。
syms?M;
syms?u;
syms?sita;
syms?t;
syms?phi;
syms?Gamma;
syms?Ricci;
syms?R;
syms?Q;
r=u;
delta(1,1)=1;
delta(2,2)=1;
delta(3,3)=1;
delta(4,4)=1;
v(1)=t;
v(2)=u;
v(3)=sita;
v(4)=phi;
g(1,1)=simplify(-(1-2*M/r+Q/r/r));
g(2,2)=simplify(1/(1-2*M/r+Q/r/r)*diff(r,u)^2);
g(3,3)=simplify(r^2);
g(4,4)=simplify(r^2*cos(sita)^2);
gb=delta/g
for?i=1:4
for?j=1:4
for?k=1:4
tmp=0;
for?l=1:4
tmp=tmp+gb(k,l)/2*(diff(g(l,i),v(j))+diff(g(l,j),v(i))-diff(g(i,j),v(l)));
end
Gamma(i,j,k)=simplify(tmp);
end
end
end
Gamma
for?i=1:4
for?j=1:4
tmp=0;
for?k=1:4
tp=0;
for?l=1:4
tp=tp+Gamma(i,j,l)*Gamma(l,k,k)-Gamma(i,k,l)*Gamma(j,l,k);
end
tmp=tmp+diff(Gamma(i,j,k),v(k))-diff(Gamma(i,k,k),v(j))+tp;
end
Ricci(i,j)=simplify(tmp);
end
end
Ricci
R=0;
for?i=1:4
for?j=1:4
R=R+Ricci(i,j)*gb(i,j);
end
end
R=simplify(R)
總結(jié)
以上是生活随笔為你收集整理的矩张量计算 matlab,用来计算广义相对论常用张量计算的Matlab程序的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 通过配置ant提高EJB开发效率
- 下一篇: 结构张量 matlab 图像,图像处理中