Hello everyone,
Recently I've been trying to perform a computation using xAct and a foliation decomposition of the metric and I'm finding that computation time is much much longer than I expected. In particular, I'm doing the following. First, I define the manifold and metric
DefManifold[M,4,{a,b,c,d,e,f,g,h,i,j,k,l,m,o,p,q,r,s,t,u,w,x,y,z}];
DefMetric[-1,gm[-a,-b],CD,PrintAs->"g"];
SetOptions[ContractMetric,AllowUpperDerivatives->True];
And afterwards, the elements necessary for the decomposition
DefTensor[n[a],M];
AutomaticRules[n,MakeRule[{n[a]n[-a],-1}]];
AutomaticRules[n,MakeRule[{gm[-a,-b]n[a]n[b],-1}]];
$ExtrinsicKSign=-1;
$AccelerationSign=-1;
DefMetric[1,hm[-a,-b],sd,{"|","D"},InducedFrom->{gm,n},PrintAs->"h"];
Now, I introduce some simbols for defining differential operators
DefTensor[Deltat[],M,PrintAs->"\[CapitalDelta]t"];
IndexSetDelayed[Deltat[][expr_], LieD[n[a],CD][LieD[n[b],CD][expr]]];
DefTensor[Deltax[],M,PrintAs->\[CapitalDelta]x];
IndexSetDelayed[Deltax[][expr_], hm[r,s]ProjectWith[hm][CD[-r]@(ProjectWith[hm][CD[-s]@expr])]];
DefTensor[Deltax2[],M,PrintAs->\[CapitalDelta]x];
IndexSetDelayed[Deltax2[][expr_], hm[x,y]ProjectWith[hm][CD[-x]@(ProjectWith[hm][CD[-y]@expr])]];
And I'm trying to perform the following computation
Dtf=Deltat[][f[]];
piece11=Deltax[][Dtf];
DtDxDtf=Deltat[][piece11];
one=Deltax2[][DtDxDtf];
I executed it during the night and it took more than 8 hours to give a result, which surprised me since it shouldn't be such a heavy computation. Does anyone know if there is any trick or strategy I can use to reduce computation time???