Spin Dynamics Forum
SpinDynamica support => Simulations => Topic started by: johannes.mckay on July 02, 2012, 09:28:47 AM

Thanks for any help to this question(s)!
I am having a bit of trouble translating a cartesian interaction matrix into a spherical tensor, I have managed to do this by hand following the guide handed out by Ilya and using the tables of coefficients, but doing it in SpinDynamica leaves me a little bit lost. Are there any functions particularly suited to this operation, I didn't find anything in the usage examples but I might have missed them?
Cheers,
Johannes

I think you could use ExpressOperator[operator,SphericalTensorOperatorBasis[]]. Where operator should be opI["I"].Interaction_matrix.opI["S"] for an interaction matrix between spins I and S.

Hi Jyrki, Having a quick scan of ?SphericalTensorOperatorBasis I think this is the generating function that I am missing. I will give this a go tonight and see how I get on. Thanks for the quick reply.
Cheers,
Johannes

Jyrki's reply does not quite do what you want, I think, since the spherical tensor operators will not be kept separate in the output.
I've attached a notebook which may help. This shows how a general bilinear product of two angular momentum operators may be represented as a vector in the SphericalTensorOperatorBasis, and also how the routine OperatorAmplitude may be used for the individual operators.

Hi Malcolm
Cheers for the notebook, I am just looking at it just now. I will go back and revise and check some things based on this as I think I might have been going down the wrong path with SphericalTensorOperatorBasis in that case.
I will post back with notable successes or failures!
Cheers,
Johannes