4#ifndef _d6067f26_790d_47d2_9843_9ffef6843fbb
5#define _d6067f26_790d_47d2_9843_9ffef6843fbb
30 Vector3d const & k,
double maxAmplitude,
double minRiseTime);
50 Vector3d const & kPlateau,
long plateauDuration,
51 double maxAmplitude,
double minRiseTime);
62 Vector3d const & kPlateau,
long plateauDuration,
74 Vector3d const & k,
long duration,
double maxAmplitude,
double minRiseTime);
96 Vector3d const & k,
long rampDuration,
long plateauDuration,
97 double maxAmplitude,
double minRiseTime);
109 double maxAmplitude,
double minRiseTime);
120 Vector3d const & k,
long rampDuration,
long plateauDuration,
157#include "gradient_pulses.txx"
Trapezoidal or arbitrary gradient pulse on three axes.
Definition GradientPulse.h:21
Functions generating gradient pulses based on user and system constraints.
Definition gradient_pulses.h:20
GradientPulse sliceSelection(T &&pulse, double maxAmplitude, double minRiseTime)
Compute a slice selection gradient.
GradientPulse fixedDuration(Vector3d const &k, long duration, double maxAmplitude, double minRiseTime)
Compute a gradient pulse with the requested duration.
GradientPulse quickest(Vector3d const &k, double maxAmplitude, double minRiseTime)
Compute the quickest gradient pulse to achieve the given k-space vector.
GradientPulse plateau(Vector3d const &kPlateau, long plateauDuration, double maxAmplitude, double minRiseTime)
Compute a gradient pulse with the requested plateau vector and duration.
Top-level namespace of the msl library.
Definition acceleration.h:17
Vector< 3, double > Vector3d
3D vector of doubles
Definition Vector.h:136
Specifications of the gradient system.
Definition GradientSpecs.h:14