File indexing completed on 2025-08-05 08:15:37
0001 #ifndef ANALYTICFIELDMODEL_H
0002 #define ANALYTICFIELDMODEL_H
0003
0004 #include <TVector3.h>
0005
0006 class TFormula;
0007
0008 class AnalyticFieldModel
0009 {
0010 public:
0011 AnalyticFieldModel(float _ifc_radius, float _ofc_radius, float _z_max, float scalefactor = 1);
0012
0013 explicit AnalyticFieldModel(const AnalyticFieldModel &) = delete;
0014 AnalyticFieldModel &operator=(const AnalyticFieldModel &) = delete;
0015
0016 TVector3 E(const TVector3 &pos);
0017 double Rho(const TVector3 &pos);
0018 TVector3 Eint(float zfinal, const TVector3 &start);
0019
0020 private:
0021 TFormula *vTestFunction1{nullptr};
0022 TFormula *rhoTestFunction1{nullptr};
0023 TFormula *erTestFunction1{nullptr};
0024 TFormula *ePhiTestFunction1{nullptr};
0025 TFormula *ezTestFunction1{nullptr};
0026 TFormula *intErDzTestFunction1{nullptr};
0027
0028 TFormula *intEPhiDzTestFunction1{nullptr};
0029
0030 TFormula *intEzDzTestFunction1{nullptr};
0031 };
0032
0033 #endif