gfields
Loading...
Searching...
No Matches
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 (const std::shared_ptr< GOptions > &gopt)
 Default constructor for the GField_MultipolesFactory class.
 
void GetFieldValue (const double pos[3], G4double *bfield) const override
 Calculates the magnetic field at a given position.
 
void load_field_definitions (GFieldDefinition gfd) override
 Sets the field definition for the field.
 
- Public Member Functions inherited from GField
 GField (const std::shared_ptr< GOptions > &gopt)
 Default constructor.
 
virtual void GetFieldValue (const double x[3], double *bfield) const =0
 Pure virtual function to get the magnetic field value.
 
G4FieldManager * create_FieldManager ()
 Creates the G4FieldManager for the field.
 
int get_field_parameter_int (const std::string &key)
 
double get_field_parameter_double (const std::string &key)
 
void set_loggers (const std::shared_ptr< GOptions > &g)
 

Additional Inherited Members

- Static Public Member Functions inherited from GField
static GFieldinstantiate (const dlhandle h, std::shared_ptr< GOptions > g)
 
- 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 12 of file gfield_multipoles.h.

Constructor & Destructor Documentation

◆ GField_MultipolesFactory()

GField_MultipolesFactory::GField_MultipolesFactory ( const std::shared_ptr< GOptions > & gopt)
inlineexplicit

Definition at line 19 of file gfield_multipoles.h.

Member Function Documentation

◆ GetFieldValue()

void GField_MultipolesFactory::GetFieldValue ( const double pos[3],
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 25 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 151 of file gfield_multipoles.cc.


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