# Using GRTensorM 1.2 in Mathematica 8.0

I am copying a post from 2009 that didn't get any reply on the Wolfram page, as I am experiencing a similar problem to this at the moment:

I was wondering if anyone here knows of a way to force 8.0 to behave like 3.x in the way it works with iterb in Table and Do. I'm currently trying to run grtensorm (grtensorii for Mathematica) from http://grtensor.phy.queensu.ca/software.html and am getting iterb errors left and right. A relatively benign example is loading a metric but the problems multiply as you try and do even moderately complicated calculations and the whole package rapidly becomes quite unusable. It seems to me that rewriting a 7.0 compliant version of this package would involve a fair amount of work so I'd prefer to find some way to set some sort of "regression" option. This is sort of a package specific problem but it would be nice if there was a global type solution.

Examples:

qload[kerr]
Default metric = kerr
For the kerr metric.

Coordinates
Do::iterb: Iterator {grtGa1,2,grtGNdim[metricName]} does not have
appropriate bounds. >>
xSuperscript[1] = grtGxup[metricName,1]


For the kerr metric.

Line element

ds Superscript[2] = ds[metricName]


instead of what the intro.nb file claims I should get:

qload[kerr]
Default metric = kerr
For the kerr metric.

Coordinates
x\[Null]^1 = r,  x\[Null]^2 = th,  x\[Null]^3 = ph,  x\[Null]^4 = t
For the kerr metric.


Line element

ds \[Null]^2 = dth^2 (r^2+a^2 Cos[th]^2)+(dr^2 (r^2+a^2 Cos[th]^2))/
(a^2-2 m r+r^2)+dt^2 (-1+(2 m r)/(r^2+a^2 Cos[th]^2))-(4 a dph dt m r
Sin[th]^2)/(r^2+a^2 Cos[th]^2)+dph^2 Sin[th]^2 (a^2+r^2+(2 a^2 m r Sin
[th]^2)/(r^2+a^2 Cos[th]^2))


grcalc[R[dn,dn]]


For the kerr metric.

Table::iterb: Iterator {i$2045,grtGNdim[metricName]} does not have appropriate bounds. >> Table::iterb: Iterator {i$2045,grtGNdim[metricName]} does not have
appropriate bounds. >>
Do::iterb: Iterator {grtGa1,grtGNdim[metricName]} does not have
appropriate bounds. >>
Calculated g[up,up]( 0. sec.)
Do::iterb: Iterator {grtGa1,grtGNdim[metricName]} does not have
appropriate bounds. >>
Calculated g[dn,dn,pdn]( 0. sec.)
Do::iterb: Iterator {grtGa1,grtGNdim[metricName]} does not have
appropriate bounds. >>
General::stop: Further output of Do::iterb will be suppressed during
this calculation. >>
Calculated Chr[dn,dn,dn]( 0. sec.)
Calculated Chr[dn,dn,up]( 0. sec.)
Calculated R[dn,dn]( 0. sec.)
CPU Time = 0. sec.

-
There is a new package updated named Atlas 2, which could be a great favor. – Jinstrong May 10 '13 at 11:54

grtGNdim[metricName]

and it seems as if that does not evaluate. Is kerr a supported metric name? You could look at the NDim funciton and see if you can spot a problem. Maybe ??grt`Ndim gives a clue. Perhaps you know the dimension and can set it outside the package.