Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AnnularFieldSim Class Reference

#include <coresoftware/blob/master/calibrations/tpc/generator/AnnularFieldSim.h>

+ Collaboration diagram for AnnularFieldSim:

Public Types

enum  BoundsCase { InBounds, OnHighEdge, OnLowEdge, OutOfBounds }
 
enum  LookupCase {
  Full3D, HybridRes, PhiSlice, Analytic,
  NoLookup
}
 
enum  ChargeCase { FromFile, AnalyticSpacecharge, NoSpacecharge }
 

Public Member Functions

 AnnularFieldSim (float rmin, float rmax, float dz, int r, int phi, int z, float vdr)
 
 AnnularFieldSim (float rin, float rout, float dz, int r, int roi_r0, int roi_r1, int phi, int roi_phi0, int roi_phi1, int z, int roi_z0, int roi_z1, float vdr, LookupCase in_lookupCase=PhiSlice)
 
 AnnularFieldSim (float in_innerRadius, float in_outerRadius, float in_outerZ, int r, int roi_r0, int roi_r1, int in_rLowSpacing, int in_rHighSize, int phi, int roi_phi0, int roi_phi1, int in_phiLowSpacing, int in_phiHighSize, int z, int roi_z0, int roi_z1, int in_zLowSpacing, int in_zHighSize, float vdr, LookupCase in_lookupCase)
 
 AnnularFieldSim (float in_innerRadius, float in_outerRadius, float in_outerZ, int r, int roi_r0, int roi_r1, int in_rLowSpacing, int in_rHighSize, int phi, int roi_phi0, int roi_phi1, int in_phiLowSpacing, int in_phiHighSize, int z, int roi_z0, int roi_z1, int in_zLowSpacing, int in_zHighSize, float vdr, LookupCase in_lookupCase, ChargeCase in_chargeCase)
 
 AnnularFieldSim (const AnnularFieldSim &)=delete
 delete copy ctor and assignment opertor (cppcheck)
 
AnnularFieldSimoperator= (const AnnularFieldSim &)=delete
 
void UpdateEveryN (int n)
 
bool debugFlag ()
 
void SetDistortionScaleRPZ (float a, float b, float c)
 
void SetTruncationDistance (int x)
 
const char * GetLookupString ()
 
const char * GetGasString ()
 
const char * GetFieldString ()
 
const char * GetChargeString ()
 
float GetNominalB ()
 
float GetNominalE ()
 
float GetChargeAt (const TVector3 &pos)
 
TVector3 GetFieldAt (const TVector3 &pos)
 
TVector3 GetBFieldAt (const TVector3 &pos)
 
TVector3 GetFieldStep ()
 
int GetFieldStepsR ()
 
int GetFieldStepsPhi ()
 
int GetFieldStepsZ ()
 
TVector3 GetInnerEdge ()
 
TVector3 GetOuterEdge ()
 
void GenerateDistortionMaps (const char *filebase, int r_subsamples=1, int p_subsamples=1, int z_subsamples=1, int z_substeps=1, bool andCartesian=false)
 
void GenerateSeparateDistortionMaps (const char *filebase, int nSteps=500, int r_subsamples=1, int p_subsamples=1, int z_subsamples=1, int z_substeps=1, bool andCartesian=false)
 
void PlotFieldSlices (const char *filebase, const TVector3 &pos, char which= 'E')
 
void load_spacecharge (const std::string &filename, const std::string &histname, float zoffset=0, float chargescale=1, float cmscale=1, bool isChargeDensity=true)
 
void load_spacecharge (TH3 *hist, float zoffset, float chargescale, float cmscale, bool isChargeDensity, const char *inputchargestring="")
 
void load_digital_current (TH3 *hist, TH2 *gainHist, float chargescale, float cmscale, const char *inputchargestring)
 
void load_and_resample_spacecharge (int new_nphi, int new_nr, int new_nz, const std::string &filename, const std::string &histname, float zoffset, float chargescale, float cmscale, bool isChargeDensity)
 
void load_and_resample_spacecharge (int new_nphi, int new_nr, int new_nz, TH3 *hist, float zoffset, float chargescale, float cmscale, bool isChargeDensity)
 
void save_spacecharge (const std::string &filename)
 
void load_analytic_spacecharge (float scalefactor)
 
void add_testcharge (float r, float phi, float z, float coulombs)
 
void setNominalB (float x)
 
void setNominalE (float x)
 
void setFlatFields (float B, float E)
 
void loadEfield (const std::string &filename, const std::string &treename, int zsign=1)
 
void loadBfield (const std::string &filename, const std::string &treename)
 
void load3dBfield (const std::string &filename, const std::string &treename, int zsign=1, float scale=1.0)
 
void loadField (MultiArray< TVector3 > **field, TTree *source, float *rptr, float *phiptr, float *zptr, float *frptr, float *fphiptr, float *fzptr, float fieldunit, int zsign)
 
void load_rossegger (double epsilon=1E-4)
 
void borrow_rossegger (Rossegger *ross, float zshift)
 
void borrow_epartial_from (AnnularFieldSim *sim, float zshift)
 
void set_twin (AnnularFieldSim *sim)
 
TVector3 calc_unit_field (TVector3 at, TVector3 from)
 
TVector3 analyticFieldIntegral (float zdest, TVector3 start)
 
TVector3 analyticFieldIntegral (float zdest, TVector3 start, MultiArray< TVector3 > *field)
 
TVector3 interpolatedFieldIntegral (float zdest, TVector3 start)
 
TVector3 interpolatedFieldIntegral (float zdest, const TVector3 &start, MultiArray< TVector3 > *field)
 
double FilterPhiPos (double phi)
 
int FilterPhiIndex (int phi, int range)
 
TVector3 GetCellCenter (int r, int phi, int z)
 
TVector3 GetRoiCellCenter (int r, int phi, int z)
 
TVector3 GetGroupCellCenter (int r0, int r1, int phi0, int phi1, int z0, int z1)
 
TVector3 GetWeightedCellCenter (int r, int phi, int z)
 
TVector3 fieldIntegral (float zdest, const TVector3 &start, MultiArray< TVector3 > *field)
 
void populate_fieldmap ()
 
void populate_lookup ()
 
void populate_full3d_lookup ()
 
void populate_highres_lookup ()
 
void populate_lowres_lookup ()
 
void populate_phislice_lookup ()
 
void load_phislice_lookup (const char *sourcefile)
 
void save_phislice_lookup (const char *destfile)
 
TVector3 sum_field_at (int r, int phi, int z)
 
TVector3 sum_full3d_field_at (int r, int phi, int z)
 
TVector3 sum_local_field_at (int r, int phi, int z)
 
TVector3 sum_nonlocal_field_at (int r, int phi, int z)
 
TVector3 sum_phislice_field_at (int r, int phi, int z)
 
TVector3 swimToInAnalyticSteps (float zdest, TVector3 start, int steps, int *goodToStep)
 
TVector3 swimToInSteps (float zdest, const TVector3 &start, int steps, bool interpolate, int *goodToStep)
 
TVector3 swimTo (float zdest, const TVector3 &start, bool interpolate=true, bool useAnalytic=false)
 
TVector3 GetStepDistortion (float zdest, const TVector3 &start, bool interpolate=true, bool useAnalytic=false)
 
TVector3 GetTotalDistortion (float zdest, const TVector3 &start, int nsteps, bool interpolate=true, int *goodToStep=0, int *success=0)
 

Public Attributes

Rosseggergreen
 
float green_shift
 
AnnularFieldSimtwin = nullptr
 
bool hasTwin = false
 

Private Member Functions

BoundsCase GetRindexAndCheckBounds (float pos, int *r)
 
BoundsCase GetPhiIndexAndCheckBounds (float pos, int *phi)
 
BoundsCase GetZindexAndCheckBounds (float pos, int *z)
 
int GetRindex (float pos)
 
int GetPhiIndex (float pos)
 
int GetZindex (float pos)
 
void UpdateOmegaTau ()
 

Private Attributes

const float cm = 1
 
const float m = 100 * cm
 
const float mm = cm / 10
 
const float um = mm / 1e3
 
const float C = 1
 
const float nC = C / 1e9
 
const float fC = C / 1e15
 
const float s = 1
 
const float us = s / 1e6
 
const float ns = s / 1e9
 
const float V = 1
 
const float Tesla = V * s / m / m
 
const float kGauss = Tesla / 10
 
const float eps0 = 8.854e-12 * (C / V) / m
 
const float epsinv = 1 / eps0
 
const float k_perm = 1 / (4 * 3.1416 * eps0)
 
bool RdeltaRswitch = false
 
int debug_printActionEveryN
 
int debug_npercent
 
int debug_printCounter
 
TVector3 debug_distortionScale
 
AnalyticFieldModelaliceModel = nullptr
 
TVector3 zero_vector
 
double vdrift = NAN
 
double langevin_T1 = NAN
 
double langevin_T2 = NAN
 
double omegatau_nominal = NAN
 
std::string fieldstring
 
std::string Bfieldname
 
std::string Efieldname
 
std::string chargesourcename
 
char chargestring [300] = {0}
 
float Enominal = NAN
 
float Bnominal
 
float phispan
 
float rmin
 
float rmax
 
float zmin
 
float zmax
 
TVector3 dim
 
int nr
 
int nphi
 
int nz
 
TVector3 step
 
LookupCase lookupCase
 
ChargeCase chargeCase
 
int truncation_length
 
int rmin_roi
 
int phimin_roi
 
int zmin_roi
 
int rmax_roi
 
int phimax_roi
 
int zmax_roi
 
int nr_roi
 
int nphi_roi
 
int nz_roi
 
int nr_high = -1
 
int nphi_high = -1
 
int nz_high = -1
 
int r_spacing = -1
 
int phi_spacing = -1
 
int z_spacing = -1
 
int nr_low = -1
 
int nphi_low = -1
 
int nz_low = -1
 
int rmin_roi_low = -1
 
int phimin_roi_low = -1
 
int zmin_roi_low = -1
 
int rmax_roi_low = -1
 
int phimax_roi_low = -1
 
int zmax_roi_low = -1
 
int nr_roi_low = -1
 
int nphi_roi_low = -1
 
int nz_roi_low = -1
 
MultiArray< TVector3 > * Efield
 
MultiArray< TVector3 > * Epartial_highres
 
MultiArray< TVector3 > * Epartial_lowres
 
MultiArray< TVector3 > * Epartial
 
MultiArray< TVector3 > * Epartial_phislice
 
MultiArray< TVector3 > * Eexternal
 
MultiArray< TVector3 > * Bfield
 
ChargeMapReaderq
 
MultiArray< double > * q_local
 
MultiArray< double > * q_lowres
 
TH2F * hRdeltaRComponent {nullptr}
 

Detailed Description

Definition at line 17 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 17 of file AnnularFieldSim.h

Member Enumeration Documentation

Enumerator:
InBounds 
OnHighEdge 
OnLowEdge 
OutOfBounds 

Definition at line 20 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 20 of file AnnularFieldSim.h

Enumerator:
FromFile 
AnalyticSpacecharge 
NoSpacecharge 

Definition at line 41 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 41 of file AnnularFieldSim.h

Enumerator:
Full3D 
HybridRes 
PhiSlice 
Analytic 
NoLookup 

Definition at line 27 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 27 of file AnnularFieldSim.h

Constructor & Destructor Documentation

AnnularFieldSim::AnnularFieldSim ( float  rmin,
float  rmax,
float  dz,
int  r,
int  phi,
int  z,
float  vdr 
)

Definition at line 284 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 284 of file AnnularFieldSim.cc

References printf().

+ Here is the call graph for this function:

AnnularFieldSim::AnnularFieldSim ( float  rin,
float  rout,
float  dz,
int  r,
int  roi_r0,
int  roi_r1,
int  phi,
int  roi_phi0,
int  roi_phi1,
int  z,
int  roi_z0,
int  roi_z1,
float  vdr,
LookupCase  in_lookupCase = PhiSlice 
)

Definition at line 268 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 268 of file AnnularFieldSim.cc

References printf().

+ Here is the call graph for this function:

AnnularFieldSim::AnnularFieldSim ( float  in_innerRadius,
float  in_outerRadius,
float  in_outerZ,
int  r,
int  roi_r0,
int  roi_r1,
int  in_rLowSpacing,
int  in_rHighSize,
int  phi,
int  roi_phi0,
int  roi_phi1,
int  in_phiLowSpacing,
int  in_phiHighSize,
int  z,
int  roi_z0,
int  roi_z1,
int  in_zLowSpacing,
int  in_zHighSize,
float  vdr,
LookupCase  in_lookupCase 
)

Definition at line 254 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 254 of file AnnularFieldSim.cc

References printf().

+ Here is the call graph for this function:

AnnularFieldSim::AnnularFieldSim ( float  in_innerRadius,
float  in_outerRadius,
float  in_outerZ,
int  r,
int  roi_r0,
int  roi_r1,
int  in_rLowSpacing,
int  in_rHighSize,
int  phi,
int  roi_phi0,
int  roi_phi1,
int  in_phiLowSpacing,
int  in_phiHighSize,
int  z,
int  roi_z0,
int  roi_z1,
int  in_zLowSpacing,
int  in_zHighSize,
float  vdr,
LookupCase  in_lookupCase,
ChargeCase  in_chargeCase 
)
AnnularFieldSim::AnnularFieldSim ( const AnnularFieldSim )
explicitdelete

delete copy ctor and assignment opertor (cppcheck)

Member Function Documentation

void AnnularFieldSim::add_testcharge ( float  r,
float  phi,
float  z,
float  coulombs 
)

Definition at line 1268 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 1268 of file AnnularFieldSim.cc

References ChargeMapReader::AddChargeAtPosition(), C, and q.

+ Here is the call graph for this function:

TVector3 AnnularFieldSim::analyticFieldIntegral ( float  zdest,
TVector3  start 
)
inline

Definition at line 177 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 177 of file AnnularFieldSim.h

References analyticFieldIntegral(), and Efield.

Referenced by analyticFieldIntegral(), and GetStepDistortion().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::analyticFieldIntegral ( float  zdest,
TVector3  start,
MultiArray< TVector3 > *  field 
)

Definition at line 509 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 509 of file AnnularFieldSim.cc

References aliceModel, Bfield, Eexternal, Efield, AnalyticFieldModel::Eint(), FilterPhiPos(), MultiArray< T >::Get(), GetPhiIndexAndCheckBounds(), GetRindexAndCheckBounds(), GetZindexAndCheckBounds(), InBounds, integral(), interpolatedFieldIntegral(), OnHighEdge, ActsTests::PropagationDatasets::phi, phimin_roi, printf(), physmon_track_finding_ttbar::r, rmin_roi, start, and zmin_roi.

+ Here is the call graph for this function:

void AnnularFieldSim::borrow_epartial_from ( AnnularFieldSim sim,
float  zshift 
)
inline

Definition at line 163 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 163 of file AnnularFieldSim.h

References Epartial_phislice, and green_shift.

Referenced by SetupDefaultSphenixTpc(), and SetupDigitalCurrentSphenixTpc().

+ Here is the caller graph for this function:

void AnnularFieldSim::borrow_rossegger ( Rossegger ross,
float  zshift 
)
inline

Definition at line 157 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 157 of file AnnularFieldSim.h

References green, and green_shift.

Referenced by SetupDefaultSphenixTpc(), and SetupDigitalCurrentSphenixTpc().

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::calc_unit_field ( TVector3  at,
TVector3  from 
)

Definition at line 296 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 296 of file AnnularFieldSim.cc

References ALMOST_ZERO, assert, Rossegger::Ephi(), epsinv, Rossegger::Er(), Rossegger::Ez(), ckf::field, FilterPhiPos(), GetRindexAndCheckBounds(), green, green_shift, InBounds, k_perm, and printf().

Referenced by populate_full3d_lookup(), populate_highres_lookup(), populate_lowres_lookup(), and populate_phislice_lookup().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

bool AnnularFieldSim::debugFlag ( )
inline

Definition at line 77 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 77 of file AnnularFieldSim.h

References debug_printActionEveryN, and debug_printCounter.

Referenced by sum_field_at().

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::fieldIntegral ( float  zdest,
const TVector3 &  start,
MultiArray< TVector3 > *  field 
)

Definition at line 576 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 576 of file AnnularFieldSim.cc

References ALMOST_ZERO, FilterPhiPos(), MultiArray< T >::Get(), GetPhiIndexAndCheckBounds(), GetRindexAndCheckBounds(), GetZindexAndCheckBounds(), i, InBounds, OnHighEdge, ActsTests::PropagationDatasets::phi, phimin_roi, printf(), physmon_track_finding_ttbar::r, rmin_roi, start, step, and zmin_roi.

Referenced by GetStepDistortion().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int AnnularFieldSim::FilterPhiIndex ( int  phi,
int  range = -1 
)

Definition at line 374 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 374 of file AnnularFieldSim.cc

References assert, nphi, merge_hashes::p, ActsTests::PropagationDatasets::phi, and printf().

Referenced by GetPhiIndex(), GetPhiIndexAndCheckBounds(), interpolatedFieldIntegral(), populate_highres_lookup(), sum_local_field_at(), sum_nonlocal_field_at(), and sum_phislice_field_at().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

double AnnularFieldSim::FilterPhiPos ( double  phi)

Definition at line 354 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 354 of file AnnularFieldSim.cc

References assert, merge_hashes::p, ActsTests::PropagationDatasets::phi, and printf().

Referenced by analyticFieldIntegral(), calc_unit_field(), fieldIntegral(), GenerateDistortionMaps(), GenerateSeparateDistortionMaps(), GetBFieldAt(), GetChargeAt(), GetFieldAt(), GetStepDistortion(), GetTotalDistortion(), loadField(), PlotFieldSlices(), and swimToInAnalyticSteps().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void AnnularFieldSim::GenerateDistortionMaps ( const char *  filebase,
int  r_subsamples = 1,
int  p_subsamples = 1,
int  z_subsamples = 1,
int  z_substeps = 1,
bool  andCartesian = false 
)

Definition at line 3394 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 3394 of file AnnularFieldSim.cc

References CKF_timing_vs_mu::ax, Acts::PhysicalConstants::c, debug_distortionScale, debug_npercent, FilterPhiPos(), GetChargeString(), GetFieldStepsPhi(), GetFieldStepsR(), GetFieldStepsZ(), GetFieldString(), GetGasString(), GetLookupString(), GetRoiCellCenter(), GetTotalDistortion(), GetZindex(), hasTwin, i, nphi, nr, nz, phimax_roi, phimin_roi, Acts::Test::pos, printf(), rmax_roi, rmin_roi, step, tex, twin, zmax_roi, zmin, and zmin_roi.

+ Here is the call graph for this function:

void AnnularFieldSim::GenerateSeparateDistortionMaps ( const char *  filebase,
int  nSteps = 500,
int  r_subsamples = 1,
int  p_subsamples = 1,
int  z_subsamples = 1,
int  z_substeps = 1,
bool  andCartesian = false 
)

Definition at line 2816 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 2816 of file AnnularFieldSim.cc

References CKF_timing_vs_mu::ax, Acts::PhysicalConstants::c, Data, debug_distortionScale, debug_npercent, FilterPhiPos(), GetChargeString(), GetFieldStepsPhi(), GetFieldStepsR(), GetFieldStepsZ(), GetFieldString(), GetGasString(), GetLookupString(), GetRoiCellCenter(), GetTotalDistortion(), hasTwin, hRdeltaRComponent, i, j, nphi, nr, nz, phimax_roi, phimin_roi, Acts::Test::pos, printf(), RdeltaRswitch, rmax_roi, rmin_roi, step, tex, twin, zero_vector, zmax_roi, zmin, and zmin_roi.

Referenced by generate_distortion_map().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::GetBFieldAt ( const TVector3 &  pos)

Definition at line 4127 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 4127 of file AnnularFieldSim.cc

References Bfield, FilterPhiPos(), MultiArray< T >::Get(), GetBFieldAt(), GetPhiIndexAndCheckBounds(), GetRindexAndCheckBounds(), GetZindexAndCheckBounds(), hasTwin, merge_hashes::p, physmon_track_finding_ttbar::r, twin, physmon_track_finding_ttbar::z, and zero_vector.

Referenced by GetBFieldAt(), and PlotFieldSlices().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::GetCellCenter ( int  r,
int  phi,
int  z 
)

Definition at line 645 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 645 of file AnnularFieldSim.cc

References Acts::PhysicalConstants::c, rmin, step, and zmin.

Referenced by load_analytic_spacecharge(), loadField(), populate_full3d_lookup(), populate_highres_lookup(), populate_phislice_lookup(), and sum_field_at().

+ Here is the caller graph for this function:

float AnnularFieldSim::GetChargeAt ( const TVector3 &  pos)

Definition at line 4152 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 4152 of file AnnularFieldSim.cc

References FilterPhiPos(), GetChargeAt(), ChargeMapReader::GetChargeAtPosition(), GetZindexAndCheckBounds(), hasTwin, OutOfBounds, printf(), q, twin, and physmon_track_finding_ttbar::z.

Referenced by GetChargeAt(), and PlotFieldSlices().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const char* AnnularFieldSim::GetChargeString ( )
inline

Definition at line 101 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 101 of file AnnularFieldSim.h

References chargestring.

Referenced by GenerateDistortionMaps(), and GenerateSeparateDistortionMaps().

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::GetFieldAt ( const TVector3 &  pos)

Definition at line 4102 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 4102 of file AnnularFieldSim.cc

References Efield, FilterPhiPos(), MultiArray< T >::Get(), GetFieldAt(), GetPhiIndexAndCheckBounds(), GetRindexAndCheckBounds(), GetZindexAndCheckBounds(), hasTwin, merge_hashes::p, physmon_track_finding_ttbar::r, twin, physmon_track_finding_ttbar::z, and zero_vector.

Referenced by GetFieldAt(), and PlotFieldSlices().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::GetFieldStep ( )
inline

Definition at line 107 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 107 of file AnnularFieldSim.h

References step.

Referenced by PlotFieldSlices().

+ Here is the caller graph for this function:

int AnnularFieldSim::GetFieldStepsPhi ( )
inline

Definition at line 109 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 109 of file AnnularFieldSim.h

References nphi_roi.

Referenced by GenerateDistortionMaps(), and GenerateSeparateDistortionMaps().

+ Here is the caller graph for this function:

int AnnularFieldSim::GetFieldStepsR ( )
inline

Definition at line 108 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 108 of file AnnularFieldSim.h

References nr_roi.

Referenced by GenerateDistortionMaps(), and GenerateSeparateDistortionMaps().

+ Here is the caller graph for this function:

int AnnularFieldSim::GetFieldStepsZ ( )
inline

Definition at line 110 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 110 of file AnnularFieldSim.h

References nz_roi.

Referenced by GenerateDistortionMaps(), and GenerateSeparateDistortionMaps().

+ Here is the caller graph for this function:

const char * AnnularFieldSim::GetFieldString ( )

Definition at line 4097 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 4097 of file AnnularFieldSim.cc

References Bfieldname, and Efieldname.

Referenced by GenerateDistortionMaps(), and GenerateSeparateDistortionMaps().

+ Here is the caller graph for this function:

const char * AnnularFieldSim::GetGasString ( )

Definition at line 4092 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 4092 of file AnnularFieldSim.cc

References Bnominal, cm, Enominal, omegatau_nominal, Tesla, us, V, and vdrift.

Referenced by GenerateDistortionMaps(), and GenerateSeparateDistortionMaps().

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::GetGroupCellCenter ( int  r0,
int  r1,
int  phi0,
int  phi1,
int  z0,
int  z1 
)

Definition at line 675 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 675 of file AnnularFieldSim.cc

References assert, Acts::PhysicalConstants::c, nphi, printf(), r1, rmin, step, and zmin.

Referenced by populate_lowres_lookup().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::GetInnerEdge ( )
inline

Definition at line 111 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 111 of file AnnularFieldSim.h

References rmin, and zmin.

Referenced by generate_distortion_map(), and PlotFieldSlices().

+ Here is the caller graph for this function:

const char * AnnularFieldSim::GetLookupString ( )

Definition at line 4078 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 4078 of file AnnularFieldSim.cc

References lookupCase, nphi, nphi_roi, nr, nr_roi, nz, and nz_roi.

Referenced by GenerateDistortionMaps(), and GenerateSeparateDistortionMaps().

+ Here is the caller graph for this function:

float AnnularFieldSim::GetNominalB ( )
inline

Definition at line 102 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 102 of file AnnularFieldSim.h

References Bnominal.

float AnnularFieldSim::GetNominalE ( )
inline

Definition at line 103 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 103 of file AnnularFieldSim.h

References Enominal.

TVector3 AnnularFieldSim::GetOuterEdge ( )
inline

Definition at line 112 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 112 of file AnnularFieldSim.h

References rmax, and zmax.

Referenced by generate_distortion_map(), and PlotFieldSlices().

+ Here is the caller graph for this function:

int AnnularFieldSim::GetPhiIndex ( float  pos)
private

Definition at line 406 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 406 of file AnnularFieldSim.cc

References FilterPhiIndex(), Acts::Test::pos, and step.

+ Here is the call graph for this function:

AnnularFieldSim::BoundsCase AnnularFieldSim::GetPhiIndexAndCheckBounds ( float  pos,
int *  phi 
)
private

Definition at line 448 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 448 of file AnnularFieldSim.cc

References ALMOST_ZERO, FilterPhiIndex(), InBounds, nphi, OnHighEdge, OnLowEdge, OutOfBounds, phimax_roi, phimin_roi, Acts::Test::pos, and step.

Referenced by analyticFieldIntegral(), fieldIntegral(), GetBFieldAt(), GetFieldAt(), GetStepDistortion(), GetTotalDistortion(), and swimToInAnalyticSteps().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int AnnularFieldSim::GetRindex ( float  pos)
private

Definition at line 399 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 399 of file AnnularFieldSim.cc

References r0, rmin, and step.

AnnularFieldSim::BoundsCase AnnularFieldSim::GetRindexAndCheckBounds ( float  pos,
int *  r 
)
private

Definition at line 421 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 421 of file AnnularFieldSim.cc

References ALMOST_ZERO, InBounds, OnHighEdge, OnLowEdge, OutOfBounds, r0, rmax_roi, rmin, rmin_roi, and step.

Referenced by analyticFieldIntegral(), calc_unit_field(), fieldIntegral(), GetBFieldAt(), GetFieldAt(), GetStepDistortion(), GetTotalDistortion(), and swimToInAnalyticSteps().

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::GetRoiCellCenter ( int  r,
int  phi,
int  z 
)

Definition at line 657 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 657 of file AnnularFieldSim.cc

References Acts::PhysicalConstants::c, nphi_roi, nr_roi, nz_roi, phimin_roi, rmin, rmin_roi, step, zero_vector, zmin, and zmin_roi.

Referenced by GenerateDistortionMaps(), GenerateSeparateDistortionMaps(), and sum_phislice_field_at().

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::GetStepDistortion ( float  zdest,
const TVector3 &  start,
bool  interpolate = true,
bool  useAnalytic = false 
)

Definition at line 3920 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 3920 of file AnnularFieldSim.cc

References ALMOST_ZERO, analyticFieldIntegral(), assert, Bfield, c2, chargeCase, cm, debug_distortionScale, E, Efield, Enominal, fieldIntegral(), FilterPhiPos(), GetPhiIndexAndCheckBounds(), GetRindexAndCheckBounds(), GetZindexAndCheckBounds(), InBounds, interpolatedFieldIntegral(), langevin_T1, langevin_T2, NoSpacecharge, omegatau_nominal, OnHighEdge, printf(), physmon_track_finding_ttbar::pt, s, start, step, Tesla, V, vdrift, and zero_vector.

Referenced by GetTotalDistortion(), swimToInAnalyticSteps(), and TestSpotDistortion().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::GetTotalDistortion ( float  zdest,
const TVector3 &  start,
int  nsteps,
bool  interpolate = true,
int *  goodToStep = 0,
int *  success = 0 
)

Definition at line 2529 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 2529 of file AnnularFieldSim.cc

References ALMOST_ZERO, FilterPhiPos(), GetPhiIndexAndCheckBounds(), GetRindexAndCheckBounds(), GetStepDistortion(), GetTotalDistortion(), GetZindexAndCheckBounds(), hasTwin, hRdeltaRComponent, i, InBounds, OnLowEdge, OutOfBounds, phimax_roi, phimin_roi, position, printf(), physmon_track_finding_ttbar::pt, RdeltaRswitch, rmax_roi, rmin, rmin_roi, start, step, twin, zero_vector, zmax, zmax_roi, zmin, and zmin_roi.

Referenced by GenerateDistortionMaps(), GenerateSeparateDistortionMaps(), GetTotalDistortion(), and swimToInSteps().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::GetWeightedCellCenter ( int  r,
int  phi,
int  z 
)

Definition at line 704 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 704 of file AnnularFieldSim.cc

References Acts::PhysicalConstants::c, rmin, and step.

int AnnularFieldSim::GetZindex ( float  pos)
private

Definition at line 414 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 414 of file AnnularFieldSim.cc

References step, and zmin.

Referenced by GenerateDistortionMaps().

+ Here is the caller graph for this function:

AnnularFieldSim::BoundsCase AnnularFieldSim::GetZindexAndCheckBounds ( float  pos,
int *  z 
)
private

Definition at line 482 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 482 of file AnnularFieldSim.cc

References ALMOST_ZERO, InBounds, OnHighEdge, OnLowEdge, OutOfBounds, step, zmax_roi, zmin, and zmin_roi.

Referenced by analyticFieldIntegral(), fieldIntegral(), GetBFieldAt(), GetChargeAt(), GetFieldAt(), GetStepDistortion(), GetTotalDistortion(), interpolatedFieldIntegral(), and swimToInAnalyticSteps().

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::interpolatedFieldIntegral ( float  zdest,
TVector3  start 
)
inline

Definition at line 180 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 180 of file AnnularFieldSim.h

References Efield, and interpolatedFieldIntegral().

Referenced by analyticFieldIntegral(), GetStepDistortion(), and interpolatedFieldIntegral().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::interpolatedFieldIntegral ( float  zdest,
const TVector3 &  start,
MultiArray< TVector3 > *  field 
)

Definition at line 721 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 721 of file AnnularFieldSim.cc

References ALMOST_ZERO, Bfield, Efield, FilterPhiIndex(), MultiArray< T >::Get(), GetZindexAndCheckBounds(), i, InBounds, j, OnHighEdge, OnLowEdge, phimax_roi, phimin_roi, pi, printf(), r0, rmax_roi, rmin, rmin_roi, Acts::Test::skip, step, zero_vector, zmin, and zmin_roi.

+ Here is the call graph for this function:

void AnnularFieldSim::load3dBfield ( const std::string &  filename,
const std::string &  treename,
int  zsign = 1,
float  scale = 1.0 
)

Definition at line 969 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 969 of file AnnularFieldSim.cc

References Bfield, Bfieldname, material_mapping_optimisation::format, loadField(), ActsTests::PropagationDatasets::phi, physmon_track_finding_ttbar::r, str, Tesla, and physmon_track_finding_ttbar::z.

Referenced by SetupDefaultSphenixTpc(), and SetupDigitalCurrentSphenixTpc().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void AnnularFieldSim::load_analytic_spacecharge ( float  scalefactor = 1)

Definition at line 856 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 856 of file AnnularFieldSim.cc

References MultiArray< T >::Add(), ChargeMapReader::AddChargeInBin(), aliceModel, cm, GetCellCenter(), ChargeMapReader::GetChargeInBin(), MultiArray< T >::GetFlat(), HybridRes, i, MultiArray< T >::Length(), lookupCase, nphi, nr, nz, phi_spacing, Acts::Test::pos, printf(), q, q_lowres, r_spacing, AnalyticFieldModel::Rho(), rmin, step, and z_spacing.

+ Here is the call graph for this function:

void AnnularFieldSim::load_and_resample_spacecharge ( int  new_nphi,
int  new_nr,
int  new_nz,
const std::string &  filename,
const std::string &  histname,
float  zoffset,
float  chargescale,
float  cmscale,
bool  isChargeDensity 
)

Definition at line 1113 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 1113 of file AnnularFieldSim.cc

References chargesourcename, and f.

void AnnularFieldSim::load_and_resample_spacecharge ( int  new_nphi,
int  new_nr,
int  new_nz,
TH3 *  hist,
float  zoffset,
float  chargescale,
float  cmscale,
bool  isChargeDensity 
)

Definition at line 1126 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 1126 of file AnnularFieldSim.cc

References Acts::Test::hz, i, j, k, load_spacecharge(), ActsTests::PropagationDatasets::phi, printf(), physmon_track_finding_ttbar::r, and physmon_track_finding_ttbar::z.

+ Here is the call graph for this function:

void AnnularFieldSim::load_digital_current ( TH3 *  hist,
TH2 *  gainHist,
float  chargescale,
float  cmscale,
const char *  inputchargestring 
)

Definition at line 1238 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 1238 of file AnnularFieldSim.cc

References chargestring, q, and ChargeMapReader::ReadSourceAdc().

Referenced by generate_distortion_map().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void AnnularFieldSim::load_phislice_lookup ( const char *  sourcefile)

Definition at line 1799 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 1799 of file AnnularFieldSim.cc

References assert, C, cm, debug_npercent, Epartial_phislice, i, digitization_config::input, nphi, nr, nr_roi, nz, nz_roi, printf(), rmax, rmax_roi, rmin, rmin_roi, MultiArray< T >::Set(), V, zmax, zmax_roi, zmin, and zmin_roi.

Referenced by SetupDefaultSphenixTpc(), and SetupDigitalCurrentSphenixTpc().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void AnnularFieldSim::load_rossegger ( double  epsilon = 1E-4)
inline

Definition at line 152 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 152 of file AnnularFieldSim.h

References green, rmax, rmin, and zmax.

Referenced by SetupDefaultSphenixTpc(), and SetupDigitalCurrentSphenixTpc().

+ Here is the caller graph for this function:

void AnnularFieldSim::load_spacecharge ( const std::string &  filename,
const std::string &  histname,
float  zoffset = 0,
float  chargescale = 1,
float  cmscale = 1,
bool  isChargeDensity = true 
)

Definition at line 1099 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 1099 of file AnnularFieldSim.cc

References chargesourcename, and f.

Referenced by generate_distortion_map(), and load_and_resample_spacecharge().

+ Here is the caller graph for this function:

void AnnularFieldSim::load_spacecharge ( TH3 *  hist,
float  zoffset,
float  chargescale,
float  cmscale,
bool  isChargeDensity,
const char *  inputchargestring = "" 
)

Definition at line 1219 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 1219 of file AnnularFieldSim.cc

References assert, chargestring, printf(), q, and ChargeMapReader::ReadSourceCharge().

+ Here is the call graph for this function:

void AnnularFieldSim::loadBfield ( const std::string &  filename,
const std::string &  treename 
)

Definition at line 944 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 944 of file AnnularFieldSim.cc

References Bfield, Bfieldname, loadField(), physmon_track_finding_ttbar::r, Tesla, and physmon_track_finding_ttbar::z.

+ Here is the call graph for this function:

void AnnularFieldSim::loadEfield ( const std::string &  filename,
const std::string &  treename,
int  zsign = 1 
)

Definition at line 920 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 920 of file AnnularFieldSim.cc

References cm, Eexternal, Efieldname, loadField(), physmon_track_finding_ttbar::r, V, and physmon_track_finding_ttbar::z.

Referenced by SetupDefaultSphenixTpc(), and SetupDigitalCurrentSphenixTpc().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void AnnularFieldSim::loadField ( MultiArray< TVector3 > **  field,
TTree *  source,
float *  rptr,
float *  phiptr,
float *  zptr,
float *  frptr,
float *  fphiptr,
float *  fzptr,
float  fieldunit,
int  zsign 
)

Definition at line 990 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 990 of file AnnularFieldSim.cc

References assert, Bfield, FilterPhiPos(), GetCellCenter(), i, j, k, nphi, nr, nz, printf(), rmax, rmin, step, zmax, and zmin.

Referenced by load3dBfield(), loadBfield(), and loadEfield().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

AnnularFieldSim& AnnularFieldSim::operator= ( const AnnularFieldSim )
delete
void AnnularFieldSim::PlotFieldSlices ( const char *  filebase,
const TVector3 &  pos,
char  which = 'E' 
)

Definition at line 2665 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 2665 of file AnnularFieldSim.cc

References CKF_timing_vs_mu::ax, Acts::PhysicalConstants::c, cm, ckf::field, FilterPhiPos(), GetBFieldAt(), GetChargeAt(), GetFieldAt(), GetFieldStep(), GetInnerEdge(), GetOuterEdge(), hasTwin, i, j, nphi_roi, nr_roi, nz_roi, printf(), Tesla, twin, and V.

Referenced by generate_distortion_map().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void AnnularFieldSim::populate_fieldmap ( )

Definition at line 1322 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 1322 of file AnnularFieldSim.cc

References debug_npercent, Efield, nphi, nphi_roi, nr, nr_roi, nz, nz_roi, phimax_roi, phimin_roi, printf(), rmax_roi, rmin_roi, MultiArray< T >::Set(), sum_field_at(), truncation_length, zmax_roi, and zmin_roi.

Referenced by generate_distortion_map().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void AnnularFieldSim::populate_full3d_lookup ( )

Definition at line 1405 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 1405 of file AnnularFieldSim.cc

References Acts::Test::at, calc_unit_field(), debug_npercent, Epartial, GetCellCenter(), nphi, nr, nz, phimax_roi, phimin_roi, printf(), rmax_roi, rmin_roi, MultiArray< T >::Set(), KFPMath::zero(), zmax_roi, and zmin_roi.

Referenced by populate_lookup().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void AnnularFieldSim::populate_highres_lookup ( )

Definition at line 1464 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 1464 of file AnnularFieldSim.cc

References Acts::Test::at, calc_unit_field(), Epartial_highres, FilterPhiIndex(), MultiArray< T >::Get(), GetCellCenter(), i, j, k, Jetscape::nf, nphi, nphi_high, nr, nr_high, nz, nz_high, phi_spacing, phimax_roi, phimin_roi, printf(), r_spacing, rmax_roi, rmin_roi, MultiArray< T >::Set(), z_spacing, KFPMath::zero(), zmax_roi, and zmin_roi.

Referenced by populate_lookup().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void AnnularFieldSim::populate_lookup ( )

Definition at line 1366 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 1366 of file AnnularFieldSim.cc

References Analytic, assert, Full3D, HybridRes, lookupCase, NoLookup, PhiSlice, populate_full3d_lookup(), populate_highres_lookup(), populate_lowres_lookup(), populate_phislice_lookup(), and printf().

Referenced by SetupDefaultSphenixTpc(), and SetupDigitalCurrentSphenixTpc().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void AnnularFieldSim::populate_lowres_lookup ( )

Definition at line 1645 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 1645 of file AnnularFieldSim.cc

References Acts::Test::at, calc_unit_field(), Epartial_lowres, GetGroupCellCenter(), nphi, nphi_low, nr, nr_low, nz, nz_low, phi_spacing, phimax_roi_low, phimin_roi_low, r_spacing, rmax_roi_low, rmin_roi_low, MultiArray< T >::Set(), z_spacing, KFPMath::zero(), zmax_roi_low, and zmin_roi_low.

Referenced by populate_lookup().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void AnnularFieldSim::populate_phislice_lookup ( )

Definition at line 1733 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 1733 of file AnnularFieldSim.cc

References Acts::Test::at, calc_unit_field(), debug_npercent, Epartial_phislice, GetCellCenter(), nphi, nr, nr_roi, nz, nz_roi, printf(), rmax_roi, rmin_roi, MultiArray< T >::Set(), KFPMath::zero(), zmax_roi, and zmin_roi.

Referenced by populate_lookup().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void AnnularFieldSim::save_phislice_lookup ( const char *  destfile)

Definition at line 1889 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 1889 of file AnnularFieldSim.cc

References C, cm, debug_npercent, Epartial_phislice, MultiArray< T >::Get(), nphi, nr, nr_roi, nz, nz_roi, check_smearing_config::output, printf(), rmax, rmax_roi, rmin, rmin_roi, V, zmax, zmax_roi, zmin, and zmin_roi.

Referenced by SetupDefaultSphenixTpc(), and SetupDigitalCurrentSphenixTpc().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void AnnularFieldSim::save_spacecharge ( const std::string &  filename)

Definition at line 1246 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 1246 of file AnnularFieldSim.cc

References ChargeMapReader::GetChargeAtPosition(), i, j, k, nphi, nr, nz, ActsTests::PropagationDatasets::phi, phispan, q, physmon_track_finding_ttbar::r, rmax, rmin, step, physmon_track_finding_ttbar::z, zmax, and zmin.

+ Here is the call graph for this function:

void AnnularFieldSim::set_twin ( AnnularFieldSim sim)
inline

Definition at line 169 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 169 of file AnnularFieldSim.h

References hasTwin, and twin.

Referenced by SetupDefaultSphenixTpc(), and SetupDigitalCurrentSphenixTpc().

+ Here is the caller graph for this function:

void AnnularFieldSim::SetDistortionScaleRPZ ( float  a,
float  b,
float  c 
)
inline

Definition at line 86 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 86 of file AnnularFieldSim.h

References debug_distortionScale.

void AnnularFieldSim::setFlatFields ( float  B,
float  E 
)

Definition at line 1967 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 1967 of file AnnularFieldSim.cc

References Bfield, Bfieldname, Bnominal, cm, Eexternal, Efieldname, Enominal, MultiArray< T >::GetFlat(), i, MultiArray< T >::Length(), printf(), Tesla, UpdateOmegaTau(), and V.

Referenced by SetupDefaultSphenixTpc(), and SetupDigitalCurrentSphenixTpc().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void AnnularFieldSim::setNominalB ( float  x)
inline

Definition at line 133 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 133 of file AnnularFieldSim.h

References Bnominal, UpdateOmegaTau(), and ambiguity_solver_full_chain::x.

+ Here is the call graph for this function:

void AnnularFieldSim::setNominalE ( float  x)
inline

Definition at line 139 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 139 of file AnnularFieldSim.h

References Enominal, UpdateOmegaTau(), and ambiguity_solver_full_chain::x.

+ Here is the call graph for this function:

void AnnularFieldSim::SetTruncationDistance ( int  x)
inline

Definition at line 91 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 91 of file AnnularFieldSim.h

References truncation_length, and ambiguity_solver_full_chain::x.

TVector3 AnnularFieldSim::sum_field_at ( int  r,
int  phi,
int  z 
)

Definition at line 1992 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 1992 of file AnnularFieldSim.cc

References aliceModel, Analytic, debugFlag(), AnalyticFieldModel::E(), Eexternal, Full3D, MultiArray< T >::Get(), GetCellCenter(), HybridRes, lookupCase, NoLookup, phimin_roi, PhiSlice, printf(), rmin_roi, sum(), sum_full3d_field_at(), sum_local_field_at(), sum_nonlocal_field_at(), sum_phislice_field_at(), and zmin_roi.

Referenced by populate_fieldmap().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::sum_full3d_field_at ( int  r,
int  phi,
int  z 
)

Definition at line 2037 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 2037 of file AnnularFieldSim.cc

References Epartial, MultiArray< T >::Get(), ChargeMapReader::GetChargeInBin(), nphi, nr, nz, phimin_roi, q, rmin_roi, sum(), truncation_length, and zmin_roi.

Referenced by sum_field_at().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::sum_local_field_at ( int  r,
int  phi,
int  z 
)

Definition at line 2090 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 2090 of file AnnularFieldSim.cc

References MultiArray< T >::Add(), Epartial_highres, FilterPhiIndex(), MultiArray< T >::Get(), ChargeMapReader::GetChargeInBin(), MultiArray< T >::GetFlat(), i, MultiArray< T >::Length(), nphi_high, nr, nr_high, nz, nz_high, ActsTests::PropagationDatasets::phi, phi_spacing, phimin_roi, printf(), q, q_local, physmon_track_finding_ttbar::r, r_spacing, rmin_roi, sum(), physmon_track_finding_ttbar::z, z_spacing, and zmin_roi.

Referenced by sum_field_at().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::sum_nonlocal_field_at ( int  r,
int  phi,
int  z 
)

Definition at line 2221 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 2221 of file AnnularFieldSim.cc

References assert, Epartial_lowres, FilterPhiIndex(), MultiArray< T >::Get(), i, nphi_high, nphi_low, nphi_roi_low, nr_high, nr_low, nr_roi_low, nz_high, nz_low, nz_roi_low, phi_spacing, phimin_roi_low, pi, printf(), q_lowres, r0, r_spacing, rmin_roi_low, Acts::Test::skip, sum(), z_spacing, and zmin_roi_low.

Referenced by sum_field_at().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::sum_phislice_field_at ( int  r,
int  phi,
int  z 
)

Definition at line 2418 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 2418 of file AnnularFieldSim.cc

References Epartial_phislice, FilterPhiIndex(), MultiArray< T >::Get(), ChargeMapReader::GetChargeInBin(), GetRoiCellCenter(), nphi, nr, nz, phimin_roi, Acts::Test::pos, q, rmin_roi, sum(), and zmin_roi.

Referenced by sum_field_at().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::swimTo ( float  zdest,
const TVector3 &  start,
bool  interpolate = true,
bool  useAnalytic = false 
)

Definition at line 3909 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 3909 of file AnnularFieldSim.cc

References swimToInAnalyticSteps(), and swimToInSteps().

+ Here is the call graph for this function:

TVector3 AnnularFieldSim::swimToInAnalyticSteps ( float  zdest,
TVector3  start,
int  steps = 1,
int *  goodToStep = nullptr 
)

Definition at line 2469 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 2469 of file AnnularFieldSim.cc

References ALMOST_ZERO, cm, FilterPhiPos(), GetPhiIndexAndCheckBounds(), GetRindexAndCheckBounds(), GetStepDistortion(), GetZindexAndCheckBounds(), i, InBounds, OnLowEdge, OutOfBounds, phimax_roi, phimin_roi, printf(), physmon_track_finding_ttbar::pt, rmax_roi, rmin, rmin_roi, start, step, propagation_timing::steps, zmax_roi, and zmin_roi.

Referenced by swimTo().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

TVector3 AnnularFieldSim::swimToInSteps ( float  zdest,
const TVector3 &  start,
int  steps = 1,
bool  interpolate = false,
int *  goodToStep = nullptr 
)

Definition at line 2521 of file AnnularFieldSim.cc.

View newest version in sPHENIX GitHub at line 2521 of file AnnularFieldSim.cc

References GetTotalDistortion(), Acts::interpolate(), and propagation_timing::steps.

Referenced by swimTo().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void AnnularFieldSim::UpdateEveryN ( int  n)
inline

Definition at line 71 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 71 of file AnnularFieldSim.h

References debug_npercent, debug_printActionEveryN, and n.

Referenced by SetupDefaultSphenixTpc(), and SetupDigitalCurrentSphenixTpc().

+ Here is the caller graph for this function:

void AnnularFieldSim::UpdateOmegaTau ( )
inlineprivate

Definition at line 225 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 225 of file AnnularFieldSim.h

References Bnominal, Enominal, omegatau_nominal, and vdrift.

Referenced by setFlatFields(), setNominalB(), and setNominalE().

+ Here is the caller graph for this function:

Member Data Documentation

AnalyticFieldModel* AnnularFieldSim::aliceModel = nullptr
private

Definition at line 260 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 260 of file AnnularFieldSim.h

Referenced by analyticFieldIntegral(), load_analytic_spacecharge(), and sum_field_at().

MultiArray<TVector3>* AnnularFieldSim::Bfield
private
std::string AnnularFieldSim::Bfieldname
private

Definition at line 280 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 280 of file AnnularFieldSim.h

Referenced by GetFieldString(), load3dBfield(), loadBfield(), and setFlatFields().

float AnnularFieldSim::Bnominal
private

Definition at line 286 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 286 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), GetGasString(), GetNominalB(), setFlatFields(), setNominalB(), and UpdateOmegaTau().

const float AnnularFieldSim::C = 1
private

Definition at line 236 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 236 of file AnnularFieldSim.h

Referenced by add_testcharge(), AnnularFieldSim(), load_phislice_lookup(), and save_phislice_lookup().

ChargeCase AnnularFieldSim::chargeCase
private

Definition at line 300 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 300 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), and GetStepDistortion().

std::string AnnularFieldSim::chargesourcename
private

Definition at line 283 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 283 of file AnnularFieldSim.h

Referenced by load_and_resample_spacecharge(), and load_spacecharge().

char AnnularFieldSim::chargestring[300] = {0}
private

Definition at line 284 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 284 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), GetChargeString(), load_digital_current(), and load_spacecharge().

const float AnnularFieldSim::cm = 1
private
TVector3 AnnularFieldSim::debug_distortionScale
private

Definition at line 258 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 258 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), GenerateDistortionMaps(), GenerateSeparateDistortionMaps(), GetStepDistortion(), and SetDistortionScaleRPZ().

int AnnularFieldSim::debug_npercent
private
int AnnularFieldSim::debug_printActionEveryN
private

Definition at line 255 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 255 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), debugFlag(), and UpdateEveryN().

int AnnularFieldSim::debug_printCounter
private

Definition at line 257 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 257 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), and debugFlag().

TVector3 AnnularFieldSim::dim
private

Definition at line 293 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 293 of file AnnularFieldSim.h

Referenced by AnnularFieldSim().

MultiArray<TVector3>* AnnularFieldSim::Eexternal
private

Definition at line 340 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 340 of file AnnularFieldSim.h

Referenced by analyticFieldIntegral(), AnnularFieldSim(), loadEfield(), setFlatFields(), and sum_field_at().

MultiArray<TVector3>* AnnularFieldSim::Efield
private

Definition at line 335 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 335 of file AnnularFieldSim.h

Referenced by analyticFieldIntegral(), AnnularFieldSim(), GetFieldAt(), GetStepDistortion(), interpolatedFieldIntegral(), and populate_fieldmap().

std::string AnnularFieldSim::Efieldname
private

Definition at line 281 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 281 of file AnnularFieldSim.h

Referenced by GetFieldString(), loadEfield(), and setFlatFields().

float AnnularFieldSim::Enominal = NAN
private

Definition at line 285 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 285 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), GetGasString(), GetNominalE(), GetStepDistortion(), setFlatFields(), setNominalE(), and UpdateOmegaTau().

MultiArray<TVector3>* AnnularFieldSim::Epartial
private

Definition at line 338 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 338 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), populate_full3d_lookup(), and sum_full3d_field_at().

MultiArray<TVector3>* AnnularFieldSim::Epartial_highres
private

Definition at line 336 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 336 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), populate_highres_lookup(), and sum_local_field_at().

MultiArray<TVector3>* AnnularFieldSim::Epartial_lowres
private

Definition at line 337 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 337 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), populate_lowres_lookup(), and sum_nonlocal_field_at().

MultiArray<TVector3>* AnnularFieldSim::Epartial_phislice
private

Definition at line 339 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 339 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), borrow_epartial_from(), load_phislice_lookup(), populate_phislice_lookup(), save_phislice_lookup(), and sum_phislice_field_at().

const float AnnularFieldSim::eps0 = 8.854e-12 * (C / V) / m
private

Definition at line 249 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 249 of file AnnularFieldSim.h

const float AnnularFieldSim::epsinv = 1 / eps0
private

Definition at line 250 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 250 of file AnnularFieldSim.h

Referenced by calc_unit_field().

const float AnnularFieldSim::fC = C / 1e15
private

Definition at line 238 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 238 of file AnnularFieldSim.h

Referenced by AnnularFieldSim().

std::string AnnularFieldSim::fieldstring
private

Definition at line 279 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 279 of file AnnularFieldSim.h

Rossegger* AnnularFieldSim::green

Definition at line 201 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 201 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), borrow_rossegger(), calc_unit_field(), load_rossegger(), SetupDefaultSphenixTpc(), and SetupDigitalCurrentSphenixTpc().

float AnnularFieldSim::green_shift

Definition at line 202 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 202 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), borrow_epartial_from(), borrow_rossegger(), and calc_unit_field().

bool AnnularFieldSim::hasTwin = false
TH2F* AnnularFieldSim::hRdeltaRComponent {nullptr}
private

Definition at line 347 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 347 of file AnnularFieldSim.h

Referenced by GenerateSeparateDistortionMaps(), and GetTotalDistortion().

const float AnnularFieldSim::k_perm = 1 / (4 * 3.1416 * eps0)
private

Definition at line 251 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 251 of file AnnularFieldSim.h

Referenced by calc_unit_field().

const float AnnularFieldSim::kGauss = Tesla / 10
private

Definition at line 247 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 247 of file AnnularFieldSim.h

Referenced by AnnularFieldSim().

double AnnularFieldSim::langevin_T1 = NAN
private

Definition at line 272 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 272 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), and GetStepDistortion().

double AnnularFieldSim::langevin_T2 = NAN
private

Definition at line 273 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 273 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), and GetStepDistortion().

LookupCase AnnularFieldSim::lookupCase
private

Definition at line 299 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 299 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), GetLookupString(), load_analytic_spacecharge(), populate_lookup(), and sum_field_at().

const float AnnularFieldSim::m = 100 * cm
private

Definition at line 232 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 232 of file AnnularFieldSim.h

Referenced by AnnularFieldSim().

const float AnnularFieldSim::mm = cm / 10
private

Definition at line 233 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 233 of file AnnularFieldSim.h

Referenced by AnnularFieldSim().

const float AnnularFieldSim::nC = C / 1e9
private

Definition at line 237 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 237 of file AnnularFieldSim.h

Referenced by AnnularFieldSim().

int AnnularFieldSim::nphi_high = -1
private

Definition at line 312 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 312 of file AnnularFieldSim.h

Referenced by populate_highres_lookup(), sum_local_field_at(), and sum_nonlocal_field_at().

int AnnularFieldSim::nphi_low = -1
private

Definition at line 321 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 321 of file AnnularFieldSim.h

Referenced by populate_lowres_lookup(), and sum_nonlocal_field_at().

int AnnularFieldSim::nphi_roi
private

Definition at line 307 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 307 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), GetFieldStepsPhi(), GetLookupString(), GetRoiCellCenter(), PlotFieldSlices(), and populate_fieldmap().

int AnnularFieldSim::nphi_roi_low = -1
private

Definition at line 330 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 330 of file AnnularFieldSim.h

Referenced by sum_nonlocal_field_at().

int AnnularFieldSim::nr_high = -1
private

Definition at line 311 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 311 of file AnnularFieldSim.h

Referenced by populate_highres_lookup(), sum_local_field_at(), and sum_nonlocal_field_at().

int AnnularFieldSim::nr_low = -1
private

Definition at line 320 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 320 of file AnnularFieldSim.h

Referenced by populate_lowres_lookup(), and sum_nonlocal_field_at().

int AnnularFieldSim::nr_roi
private
int AnnularFieldSim::nr_roi_low = -1
private

Definition at line 329 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 329 of file AnnularFieldSim.h

Referenced by sum_nonlocal_field_at().

const float AnnularFieldSim::ns = s / 1e9
private

Definition at line 242 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 242 of file AnnularFieldSim.h

Referenced by AnnularFieldSim().

int AnnularFieldSim::nz_high = -1
private

Definition at line 313 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 313 of file AnnularFieldSim.h

Referenced by populate_highres_lookup(), sum_local_field_at(), and sum_nonlocal_field_at().

int AnnularFieldSim::nz_low = -1
private

Definition at line 322 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 322 of file AnnularFieldSim.h

Referenced by populate_lowres_lookup(), and sum_nonlocal_field_at().

int AnnularFieldSim::nz_roi
private
int AnnularFieldSim::nz_roi_low = -1
private

Definition at line 331 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 331 of file AnnularFieldSim.h

Referenced by sum_nonlocal_field_at().

double AnnularFieldSim::omegatau_nominal = NAN
private

Definition at line 274 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 274 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), GetGasString(), GetStepDistortion(), and UpdateOmegaTau().

int AnnularFieldSim::phi_spacing = -1
private

Definition at line 318 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 318 of file AnnularFieldSim.h

Referenced by load_analytic_spacecharge(), populate_highres_lookup(), populate_lowres_lookup(), sum_local_field_at(), and sum_nonlocal_field_at().

int AnnularFieldSim::phimax_roi_low = -1
private

Definition at line 327 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 327 of file AnnularFieldSim.h

Referenced by populate_lowres_lookup().

int AnnularFieldSim::phimin_roi_low = -1
private

Definition at line 324 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 324 of file AnnularFieldSim.h

Referenced by populate_lowres_lookup(), and sum_nonlocal_field_at().

float AnnularFieldSim::phispan
private

Definition at line 289 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 289 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), and save_spacecharge().

MultiArray<double>* AnnularFieldSim::q_local
private

Definition at line 345 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 345 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), and sum_local_field_at().

MultiArray<double>* AnnularFieldSim::q_lowres
private

Definition at line 346 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 346 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), load_analytic_spacecharge(), and sum_nonlocal_field_at().

int AnnularFieldSim::r_spacing = -1
private

Definition at line 317 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 317 of file AnnularFieldSim.h

Referenced by load_analytic_spacecharge(), populate_highres_lookup(), populate_lowres_lookup(), sum_local_field_at(), and sum_nonlocal_field_at().

bool AnnularFieldSim::RdeltaRswitch = false
private

Definition at line 254 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 254 of file AnnularFieldSim.h

Referenced by GenerateSeparateDistortionMaps(), and GetTotalDistortion().

float AnnularFieldSim::rmax
private

Definition at line 290 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 290 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), GetOuterEdge(), load_phislice_lookup(), load_rossegger(), loadField(), save_phislice_lookup(), and save_spacecharge().

int AnnularFieldSim::rmax_roi_low = -1
private

Definition at line 326 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 326 of file AnnularFieldSim.h

Referenced by populate_lowres_lookup().

int AnnularFieldSim::rmin_roi_low = -1
private

Definition at line 323 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 323 of file AnnularFieldSim.h

Referenced by populate_lowres_lookup(), and sum_nonlocal_field_at().

const float AnnularFieldSim::s = 1
private

Definition at line 240 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 240 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), and GetStepDistortion().

const float AnnularFieldSim::Tesla = V * s / m / m
private

Definition at line 246 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 246 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), GetGasString(), GetStepDistortion(), load3dBfield(), loadBfield(), PlotFieldSlices(), and setFlatFields().

int AnnularFieldSim::truncation_length
private

Definition at line 301 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 301 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), populate_fieldmap(), SetTruncationDistance(), and sum_full3d_field_at().

const float AnnularFieldSim::um = mm / 1e3
private

Definition at line 234 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 234 of file AnnularFieldSim.h

Referenced by AnnularFieldSim().

const float AnnularFieldSim::us = s / 1e6
private

Definition at line 241 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 241 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), and GetGasString().

const float AnnularFieldSim::V = 1
private

Definition at line 244 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 244 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), GetGasString(), GetStepDistortion(), load_phislice_lookup(), loadEfield(), PlotFieldSlices(), save_phislice_lookup(), and setFlatFields().

double AnnularFieldSim::vdrift = NAN
private

Definition at line 271 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 271 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), GetGasString(), GetStepDistortion(), and UpdateOmegaTau().

int AnnularFieldSim::z_spacing = -1
private

Definition at line 319 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 319 of file AnnularFieldSim.h

Referenced by load_analytic_spacecharge(), populate_highres_lookup(), populate_lowres_lookup(), sum_local_field_at(), and sum_nonlocal_field_at().

TVector3 AnnularFieldSim::zero_vector
private
float AnnularFieldSim::zmax
private

Definition at line 291 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 291 of file AnnularFieldSim.h

Referenced by AnnularFieldSim(), GetOuterEdge(), GetTotalDistortion(), load_phislice_lookup(), load_rossegger(), loadField(), save_phislice_lookup(), and save_spacecharge().

int AnnularFieldSim::zmax_roi_low = -1
private

Definition at line 328 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 328 of file AnnularFieldSim.h

Referenced by populate_lowres_lookup().

int AnnularFieldSim::zmin_roi_low = -1
private

Definition at line 325 of file AnnularFieldSim.h.

View newest version in sPHENIX GitHub at line 325 of file AnnularFieldSim.h

Referenced by populate_lowres_lookup(), and sum_nonlocal_field_at().


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