ODIN
Public Member Functions | List of all members

Acquisition + echo-planar imaging readout. More...

#include <seqacqepi.h>

Inheritance diagram for SeqAcqEPI:
Inheritance graph
[legend]

Public Member Functions

 SeqAcqEPI (const STD_string &object_label, double sweepwidth, unsigned int read_size, float FOVread, unsigned int phase_size, float FOVphase, unsigned int shots=1, unsigned int reduction=1, float os_factor=1.0, const STD_string &nucleus="", const dvector &phaselist=0, const dvector &freqlist=0, rampType rampmode=linear, bool ramp_sampling=false, float ramp_steepness=1.0, float fourier_factor=0.0, unsigned int echo_pairs=0, bool invert_partial_fourier=false)
 
 SeqAcqEPI (const SeqAcqEPI &sae)
 
 SeqAcqEPI (const STD_string &object_label="unnamedSeqAcqEPI")
 
 ~SeqAcqEPI ()
 
unsigned int get_npts_read () const
 
unsigned int get_numof_gradechoes () const
 
fvector get_readout_shape () const
 
SeqAcqEPIoperator= (const SeqAcqEPI &sae)
 
double get_acquisition_center () const
 
double get_acquisition_start () const
 
unsigned int get_npts () const
 
SeqAcqInterfaceset_sweepwidth (double sw, float os_factor)
 
double get_sweepwidth () const
 
float get_oversampling () const
 
SeqAcqInterfaceset_template_type (templateType type)
 
SeqAcqInterfaceset_reco_vector (recoDim dim, const SeqVector &vec, const dvector &valvec=dvector())
 
SeqAcqInterfaceset_default_reco_index (recoDim dim, unsigned int index)
 
SeqFreqChanInterfaceset_nucleus (const STD_string &nucleus)
 
SeqFreqChanInterfaceset_freqlist (const dvector &freqlist)
 
SeqFreqChanInterfaceset_phaselist (const dvector &phaselist)
 
const SeqVectorget_freqlist_vector () const
 
const SeqVectorget_phaselist_vector () const
 
SeqGradInterfaceset_strength (float gradstrength)
 
SeqGradInterfaceinvert_strength ()
 
float get_strength () const
 
fvector get_gradintegral () const
 
double get_gradduration () const
 
SeqGradInterfaceset_gradrotmatrix (const RotMatrix &matrix)
 
STD_string get_program (programContext &context) const
 
double get_duration () const
 
SeqValList get_freqvallist (freqlistAction action) const
 
void query (queryContext &context) const
 
RecoValList get_recovallist (unsigned int reptimes, LDRkSpaceCoords &coords) const
 
unsigned int event (eventContext &context) const
 
STD_string get_properties () const
 
- Public Member Functions inherited from SeqTreeObj
bool contains (const SeqTreeObj *sto) const
 
void tree (SeqTreeCallbackAbstract *display) const
 
virtual SeqValList get_delayvallist () const
 
virtual double get_rf_energy () const
 
- Public Member Functions inherited from SeqClass
SeqClassset_temporary ()
 
- Public Member Functions inherited from Labeled
 Labeled (const STD_string &label="unnamed")
 
Labeledset_label (const STD_string &label)
 
const STD_string & get_label () const
 
Labeledoperator= (const Labeled &l)
 
- Public Member Functions inherited from SeqAcqInterface
virtual double get_acquisition_duration () const
 
virtual SeqAcqInterfaceset_readout_shape (const fvector &shape, unsigned int dstsize)
 
virtual SeqAcqInterfaceset_reflect_flag (bool flag)
 
- Public Member Functions inherited from SeqFreqChanInterface
 operator const SeqVector & () const
 
virtual SeqFreqChanInterfaceset_encoding_scheme (encodingScheme scheme)
 
virtual SeqFreqChanInterfaceset_reorder_scheme (reorderScheme scheme, unsigned int nsegments=1)
 
virtual const SeqVectorget_reorder_vector () const
 
virtual SeqFreqChanInterfaceset_phaselist_encoding_scheme (encodingScheme scheme)
 
