Difference between revisions of "Coherence.m"
(Restore pre-bulk-edit wiki content) |
(sync with Spinach main f053e432: zeeman-liouv/zeeman-hilb support, electrons/nuclei/all specifications) |
||
| (3 intermediate revisions by the same user not shown) | |||
| Line 6: | Line 6: | ||
rho=coherence(spin_system,rho,spec) | rho=coherence(spin_system,rho,spec) | ||
| − | == | + | ==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== | ||
| − | [[Kernel_functions | + | [[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]] |
| − | |||
| − | [[Kernel_utilities | ||
| − | |||
''Version 2.8, authors: [[Ilya Kuprov]], [[Luke Edwards]]'' | ''Version 2.8, authors: [[Ilya Kuprov]], [[Luke Edwards]]'' | ||
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