WarpX
Loading...
Searching...
No Matches
BackgroundStopping.H
Go to the documentation of this file.
1/* Copyright 2022 David Grote
2 *
3 * This file is part of WarpX.
4 *
5 * License: BSD-3-Clause-LBNL
6 */
7#ifndef WARPX_PARTICLES_COLLISION_BACKGROUNSTOPPING_H_
8#define WARPX_PARTICLES_COLLISION_BACKGROUNSTOPPING_H_
9
12
13#include <AMReX_REAL.H>
14
15#include <string>
16
22
24 : public CollisionBase
25{
26public:
27 BackgroundStopping (const std::string& collision_name);
28
29 ~BackgroundStopping () override = default;
30
35
43 void doCollisions (amrex::Real cur_time, amrex::Real dt, MultiParticleContainer* mypc) override;
44
54 void doBackgroundStoppingOnElectronsWithinTile (WarpXParIter& pti, amrex::Real dt, amrex::Real t,
55 amrex::ParticleReal species_mass, amrex::ParticleReal species_charge);
56
66 void doBackgroundStoppingOnIonsWithinTile (WarpXParIter& pti, amrex::Real dt, amrex::Real t,
67 amrex::ParticleReal species_mass, amrex::ParticleReal species_charge);
68
69private:
70
71 amrex::ParticleReal m_background_mass;
72 amrex::ParticleReal m_background_charge_state;
74
77
80
81};
82
83#endif // WARPX_PARTICLES_COLLISION_BACKGROUNSTOPPING_H_
BackgroundStoppingType
Definition BackgroundStopping.H:17
@ ELECTRONS
Definition BackgroundStopping.H:19
@ INVALID
Definition BackgroundStopping.H:18
@ IONS
Definition BackgroundStopping.H:20
amrex::ParticleReal m_background_mass
Definition BackgroundStopping.H:71
amrex::ParserExecutor< 4 > m_background_temperature_func
Definition BackgroundStopping.H:79
amrex::ParserExecutor< 4 > m_background_density_func
Definition BackgroundStopping.H:78
void doCollisions(amrex::Real cur_time, amrex::Real dt, MultiParticleContainer *mypc) override
Definition BackgroundStopping.cpp:89
BackgroundStopping(const std::string &collision_name)
Definition BackgroundStopping.cpp:19
BackgroundStoppingType m_background_type
Definition BackgroundStopping.H:73
amrex::Parser m_background_temperature_parser
Definition BackgroundStopping.H:76
BackgroundStopping(BackgroundStopping const &)=delete
BackgroundStopping & operator=(BackgroundStopping const &)=delete
~BackgroundStopping() override=default
amrex::Parser m_background_density_parser
Definition BackgroundStopping.H:75
void doBackgroundStoppingOnElectronsWithinTile(WarpXParIter &pti, amrex::Real dt, amrex::Real t, amrex::ParticleReal species_mass, amrex::ParticleReal species_charge)
Definition BackgroundStopping.cpp:137
BackgroundStopping(BackgroundStopping &&)=delete
void doBackgroundStoppingOnIonsWithinTile(WarpXParIter &pti, amrex::Real dt, amrex::Real t, amrex::ParticleReal species_mass, amrex::ParticleReal species_charge)
Definition BackgroundStopping.cpp:211
amrex::ParticleReal m_background_charge_state
Definition BackgroundStopping.H:72
CollisionBase(const std::string &collision_name)
Definition CollisionBase.cpp:13
Definition MultiParticleContainer.H:68
Definition WarpXParticleContainer.H:117