gfields
GField_MultipolesFactory Class Reference

Factory class for creating and managing multipole magnetic fields. More...

#include <gfield_multipoles.h>

Inheritance diagram for GField_MultipolesFactory:
Inheritance graph
Collaboration diagram for GField_MultipolesFactory:
Collaboration graph

Public Member Functions

 GField_MultipolesFactory ()
 Default constructor for the GField_MultipolesFactory class. More...
 
void GetFieldValue (const G4double pos[4], G4double *bfield) const override
 Calculates the magnetic field at a given position. More...
 
void load_field_definitions (GFieldDefinition gfd) override
 Sets the field definition for the field. More...
 
- Public Member Functions inherited from GField
 GField ()=default
 Default constructor. More...
 
virtual ~GField ()=default
 Virtual destructor. More...
 
virtual void GetFieldValue (const double x[3], double *bfield) const =0
 Pure virtual function to get the magnetic field value. More...
 
G4FieldManager * create_FieldManager ()
 Creates the G4FieldManager for the field. More...
 
void gFLogMessage (std::string message)
 Logs a message with the field context. More...
 
int get_field_parameter_int (std::string key)
 
double get_field_parameter_double (std::string key)
 

Additional Inherited Members

- Static Public Member Functions inherited from GField
static GFieldinstantiate (const dlhandle handle)
 
- Protected Attributes inherited from GField
GFieldDefinition gfield_definitions
 

Detailed Description

This class represents a specific implementation of a magnetic field characterized by multipoles. It inherits from the GField base class.

Definition at line 13 of file gfield_multipoles.h.

Constructor & Destructor Documentation

◆ GField_MultipolesFactory()

GField_MultipolesFactory::GField_MultipolesFactory ( )
inline

Definition at line 19 of file gfield_multipoles.h.

Member Function Documentation

◆ GetFieldValue()

void GField_MultipolesFactory::GetFieldValue ( const G4double  pos[4],
G4double *  bfield 
) const
override
Parameters
posArray containing the position (x, y, z, time).
bfieldOutput array to store the magnetic field vector (Bx, By, Bz).

Definition at line 26 of file gfield_multipoles.cc.

◆ load_field_definitions()

void GField_MultipolesFactory::load_field_definitions ( GFieldDefinition  gfd)
overridevirtual
Parameters
gfdField definition to set.

Reimplemented from GField.

Definition at line 84 of file gfield_multipoles.cc.


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