XGC1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
pellet.hpp
Go to the documentation of this file.
1 #ifndef PELLET_HPP
2 #define PELLET_HPP
3 
4 #include "grid.hpp"
5 #include "magnetic_field.hpp"
7 #include "velocity_grid.hpp"
8 #include "plasma.hpp"
9 #include "vgrid_distribution.hpp"
10 #include "source.hpp"
11 
12 class Pellet : public Source{
13  double pellet_etemp;
14  double pellet_itemp;
17  double rate_abl_dv; // Ablation rate per volume unit
18  View<bool*,CLayout,HostType> use_node_h;
19 
20  double n_atoms_ionized; //<! This value accumulates
21 
22  public:
23 
24  Pellet(){}
25 
27 
28  void apply(const Grid<DeviceType>& grid, const DomainDecomposition<DeviceType>& pol_decomp, Plasma& plasma, const VelocityGrid& vgrid, VGridDistribution<HostType>& df0g_h, double dt);
29 };
30 
31 #endif
Definition: velocity_grid.hpp:8
double n_atoms_ionized
Definition: pellet.hpp:20
subroutine plasma(grid, itr, p, dene_out, deni_out, Te_out, Ti_out, Vparai_out)
Calculate the plasma density, temperature, and parallel velocity for a point in triangle itr using pl...
Definition: neutral_totalf.F90:1224
Definition: NamelistReader.hpp:193
Definition: magnetic_field.hpp:12
Definition: pellet.hpp:12
double pellet_itemp
Definition: pellet.hpp:14
Pellet()
Definition: pellet.hpp:24
Definition: source.hpp:7
int ion_species
Definition: pellet.hpp:16
double pellet_etemp
Definition: pellet.hpp:13
Definition: magnetic_field.F90:1
double pellet_n_atoms
Definition: pellet.hpp:15
Definition: plasma.hpp:14
double rate_abl_dv
Definition: pellet.hpp:17
void apply(const Grid< DeviceType > &grid, const DomainDecomposition< DeviceType > &pol_decomp, Plasma &plasma, const VelocityGrid &vgrid, VGridDistribution< HostType > &df0g_h, double dt)
Definition: pellet.cpp:28
View< bool *, CLayout, HostType > use_node_h
Definition: pellet.hpp:18