Class ModulatedMagneticFieldGrid

Inheritance Relationships

Base Type

Class Documentation

class ModulatedMagneticFieldGrid : public MagneticField

Modulated magnetic field on a periodic grid.

This class wraps a Grid3f to serve as a MagneticField. The field is modulated on-the-fly with a Grid1f. The Grid3f and Grid1f do not need to share the same origin, spacing or size.

Public Functions

ModulatedMagneticFieldGrid()
ModulatedMagneticFieldGrid(ref_ptr<Grid3f> grid, ref_ptr<Grid1f> modGrid)
void setGrid(ref_ptr<Grid3f> grid)
void setModulationGrid(ref_ptr<Grid1f> modGrid)
ref_ptr<Grid3f> getGrid()
ref_ptr<Grid1f> getModulationGrid()
void setReflective(bool gridReflective, bool modGridReflective)
Vector3d getField(const Vector3d &position) const
virtual Vector3d getField(const Vector3d &position, double z) const
size_t addReference() const
size_t removeReference() const
int removeReferenceNoDelete() const
size_t getReferenceCount() const

Protected Attributes

size_t _referenceCount