virtual SeqFreqChanInterfaceset_phaselist_reorder_scheme (reorderScheme scheme, unsigned int nsegments=1)
 
virtual const SeqVectorget_phaselist_reorder_vector () const
 
SeqFreqChanInterfaceset_freqoffset (double freqoffset)
 
SeqFreqChanInterfaceset_phase (double phaseval)
 
SeqFreqChanInterfaceset_phasespoiling (unsigned int size=80, double incr=117.0, double offset=0.0)
 
- Public Member Functions inherited from SeqGradInterface
float get_gradintegral_norm () const
 

Additional Inherited Members

- Protected Member Functions inherited from SeqClass
void marshall_error () const
 
virtual void clear_container ()
 
- Static Protected Member Functions inherited from SeqClass
static void clear_temporary ()
 
static void clear_containers ()
 

Detailed Description

Acquisition + echo-planar imaging readout.

This class represents an acquisition window with an EPI gradient.

Definition at line 191 of file seqacqepi.h.

Constructor & Destructor Documentation

◆ SeqAcqEPI() [1/3]

SeqAcqEPI::SeqAcqEPI ( const STD_string &  object_label,
double  sweepwidth,
unsigned int  read_size,
float  FOVread,
unsigned int  phase_size,
float  FOVphase,
unsigned int  shots = 1,
unsigned int  reduction = 1,
float  os_factor = 1.0,
const STD_string &  nucleus = "",
const dvector phaselist = 0,
const dvector freqlist = 0,
rampType  rampmode = linear,
bool  ramp_sampling = false,
float  ramp_steepness = 1.0,
float  fourier_factor = 0.0,
unsigned int  echo_pairs = 0,
bool  invert_partial_fourier = false 
)

Constructs an acquisition window with an EPI gradient labeled 'object_label' with the following properties:

  • sweepwidth: The sampling frequency
  • read_size: The number of sampling points per gradient echo, with ramp_sampling enabled, this is the number of points after regridding
  • FOVread: The Field Of View in read direction
  • phase_size: The final matrix size in phase direction without partial fourier undersampling
  • FOVphase: The Field Of View in phase direction
  • shots: Number of shots, a multi-shot (segmented) EPI readout will be created if 'shots' is larger than 1
  • reduction: Reduction factor (parallel imaging)
  • os_factor: The oversampling factor, os_factor=1 means no oversampling
  • nucleus: The nucleus to measure
  • phaselist: Phase list for acquisition
  • freqlist: Frequency list for acquisition
  • rampmode: This parameter determines the shape of the ramp waveform
  • ramp_sampling: The EPI readout performs data acquisition during the ramps if this parameter is set to 'true'
  • ramp_steepness: This parameter in the range of ]0,1] determines the relative rising speed of the gradient strength, i.e. with 1 the gradients are switched as fast as possible
  • fourier_factor: The amount of undersampling (0=no undersampling, 1=half fourier)
  • echo_pairs: Number of interleaved acquired pairs of echoes for one phase-encodin step, 0 means only one echo

◆ SeqAcqEPI() [2/3]

SeqAcqEPI::SeqAcqEPI ( const SeqAcqEPI sae)

Constructs an acquisition window with an EPI gradient which is a copy of 'sae'

◆ SeqAcqEPI() [3/3]

SeqAcqEPI::SeqAcqEPI ( const STD_string &  object_label = "unnamedSeqAcqEPI")

Constructs an empty acquisition window with an EPI gradient with the given label.

◆ ~SeqAcqEPI()

SeqAcqEPI::~SeqAcqEPI ( )

Destructor

Member Function Documentation

◆ event()

unsigned int SeqAcqEPI::event ( eventContext context) const
inlinevirtual

Queries the sequence tree for events, returns the number of events executed

Reimplemented from SeqTreeObj.

Definition at line 302 of file seqacqepi.h.

◆ get_acquisition_center()

double SeqAcqEPI::get_acquisition_center ( ) const
inlinevirtual

Returns the the duration from the the beginnig of the acquisition object to the middle of the acquisition window.

Reimplemented from SeqAcqInterface.

