# Assume.m

Sets case-specific assumptions for various simulation contexts. This function determines the behaviour of the Hamiltonian generation function and should be called before the Hamiltonian is requested. Syntax:

spin_system=assume(spin_system,assumptions,retention)

The following assumption sets are supported:

assumption set | description |
---|---|

'nmr' | Rotating frame approximation for electrons; rotating frame approximation for nuclei; secular terms for electron Zeeman interactions; secular terms for nuclear Zeeman interactions; secular terms for giant spin model interactions; secular coupling terms for spins belonging to the same species; weak coupling terms for spins belonging to different species; secular coupling terms for quadratic and higher order couplings |

'esr', 'deer' | Rotating frame approximation for electrons; laboratory frame simulation for nuclei; secular terms for electron Zeeman interactions; all terms for nuclear Zeeman interactions; secular terms for inter-electron couplings; secular terms for electron zero-field splittings; secular terms for giant spin model interactions; secular and pseudosecular terms for hyperfine couplings; all terms for inter-nuclear couplings; all terms for nuclear quadrupolar couplings. |

'labframe' | Laboratory frame simulation for electrons, laboratory frame simulation for nuclei; all terms for electron Zeeman interactions; all terms for nuclear Zeeman interactions; all terms for giant spin model interactions; all terms for all couplings. |

'qnmr' | A special assumption set for quadrupolar spectroscopy in which the quadrupolar nuclei are kept in the laboratory frame: rotating frame approximation for S=1/2 nuclei; laboratory frame simulation for S>1/2 nuclei; electrons disallowed by the approximation; secular Zeeman terms for S=1/2 nuclei; all Zeeman terms for S>1/2 nuclei; secular terms for couplings between S=1/2 nuclei; weak and pseudosecular terms for couplings between S=1/2 and S>1/2 nuclei; all terms for couplings between S>1/2 nuclei; all terms for nuclear quadrupolar couplings. |

'deer-zz' | A special assumption set for DEER simulations with flip-flop terms switched off in the inter-electron coupling Hamiltionian: rotating frame approximation for electrons; laboratory frame simulation for nuclei; secular terms for electron Zeeman interactions; all terms for nuclear Zeeman interactions; weak terms for inter-electron couplings; secular terms for electron zero-field splittings; secular terms for giant spin model interactions; weak and pseudosecular terms for hyperfine couplings; all terms for inter-nuclear couplings; all terms for nuclear quadrupolar couplings. |

If the retention argument is aupplied, the following Hamiltonian term retention settings are supported:

retention | description |
---|---|

'zeeman' | all spin-spin couplings are ignored |

'couplings' | all Zeeman interactions are ignored |

Some pulse sequences (notably those dealing with DNP) set their own assumptions internally before calling the Hamiltonian generation function. To that end, assume.m function also contains more specialized assumption sets – see the function code for further information.

When calling kernel contexts assumptions should be passed as the last argument, for example:

fid=liquid(spin_system,@pulse_acquire,parameters,'nmr');

User-specified assumptions are ignored when generating thermal equilibrium states and relaxation superoperators – assumption sets for those functions are fixed by the nature of the physical problems that they solve.

*Version 1.9, authors: Ilya Kuprov*