Difference between revisions of "Assume.m"
(Separate syntax block from notes/tables) |
(Restore pre-bulk-edit wiki content) |
||
| Line 1: | Line 1: | ||
| − | + | 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: | The following assumption sets are supported: | ||
| Line 51: | Line 48: | ||
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. | 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]]'' | ''Version 1.9, authors: [[Ilya Kuprov]]'' | ||
Revision as of 15:47, 5 April 2026
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