Definition at line 268 of file seqacqepi.h.

◆ get_acquisition_start()

double SeqAcqEPI::get_acquisition_start ( ) const
inlinevirtual

Returns the the duration from the the beginnig of the acquisition object to the beginnig of the acquisition window (the point of time where data starts to be acquired).

Reimplemented from SeqAcqInterface.

Definition at line 269 of file seqacqepi.h.

◆ get_duration()

double SeqAcqEPI::get_duration ( ) const
inlinevirtual

Returns the duration of the sequence object.

Implements SeqTreeObj.

Definition at line 296 of file seqacqepi.h.

◆ get_freqlist_vector()

const SeqVector& SeqAcqEPI::get_freqlist_vector ( ) const
inlinevirtual

Returns the frequency list vector (for loop insertion)

Reimplemented from SeqFreqChanInterface.

Definition at line 282 of file seqacqepi.h.

◆ get_freqvallist()

SeqValList SeqAcqEPI::get_freqvallist ( freqlistAction  action) const
inlinevirtual

Returns the list of frequency values in the objects branch of the sequence tree

Reimplemented from SeqTreeObj.

Definition at line 297 of file seqacqepi.h.

◆ get_gradduration()

double SeqAcqEPI::get_gradduration ( ) const
inlinevirtual

Returns the duration of the gradient object. This function returns only the effective duration during whichthe gradient is active, any delays before and after the gradient are omitted.

Implements SeqGradInterface.

Definition at line 290 of file seqacqepi.h.

◆ get_gradintegral()

fvector SeqAcqEPI::get_gradintegral ( ) const
inlinevirtual

Returns the integral vector of the gradient course

Implements SeqGradInterface.

Definition at line 289 of file seqacqepi.h.

◆ get_npts()

unsigned int SeqAcqEPI::get_npts ( ) const
inlinevirtual

Returns the total number of sampling points, without oversampling

Reimplemented from SeqAcqInterface.

Definition at line 270 of file seqacqepi.h.

◆ get_npts_read()

unsigned int SeqAcqEPI::get_npts_read ( ) const
inline

Returns the number of points that will be acquired during each read gradient period, including the ramp points.

Definition at line 246 of file seqacqepi.h.

◆ get_numof_gradechoes()

unsigned int SeqAcqEPI::get_numof_gradechoes ( ) const
inline

Returns the number of gradient echoes, i.e. the number of k-space lines that will be sampled

Definition at line 252 of file seqacqepi.h.

◆ get_oversampling()

float SeqAcqEPI::get_oversampling ( ) const
inlinevirtual

Returns the oversampling factor

Reimplemented from SeqAcqInterface.

Definition at line 273 of file seqacqepi.h.

◆ get_phaselist_vector()

const SeqVector& SeqAcqEPI::get_phaselist_vector ( ) const
inlinevirtual

Returns the phaselist vector (for loop insertion)

Reimplemented from SeqFreqChanInterface.

Definition at line 283 of file seqacqepi.h.

◆ get_program()

STD_string SeqAcqEPI::get_program ( programContext context) const
inlinevirtual

Returns the part in the pulse/gradient program of this sequence object. 'context' holds data about how the program should be generated, e.g. type of program and formatting.

Reimplemented from SeqTreeObj.

Definition at line 295 of file seqacqepi.h.

◆ get_properties()

STD_string SeqAcqEPI::get_properties ( ) const
inlinevirtual

Returns a string describing the object

Reimplemented from SeqTreeObj.

Definition at line 303 of file seqacqepi.h.

◆ get_readout_shape()

fvector SeqAcqEPI::get_readout_shape ( ) const
inline

Returns the readout gradient shape that is used for regridding

Definition at line 257 of file seqacqepi.h.

◆ get_recovallist()

RecoValList SeqAcqEPI::get_recovallist ( unsigned int  reptimes,
LDRkSpaceCoords coords 
) const
virtual

Appends the k-space coordinates in this branch of the sequence tree to 'coords' and returns their ordering

Reimplemented from SeqTreeObj.

◆ get_strength()

float SeqAcqEPI::get_strength ( ) const
inlinevirtual

