XGCa
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Functions
get_potential_grad.hpp File Reference
#include "sml.hpp"
#include "grid.hpp"
#include "domain_decomposition.hpp"
#include "magnetic_field.hpp"
#include "my_mirror_view.hpp"
#include "gradparx2.hpp"
#include "field_following_coordinates.hpp"
#include "gradient_matrices.hpp"
#include "gyro_avg_mat.hpp"
#include "task_group.hpp"
#include "grid_field.hpp"
#include "grid_deriv.hpp"
#include "em_field_filter.hpp"
#include "smoothing.hpp"
Include dependency graph for get_potential_grad.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  AlternatingStorage< Device >
 
struct  GetPotentialGradTemp< Device, DeviceOut >
 
struct  Field00< Device >
 
struct  EMParField< Device, DeviceOut >
 
struct  GetPotGradFieldArgs< DeviceIn, DeviceOut, VT, PIT, TT, KT >
 

Functions

void get_pot_epar_em_filter (double *tmp, double *E_para_em, double *spitzer_res, int *bndry)
 
void get_field_Ah_cv_ff (const Grid< DeviceType > &grid, const DomainDecomposition< DeviceType > &pol_decomp, const GridField< HostType, VarType::Scalar, PhiInterpType::None, TorType::MultiplePlanes, KinType::DriftKin > &Ah_cv_h, const GridField< HostType, VarType::Scalar, PhiInterpType::Planes, TorType::OnePlane, KinType::DriftKin > &Ah_cv_ff)
 
template<class DeviceIn , class DeviceOut , VarType VT, PhiInterpType PIT, TorType TT, KinType KT>
void get_field_grad (const Simulation< DeviceType > &sml, const Grid< DeviceType > &grid, const DomainDecomposition< DeviceType > &pol_decomp, const MagneticField< DeviceType > &magnetic_field, Smoothing &smoothing, GetPotGradFieldArgs< DeviceIn, DeviceOut, VT, PIT, TT, KT > &field_args, GetPotentialGradTemp< DeviceType, DeviceOut > &tmp)
 

Function Documentation

Here is the call graph for this function:

Here is the caller graph for this function:

template<class DeviceIn , class DeviceOut , VarType VT, PhiInterpType PIT, TorType TT, KinType KT>
void get_field_grad ( const Simulation< DeviceType > &  sml,
const Grid< DeviceType > &  grid,
const DomainDecomposition< DeviceType > &  pol_decomp,
const MagneticField< DeviceType > &  magnetic_field,
Smoothing smoothing,
GetPotGradFieldArgs< DeviceIn, DeviceOut, VT, PIT, TT, KT > &  args,
GetPotentialGradTemp< DeviceType, DeviceOut > &  tmp 
)

Calculates a gyro-averaged potential and its gradients, in field-following coordinates (if XGC1).

Parameters
[in]gridis the grid object
[in]magnetic_fieldis the magnetic field object
[in]input_potentialis the input potential
[out]psn_field_rho_ffis the gyroaveraged potential (field-following if XGC1)
[out]psn_gradient_rho_ffis the gyroaveraged gradient (field-following if XGC1)
[in]calculate_E_intis 1 if calculating E, which has some extra steps compared to the As or Ah calculation
Returns
void

Here is the call graph for this function:

Here is the caller graph for this function:

void get_pot_epar_em_filter ( double *  tmp,
double *  E_para_em,
double *  spitzer_res,
int *  bndry 
)

Here is the caller graph for this function: