gfields
gfield_multipoles.h
Go to the documentation of this file.
1 #ifndef GFIELD_MULTIPOLES_FACTORY_H
2 #define GFIELD_MULTIPOLES_FACTORY_H 1
3 
4 // gemc
5 #include "gfield.h"
6 
14 
15 public:
20 
26  void GetFieldValue(const G4double pos[4], G4double *bfield) const override;
27 
28  void load_field_definitions(GFieldDefinition gfd) override;
29 
30 private:
31 
32  int pole_number;
33  G4double origin[3];
34  G4double rotation_angle;
35  int rotaxis;
36  G4double strength;
37 
38 };
39 
40 #endif
Factory class for creating and managing multipole magnetic fields.
GField_MultipolesFactory()
Default constructor for the GField_MultipolesFactory class.
void GetFieldValue(const G4double pos[4], 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.
Abstract base class representing a magnetic field.
Definition: gfield.h:69
Utility struct to load GFields from options.
Definition: gfield.h:17