#include <seqsim.h>
Inheritance diagram for SeqSimMagsi:


This is a simulator to calculate the time evolution of a magnetization grid in 4 dimension (frequency and three spatial dimensions). This simulation of the Bloch-Torrey equations is performed by means of the MAGSI algorith (c.f. Journal of Magnetic Resonance 180:29-38, 2006). Simulation usually involves the following steps:
Definition at line 112 of file seqsim.h.
| SeqSimMagsi::SeqSimMagsi | ( | const STD_string & | label = "unnamedSeqSimMagsi" |
) |
Constructs a simulator labeled 'object_label'.
| SeqSimMagsi::SeqSimMagsi | ( | const SeqSimMagsi & | ssm | ) |
Copy constructor
| SeqSimMagsi::~SeqSimMagsi | ( | ) |
Destructor
| SeqSimMagsi& SeqSimMagsi::operator= | ( | const SeqSimMagsi & | ssm | ) |
Assignment operator
| SeqSimMagsi& SeqSimMagsi::operator+= | ( | const SeqSimMagsi & | ssm | ) |
Add magnetization vector 'sm' to this
| unsigned int SeqSimMagsi::get_total_size | ( | ) | const [inline] |
| SeqSimMagsi& SeqSimMagsi::set_tozero | ( | ) |
Initialises the magnetization vector to zero
| SeqSimMagsi& SeqSimMagsi::reset_magnetization | ( | ) |
Set each magnetization to initial state 'initial_vector', which is (0,0,1) by default
| SeqSimMagsi& SeqSimMagsi::set_initial_vector | ( | float | Mx, | |
| float | My, | |||
| float | Mz | |||
| ) |
Set the vector for the initial magnetization
| const farray& SeqSimMagsi::get_Mx | ( | ) | const [inline] |
| const farray& SeqSimMagsi::get_My | ( | ) | const [inline] |
| const farray& SeqSimMagsi::get_Mz | ( | ) | const [inline] |
| const farray& SeqSimMagsi::get_Mamp | ( | ) | const [inline] |
| const farray& SeqSimMagsi::get_Mpha | ( | ) | const [inline] |
| SeqSimMagsi& SeqSimMagsi::update | ( | ) |
Updates all parameter relations
| SeqSimMagsi& SeqSimMagsi::set_online_simulation | ( | bool | onlineflag | ) | [inline] |
| SeqSimMagsi& SeqSimMagsi::set_intravoxel_simulation | ( | bool | ivflag | ) | [inline] |
| SeqSimMagsi& SeqSimMagsi::set_spat_rotmatrix | ( | const RotMatrix & | rotmatrix | ) |
Specifies a rotation matrix for the spatial domain, i.e. the magnetization array will be rotated in space using the specified rotation matrix.
| bool SeqSimMagsi::do_simulation | ( | ) |
Returns whether simulation should be performed, i.e. whether online flag is true or refresh was activated.
| void SeqSimMagsi::prepare_simulation | ( | const Sample & | sample, | |
| CoilSensitivity * | transmit_coil = 0, |
|||
| CoilSensitivity * | receive_coil = 0, |
|||
| ProgressMeter * | progmeter = 0 | |||
| ) | [virtual] |
Prepare a simulation (i.e. before successive calls to simulate() ) with the parameters:
Implements SeqSimAbstract.
| cvector SeqSimMagsi::simulate | ( | const SeqSimInterval & | simvals, | |
| double | gamma | |||
| ) | [virtual] |
Simulation with
Implements SeqSimAbstract.
| void SeqSimMagsi::finalize_simulation | ( | ) | [virtual] |
Call this function after a simulation (i.e. after successive calls to simulate() )
Implements SeqSimAbstract.
1.5.1