gtsimulation.pusher#

Particle trajectory pushers.

This subpackage provides numerical methods for advancing particle trajectories in electromagnetic fields.

Classes

BunemanBorisSimulator(Particles, Num, Step)

HigueraCarySimulator(Particles, Num, Step[, ...])

RungeKutta4Simulator(Particles, Num, Step[, ...])

RungeKutta4SimulatorFast(Particles, Num, Step)

RungeKutta6Simulator(Particles, Num, Step[, ...])

RungeKutta6SimulatorFast(Particles, Num, Step)

VaySimulator(Particles, Num, Step[, Bfield, ...])

class gtsimulation.pusher.BunemanBorisSimulator(Particles: Flux, Num: int, Step: float, Bfield: AbsBfield | None = None, Efield: GeneralFieldE | None = None, Medium: GTGeneralMedium | None = None, Region: Regions = Regions.Undefined, BreakCondition: dict | list | None = None, UseDecay: bool = False, InteractNUC: NuclearInteraction | None = None, RadLosses: bool | list = False, Date: datetime = datetime.datetime(2008, 1, 1, 0, 0), Save: int | list = 1, Nfiles: int | list = 1, Output: str | None = None, Verbose: int = 1, ForwardTrck=None, TrackParams=False, ParticleOrigin=False, IsFirstRun=True)[source]#
AlgoStep(T, M, Q, V, X, H, E)[source]#
class gtsimulation.pusher.HigueraCarySimulator(Particles: Flux, Num: int, Step: float, Bfield: AbsBfield | None = None, Efield: GeneralFieldE | None = None, Medium: GTGeneralMedium | None = None, Region: Regions = Regions.Undefined, BreakCondition: dict | list | None = None, UseDecay: bool = False, InteractNUC: NuclearInteraction | None = None, RadLosses: bool | list = False, Date: datetime = datetime.datetime(2008, 1, 1, 0, 0), Save: int | list = 1, Nfiles: int | list = 1, Output: str | None = None, Verbose: int = 1, ForwardTrck=None, TrackParams=False, ParticleOrigin=False, IsFirstRun=True)[source]#
AlgoStep(T, M, Q, V, X, H, E)[source]#
class gtsimulation.pusher.RungeKutta4Simulator(Particles: Flux, Num: int, Step: float, Bfield: AbsBfield | None = None, Efield: GeneralFieldE | None = None, Medium: GTGeneralMedium | None = None, Region: Regions = Regions.Undefined, BreakCondition: dict | list | None = None, UseDecay: bool = False, InteractNUC: NuclearInteraction | None = None, RadLosses: bool | list = False, Date: datetime = datetime.datetime(2008, 1, 1, 0, 0), Save: int | list = 1, Nfiles: int | list = 1, Output: str | None = None, Verbose: int = 1, ForwardTrck=None, TrackParams=False, ParticleOrigin=False, IsFirstRun=True)[source]#
AlgoStep(T, M, Q, V, X, H, E)[source]#
getFields(X)[source]#
class gtsimulation.pusher.RungeKutta4SimulatorFast(Particles: Flux, Num: int, Step: float, Bfield: AbsBfield | None = None, Efield: GeneralFieldE | None = None, Medium: GTGeneralMedium | None = None, Region: Regions = Regions.Undefined, BreakCondition: dict | list | None = None, UseDecay: bool = False, InteractNUC: NuclearInteraction | None = None, RadLosses: bool | list = False, Date: datetime = datetime.datetime(2008, 1, 1, 0, 0), Save: int | list = 1, Nfiles: int | list = 1, Output: str | None = None, Verbose: int = 1, ForwardTrck=None, TrackParams=False, ParticleOrigin=False, IsFirstRun=True)[source]#
AlgoStep(T, M, Q, V, X, H, E)[source]#
class gtsimulation.pusher.RungeKutta6Simulator(Particles: Flux, Num: int, Step: float, Bfield: AbsBfield | None = None, Efield: GeneralFieldE | None = None, Medium: GTGeneralMedium | None = None, Region: Regions = Regions.Undefined, BreakCondition: dict | list | None = None, UseDecay: bool = False, InteractNUC: NuclearInteraction | None = None, RadLosses: bool | list = False, Date: datetime = datetime.datetime(2008, 1, 1, 0, 0), Save: int | list = 1, Nfiles: int | list = 1, Output: str | None = None, Verbose: int = 1, ForwardTrck=None, TrackParams=False, ParticleOrigin=False, IsFirstRun=True)[source]#
AlgoStep(T, M, Q, V, X, H, E)[source]#
getFields(X)[source]#
class gtsimulation.pusher.RungeKutta6SimulatorFast(Particles: Flux, Num: int, Step: float, Bfield: AbsBfield | None = None, Efield: GeneralFieldE | None = None, Medium: GTGeneralMedium | None = None, Region: Regions = Regions.Undefined, BreakCondition: dict | list | None = None, UseDecay: bool = False, InteractNUC: NuclearInteraction | None = None, RadLosses: bool | list = False, Date: datetime = datetime.datetime(2008, 1, 1, 0, 0), Save: int | list = 1, Nfiles: int | list = 1, Output: str | None = None, Verbose: int = 1, ForwardTrck=None, TrackParams=False, ParticleOrigin=False, IsFirstRun=True)[source]#
AlgoStep(T, M, Q, V, X, H, E)[source]#
class gtsimulation.pusher.VaySimulator(Particles: Flux, Num: int, Step: float, Bfield: AbsBfield | None = None, Efield: GeneralFieldE | None = None, Medium: GTGeneralMedium | None = None, Region: Regions = Regions.Undefined, BreakCondition: dict | list | None = None, UseDecay: bool = False, InteractNUC: NuclearInteraction | None = None, RadLosses: bool | list = False, Date: datetime = datetime.datetime(2008, 1, 1, 0, 0), Save: int | list = 1, Nfiles: int | list = 1, Output: str | None = None, Verbose: int = 1, ForwardTrck=None, TrackParams=False, ParticleOrigin=False, IsFirstRun=True)[source]#
AlgoStep(T, M, Q, V, X, H, E)[source]#