Confusing behavior of spinor

25 views
Skip to first unread message

Pan Kessel

unread,
May 26, 2017, 3:18:47 PM5/26/17
to xAct Tensor Computer Algebra
Hi everyone,

I am a bit confused about the following piece of code:

I first init a manifold, spin structure and a tensor y with one spinorial index:

DefManifold[M4, 4, {a, b, c, d, f, p, q, r, m, l, h, j, n, t, s}]
DefMetric[{1, 3, 0}, g[-a, -b], CD]
DefSpinStructure[g, Spin, {A, B, C, D, F, H, L, P, Q}, ε, σ, CDe, SpinorPrefix -> SP]

DefTensor[y[-A], M4, Dagger -> Complex]



Now if I run


ToCanonical@(y[-A] y[A])


it returns zero as expected. Also if I run


ToCanonical@ContractMetric@VarD[y[C]][(y[-A] y[A])]


0 is returned. However, the following command


ToCanonical@ContractMetric@VarD[y[-C]][(y[-A] y[A])]

returns
  
2*y[C]

Is this a bug?
 

Many thanks,
Pan

Thomas Bäckdahl

unread,
May 31, 2017, 4:52:55 PM5/31/17
to xa...@googlegroups.com
Hi!

I think the VarD code assumes that the metric is symmetric, but I have not checked the code to verify this. This would explain the strange behaviour.

Covariant calculus of variations for is a bit more intricate than one would originally think, but it can be handled with an efficient formalism. I wrote a paper about that:
https://arxiv.org/abs/1505.03770 (DOI:10.1063/1.4939562)

I have implemented some of these operators in xAct, but I have not released any of that code. Please let me know if this is interesting for you.

Regards
Thomas
--
You received this message because you are subscribed to the Google Groups "xAct Tensor Computer Algebra" group.
To unsubscribe from this group and stop receiving emails from it, send an email to xact+uns...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Leo Stein

unread,
May 31, 2017, 5:10:16 PM5/31/17
to Thomas Bäckdahl, xAct Tensor Computer Algebra
I agree, it looks like VarD has a bug. Take a look at the file xTensor.nb, section 13.1. We have the code snippet: 
...
(* Same tensor. Place indices in proper delta positions. QUESTION: could this be problematic for spinors? *)  
varddelta[ind1_?UpIndexQ, ind2_?DownIndexQ] := delta[ind2, ind1];
varddelta[ind1_, ind2_] := delta[ind1, ind2]; 
 ...
The first definition for varddelta looks safe to me. The second one may be unsafe, and it's also inconsistent with the first one (notice that the slots of the indices differ between the two lines).

If that delta ends up with indices in the same position (both up or both down), then it will get converted to the metric on the VBundle that the indices come from, which might be an antisymmetric metric. This is the dangerous case.

Thomas, your code is probably useful for other people!

Best
Leo

To unsubscribe from this group and stop receiving emails from it, send an email to xact+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "xAct Tensor Computer Algebra" group.
To unsubscribe from this group and stop receiving emails from it, send an email to xact+unsubscribe@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages