|
XGC1
|
#include "timer_macro.hpp"#include "globals.hpp"#include "particles.hpp"#include "sort.hpp"#include "push_algorithm.hpp"#include "push_controls.hpp"#include "push_diagnostic_c.hpp"#include "unfused_push_algorithm.hpp"#include "push.hpp"
Functions | |
| template<KinType KT, PhiInterpType PIT, MarkerType MT, MagneticFieldMode MFM, BFieldSymmetry BFS> | |
| void | templated_push_kernel (const Grid< DeviceType > &grid, const MagneticField< DeviceType > &magnetic_field, Species< DeviceType > &species, const GridFieldPackPtr &grid_field_pack_ptr, const PerturbedBField< DeviceType > &perturbed_B_field, const Sheath< DeviceType > &sheath, const WallLoss &wall_loss, const HeatDiagnostics< DeviceType > &heat_diag, const PushControls &push_controls, double dt, int ncycles_per_launch, const Species< DeviceType >::LaunchBounds &launch_bounds) |
| void | push_kernel (const Grid< DeviceType > &grid, const MagneticField< DeviceType > &magnetic_field, Species< DeviceType > &species, const GridFieldPackPtr &grid_field_pack_ptr, const PerturbedBField< DeviceType > &perturbed_B_field, const Sheath< DeviceType > &sheath, const WallLoss &wall_loss, const HeatDiagnostics< DeviceType > &heat_diag, const PushControls &push_controls, double dt, int ncycles_per_launch, const Species< DeviceType >::LaunchBounds &launch_bounds) |
| void | push (const int ipc, const bool diag_on, const Simulation< DeviceType > &sml, const Grid< DeviceType > &grid, const MagneticField< DeviceType > &magnetic_field, Species< DeviceType > &species, const GridFieldPackPtr &grid_field_pack_ptr, const PerturbedBField< DeviceType > &perturbed_B_field, const Sheath< DeviceType > &sheath, const WallLoss &wall_loss, SortViews< DeviceType > &sort_views, const PushDiagnostic< DeviceType > &diag, const HeatDiagnostics< DeviceType > &heat_diag, const DomainDecomposition< DeviceType > &pol_decomp, const GridFieldPackPtr &grid_field_pack_near_ptr, const ParticleStream &particle_stream) |
| void | setup_and_push (int ipc, int istep, int isp, bool diag_on, const Simulation< DeviceType > &sml, const Grid< DeviceType > &grid, const MagneticField< DeviceType > &magnetic_field, Species< DeviceType > &species, GridFieldPackPtr &grid_field_pack_ptr, const PerturbedBField< DeviceType > &perturbed_B_field, Sheath< DeviceType > &sheath, const WallLoss &wall_loss, SortViews< DeviceType > &sort_views, const PushDiagnostic< DeviceType > &diag, const HeatDiagnostics< DeviceType > &heat_diag, const DomainDecomposition< DeviceType > &pol_decomp, GridFieldPackPtr &grid_field_pack_near_ptr, const ParticleStream &particle_stream) |
| void | copy_push_requisites_to_device (const Simulation< DeviceType > &sml, const Sheath< DeviceType > &sheath, const Neutrals &neutrals, const PushDiagnostic< DeviceType > &diag) |
| void | copy_push_updates_from_device (const Simulation< DeviceType > &sml, const Sheath< DeviceType > &sheath, const Neutrals &neutrals, const PushDiagnostic< DeviceType > &diag, const HeatDiagnostics< DeviceType > &heat_diag, const Diag1D &diag_1d) |
| template<KinType KT, PhiInterpType PIT, MarkerType MT, MagneticFieldMode MFM> | |
| bool | gfpack_matches (const GridFieldPackPtr &gfpack_ptr) |
| bool | gfpack_is_reusable (const GridFieldPackPtr &gfpack_ptr, KinType kintype, MarkerType marker_type) |
| void | push_all_species (int ipc, int istep, bool diag_on, const Simulation< DeviceType > &sml, const Grid< DeviceType > &grid, const MagneticField< DeviceType > &magnetic_field, Plasma &plasma, ElectricField< DeviceType > &electric_field, PerturbedBField< DeviceType > &perturbed_B_field, Sheath< DeviceType > &sheath, const Neutrals &neutrals, const PushDiagnostic< DeviceType > &diag, const HeatDiagnostics< DeviceType > &heat_diag, const Diag1D &diag_1d, const DomainDecomposition< DeviceType > &pol_decomp, const ParticleStream &particle_stream) |
| void copy_push_requisites_to_device | ( | const Simulation< DeviceType > & | sml, |
| const Sheath< DeviceType > & | sheath, | ||
| const Neutrals & | neutrals, | ||
| const PushDiagnostic< DeviceType > & | diag | ||
| ) |


| void copy_push_updates_from_device | ( | const Simulation< DeviceType > & | sml, |
| const Sheath< DeviceType > & | sheath, | ||
| const Neutrals & | neutrals, | ||
| const PushDiagnostic< DeviceType > & | diag, | ||
| const HeatDiagnostics< DeviceType > & | heat_diag, | ||
| const Diag1D & | diag_1d | ||
| ) |


| bool gfpack_is_reusable | ( | const GridFieldPackPtr & | gfpack_ptr, |
| KinType | kintype, | ||
| MarkerType | marker_type | ||
| ) |

| bool gfpack_matches | ( | const GridFieldPackPtr & | gfpack_ptr | ) |
| void push | ( | const int | ipc, |
| const bool | diag_on, | ||
| const Simulation< DeviceType > & | sml, | ||
| const Grid< DeviceType > & | grid, | ||
| const MagneticField< DeviceType > & | magnetic_field, | ||
| Species< DeviceType > & | species, | ||
| const GridFieldPackPtr & | grid_field_pack_ptr, | ||
| const PerturbedBField< DeviceType > & | perturbed_B_field, | ||
| const Sheath< DeviceType > & | sheath, | ||
| const WallLoss & | wall_loss, | ||
| SortViews< DeviceType > & | sort_views, | ||
| const PushDiagnostic< DeviceType > & | diag, | ||
| const HeatDiagnostics< DeviceType > & | heat_diag, | ||
| const DomainDecomposition< DeviceType > & | pol_decomp, | ||
| const GridFieldPackPtr & | grid_field_pack_near_ptr, | ||
| const ParticleStream & | particle_stream | ||
| ) |


| void push_all_species | ( | int | ipc, |
| int | istep, | ||
| bool | diag_on, | ||
| const Simulation< DeviceType > & | sml, | ||
| const Grid< DeviceType > & | grid, | ||
| const MagneticField< DeviceType > & | magnetic_field, | ||
| Plasma & | plasma, | ||
| ElectricField< DeviceType > & | electric_field, | ||
| PerturbedBField< DeviceType > & | perturbed_B_field, | ||
| Sheath< DeviceType > & | sheath, | ||
| const Neutrals & | neutrals, | ||
| const PushDiagnostic< DeviceType > & | diag, | ||
| const HeatDiagnostics< DeviceType > & | heat_diag, | ||
| const Diag1D & | diag_1d, | ||
| const DomainDecomposition< DeviceType > & | pol_decomp, | ||
| const ParticleStream & | particle_stream | ||
| ) |


| void push_kernel | ( | const Grid< DeviceType > & | grid, |
| const MagneticField< DeviceType > & | magnetic_field, | ||
| Species< DeviceType > & | species, | ||
| const GridFieldPackPtr & | grid_field_pack_ptr, | ||
| const PerturbedBField< DeviceType > & | perturbed_B_field, | ||
| const Sheath< DeviceType > & | sheath, | ||
| const WallLoss & | wall_loss, | ||
| const HeatDiagnostics< DeviceType > & | heat_diag, | ||
| const PushControls & | push_controls, | ||
| double | dt, | ||
| int | ncycles_per_launch, | ||
| const Species< DeviceType >::LaunchBounds & | launch_bounds | ||
| ) |

| void setup_and_push | ( | int | ipc, |
| int | istep, | ||
| int | isp, | ||
| bool | diag_on, | ||
| const Simulation< DeviceType > & | sml, | ||
| const Grid< DeviceType > & | grid, | ||
| const MagneticField< DeviceType > & | magnetic_field, | ||
| Species< DeviceType > & | species, | ||
| GridFieldPackPtr & | grid_field_pack_ptr, | ||
| const PerturbedBField< DeviceType > & | perturbed_B_field, | ||
| Sheath< DeviceType > & | sheath, | ||
| const WallLoss & | wall_loss, | ||
| SortViews< DeviceType > & | sort_views, | ||
| const PushDiagnostic< DeviceType > & | diag, | ||
| const HeatDiagnostics< DeviceType > & | heat_diag, | ||
| const DomainDecomposition< DeviceType > & | pol_decomp, | ||
| GridFieldPackPtr & | grid_field_pack_near_ptr, | ||
| const ParticleStream & | particle_stream | ||
| ) |


| void templated_push_kernel | ( | const Grid< DeviceType > & | grid, |
| const MagneticField< DeviceType > & | magnetic_field, | ||
| Species< DeviceType > & | species, | ||
| const GridFieldPackPtr & | grid_field_pack_ptr, | ||
| const PerturbedBField< DeviceType > & | perturbed_B_field, | ||
| const Sheath< DeviceType > & | sheath, | ||
| const WallLoss & | wall_loss, | ||
| const HeatDiagnostics< DeviceType > & | heat_diag, | ||
| const PushControls & | push_controls, | ||
| double | dt, | ||
| int | ncycles_per_launch, | ||
| const Species< DeviceType >::LaunchBounds & | launch_bounds | ||
| ) |
