JEMRIS 2.9.1
open-source MRI simulations
No Matches
List of all members | Public Member Functions
IdealCoil Class Reference

Prototype of an ideal coil. More...

#include <IdealCoil.h>

+ Inheritance diagram for IdealCoil:
+ Collaboration diagram for IdealCoil:

Public Member Functions

 IdealCoil ()
 Default constructor.
 ~IdealCoil ()
 Default destructor. More...
virtual IdealCoilClone () const
 Clone an ideal coil. More...
virtual double GetSensitivity (const double *position)
 Get sensitivity. More...
- Public Member Functions inherited from Coil
virtual ~Coil ()
double GetSensitivity (const double time=0)
 Get the B1+ magnitude at point (x,y,z) of the current spin. More...
double GetPhase (const double time=0)
 Get the B1+ phase at point (x,y,z) of the current spin. More...
double InterpolateSensitivity (const double *position, bool magnitude=true)
 Interpolate the sensitivity at point (x,y,z) More...
virtual double GetSensitivity (const double *position)=0
 Get the B1+ magnitude at point (x,y,z) More...
virtual double GetPhase (const double *position)
 Get the B1+ phase at point (x,y,z) More...
void InitSignal (long lADCs)
 Initialize my signal repository. More...
void Receive (long lADC)
 Receive signal from World. More...
void Transmit ()
 Transmit signal.
SignalGetSignal ()
 Get the received signal of this coil. More...
CoilClone () const =0
void GridMap ()
 Dump sensitivity map on the XML defined grid.
double * MagnitudeMap ()
 Map magnitudes. More...
double * PhaseMap ()
 Map phases. More...
virtual bool Prepare (const PrepareMode mode)
 Prepare coil with given attributes. More...
void Initialize (DOMNode *node)
 Initialize this prototype. More...
int GetPoints ()
int GetExtent ()
unsigned GetNDim ()
double GetNorm ()
- Public Member Functions inherited from Prototype
 Prototype ()
 Constructor. More...
virtual ~Prototype ()
 Default destructor. More...
 Prototype (const Prototype &)
 Default copy constructor. More...
virtual PrototypeGetParent ()
 Get Parent. More...
virtual PrototypeClone () const =0
 Clone a prototype. More...
virtual bool Prepare (PrepareMode mode)=0
 Prepare this pulse. More...
bool IsPrepared ()
 Check if the Prototype is prepared. More...
virtual void Initialize (DOMNode *conf)=0
 Initialise this prototype. More...
void SetName (string name)
 Set the name of this module. More...
DOMNode * GetNode ()
 Get the DOMNode of this module. More...
void SetNode (DOMNode *node)
 Set the DOMNode of this module. More...
string GetClassType ()
 Get the class type of this prototype. More...
Type GetType ()
 Get the module type of this module. More...
string GetDOMattribute (const string attribute)
 Get attribute value from the DOMNode. More...
bool HasDOMattribute (const string attribute)
 Check, if attribute exists in DOM node of this module. More...
AttributeGetAttribute (string name)
 Get an Attribute. More...
void CopyObservers (Attribute *a1, Attribute *a2)
 Copy observers from one attribute to another. More...
bool HasAttribute (string name)
 Check if an attribute exist. More...
void HideAttribute (string attrib, bool observable=true)
 Hide an attribute. More...
virtual PrototypeGetPrototypeByAttributeValue (string name, string attrib)
 Get a Prototype by value of an attribute. More...
string GetName ()
 Get the name of this module. More...
bool Observe (Attribute *attrib, string prot_name, string attrib_name, bool verbose)
 Set up the list of observations. More...
bool Observe (Attribute *attrib, string prot_name, string attrib_name, string attrib_keyword, bool verbose)
template<typename T >
bool Notify (const T &val)
 Notify all observers of an attribute. More...
template<typename T >
bool NewState (const T &val)
 Check the state of an attribute. More...
vector< double > * GetVector ()
 Each Prototype has a double vector as a private member, which values can be filled through XML and accessed from attributes within the same Prototype. More...

Additional Inherited Members

- Static Public Member Functions inherited from Prototype
static bool ReplaceString (string &str, const string &s1, const string &s2)
 A global sub-string replacer. More...
static bool ReplaceSymbolString (string &str, const string &s1, const string &s2)
 A global sub-string replacer which replaces only complete symbol strings.
static vector< string > Tokenize (const string &str, const string &delimiters=",")
 A global string tokenizer. More...
- Protected Member Functions inherited from Coil
 Coil ()
double Unwrap (double diff, bool magnitude)
- Protected Attributes inherited from Coil
double m_position [3]
unsigned m_mode
double m_azimuth
double m_polar
double m_scale
double m_norm
double m_phase
bool m_interpolate
bool m_complex
bool m_conjugate
unsigned m_dim
double m_extent
int m_points
NDData< double > m_sensmag
NDData< double > m_senspha
- Protected Attributes inherited from Prototype
bool m_aux
 auxiliary helper variable for debugging purposes
bool m_prepared
 True, after the first call to Prepare.
string m_name
 Name of this Prototype.
DOMNode * m_node
 The node configuring this Module.
Type m_type
 The type of the module: one of MOD_PULSE, MOD_ATOM, MOD_CONCAT.
vector< double > m_vector
 A vector which elements are accessible through loop counters.
map< string, Attribute * > m_attributes
 Map to connect a keyword with an Attribute.
vector< Attribute * > m_obs_attribs
 Vector of observed Attributes.
vector< string > m_obs_attrib_keyword
 Vector of user-defined Attribute names.

Detailed Description

Prototype of an ideal coil.

Constructor & Destructor Documentation

◆ ~IdealCoil()

IdealCoil::~IdealCoil ( )

Default destructor.


Member Function Documentation

◆ Clone()

virtual IdealCoil * IdealCoil::Clone ( ) const

Clone an ideal coil.

Cloned ideal coil

Implements Coil.

+ Here is the call graph for this function:

◆ GetSensitivity()

virtual double IdealCoil::GetSensitivity ( const double *  position)

Get sensitivity.

positionSpin position.
Ideal coil delivers 1.0 at every point.

Implements Coil.

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

-- last change 03.10.2023 | Tony Stoecker | Imprint | Data Protection --