XGCa
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
push_physics.hpp
Go to the documentation of this file.
1 #ifndef PUSH_PHYSICS_HPP
2 #define PUSH_PHYSICS_HPP
3 #include "push_controls.hpp"
4 #include "electric_field.hpp"
5 #include "perturbed_B_field.hpp"
7 
8 template<class Device, KinType KT, PhiInterpType PIT>
9 KOKKOS_INLINE_FUNCTION void derivs_single_with_e_elec(const Grid<Device> &grid, const PushControls &push_controls,
11  const PerturbedBField<Device> &perturbed_B_field, SimdParticles &part,SimdPhase &dy,
12  Simd<int>& itr, const FieldAlignedLocalFields<KT, PIT>& E_mag, double time, Simd<double> *vf_diag=nullptr );
13 
14 #if defined(EXPLICIT_EM) || defined(DELTAF_CONV)
15 #include "em_push_physics.hpp"
16 #else
17 template<class Device>
18 KOKKOS_INLINE_FUNCTION void derivs_elec(const PushControls &push_controls, const Species<Device> &species,
19  const SimdParticles &part, const SimdVector &bfield, const SimdVector (&jacb)[3],
20  const Simd<double>& psi, const SimdVector2D &gradpsi, const SimdVector &tdb, const SimdVector &efield,
21 #ifdef SONIC_GK
22  const SimdVector &du2_E,
23 #endif
24  SimdPhase &yprime, Simd<double> *vf_diag );
25 #endif
26 
27 #include "push_physics.tpp"
28 #endif
Definition: simd.hpp:144
Definition: perturbed_B_field.hpp:16
KOKKOS_INLINE_FUNCTION void derivs_elec(const PushControls &push_controls, const Species< Device > &species, const SimdParticles &part, const SimdVector &bfield, const SimdVector(&jacb)[3], const Simd< double > &psi, const SimdVector2D &gradpsi, const SimdVector &tdb, const SimdVector &efield, SimdPhase &yprime, Simd< double > *vf_diag)
Definition: em_push_physics.tpp:183
Definition: push_controls.hpp:8
Definition: magnetic_field.hpp:9
Definition: grid.hpp:10
Definition: grid_field_pack.hpp:239
KOKKOS_INLINE_FUNCTION void derivs_single_with_e_elec(const Grid< Device > &grid, const PushControls &push_controls, const Species< Device > &species, const MagneticField< Device > &magnetic_field, const GridFieldPack< Device, PIT > &gfpack, const PerturbedBField< Device > &perturbed_B_field, SimdParticles &part, SimdPhase &dy, Simd< int > &itr, const FieldAlignedLocalFields< KT, PIT > &E_mag, double time, Simd< double > *vf_diag=nullptr)
Definition: push_physics.tpp:18
Definition: particles.hpp:58
Definition: field_aligned_local_fields.hpp:22
Definition: magnetic_field.F90:1
Definition: particles.hpp:17
Definition: simd.hpp:18
Definition: simd.hpp:139
Definition: species.hpp:66