广义相对论度规计算专用!
http://pickup.mofile.com/9709689597429336以上是我编的程序函数打包,解压放到matlab目录下就可以。
说明一下每个函数的用途:
Dgqd(a)-------对度规a(当然是矩阵形式给出来的)求导得到的3指标函数
Sdgd(a)-------利用Dgqd所得的三指标重新排列,以便后用。
以上两个函数实际都不怎么会用到,只是为了以下3个函数所编。
Ksf(a)--------------给一个度规a,求出对应的克氏符号
Liman(a)-------求度规a所对应的4指标黎曼张量
Liqi(a)-----------求度规a对应的2指标里奇张量
Rmql(a)---------求度规a所对应的曲率标量
补充:4维以下都适用。请把坐标都换成t,x,y,z形式。算出来,再换回去就可以了.
(一)function a=Dgqd(b)
u=length(b);
v=['t','x','y','z'];
for u1=1:u
for v1=1:u
for w1=1:u
w(u1,v1,w1)=diff(b(u1,v1),v(1,w1),1);
end
end
end
a=simplify(w);
(二)function x1=Sdgd(y1)
a=length(y1);
for b=1:a
for c=1:a
for d=1:a
e(b,c,d)=y1(b,c,d)+y1(d,b,c)-y1(c,d,b);
end
end
end
x1=simplify(e);
(三)function x1=Ksf(y1)
a=length(y1);
b=inv(y1);
c=Dgqd(y1);
d=Sdgd(c);
for m=1:a
for n=1:a
for q=1:a
e=0;
for m1=1:a
e=e+1/2*b(m,m1)*d(m1,n,q);
end
f(m,n,q)=e;
end
end
end
x1=simplify(f);
(四)function x1=Liman(y1)
v=['t','x','y','z'];
a=length(y1);
c=Ksf(y1);
for m1=1:a
for m2=1:a
for m3=1:a
for m4=1:a
d1(m1,m2,m3,m4)=diff(c(m4,m1,m3),v(1,m2),1)-diff(c(m4,m2,m3),v(1,m1),1);
end
end
end
end
for n1=1:a
for n2=1:a
for n3=1:a
for n4=1:a
e=0;
for n5=1:a
e=e+c(n5,n3,n1)*c(n4,n2,n5)-c(n5,n3,n2)*c(n4,n1,n5);
end
d2(n1,n2,n3,n4)=e;
end
end
end
end
x1=simplify(d1+d2);
(五)function x1=Liqi(y1)
a=length(y1);
b=Liman(y1);
for m1=1:a
for m2=1:a
e=0;
for n1=1:a
e=e+b(m1,n1,m2,n1);
end
d(m1,m2)=e;
end
end
x1=simplify(d);
(六)function x1=Rmql(y1)
a=length(y1);
b=inv(y1);
c=Liqi(y1);
for c1=1:a
for d1=1:a
e=0;
for c2=1:a
e=e+b(c1,c2)*c(d1,c2);
end
d(c1,d1)=e;
end
end
f=0;
for e1=1:a
f=f+d(e1,e1) ;
end
x1=simplify(f);
[ 本帖最后由 donkeyxu 于 2007-3-15 18:19 编辑 ]
回复
请将你的资料直接贴出来或者上传,否则有打广告的嫌疑.另:这种资料好象在Mathworks的网页上已经有人贴过.
当然,我本人没有看到你的代码,所以也没有否认的意思.
[ 本帖最后由 xjzuo 于 2007-3-13 15:24 编辑 ] 上传rar 文件,可以?
回复
不是很大的话,可以用附件试试.再不行,麻烦先解压,再分别贴上来.
如果是原创,更好;
不是的话,"资料应助"我们也会鼓励,并加分的. 源代码贴出来了 原帖由 donkeyxu 于 2007-3-15 18:20 发表
源代码贴出来了
最好改进一下,这么多循环看到就害怕了
回复
能否举几个例子怎么用你给出的函数?程序待仔细看看,不过的确循环多了一些.
另: 问个题外话:你本身搞 广义相对论的研究吗?
我以前对这方面也稍微研究过一下,微分几何也专门学过一阵子.
[ 本帖最后由 xjzuo 于 2007-3-15 23:09 编辑 ] 原帖由 eight 于 2007-3-15 20:08 发表
最好改进一下,这么多循环看到就害怕了
梁的微分几何,我也看了。我做的东西和宇宙学有关联。
循环多,是因为求和多啊,所以麻烦,才编出来的用机器算。 原帖由 donkeyxu 于 2007-3-16 18:01 发表
梁的微分几何,我也看了。我做的东西和宇宙学有关联。
循环多,是因为求和多啊,所以麻烦,才编出来的用机器算。
建议举几个例子说明一下几个函数的应用.
如果你研究宇宙学,能否讲讲爱因斯坦场方程的一些数值解法.
我们知道,几种特解已经被人研究过了(解析解).
例如:
1.真空爱因斯坦方程的 史瓦西 球对称解;
2.夫里德曼的非静态宇宙解.
3. 克尔-纽曼解 等等.
其它诸如:
体球的爱因斯坦场方程内部严格解研究,爱因斯坦场方程的严格双孤立波解,...
不知donkeyxu是否研究过,如果是, 我很想交流一下.
我本人一直对这方面有兴趣,也常常会关注一下这方面的研究进展,虽然我本身已经不专门研究这个方向了.
[ 本帖最后由 xjzuo 于 2007-3-16 22:53 编辑 ]
页:
[1]