XGCa
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Functions
solve_poisson_axisym.cpp File Reference
#include "petscsystypes.h"
#include "solve_poisson_axisym.hpp"
#include "flux_surface_average.hpp"
Include dependency graph for solve_poisson_axisym.cpp:

Functions

int get_solverH_nbndry ()
 
int solverH_use_this_rank_int ()
 
int get_solver00_nbndry ()
 
int solver00_use_this_rank_int ()
 
void solve_axisym_poisson_iter (double *rhs00, double *rhs_bd00, double *sol_bd00)
 
void solve_axisymmetric_poisson_two_step_fsa (double *rhs, double *rhs00, double *rhs_bd, double *rhs_bd00, double *sol_bd, double *sol_bd00)
 
void fourier_filter_m_range_cpp (double *field_inout)
 
PetscInt * get_petsc_xgc_bd_loc ()
 
rtypeget_psn_pbdH_2_iseg_loc ()
 
int get_psn_pbdH_2_nseg ()
 
rtypeget_psn_cbd0_2_iseg_loc ()
 
int get_psn_cbd0_2_nseg ()
 
rtypeget_psn_pbd0_2_iseg_loc ()
 
int get_psn_pbd0_2_nseg ()
 
void post_process_axisymmetric_poisson1 (double *temp_ev_elec)
 
void post_process_axisymmetric_poisson2 ()
 
void set_rhs_bd_and_sol_bd (double *rhs, double *rhs_bd, double *sol_bd)
 
void zero_out_wall_fort (double *rhs)
 
void calculate_den00_1d (const Grid< DeviceType > &grid, const View< double *, CLayout, HostType > density0, View< double *, CLayout, HostType > den00_1d)
 
void set_rhs_poisson_step_two (const View< double *, CLayout, HostType > &rhs00, const View< double *, CLayout, HostType > &rhs, const View< double *, CLayout, HostType > &rhs_bd, const View< double *, CLayout, HostType > &sol_bd, bool is_XGCa)
 
void set_rhs_poisson_axisym (const Simulation< DeviceType > &sml, const MagneticField< DeviceType > &magnetic_field, const Grid< DeviceType > &grid, Plasma &plasma, const Charges &charges, SolverSetting solver_setting, const View< double *, CLayout, HostType > &rhs, const View< double *, CLayout, HostType > &rhs_bd, const View< double *, CLayout, HostType > &sol_bd)
 
void solve_for_E (const Simulation< DeviceType > &sml, const MagneticField< DeviceType > &magnetic_field, const Grid< DeviceType > &grid, Plasma &plasma, const Charges &charges, SolverSetting solver_setting)
 
void solve_poisson_axisym (const Simulation< DeviceType > &sml, const MagneticField< DeviceType > &magnetic_field, const Grid< DeviceType > &grid, const DomainDecomposition< DeviceType > &pol_decomp, Smoothing &smoothing, Plasma &plasma, const Charges &charges, SolverSetting solver_setting, const ElectricField< DeviceType > &electric_field)
 

Function Documentation

void calculate_den00_1d ( const Grid< DeviceType > &  grid,
const View< double *, CLayout, HostType density0,
View< double *, CLayout, HostType den00_1d 
)

Averages axisymmetric field over flux surfaces and interpolates into flux surface coordinates

Parameters
[in]gridis the grid object
[in]density0is the axisymmetric component of the field
[out]den00_1dis the resulting field
Returns
void

Here is the call graph for this function:

Here is the caller graph for this function:

void fourier_filter_m_range_cpp ( double *  field_inout)
PetscInt* get_petsc_xgc_bd_loc ( )
rtype* get_psn_cbd0_2_iseg_loc ( )

Here is the caller graph for this function:

int get_psn_cbd0_2_nseg ( )

Here is the caller graph for this function:

rtype* get_psn_pbd0_2_iseg_loc ( )
int get_psn_pbd0_2_nseg ( )
rtype* get_psn_pbdH_2_iseg_loc ( )

Here is the caller graph for this function:

int get_psn_pbdH_2_nseg ( )

Here is the caller graph for this function:

int get_solver00_nbndry ( )

Here is the call graph for this function:

Here is the caller graph for this function:

int get_solverH_nbndry ( )

Here is the caller graph for this function:

void post_process_axisymmetric_poisson1 ( double *  temp_ev_elec)
void post_process_axisymmetric_poisson2 ( )

Here is the call graph for this function:

Here is the caller graph for this function:

void set_rhs_bd_and_sol_bd ( double *  rhs,
double *  rhs_bd,
double *  sol_bd 
)
void set_rhs_poisson_axisym ( const Simulation< DeviceType > &  sml,
const MagneticField< DeviceType > &  magnetic_field,
const Grid< DeviceType > &  grid,
Plasma plasma,
const Charges charges,
SolverSetting  solver_setting,
const View< double *, CLayout, HostType > &  rhs,
const View< double *, CLayout, HostType > &  rhs_bd,
const View< double *, CLayout, HostType > &  sol_bd 
)

Here is the call graph for this function:

Here is the caller graph for this function:

void set_rhs_poisson_step_two ( const View< double *, CLayout, HostType > &  rhs00,
const View< double *, CLayout, HostType > &  rhs,
const View< double *, CLayout, HostType > &  rhs_bd,
const View< double *, CLayout, HostType > &  sol_bd,
bool  is_XGCa 
)

Here is the call graph for this function:

Here is the caller graph for this function:

void solve_axisym_poisson_iter ( double *  rhs00,
double *  rhs_bd00,
double *  sol_bd00 
)
void solve_axisymmetric_poisson_two_step_fsa ( double *  rhs,
double *  rhs00,
double *  rhs_bd,
double *  rhs_bd00,
double *  sol_bd,
double *  sol_bd00 
)
void solve_for_E ( const Simulation< DeviceType > &  sml,
const MagneticField< DeviceType > &  magnetic_field,
const Grid< DeviceType > &  grid,
Plasma plasma,
const Charges charges,
SolverSetting  solver_setting 
)

Here is the call graph for this function:

Here is the caller graph for this function:

void solve_poisson_axisym ( const Simulation< DeviceType > &  sml,
const MagneticField< DeviceType > &  magnetic_field,
const Grid< DeviceType > &  grid,
const DomainDecomposition< DeviceType > &  pol_decomp,
Smoothing smoothing,
Plasma plasma,
const Charges charges,
SolverSetting  solver_setting,
const ElectricField< DeviceType > &  electric_field 
)

Here is the call graph for this function:

Here is the caller graph for this function:

int solver00_use_this_rank_int ( )

Here is the call graph for this function:

Here is the caller graph for this function:

int solverH_use_this_rank_int ( )

Here is the caller graph for this function:

void zero_out_wall_fort ( double *  rhs)