WarpX
Classes | Public Types | Public Member Functions | Public Attributes | Private Attributes | List of all members
InjectorMomentum Struct Reference

#include <InjectorMomentum.H>

Classes

union  Object
 

Public Types

enum class  Type {
  constant , gaussian , gaussianflux , uniform ,
  boltzmann , juttner , radial_expansion , parser ,
  gaussianparser
}
 

Public Member Functions

 InjectorMomentum (InjectorMomentumConstant *t, amrex::Real a_ux, amrex::Real a_uy, amrex::Real a_uz)
 
 InjectorMomentum (InjectorMomentumParser *t, amrex::ParserExecutor< 3 > const &a_ux_parser, amrex::ParserExecutor< 3 > const &a_uy_parser, amrex::ParserExecutor< 3 > const &a_uz_parser)
 
 InjectorMomentum (InjectorMomentumGaussianParser *t, amrex::ParserExecutor< 3 > const &a_ux_m_parser, amrex::ParserExecutor< 3 > const &a_uy_m_parser, amrex::ParserExecutor< 3 > const &a_uz_m_parser, amrex::ParserExecutor< 3 > const &a_ux_th_parser, amrex::ParserExecutor< 3 > const &a_uy_th_parser, amrex::ParserExecutor< 3 > const &a_uz_th_parser)
 
 InjectorMomentum (InjectorMomentumGaussian *t, amrex::Real a_ux_m, amrex::Real a_uy_m, amrex::Real a_uz_m, amrex::Real a_ux_th, amrex::Real a_uy_th, amrex::Real a_uz_th)
 
 InjectorMomentum (InjectorMomentumGaussianFlux *t, amrex::Real a_ux_m, amrex::Real a_uy_m, amrex::Real a_uz_m, amrex::Real a_ux_th, amrex::Real a_uy_th, amrex::Real a_uz_th, int a_flux_normal_axis, int a_flux_direction)
 
 InjectorMomentum (InjectorMomentumUniform *t, amrex::Real a_ux_min, amrex::Real a_uy_min, amrex::Real a_uz_min, amrex::Real a_ux_max, amrex::Real a_uy_max, amrex::Real a_uz_max)
 
 InjectorMomentum (InjectorMomentumBoltzmann *t, GetTemperature const &temperature, GetVelocity const &velocity)
 
 InjectorMomentum (InjectorMomentumJuttner *t, GetTemperature const &temperature, GetVelocity const &velocity)
 
 InjectorMomentum (InjectorMomentumRadialExpansion *t, amrex::Real u_over_r)
 
 InjectorMomentum (InjectorMomentum const &)=delete
 
 InjectorMomentum (InjectorMomentum &&)=delete
 
void operator= (InjectorMomentum const &)=delete
 
void operator= (InjectorMomentum &&)=delete
 
 ~InjectorMomentum ()=default
 
void clear ()
 
AMREX_GPU_HOST_DEVICE amrex::XDim3 getMomentum (amrex::Real x, amrex::Real y, amrex::Real z, amrex::RandomEngine const &engine) const noexcept
 
AMREX_GPU_HOST_DEVICE amrex::XDim3 getBulkMomentum (amrex::Real x, amrex::Real y, amrex::Real z) const noexcept
 

Public Attributes

Type type
 

Private Attributes

Object object
 

Member Enumeration Documentation

◆ Type

Enumerator
constant 
gaussian 
gaussianflux 
uniform 
boltzmann 
juttner 
radial_expansion 
parser 
gaussianparser 

Constructor & Destructor Documentation

◆ InjectorMomentum() [1/11]

InjectorMomentum::InjectorMomentum ( InjectorMomentumConstant t,
amrex::Real  a_ux,
amrex::Real  a_uy,
amrex::Real  a_uz 
)
inline

◆ InjectorMomentum() [2/11]

InjectorMomentum::InjectorMomentum ( InjectorMomentumParser t,
amrex::ParserExecutor< 3 > const &  a_ux_parser,
amrex::ParserExecutor< 3 > const &  a_uy_parser,
amrex::ParserExecutor< 3 > const &  a_uz_parser 
)
inline

◆ InjectorMomentum() [3/11]

InjectorMomentum::InjectorMomentum ( InjectorMomentumGaussianParser t,
amrex::ParserExecutor< 3 > const &  a_ux_m_parser,
amrex::ParserExecutor< 3 > const &  a_uy_m_parser,
amrex::ParserExecutor< 3 > const &  a_uz_m_parser,
amrex::ParserExecutor< 3 > const &  a_ux_th_parser,
amrex::ParserExecutor< 3 > const &  a_uy_th_parser,
amrex::ParserExecutor< 3 > const &  a_uz_th_parser 
)
inline

◆ InjectorMomentum() [4/11]

InjectorMomentum::InjectorMomentum ( InjectorMomentumGaussian t,
amrex::Real  a_ux_m,
amrex::Real  a_uy_m,
amrex::Real  a_uz_m,
amrex::Real  a_ux_th,
amrex::Real  a_uy_th,
amrex::Real  a_uz_th 
)
inline

◆ InjectorMomentum() [5/11]

InjectorMomentum::InjectorMomentum ( InjectorMomentumGaussianFlux t,
amrex::Real  a_ux_m,
amrex::Real  a_uy_m,
amrex::Real  a_uz_m,
amrex::Real  a_ux_th,
amrex::Real  a_uy_th,
amrex::Real  a_uz_th,
int  a_flux_normal_axis,
int  a_flux_direction 
)
inline

◆ InjectorMomentum() [6/11]

InjectorMomentum::InjectorMomentum ( InjectorMomentumUniform t,
amrex::Real  a_ux_min,
amrex::Real  a_uy_min,
amrex::Real  a_uz_min,
amrex::Real  a_ux_max,
amrex::Real  a_uy_max,
amrex::Real  a_uz_max 
)
inline

◆ InjectorMomentum() [7/11]

InjectorMomentum::InjectorMomentum ( InjectorMomentumBoltzmann t,
GetTemperature const &  temperature,
GetVelocity const &  velocity 
)
inline

◆ InjectorMomentum() [8/11]

InjectorMomentum::InjectorMomentum ( InjectorMomentumJuttner t,
GetTemperature const &  temperature,
GetVelocity const &  velocity 
)
inline

◆ InjectorMomentum() [9/11]

InjectorMomentum::InjectorMomentum ( InjectorMomentumRadialExpansion t,
amrex::Real  u_over_r 
)
inline

◆ InjectorMomentum() [10/11]

InjectorMomentum::InjectorMomentum ( InjectorMomentum const &  )
delete

◆ InjectorMomentum() [11/11]

InjectorMomentum::InjectorMomentum ( InjectorMomentum &&  )
delete

◆ ~InjectorMomentum()

InjectorMomentum::~InjectorMomentum ( )
default

Member Function Documentation

◆ clear()

void InjectorMomentum::clear ( )

◆ getBulkMomentum()

AMREX_GPU_HOST_DEVICE amrex::XDim3 InjectorMomentum::getBulkMomentum ( amrex::Real  x,
amrex::Real  y,
amrex::Real  z 
) const
inlinenoexcept

◆ getMomentum()

AMREX_GPU_HOST_DEVICE amrex::XDim3 InjectorMomentum::getMomentum ( amrex::Real  x,
amrex::Real  y,
amrex::Real  z,
amrex::RandomEngine const &  engine 
) const
inlinenoexcept

◆ operator=() [1/2]

void InjectorMomentum::operator= ( InjectorMomentum &&  )
delete

◆ operator=() [2/2]

void InjectorMomentum::operator= ( InjectorMomentum const &  )
delete

Member Data Documentation

◆ object

Object InjectorMomentum::object
private

◆ type

Type InjectorMomentum::type

The documentation for this struct was generated from the following files: