XGCa
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Functions
cpp_main_loop.cpp File Reference
#include <iostream>
#include <Kokkos_Core.hpp>
#include "timer_macro.hpp"
#include "cpp_species.hpp"
#include "cpp_electric_field.hpp"
#include "cpp_pushe_diagnostics.hpp"
#include "cpp_heat_diagnostics.hpp"
#include "cpp_neutrals.hpp"
#include "cpp_sheath.hpp"
#include "cpp_gen_perm.hpp"
#include "cpp_domain_decomposition.hpp"
#include "cpp_push.hpp"
#include "cpp_sort.hpp"
#include "cpp_transpose_send.hpp"
#include "cpp_shift.hpp"
#include "solve_algorithm.hpp"
#include "f_source.hpp"
Include dependency graph for cpp_main_loop.cpp:

Functions

void release_acc_memory ()
 
void set_sml_istep_and_gstep (int istep)
 
void sheath_mem_check (FortranPtr spall_fptr)
 
void load_balance (FortranPtr spall_fptr)
 
void update_poloidal_decomposition (FortranPtr grid_fptr, FortranPtr psn_fptr, FortranPtr spall_fptr)
 
void coupling_turb_read (FortranPtr grid_fptr, FortranPtr psn_fptr, int istep)
 
void update_3db (FortranPtr grid_fptr, FortranPtr psn_fptr)
 
void diag_additional (FortranPtr grid_fptr, FortranPtr psn_fptr, FortranPtr spall_fptr)
 
void gather_field_info (FortranPtr grid_fptr, FortranPtr psn_fptr)
 
void ion_push (FortranPtr grid_fptr, FortranPtr psn_fptr, FortranPtr spall_fptr, int istep, int ipc)
 
void diagnosis (int istep, int ipc, FortranPtr grid_fptr, FortranPtr psn_fptr, FortranPtr spall_fptr)
 
void ion_shift (FortranPtr grid_fptr, FortranPtr psn_fptr, FortranPtr spall_fptr)
 
void flush_timers (int istep)
 
void set_sml_symmetric_f ()
 
void main_f0_off (FortranPtr grid_fptr, FortranPtr psn_fptr, FortranPtr spall_fptr, int istep)
 
void resampling (FortranPtr grid_fptr, FortranPtr psn_fptr, FortranPtr spall_fptr)
 
void fcoupling (FortranPtr grid_fptr, FortranPtr psn_fptr, FortranPtr spall_fptr, int istep)
 
void write_restart (FortranPtr grid_fptr, FortranPtr psn_fptr, FortranPtr spall_fptr, int istep, int final_istep)
 
void update_sml_ipc (int ipc)
 
void get_sml_gstep_and_sml_time (int *gstep, double *time)
 
void set_sml_time ()
 
void shift_ie (FortranPtr spall_fptr)
 
int get_spall_num (FortranPtr spall_fptr, int isp)
 
void set_spall_num (FortranPtr spall_fptr, int isp, int n_electrons)
 
void sheath_adjust (FortranPtr grid_fptr, FortranPtr spall_fptr, int sheath_mode)
 
void limit_marker_den (FortranPtr grid_fptr, FortranPtr psn_fptr, FortranPtr spall_fptr)
 
void update_load_balance_cost_tracking ()
 
int * get_gvid0_pid ()
 
void main_loop (int istep, FortranPtr grid_fptr, FortranPtr psn_fptr, FortranPtr spall_fptr, Simulation< DeviceType > &sml, MagneticField< DeviceType > &magnetic_field, std::vector< Species< DeviceType >> &all_species, Neutrals< DeviceType > &neutrals, DomainDecomposition< DeviceType > &pol_decomp, Grid< DeviceType > &grid, Sheath< DeviceType > &sheath, ElectricField< DeviceType > &electric_field, PerturbedBField< DeviceType > &perturbed_B_field, F0Profile< DeviceType > &f0profile, Diagnostics< DeviceType > &diag, HeatDiagnostics< DeviceType > &heat_diag, Charge< DeviceType > &charge, VelocityGrid &vgrid, GeneratePermutation< DeviceType > &gen_perm, GeneratePermutation< DeviceType > &pid_gen_perm, Cabana::AoSoA< ParticleDataTypes, HostType, VEC_LEN > &particles_copy, TmpSpecies< DeviceType > &tmp_species)
 

Function Documentation

void coupling_turb_read ( FortranPtr  grid_fptr,
FortranPtr  psn_fptr,
int  istep 
)

Here is the caller graph for this function:

