Difference between revisions of "Meshflow.m"

From Spinach Documentation Wiki
Jump to: navigation, search
(Update function See also links and function index membership)
 
(5 intermediate revisions by the same user not shown)
Line 6: Line 6:
 
     answer=meshflow(spin_system,pulse_sequence,parameters)
 
     answer=meshflow(spin_system,pulse_sequence,parameters)
  
==Arguments==
+
==Parameters==
  
 
   pulse_sequence    - pulse sequence function handle. See the
 
   pulse_sequence    - pulse sequence function handle. See the
Line 14: Line 14:
 
The following phantoms must be specified: hamiltonian, relaxation, kinetics, initial condition, detection state. Operator phantoms must be specified in the following way:
 
The following phantoms must be specified: hamiltonian, relaxation, kinetics, initial condition, detection state. Operator phantoms must be specified in the following way:
  
                  parameters.R_ph={Ph1,Ph2,...,PhN}
+
                parameters.R_ph={Ph1,Ph2,...,PhN}
                  parameters.R_op={R1,R2,...,RN}
+
                parameters.R_op={R1,R2,...,RN}
  
 
where PhN have the same dimension as the sample voxel grid and RN are relaxation superoperators. Likewise for the following:
 
where PhN have the same dimension as the sample voxel grid and RN are relaxation superoperators. Likewise for the following:
  
                  parameters.K_ph, parameters.K_op
+
                parameters.K_ph, parameters.K_op
                  parameters.H_ph, parameters.H_op
+
                parameters.H_ph, parameters.H_op
  
 
The initial condition phantom reflects the fact that different voxels might start off in a different spin state. It must be specified in the following way:
 
The initial condition phantom reflects the fact that different voxels might start off in a different spin state. It must be specified in the following way:
Line 38: Line 38:
 
   parameters.*      - additional subfields may be required by your
 
   parameters.*      - additional subfields may be required by your
 
                       pulse sequence - check its documentation page
 
                       pulse sequence - check its documentation page
 +
 
==Outputs==
 
==Outputs==
  
Line 43: Line 44:
  
 
==See also==
 
==See also==
[[Kernel contexts]]
+
[[crystal.m]], [[doublerot.m]], [[floquet.m]], [[gridfree.m]], [[imaging.m]], [[liquid.m]], [[powder.m]], [[singlerot.m]], [[Kernel contexts]]
 
 
  
 
''Version 2.8, authors: [[Anupama Acharya]], [[Ilya Kuprov]]''
 
''Version 2.8, authors: [[Anupama Acharya]], [[Ilya Kuprov]]''

Latest revision as of 19:38, 6 June 2026

First draft of the magnetohydrodynamics context for microfluidic simulations. Generates evolution generators and passes them on to the pulse sequence function, which should be supplied as a handle.

Syntax

    answer=meshflow(spin_system,pulse_sequence,parameters)

Parameters

 pulse_sequence     - pulse sequence function handle. See the
                      experiments directory for the list of
                      pulse sequences that ship with Spinach.

The following phantoms must be specified: hamiltonian, relaxation, kinetics, initial condition, detection state. Operator phantoms must be specified in the following way:

                parameters.R_ph={Ph1,Ph2,...,PhN}
                parameters.R_op={R1,R2,...,RN}

where PhN have the same dimension as the sample voxel grid and RN are relaxation superoperators. Likewise for the following:

                parameters.K_ph, parameters.K_op
                parameters.H_ph, parameters.H_op

The initial condition phantom reflects the fact that different voxels might start off in a different spin state. It must be specified in the following way:

                parameters.rho0_ph={Ph1,Ph2,...,PhN}
                parameters.rho0_op={rho1,rho2,...,rhoN}

where PhN have the same dimension as the sample voxel grid and rhoN are spin states obtained from state() function.

The detection state phantom reflects the fact that different voxels might be detected at different angles and with different sensitivity. It must be specified in the following way:

                parameters.coil_ph={Ph1,Ph2,...,PhN}
                parameters.coil_op={rho1,rho2,...,rhoN}

where PhN have the same dimension as the sample voxel grid and rhoN are spin states obtained from state() function.

 parameters.*       - additional subfields may be required by your
                      pulse sequence - check its documentation page

Outputs

This function returns whatever the pulse sequence returns.

See also

crystal.m, doublerot.m, floquet.m, gridfree.m, imaging.m, liquid.m, powder.m, singlerot.m, Kernel contexts

Version 2.8, authors: Anupama Acharya, Ilya Kuprov