Common Data Structures#
Hard RF Pulse#
Defined in sycomore/Pulse.h
-
class Pulse#
RF pulse.
Public Functions
Shaped RF Pulse#
Defined in sycomore/HardPulseApproximation.h
-
class HardPulseApproximation#
Small tip angle approximation of a shaped pulse.
Public Types
Envelopes#
-
HardPulseApproximation::Envelope apodized_sinc_envelope(Quantity const &t0, unsigned int N, Real alpha)#
Create an apodized sinc envelope.
-
HardPulseApproximation::Envelope hann_sinc_envelope(Quantity const &t0, unsigned int N)#
Create an Hann-apodized sinc envelope.
-
HardPulseApproximation::Envelope hamming_sinc_envelope(Quantity const &t0, unsigned int N)#
Create an Hamming-apodized sinc envelope.
-
HardPulseApproximation::Envelope sinc_envelope(Quantity const &t0)#
Create a sinc envelope.
Time Interval#
Defined in sycomore/TimeInterval.h
-
class TimeInterval#
Time interval, with or without magnetic field gradient.
Public Functions
-
TimeInterval(Quantity const &duration = 0 * units::s, Quantity const &gradient = 0 * units::T / units::m)#
Constructor, gradient may be specified as amplitude (in T/m), area (in T/m*s) or dephasing (in rad/m).
-
TimeInterval(Quantity const &duration, Vector3Q const &gradient)#
Constructor, gradient may be specified as amplitude (in T/m), area (in T/m*s) or dephasing (in rad/m).
-
void set_gradient(Quantity const &q)#
Set gradient amplitude (in T/m), area (in T/m*s) or dephasing (in rad/m).
-
void set_gradient(Vector3Q const &a)#
Set gradient amplitude (in T/m), area (in T/m*s) or dephasing (in rad/m).
-
bool operator==(TimeInterval const &other) const#
Equality of duration and gradient.
-
bool operator!=(TimeInterval const &other) const#
Difference of duration or gradient.
Public Static Functions
-
static TimeInterval shortest(Quantity const &k, Quantity const &G_max)#
Shortest possible time interval given 1D gradient area (T/m*s) or dephasing (rad/m) and maximum gradient amplitude.
-
static TimeInterval shortest(Vector3Q const &k, Quantity const &G_max)#
Shortest possible time interval given 3D gradient area (T/m*s) or dephasing (rad/m) and maximum gradient amplitude.
-
TimeInterval(Quantity const &duration = 0 * units::s, Quantity const &gradient = 0 * units::T / units::m)#
Species#
Defined in sycomore/Species.h
-
class Species#
Species described by its NMR parameters.
Public Functions
-
Species(Quantity const &R1, Quantity const &R2, Quantity const &D, Quantity const &delta_omega = 0 * units::Hz)#
Create a species given relaxation rates or times, isotropic diffusion coefficient, off-resonance and weight.
-
Species(Quantity const &R1, Quantity const &R2, Matrix3x3Q const &D, Quantity const &delta_omega = 0 * units::Hz)#
Create a species given relaxation rates or times, diffusion tensor, off-resonance and weight.
-
Matrix3x3Q const &D() const#
Return the diffusion tensor.
-
void set_D(Matrix3x3Q const &q)#
Set the diffusion tensor.
-
Species(Quantity const &R1, Quantity const &R2, Quantity const &D, Quantity const &delta_omega = 0 * units::Hz)#