QwGeant4
|
#include <QweakSimMagneticField.hh>
Inherits G4MagneticField.
Public Member Functions | |
QweakSimMagneticField () | |
Default constructor. More... | |
virtual | ~QweakSimMagneticField () |
Virtual destructor. More... | |
void | GetFieldValue (const G4double point[4], G4double *field) const |
Get the field value. More... | |
void | PrintFieldValue (const G4double point[4]) const |
Print the field value. More... | |
void | SetScaleFactor (const double scalefactor) |
Set the scale factor. More... | |
double | GetScaleFactor () const |
Get the scale factor. More... | |
void | SetReferenceCurrent (const double referencecurrent) |
Set the reference current. More... | |
double | GetReferenceCurrent () const |
Get the reference current. More... | |
void | SetActualCurrent (const double actualcurrent) |
Set the actual current. More... | |
double | GetActualCurrent () const |
Get the actual current. More... | |
void | SetRotation (const double rotation) |
Set the field rotation around z. More... | |
double | GetRotation () const |
Get the field rotation around z. More... | |
void | SetTranslation (const double translation) |
Set the field translation along z. More... | |
double | GetTranslation () const |
Get the field translation along z. More... | |
void | SetTranslationVector (const G4ThreeVector translationvector) |
Set the field translation vector. More... | |
G4ThreeVector | GetTranslationVector () const |
Get the field translation vector. More... | |
void | SetMinimum (const double value, const int i) |
Set the minimum. More... | |
void | SetMaximum (const double value, const int i) |
Set the maximum. More... | |
void | SetStep (const double value, const int i) |
Set the step. More... | |
void | SetWrap (const int value, const int i) |
Set the wrap. More... | |
void | ReadFieldMap (const G4String &filename) |
Read the field map. More... | |
void | ReadFieldMapText (const G4String &filename) |
void | ReadFieldMapBinary (const G4String &filename) |
void | TestFieldMap (const G4double point[4], const G4double exact[3]) const |
Test the field map. More... | |
Private Types | |
typedef float | value_t |
Field map storage data type. More... | |
Private Attributes | |
QweakSimMagneticFieldMessenger * | fMagneticFieldMessenger |
Messenger. More... | |
QweakSimFieldMap< value_t, value_n > * | fField |
double | fRotation |
Field rotation and translation with respect to the z axis. More... | |
double | fRotationCos |
double | fRotationSin |
double | fTranslation |
G4ThreeVector | fTranslationVector |
double | fScaleFactor |
Field map reference and actual currents. More... | |
double | fActualCurrent |
double | fReferenceCurrent |
std::vector< double > | fMin |
Field map grid definitions. More... | |
std::vector< double > | fMax |
std::vector< double > | fStep |
std::vector< size_t > | fWrap |
Static Private Attributes | |
static const unsigned int | value_n = 3 |
Number of field component in the map (x,y,z,r,phi) More... | |
Definition at line 24 of file QweakSimMagneticField.hh.
|
private |
Field map storage data type.
Definition at line 32 of file QweakSimMagneticField.hh.
QweakSimMagneticField::QweakSimMagneticField | ( | ) |
Default constructor.
Definition at line 48 of file QweakSimMagneticField.cc.
References fActualCurrent, fField, fMagneticFieldMessenger, fMax, fMin, fReferenceCurrent, fScaleFactor, fStep, fWrap, SetRotation(), SetTranslation(), and SetTranslationVector().
|
virtual |
Virtual destructor.
Definition at line 78 of file QweakSimMagneticField.cc.
References fField, and fMagneticFieldMessenger.
|
inline |
Get the actual current.
Definition at line 78 of file QweakSimMagneticField.hh.
References fActualCurrent.
void QweakSimMagneticField::GetFieldValue | ( | const G4double | point[4], |
G4double * | field | ||
) | const |
Get the field value.
Definition at line 262 of file QweakSimMagneticField.cc.
References fField, fScaleFactor, and fTranslationVector.
Referenced by PrintFieldValue(), and TestFieldMap().
|
inline |
Get the reference current.
Definition at line 68 of file QweakSimMagneticField.hh.
References fReferenceCurrent.
|
inline |
Get the field rotation around z.
Definition at line 89 of file QweakSimMagneticField.hh.
References fRotation.
|
inline |
Get the scale factor.
Definition at line 58 of file QweakSimMagneticField.hh.
References fScaleFactor.
|
inline |
Get the field translation along z.
Definition at line 97 of file QweakSimMagneticField.hh.
References fTranslation.
|
inline |
Get the field translation vector.
Definition at line 105 of file QweakSimMagneticField.hh.
References fTranslationVector.
void QweakSimMagneticField::PrintFieldValue | ( | const G4double | point[4] | ) | const |
Print the field value.
Definition at line 243 of file QweakSimMagneticField.cc.
References GetFieldValue().
Referenced by QweakSimMagneticFieldMessenger::SetNewValue().
void QweakSimMagneticField::ReadFieldMap | ( | const G4String & | filename | ) |
Read the field map.
Definition at line 92 of file QweakSimMagneticField.cc.
References ReadFieldMapBinary(), ReadFieldMapText(), and TestFieldMap().
Referenced by QweakSimMagneticFieldMessenger::SetNewValue().
void QweakSimMagneticField::ReadFieldMapBinary | ( | const G4String & | filename | ) |
Definition at line 156 of file QweakSimMagneticField.cc.
References fField.
Referenced by ReadFieldMap().
void QweakSimMagneticField::ReadFieldMapText | ( | const G4String & | filename | ) |
Definition at line 170 of file QweakSimMagneticField.cc.
References fField, fMax, fMin, fRotation, fRotationCos, fRotationSin, fStep, fTranslation, and fWrap.
Referenced by ReadFieldMap().
|
inline |
Set the actual current.
Definition at line 71 of file QweakSimMagneticField.hh.
References fActualCurrent, fReferenceCurrent, and SetScaleFactor().
Referenced by QweakSimMagneticFieldMessenger::SetNewValue().
|
inline |
Set the maximum.
Definition at line 114 of file QweakSimMagneticField.hh.
References fMax.
Referenced by QweakSimMagneticFieldMessenger::SetNewValue().
|
inline |
Set the minimum.
Definition at line 109 of file QweakSimMagneticField.hh.
References fMin.
Referenced by QweakSimMagneticFieldMessenger::SetNewValue().
|
inline |
Set the reference current.
Definition at line 61 of file QweakSimMagneticField.hh.
References fActualCurrent, fReferenceCurrent, and SetScaleFactor().
Referenced by QweakSimMagneticFieldMessenger::SetNewValue().
|
inline |
Set the field rotation around z.
Definition at line 82 of file QweakSimMagneticField.hh.
References fRotation, fRotationCos, and fRotationSin.
Referenced by QweakSimMagneticField(), and QweakSimMagneticFieldMessenger::SetNewValue().
|
inline |
Set the scale factor.
Definition at line 53 of file QweakSimMagneticField.hh.
References fScaleFactor.
Referenced by SetActualCurrent(), QweakSimMagneticFieldMessenger::SetNewValue(), and SetReferenceCurrent().
|
inline |
Set the step.
Definition at line 119 of file QweakSimMagneticField.hh.
References fStep.
Referenced by QweakSimMagneticFieldMessenger::SetNewValue().
|
inline |
Set the field translation along z.
Definition at line 92 of file QweakSimMagneticField.hh.
References fTranslation.
Referenced by QweakSimMagneticField(), and QweakSimMagneticFieldMessenger::SetNewValue().
|
inline |
Set the field translation vector.
Definition at line 100 of file QweakSimMagneticField.hh.
References fTranslationVector.
Referenced by QweakSimMagneticField(), and QweakSimMagneticFieldMessenger::SetNewValue().
|
inline |
Set the wrap.
Definition at line 124 of file QweakSimMagneticField.hh.
References fWrap.
Referenced by QweakSimMagneticFieldMessenger::SetNewValue().
void QweakSimMagneticField::TestFieldMap | ( | const G4double | point[4], |
const G4double | exact[3] | ||
) | const |
Test the field map.
Definition at line 119 of file QweakSimMagneticField.cc.
References GetFieldValue().
Referenced by ReadFieldMap().
|
private |
Definition at line 153 of file QweakSimMagneticField.hh.
Referenced by GetActualCurrent(), QweakSimMagneticField(), SetActualCurrent(), and SetReferenceCurrent().
|
private |
Definition at line 140 of file QweakSimMagneticField.hh.
Referenced by GetFieldValue(), QweakSimMagneticField(), ReadFieldMapBinary(), ReadFieldMapText(), and ~QweakSimMagneticField().
|
private |
Messenger.
Definition at line 35 of file QweakSimMagneticField.hh.
Referenced by QweakSimMagneticField(), and ~QweakSimMagneticField().
|
private |
Definition at line 157 of file QweakSimMagneticField.hh.
Referenced by QweakSimMagneticField(), ReadFieldMapText(), and SetMaximum().
|
private |
Field map grid definitions.
Definition at line 157 of file QweakSimMagneticField.hh.
Referenced by QweakSimMagneticField(), ReadFieldMapText(), and SetMinimum().
|
private |
Definition at line 154 of file QweakSimMagneticField.hh.
Referenced by GetReferenceCurrent(), QweakSimMagneticField(), SetActualCurrent(), and SetReferenceCurrent().
|
private |
Field rotation and translation with respect to the z axis.
Definition at line 147 of file QweakSimMagneticField.hh.
Referenced by GetRotation(), ReadFieldMapText(), and SetRotation().
|
private |
Definition at line 147 of file QweakSimMagneticField.hh.
Referenced by ReadFieldMapText(), and SetRotation().
|
private |
Definition at line 147 of file QweakSimMagneticField.hh.
Referenced by ReadFieldMapText(), and SetRotation().
|
private |
Field map reference and actual currents.
Definition at line 152 of file QweakSimMagneticField.hh.
Referenced by GetFieldValue(), GetScaleFactor(), QweakSimMagneticField(), and SetScaleFactor().
|
private |
Definition at line 157 of file QweakSimMagneticField.hh.
Referenced by QweakSimMagneticField(), ReadFieldMapText(), and SetStep().
|
private |
Definition at line 148 of file QweakSimMagneticField.hh.
Referenced by GetTranslation(), ReadFieldMapText(), and SetTranslation().
|
private |
Definition at line 149 of file QweakSimMagneticField.hh.
Referenced by GetFieldValue(), GetTranslationVector(), and SetTranslationVector().
|
private |
Definition at line 158 of file QweakSimMagneticField.hh.
Referenced by QweakSimMagneticField(), ReadFieldMapText(), and SetWrap().
|
staticprivate |
Number of field component in the map (x,y,z,r,phi)
Definition at line 29 of file QweakSimMagneticField.hh.