Class ModulatedMagneticFieldGrid

Inheritance Relationships

Base Type

Class Documentation

class ModulatedMagneticFieldGrid : public MagneticField

Modulated magnetic field on a periodic grid.

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

Public Functions

ModulatedMagneticFieldGrid()
ModulatedMagneticFieldGrid(const std::shared_ptr<VectorGrid> &grid, const std::shared_ptr<ScalarGrid> &modGrid)
void setGrid(std::shared_ptr<VectorGrid> grid)
void setModulationGrid(std::shared_ptr<ScalarGrid> modGrid)
std::shared_ptr<VectorGrid> getGrid()
std::shared_ptr<ScalarGrid> getModulationGrid()
void setReflective(bool gridReflective, bool modGridReflective)
Vector3d getField(const Vector3d &position) const
virtual Vector3QMField getField(const Vector3QLength &position) const