4template <
typename Particle>
7 const Particle& particle
9 return ::swift2::kernels::localParticleCanBeUpdatedAndMovedInVertexKernel(marker, particle);
13template <
typename Particle>
20 double timeStepSize = Particle::getSpecies().getMinTimeStepSize();
21 particle.setX( particle.getX() + timeStepSize * particle.getV() );
23 particle.setMoveState(Particle::MoveState::Moved);
28template <
typename Particle>
31 const Particle& particle
33 return ::swift2::kernels::localParticleCanBeUpdatedInVertexKernel(marker, particle);
37template <
typename Particle>
42 assertion( leapfrogKickWithGlobalTimeStepSizeUpdateParticlePredicate(marker, particle) );
44 double timeStepSize = 0.5 * Particle::getSpecies().getMinTimeStepSize();
45 particle.setV( particle.getV() + timeStepSize * particle.getA() );
#define assertion1(expr, param)
void leapfrogDriftWithGlobalTimeStepSize(const peano4::datamanagement::VertexMarker &marker, Particle &localParticle)
Drift step.
bool leapfrogKickWithGlobalTimeStepSizeUpdateParticlePredicate(const peano4::datamanagement::VertexMarker &marker, const Particle &localParticle)
bool leapfrogDriftWithGlobalTimeStepSizeUpdateParticlePredicate(const peano4::datamanagement::VertexMarker &marker, const Particle &localParticle)
void leapfrogKickWithGlobalTimeStepSize(const peano4::datamanagement::VertexMarker &marker, Particle &localParticle)
Kick steps.
int isEntryFinite(const Vector< Size, Scalar > &vector)
Vertex marker to provide information about selected vertex.