\(\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