MS values in levelsplot
Hello,
is there an easy way to assign the MS levels to the energy levels that are plottet in the levelsplot?
Thank you very much
Hello,
is there an easy way to assign the MS levels to the energy levels that are plottet in the levelsplot?
Thank you very much
Not directly, but it is possible to color the levels by their |mS| value, i.e. the magnitude of the expectation value of the spin operator S_zL, where zL is the lab z axis along the magnetic field.
For this, use the option Opt.SlopeColor = true
.
Here is an example:
Code: Select all
clear, clc
Sys.S = 7/2;
Sys.D = 1000;
Opt.SlopeColor = true;
levelsplot(Sys,'xy',[0 300],[],Opt);
That's a really nice addition!
Is there a way to define a custom color palette for the various ms values?
Thanks,
Thanasis
Unfortunately no. The color is hard-wired. You could change it manually after using get(gca,'Children')
, but that's probably quite tedious.
Thanks for this Stefan.
In levelsplot, line 197 I changed:
Code: Select all
colormap(flipud(parula)); --> colormap(flipud(Opt.ColorMap));
and I gave a new option when I invoke the command:
Code: Select all
Opt.ColorMap = jet;
The only workaround I needed when doing this was to copy letter2vec.m
from private to the functions directory (for some reason it needed that particular function and could not find it, even after an easyspin compile
).
The result is as expected for the jet color palette:
Would that be compatible to permanently include in the levelsplot
code?
All the best
This looks like a reasonable addition. Could you please prepare a PR for this on GitHub?
OK, but I am a git novice: if I understand, I either need to be invited as collaborator to your repo, or fork it and work on my fork. If so, which of the two do you suggest?
Fork the repo, make a branch in your fork, and then make a PR from your fork/branch to the main branch of EasySpin.