void diag_additional ( FortranPtr  grid_fptr,
FortranPtr  psn_fptr,
FortranPtr  spall_fptr 
)

Here is the caller graph for this function:

void diagnosis ( int  istep,
int  ipc,
FortranPtr  grid_fptr,
FortranPtr  psn_fptr,
FortranPtr  spall_fptr 
)

Here is the caller graph for this function:

void fcoupling ( FortranPtr  grid_fptr,
FortranPtr  psn_fptr,
FortranPtr  spall_fptr,
int  istep 
)

Here is the caller graph for this function:

void flush_timers ( int  istep)

Here is the caller graph for this function:

void gather_field_info ( FortranPtr  grid_fptr,
FortranPtr  psn_fptr 
)
int* get_gvid0_pid ( )

Here is the caller graph for this function:

void get_sml_gstep_and_sml_time ( int *  gstep,
double *  time 
)

Here is the caller graph for this function:

int get_spall_num ( FortranPtr  spall_fptr,
int  isp 
)
void ion_push ( FortranPtr  grid_fptr,
FortranPtr  psn_fptr,
FortranPtr  spall_fptr,
int  istep,
int  ipc 
)

Here is the caller graph for this function:

void ion_shift ( FortranPtr  grid_fptr,
FortranPtr  psn_fptr,
FortranPtr  spall_fptr 
)

Here is the caller graph for this function:

void limit_marker_den ( FortranPtr  grid_fptr,
FortranPtr  psn_fptr,
FortranPtr  spall_fptr 
)
void load_balance ( FortranPtr  spall_fptr)

Here is the caller graph for this function:

void main_f0_off ( FortranPtr  grid_fptr,
FortranPtr  psn_fptr,
FortranPtr  spall_fptr,
int  istep 
)

Here is the caller graph for this function:

void main_loop ( int  istep,
FortranPtr  grid_fptr,
FortranPtr  psn_fptr,
FortranPtr  spall_fptr,
Simulation< DeviceType > &  sml,
MagneticField< DeviceType > &  magnetic_field,
std::vector< Species< DeviceType >> &  all_species,
Neutrals< DeviceType > &  neutrals,
DomainDecomposition< DeviceType > &  pol_decomp,
Grid< DeviceType > &  grid,
Sheath< DeviceType > &  sheath,
ElectricField< DeviceType > &  electric_field,
PerturbedBField< DeviceType > &  perturbed_B_field,
F0Profile< DeviceType > &  f0profile,
Diagnostics< DeviceType > &  diag,
HeatDiagnostics< DeviceType > &  heat_diag,
Charge< DeviceType > &  charge,
VelocityGrid vgrid,
GeneratePermutation< DeviceType > &  gen_perm,
GeneratePermutation< DeviceType > &  pid_gen_perm,
Cabana::AoSoA< ParticleDataTypes, HostType, VEC_LEN > &  particles_copy,
TmpSpecies< DeviceType > &  tmp_species 
)

Here is the call graph for this function:

Here is the caller graph for this function:

void release_acc_memory ( )

Here is the caller graph for this function:

void resampling ( FortranPtr  grid_fptr,
FortranPtr  psn_fptr,
FortranPtr  spall_fptr 
)

Here is the caller graph for this function:

void set_sml_istep_and_gstep ( int  istep)

Here is the caller graph for this function:

void set_sml_symmetric_f ( )

Here is the caller graph for this function:

void set_sml_time ( )

Here is the caller graph for this function:

void set_spall_num ( FortranPtr  spall_fptr,
int  isp,
int  n_electrons 
)

Here is the caller graph for this function:

void sheath_adjust ( FortranPtr  grid_fptr,
FortranPtr  spall_fptr,
int  sheath_mode 
)

Here is the caller graph for this function:

void sheath_mem_check ( FortranPtr  spall_fptr)

Here is the caller graph for this function:

void shift_ie ( FortranPtr  spall_fptr)

Here is the caller graph for this function:

void update_3db ( FortranPtr  grid_fptr,
FortranPtr  psn_fptr 
)

Here is the caller graph for this function:

void update_load_balance_cost_tracking ( )

Here is the caller graph for this function:

void update_poloidal_decomposition ( FortranPtr  grid_fptr,
FortranPtr  psn_fptr,
FortranPtr  spall_fptr 
)

Here is the caller graph for this function:

void update_sml_ipc ( int  ipc)

Here is the caller graph for this function:

void write_restart ( FortranPtr  grid_fptr,
FortranPtr  psn_fptr,
FortranPtr  spall_fptr,
int  istep,
int  final_istep 
)

Here is the caller graph for this function: