13 #include "cetlib_except/exception.h" 32 auto const* SCE = lar::providerFrom<spacecharge::SpaceChargeService>();
33 if (!SCE->EnableSimEfieldSCE())
return fEfield;
36 { ( step->GetPreStepPoint()->GetPosition() + step->GetPostStepPoint()->GetPosition() ) * 0.5/CLHEP::cm };
37 auto EfieldDelta = fEfield * SCE->GetEfieldOffsets(midPoint);
39 = { fEfield + EfieldDelta.X(), EfieldDelta.Y(), EfieldDelta.Z() };
Store parameters for running LArG4.
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double >, ROOT::Math::GlobalCoordinateSystemTag > Vector_t
Type for representation of momenta in 3D space.
double EFieldAtStep(double fEfield, const G4Step *step) const
Interface to algorithm class for a specific detector channel mapping.
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< double >, ROOT::Math::GlobalCoordinateSystemTag > Point_t
Type for representation of position in physical 3D space.