CORSIKA
@c8_version@
The framework to simulate particle cascades for astroparticle physics
TimeCut.hpp
1
/*
2
* (c) Copyright 2020 CORSIKA Project, corsika-project@lists.kit.edu
3
*
4
* This software is distributed under the terms of the GNU General Public
5
* Licence version 3 (GPL Version 3). See file LICENSE for a full version of
6
* the license.
7
*/
8
9
#pragma once
10
11
#include <
corsika/framework/core/ParticleProperties.hpp
>
12
#include <
corsika/framework/core/PhysicalUnits.hpp
>
13
#include <corsika/framework/process/ContinuousProcess.hpp>
14
#include <corsika/framework/core/Step.hpp>
15
16
#include <corsika/setup/SetupStack.hpp>
17
#include <
corsika/setup/SetupTrajectory.hpp
>
18
19
namespace
corsika
{
20
24
class
TimeCut
:
public
ContinuousProcess
<TimeCut> {
25
26
public
:
27
TimeCut
(
TimeType
const
time);
28
29
template
<
typename
Particle>
30
ProcessReturn
doContinuous(
31
Step<Particle>
const
& step,
32
const
bool
limitFlag =
false
);
// this is not used for TimeCut
33
template
<
typename
Particle,
typename
Track>
34
LengthType
getMaxStepLength(Particle
const
&, Track
const
&) {
35
return
meter * std::numeric_limits<double>::infinity();
36
}
37
38
private
:
39
TimeType
time_;
40
};
41
42
}
// namespace corsika
43
44
#include <corsika/detail/modules/TimeCut.inl>
PhysicalUnits.hpp
Import and extend the phys::units package.
corsika::Step
Definition:
Step.hpp:35
corsika::TimeCut
Simple TimeCut process, removes particles older than specified cut time.
Definition:
TimeCut.hpp:24
phys::units::quantity< phys::units::time_interval_d, double >
corsika::ContinuousProcess
Processes with continuous effects along a particle Trajectory.
Definition:
ContinuousProcess.hpp:65
corsika
`, since they are used everywhere as integral part of the framework.
Definition:
BoundaryCrossingProcess.hpp:14
corsika::ProcessReturn
ProcessReturn
since in a process sequence many status updates can accumulate for a single particle, this enum should define only bit-flags that can be accumulated easily with "|="
Definition:
ProcessReturn.hpp:26
ParticleProperties.hpp
Interface to particle properties.
SetupTrajectory.hpp
Note/Warning: Tracking and Trajectory must fit together !
corsika
modules
TimeCut.hpp
Generated by
1.8.13