Issue - Running SeparateMetric using a frozen metric, gives a different result than using the active (first) metric

85 views
Skip to first unread message

BillN

unread,
Feb 18, 2018, 10:03:06 AM2/18/18
to xAct Tensor Computer Algebra
Hi,

I set up an "active" (first) metric g and a "frozen" (second) metric a on the tangent space of a single manifold.  Then formed the raised covariant derivative AD[c][v[b]] of a vector, which is the lowered compatible covariant derivative of the frozen metric a, then raised by the active metric g.  Then applied SeparateMetric[g] to this, as well as SeparateMetric[a], and got two different results that don't agree with each other.  A notebook giving a side-by-side comparison of the results is attached.

I'm an xAct newby, but I thought that the results should be equal in this case (they may initially look different, but would be found to be equal when manipulated in a side-by-side comparison).  Am I misinterpreting this?

If they should be equal, perhaps just like ContractMetric only working for the active metric, should SeparateMetric have the same limitation to avoid this problem?

Regards,
Bill
SeparateMetric test case.nb

Jose

unread,
Feb 21, 2018, 10:06:40 AM2/21/18
to xAct Tensor Computer Algebra
Hi,

The actions of contracting and separating a metric cannot be performed with frozen metrics. Only the first metric of each vbundle can be contracted and separated. The fact that both ContractMetric and SeparateMetric allow you to specify a metric is required for those cases in which we have several vbundles and hence potentially several first metrics.

I see that ContractMetric throws a message if you try to use a frozen metric, but SeparateMetric silently performs the (incorrect) action of separating a frozen metric (try for example SeparateMetric[a][v[-b]] in your case). I don't remember right now a strong reason to allow this (and I think I'll forbid it), but in any case you should never force contraction or separation of frozen metrics. That goes against the convention in xTensor: indices of a vbundle are raised and lowered with the first metric of that vbundle.

Cheers,
Jose.

BillN

unread,
Feb 21, 2018, 2:54:14 PM2/21/18
to xAct Tensor Computer Algebra
Thanks Jose,

I thought what you said here was the case, so I simply now avoid applying SeparateMetric except for the first metric of a vbundle.

Regards,
Bill
Reply all
Reply to author
Forward
0 new messages