All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
charge_sum_and_gyroaverage.hpp File Reference
#include "sml.hpp"
#include "grid.hpp"
#include "domain_decomposition.hpp"
#include "charge.hpp"
#include "plasma.hpp"
Include dependency graph for charge_sum_and_gyroaverage.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


template<KinType KT>
void charge_sum_and_gyroaverage (const Simulation< DeviceType > &sml, const Grid< DeviceType > &grid, const DomainDecomposition< DeviceType > &pol_decomp, Charge< DeviceType, KT > &charge, Plasma &plasma, bool compute_electrons)

Function Documentation

template<KinType KT>
void charge_sum_and_gyroaverage ( const Simulation< DeviceType > &  sml,
const Grid< DeviceType > &  grid,
const DomainDecomposition< DeviceType > &  pol_decomp,
Charge< DeviceType, KT > &  charge,
Plasma plasma,
bool  compute_electrons 

Takes the field resulting from the scatter, which may have a gyroradius dimension and may be in field-following coordinates. Gyroaverages this field and converts coordinates as needed, and does a reduction on planes if planar data is not needed. Results are written to "field"

[in]smlcontains simulation control parameters
[in]gridis the grid object
[in]pol_decompis the domain decomposition
[in,out]chargecontains the computed charge/current densities and the processed charge/current densities
[in]plasmais needed for the species profile data
[in]compute_electronsis whether the operation is on electrons or ions

Here is the call graph for this function: