|
AGX Dynamics 2.42.1.1
|
A magnetic field as produced by a magnetic dipole. More...
#include <DipoleMagneticField.h>
Inheritance diagram for agxSensor::DipoleMagneticField:Public Member Functions | |
| DipoleMagneticField (const agx::Vec3 &magneticMoment=agx::Vec3(2.69e19, -7.65e22, 1.5e22), const agx::Vec3 ¢er=agx::Vec3(-1.9e-10, 20.79e3, -6.369e6)) | |
Constructs a magnetic dipole positioned at the given center and using the specified magneticMoment. | |
| virtual agx::Vec3 | calculateMagneticField (const agx::Vec3 &position) const override |
Calculates and returns the magnetic field at the given position in world coordinates. | |
| const agx::Vec3 & | getCenter () const |
| const agx::Vec3 & | getMagneticMoment () const |
| void | setCenter (const agx::Vec3 ¢er) |
| Set the center of the dipole. | |
| void | setMagneticMoment (const agx::Vec3 &magneticMoment) |
| Set the dipole's magnetic moment. | |
Public Member Functions inherited from agxSensor::MagneticField | |
| MagneticField ()=default | |
| Default constructor. | |
| virtual agx::Vec3 | calculateMagneticField (const agx::Vec3 &position) const =0 |
Calculates and returns the magnetic field at the given position in world coordinates. | |
Public Member Functions inherited from agx::Referenced | |
| Referenced () | |
| Default constructor. | |
| Referenced (const Referenced &) | |
| template<typename T > | |
| T * | as () |
| Subclass casting. | |
| template<typename T > | |
| const T * | as () const |
| template<typename T > | |
| T * | asSafe () |
| Safe subclass casting, return nullptr if template type does not match. | |
| template<typename T > | |
| const T * | asSafe () const |
| int | getReferenceCount () const |
| template<typename T > | |
| bool | is () const |
| Subclass test. | |
| Referenced & | operator= (const Referenced &) |
| Assignment operator. Will increment the number of references to the referenced object. | |
| void | reference (void *ptr=nullptr) const |
| Explicitly increment the reference count by one, indicating that this object has another pointer which is referencing it. | |
| void | unreference (void *ptr=nullptr) const |
| Decrement the reference count by one, indicating that a pointer to this object is referencing it. | |
| void | unreference_nodelete () const |
| Decrement the reference count by one, indicating that a pointer to this object is referencing it. | |
Public Member Functions inherited from agxStream::Serializable | |
| virtual | ~Serializable () |
| Destructor for normal C++ use but hidden from SWIG bindings. | |
| virtual const char * | getClassName () const |
| bool | getEnableSerialization () const |
| bool | getEnableUuidGeneration () |
| agx::UInt32 | getIndex () const |
| This index is given at creation of this object. | |
| virtual StorageAgent * | getStorageAgent () const =0 |
| agx::Uuid | getUuid () const |
| bool | isFinished () const |
| void | setEnableSerialization (bool flag) |
| Set to false to disable serialization of this object. | |
| void | setFinished () |
| Tells this class that it is restored correctly and should not be deleted during destruction of an Archive. | |
| void | setUuid (const agx::Uuid &uuid) |
| Explicitly set a Uuid on a serializable object. | |
Additional Inherited Members | |
Static Public Member Functions inherited from agx::Referenced | |
| template<typename T > | |
| static bool | ValidateCast (const Referenced *object) |
Static Public Member Functions inherited from agxStream::Serializable | |
| static void | setEnableUuidGeneration (bool flag) |
| Specify if there should be UUID:s generated for each new Serializable object. By default it is enabled. | |
Protected Member Functions inherited from agx::Referenced | |
| virtual | ~Referenced () |
| Destructor. | |
| void | allocateObserverVector () const |
| void | deleteUsingDeleteHandler () const |
Protected Member Functions inherited from agxStream::Serializable | |
| Serializable () | |
| Default constructor. | |
| Serializable (const Serializable &other) | |
| Copy constructor. | |
| void | generateUuid () |
Static Protected Member Functions inherited from agx::Referenced | |
| static DeleteHandler * | getDeleteHandler () |
| static void | setDeleteHandler (DeleteHandler *handler) |
| Internal: Set a DeleteHandler to which deletion of all referenced counted objects will be delegated to. | |
Protected Attributes inherited from agx::Referenced | |
| Mutex | m_mutex |
| ObserverContainer | m_observers |
| AtomicValue | m_refCount |
A magnetic field as produced by a magnetic dipole.
Default magnetic moment and dipole center are set as the relative magnetic moment and dipole center of Earth at the surface near the coordinates of 38.254113 degrees north and 140.875417 degrees east.
Definition at line 29 of file DipoleMagneticField.h.
| agxSensor::DipoleMagneticField::DipoleMagneticField | ( | const agx::Vec3 & | magneticMoment = agx::Vec3(2.69e19, -7.65e22, 1.5e22), |
| const agx::Vec3 & | center = agx::Vec3(-1.9e-10, 20.79e3, -6.369e6) |
||
| ) |
Constructs a magnetic dipole positioned at the given center and using the specified magneticMoment.
| magneticMoment | - magnetic dipole moment in world coordinates |
| center | - position of the center of the magnetic dipole in world coordinates |
|
overridevirtual |
Calculates and returns the magnetic field at the given position in world coordinates.
| position | - position in world coordinates at which the magnetic field should be determined |
position Implements agxSensor::MagneticField.
| const agx::Vec3 & agxSensor::DipoleMagneticField::getCenter | ( | ) | const |
| const agx::Vec3 & agxSensor::DipoleMagneticField::getMagneticMoment | ( | ) | const |
| void agxSensor::DipoleMagneticField::setCenter | ( | const agx::Vec3 & | center | ) |
Set the center of the dipole.
| center | - position of the center of the magnetic dipole in world coordinates |
| void agxSensor::DipoleMagneticField::setMagneticMoment | ( | const agx::Vec3 & | magneticMoment | ) |
Set the dipole's magnetic moment.
| magneticMoment | - magnetic dipole moment in world coordinates |