矩张量计算 matlab,用来计算广义相对论常用张量计算的Matlab程序

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

有了这个,算一些常用张量就可以方便很多了。

这里给出的程序中的默认情况是计算带点球对称静态解的,可以直接给出二阶协变度规(就是常用的那个度规的倒数),Christoff联络、Ricci张量与Ricci标量。

别的形式的度规嘛,改改函数就好了。

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)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值