Difference between revisions of "Coherence.m"
(Update function See also links and function index membership) |
(sync with Spinach main f053e432: zeeman-liouv/zeeman-hilb support, electrons/nuclei/all specifications) |
||
| Line 8: | Line 8: | ||
==Parameters== | ==Parameters== | ||
| − | rho - a state vector or a horizontal stack thereof | + | rho - a state vector or a horizontal stack thereof; |
| + | in zeeman-hilb, a density matrix or a horizon- | ||
| + | tal stack thereof | ||
spec - a cell array containing the specification of | spec - a cell array containing the specification of | ||
| Line 18: | Line 20: | ||
((1 OR -1 on 13C) AND (-1 on 1H)) | ((1 OR -1 on 13C) AND (-1 on 1H)) | ||
| + | |||
| + | instead of specific spins, it is possible to | ||
| + | specify 'electrons', 'nuclei', and 'all' | ||
==Outputs== | ==Outputs== | ||
| Line 35: | Line 40: | ||
==Notes== | ==Notes== | ||
| − | + | This function requires ''sphten-liouv'', ''zeeman-liouv'', or ''zeeman-hilb'' [[Basis set specification|formalism]]; Fokker-Planck direct products are supported in the Liouville space formalisms. In ''zeeman-hilb'', the density matrices are stretched into Liouville space, filtered there, and folded back. | |
==See also== | ==See also== | ||
Latest revision as of 06:34, 30 August 2026
Coherence order selection function - keeps only the specified orders of coherence in the state vector. This function is useful as a replacement for gradients and phase cycles because coherence order filtering can be accomplished analytically, by just picking out the required coherence orders and zeroing everything else.
Syntax
rho=coherence(spin_system,rho,spec)
Parameters
rho - a state vector or a horizontal stack thereof;
in zeeman-hilb, a density matrix or a horizon-
tal stack thereof
spec - a cell array containing the specification of
which coherences to keep on which spins. For
example
{{'13C',[1 -1]},{'1H',-1}}
keeps the states that have coherence order
((1 OR -1 on 13C) AND (-1 on 1H))
instead of specific spins, it is possible to
specify 'electrons', 'nuclei', and 'all'
Outputs
rho - the state vector with the undesired orders of
spin correlations zeroed out
Examples
rho=coherence(spin_system,rho,{{'13C',[1 -1]},{'1H',-1}});
keeps all states that simultaneously have coherence order 1 or -1 in the 13C subspace, and coherence order -1 in the 1H subspace.
rho=coherence(spin_system,rho,{{3,0},{5,-1}});
keeps all states that simultaneously have coherence order 0 on spin number 3, and coherence order -1 on spin number 5.
Notes
This function requires sphten-liouv, zeeman-liouv, or zeeman-hilb formalism; Fokker-Planck direct products are supported in the Liouville space formalisms. In zeeman-hilb, the density matrices are stretched into Liouville space, filtered there, and folded back.
See also
adelim.m, correlation.m, dfpt.m, homospoil.m, human2opspec.m, lin2lm.m, lin2lmn.m, lm2lin.m, lmn2lin.m, path_trace.m, scomponents.m, sinkhole.m, sparse2csr.m, sphten2zeeman.m, stitch.m, zte.m, Kernel_functions, Kernel_utilities
Version 2.8, authors: Ilya Kuprov, Luke Edwards