Returns the strength of the gradient object

Implements SeqGradInterface.

Definition at line 288 of file seqacqepi.h.

◆ get_sweepwidth()

double SeqAcqEPI::get_sweepwidth ( ) const
inlinevirtual

Returns the sweepwidth factor

Reimplemented from SeqAcqInterface.

Definition at line 272 of file seqacqepi.h.

◆ invert_strength()

SeqGradInterface& SeqAcqEPI::invert_strength ( )
inlinevirtual

Changes the polarity of the gradient, i.e. inverts the sign of the gradient strength

Implements SeqGradInterface.

Definition at line 287 of file seqacqepi.h.

◆ operator=()

SeqAcqEPI& SeqAcqEPI::operator= ( const SeqAcqEPI sae)

This assignment operator will make this object become an exact copy of 'sae'.

◆ query()

void SeqAcqEPI::query ( queryContext context) const
inlinevirtual

Query the sequence tree recursively

Reimplemented from SeqTreeObj.

Definition at line 298 of file seqacqepi.h.

◆ set_default_reco_index()

SeqAcqInterface& SeqAcqEPI::set_default_reco_index ( recoDim  dim,
unsigned int  index 
)
inlinevirtual

Sets the default value 'index' for the reco index in dimension 'dim'. This is relevant for automatic reconstruction.

Reimplemented from SeqAcqInterface.

Definition at line 276 of file seqacqepi.h.

◆ set_freqlist()

SeqFreqChanInterface& SeqAcqEPI::set_freqlist ( const dvector freqlist)
inlinevirtual

Sets the freqlist for the object

Reimplemented from SeqFreqChanInterface.

Definition at line 280 of file seqacqepi.h.

◆ set_gradrotmatrix()

SeqGradInterface& SeqAcqEPI::set_gradrotmatrix ( const RotMatrix matrix)
inlinevirtual

This function can be used to specify a rotation of the gradient object in the spatial domain, the rotation will be applied to this object only rather than to the whole sequence.

Implements SeqGradInterface.

Definition at line 291 of file seqacqepi.h.

◆ set_nucleus()

SeqFreqChanInterface& SeqAcqEPI::set_nucleus ( const STD_string &  nucleus)
inlinevirtual

Specify the nucleus for this frequency channel

Reimplemented from SeqFreqChanInterface.

Definition at line 279 of file seqacqepi.h.

◆ set_phaselist()

SeqFreqChanInterface& SeqAcqEPI::set_phaselist ( const dvector phaselist)
inlinevirtual

Sets the phaselist for the object

Reimplemented from SeqFreqChanInterface.

Definition at line 281 of file seqacqepi.h.

◆ set_reco_vector()

SeqAcqInterface& SeqAcqEPI::set_reco_vector ( recoDim  dim,
const SeqVector vec,
const dvector valvec = dvector() 
)
inlinevirtual

Specifies a vector 'vec' which indexes the data dimension 'dim'. The current index for each acquisition is retrieved from the vector. This is relevant for automatic reconstruction. An additional vector 'valvec' of double values can be given, which is attached to this dimension, e.g. different TEs in the echo dimension.

Reimplemented from SeqAcqInterface.

Definition at line 275 of file seqacqepi.h.

◆ set_strength()

SeqGradInterface& SeqAcqEPI::set_strength ( float  gradstrength)
inlinevirtual

Changes the strength of the gradient object

Implements SeqGradInterface.

Definition at line 286 of file seqacqepi.h.

◆ set_sweepwidth()

SeqAcqInterface& SeqAcqEPI::set_sweepwidth ( double  sw,
float  os_factor 
)
virtual

Sets the sweepwidth 'sw' without oversampling and oversampling factor 'os_factor' for this acquisition object, os_factor=1 means no oversampling.

Reimplemented from SeqAcqInterface.

◆ set_template_type()

SeqAcqInterface& SeqAcqEPI::set_template_type ( templateType  type)
virtual

Sets the template mode of this acquisition object. This is also relevant for automatic reconstruction.

Reimplemented from SeqAcqInterface.


The documentation for this class was generated from the following file: