WarpX
Loading...
Searching...
No Matches
SpeciesUtils.H
Go to the documentation of this file.
1/* Copyright 2023 RemiLehe
2 *
3 * This file is part of WarpX.
4 *
5 * License: BSD-3-Clause-LBNL
6 */
7#ifndef WARPX_SPECIES_UTILS_H_
8#define WARPX_SPECIES_UTILS_H_
9
10#include <AMReX_REAL.H>
14
15namespace SpeciesUtils {
16
17 void StringParseAbortMessage(const std::string& var,
18 const std::string& name);
19
20 void extractSpeciesProperties ( std::string const& species_name,
21 std::string const& injection_style, amrex::Real& charge, amrex::Real& mass,
22 PhysicalSpecies& physical_species);
23
24 void parseDensity (std::string const& species_name, std::string const& source_name,
25 std::unique_ptr<InjectorDensity,InjectorDensityDeleter>& h_inj_rho,
26 std::unique_ptr<amrex::Parser>& density_parser);
27
28 void parseMomentum (std::string const& species_name, std::string const& source_name, const std::string& style,
29 std::unique_ptr<InjectorMomentum,InjectorMomentumDeleter>& h_inj_mom,
30 std::unique_ptr<amrex::Parser>& ux_parser,
31 std::unique_ptr<amrex::Parser>& uy_parser,
32 std::unique_ptr<amrex::Parser>& uz_parser,
33 std::unique_ptr<amrex::Parser>& ux_th_parser,
34 std::unique_ptr<amrex::Parser>& uy_th_parser,
35 std::unique_ptr<amrex::Parser>& uz_th_parser,
36 std::unique_ptr<TemperatureProperties>& h_mom_temp,
37 std::unique_ptr<VelocityProperties>& h_mom_vel,
38 int flux_normal_axis=0, int flux_direction=0);
39
40}
41
42#endif // WARPX_SPECIES_UTILS_H_
PhysicalSpecies
Definition SpeciesPhysicalProperties.H:16
Definition SpeciesUtils.cpp:12
void StringParseAbortMessage(const std::string &var, const std::string &name)
Definition SpeciesUtils.cpp:14
void parseMomentum(std::string const &species_name, std::string const &source_name, const std::string &style, std::unique_ptr< InjectorMomentum, InjectorMomentumDeleter > &h_inj_mom, std::unique_ptr< amrex::Parser > &ux_parser, std::unique_ptr< amrex::Parser > &uy_parser, std::unique_ptr< amrex::Parser > &uz_parser, std::unique_ptr< amrex::Parser > &ux_th_parser, std::unique_ptr< amrex::Parser > &uy_th_parser, std::unique_ptr< amrex::Parser > &uz_th_parser, std::unique_ptr< TemperatureProperties > &h_mom_temp, std::unique_ptr< VelocityProperties > &h_mom_vel, int flux_normal_axis, int flux_direction)
Definition SpeciesUtils.cpp:119
void extractSpeciesProperties(std::string const &species_name, std::string const &injection_style, amrex::Real &charge, amrex::Real &mass, PhysicalSpecies &physical_species)
Definition SpeciesUtils.cpp:23
void parseDensity(std::string const &species_name, std::string const &source_name, std::unique_ptr< InjectorDensity, InjectorDensityDeleter > &h_inj_rho, std::unique_ptr< amrex::Parser > &density_parser)
Definition SpeciesUtils.cpp:80