Difference between revisions of "Eigenfields.m"

From Spinach Documentation Wiki
Jump to: navigation, search
m (Normalise preformatted blank lines in function documentation blocks)
m (Rename Arguments section heading to Parameters)
Line 7: Line 7:
 
     tran=eigenfields(spin_system,parameters,Hz,Hc,Hmw)
 
     tran=eigenfields(spin_system,parameters,Hz,Hc,Hmw)
  
−
==Arguments==
+
==Parameters==
  
  

Revision as of 18:48, 5 June 2026

Computes resonance fields. For a Hamiltonian Hc+b*Hz, returns all magnetic fields b for which the difference between two eigenvalues of Hc+b*Hz is equal to the frequency provided, and the transition moment across the specified operator Hmw is significant.

Syntax

    tran=eigenfields(spin_system,parameters,Hz,Hc,Hmw)

Parameters

Hz  - field-dependent part of the laboratory-frame Hamiltonian operator
     in Hilbert space, or commutation superoperator in Liouville space,
     normalised to 1 Tesla

Hc  - field-independent part of the laboratory-frame Hamiltonian operator
     in Hilbert space, or commutation superoperator in Liouville space,
     containing couplings and offsets

Hmw - observable operator in Hilbert space, or observable vector in
     Liouville space, without the amplitude prefactor

parameters.window      - magnetic-field window, Tesla

parameters.mw_freq     - microwave frequency, Hz

parameters.orientation - three Euler angles in radians specifying the
                        system orientation

parameters.tm_tol      - relative transition moment tolerance

parameters.pp_tol      - peak position tolerance in Tesla; this should
                        be much smaller than the typical line width

parameters.fwhm        - transition full width at half maximum, Tesla

Outputs

tran.tf - vector of transition fields in Tesla

tran.tm - vector of transition moments

tran.tw - vector of transition FWHMs in Tesla

tran.pd - vector of energy level population differences

tran.ti - transition identity array, one row per transition

tran.tj - vector of scaled field-sweep Jacobians

Notes

In Hilbert space, the very efficient Schweiger-Stoll method is used. In Liouville space, the very general but rather slow generalised eigensolver supplied with Matlab is used.

See also

fieldsweep.m

Version 2.6, authors: Ilya Kuprov