\(\renewcommand\AA{\unicode{x212B}}\)
CrystalFieldEnergies v1¶
Summary¶
Calculates crystal field energies and wave functions for rare earth ions given the field parameters.
Properties¶
Name |
Direction |
Type |
Default |
Description |
---|---|---|---|---|
Nre |
Input |
number |
1 |
A rare earth ion. Possible values are: 1=Ce 2=Pr 3=Nd 4=Pm 5=Sm 6=Eu 7=Gd 8=Tb 9=Dy 10=Ho 11=Er 12=Tm 13=Yb, or negative values for arbitrary J with J=-nre/2 up to nre=-99 (J=99/2) |
BmolX |
Input |
number |
0 |
The x-component of the molecular field. |
BmolY |
Input |
number |
0 |
The y-component of the molecular field. |
BmolZ |
Input |
number |
0 |
The z-component of the molecular field. |
BextX |
Input |
number |
0 |
The x-component of the external field. |
BextY |
Input |
number |
0 |
The y-component of the external field. |
BextZ |
Input |
number |
0 |
The z-component of the external field. |
B20 |
Input |
number |
0 |
Real part of the B20 field parameter. |
B21 |
Input |
number |
0 |
Real part of the B21 field parameter. |
B22 |
Input |
number |
0 |
Real part of the B22 field parameter. |
B40 |
Input |
number |
0 |
Real part of the B40 field parameter. |
B41 |
Input |
number |
0 |
Real part of the B41 field parameter. |
B42 |
Input |
number |
0 |
Real part of the B42 field parameter. |
B43 |
Input |
number |
0 |
Real part of the B43 field parameter. |
B44 |
Input |
number |
0 |
Real part of the B44 field parameter. |
B60 |
Input |
number |
0 |
Real part of the B60 field parameter. |
B61 |
Input |
number |
0 |
Real part of the B61 field parameter. |
B62 |
Input |
number |
0 |
Real part of the B62 field parameter. |
B63 |
Input |
number |
0 |
Real part of the B63 field parameter. |
B64 |
Input |
number |
0 |
Real part of the B64 field parameter. |
B65 |
Input |
number |
0 |
Real part of the B65 field parameter. |
B66 |
Input |
number |
0 |
Real part of the B66 field parameter. |
IB20 |
Input |
number |
0 |
Imaginary part of the B20 field parameter. |
IB21 |
Input |
number |
0 |
Imaginary part of the B21 field parameter. |
IB22 |
Input |
number |
0 |
Imaginary part of the B22 field parameter. |
IB40 |
Input |
number |
0 |
Imaginary part of the B40 field parameter. |
IB41 |
Input |
number |
0 |
Imaginary part of the B41 field parameter. |
IB42 |
Input |
number |
0 |
Imaginary part of the B42 field parameter. |
IB43 |
Input |
number |
0 |
Imaginary part of the B43 field parameter. |
IB44 |
Input |
number |
0 |
Imaginary part of the B44 field parameter. |
IB60 |
Input |
number |
0 |
Imaginary part of the B60 field parameter. |
IB61 |
Input |
number |
0 |
Imaginary part of the B61 field parameter. |
IB62 |
Input |
number |
0 |
Imaginary part of the B62 field parameter. |
IB63 |
Input |
number |
0 |
Imaginary part of the B63 field parameter. |
IB64 |
Input |
number |
0 |
Imaginary part of the B64 field parameter. |
IB65 |
Input |
number |
0 |
Imaginary part of the B65 field parameter. |
IB66 |
Input |
number |
0 |
Imaginary part of the B66 field parameter. |
Energies |
Output |
dbl list |
The energies starting at 0 in ascending order. |
|
Eigenvectors |
Output |
dbl list |
The eigenvectors. |
|
Hamiltonian |
Output |
dbl list |
The Hamiltonian. |
Description¶
This algorithm is not for general use. Its purpose is to expose to python the crystal field calculations implemented in C++. The algorithm calculates the crystal field energies and wave functions. The example shows how it can be used from python:
from CrystalField.energies import energies
# The first parameter is a code for the rare earth ion
# The rest of the parameters define the crystal field
en, wf, ham = energies(1, B20=0.37737, B22=3.9770, B40=-0.031787, B42=-0.11611, B44=-0.12544)
# a list of crystal field energies
print('energies:\n{}'.format(en[2:]))
# a complex-valued matrix with wave functions
print('wave functions:\n{}'.format(wf))
# a complex-valued matrix with the Hamiltonian
print('Hamiltonian:\n{}'.format(ham))
energies:
[ 29.32611185 29.32611185 44.3412485 44.3412485 ]
wave functions:
[[ ... ... ...
... ... ...]
[ ... ... ...
... ... ...]
[ ... ... ...
... ... ...]
[ ... ... ...
... ... ...]
[ ... ... ...
... ... ...]
[ ... ... ...
... ... ...]]
Hamiltonian:
[[ 1.86648000+0.j 0.00000000+0.j 9.27182972+0.j 0.00000000+0.j
-3.36590841+0.j 0.00000000+0.j]
[ 0.00000000+0.j 4.96692000+0.j 0.00000000+0.j 19.33604706+0.j
0.00000000+0.j -3.36590841+0.j]
[ 9.27182972+0.j 0.00000000+0.j -6.83340000+0.j 0.00000000+0.j
19.33604706+0.j 0.00000000+0.j]
[ 0.00000000+0.j 19.33604706+0.j 0.00000000+0.j -6.83340000+0.j
0.00000000+0.j 9.27182972+0.j]
[ -3.36590841+0.j 0.00000000+0.j 19.33604706+0.j 0.00000000+0.j
4.96692000+0.j 0.00000000+0.j]
[ 0.00000000+0.j -3.36590841+0.j 0.00000000+0.j 9.27182972+0.j
0.00000000+0.j 1.86648000+0.j]]
Please note that this area is under active development and any name can be changed in the future.
Categories: AlgorithmIndex | Inelastic
Source¶
C++ header: CrystalFieldEnergies.h
C++ source: CrystalFieldEnergies.cpp