Page 1 of 1

minor issue using Sys.eeD

Posted: Thu Jun 01, 2017 1:18 am
by Lorenzo74
Dear all,
I just realized that pepper is issuing an error message whenever the dipolar component of the interaction matrix, given as Sys.eeD, is not axial. The error however refers to non-zero trace, which is not the case (see below).
%%%%%

V_MA119t11.eeD=[-3.1e-3 1.6e-3 1.5e-3]*29979

Error using pepper
Sys.eeD contains dipolar tensors with non-zero trace. Use Sys.J for this
%%%%


One can easily circumvent this by providing the full matrix via Sys.ee, of course.

Regards,
LS

Re: minor issue using Sys.eeD

Posted: Thu Jun 01, 2017 12:55 pm
by Stefan Stoll
This is be design. Sys.J (isotropic exchange), Sys.eeD (symmetric) and Sys.dvec (antisymmetric) are intended to be used together, so Sys.eeD should be traceless.

If you want to specify the principal values of the full coupling tensor (isotropic + symmetric), you can use Sys.ee. See here.

Re: minor issue using Sys.eeD

Posted: Mon Jun 05, 2017 2:57 am
by Lorenzo74
Dear Stefan,
thanks. My point was however a different one: in the example I included Sys.eeD is indeed traceless (-3.1 1.6 1.5), but this produces an error message anyhow. It looks like Sys.eeD has to be in the form [1 1 -2]*const or any permutation of it, i.e. axially symmetric, for the error message not to be issued. Of course, this is not a major problem, since one can always resort to Sys.ee and the full coupling tensor.

Re: minor issue using Sys.eeD

Posted: Mon Jun 05, 2017 9:52 am
by Stefan Stoll
I cannot reproduce this problem. This minimal example works fine on my machine:

Code: Select all

clear

Sys.S = [1/2 1/2];
Sys.g = [2 2.03];
Sys.eeD = [-30 10 20];

Exp.mwFreq = 9.5;

pepper(Sys,Exp);
It could be an issue of numerical noise, in which case Sys.eeD = Sys.eeD - mean(Sys.eeD) can help.

Re: minor issue using Sys.eeD

Posted: Mon Jun 05, 2017 10:00 pm
by Stefan Stoll
This should be fixed now in version 5.1.11.