|
ORB5X 1.0.0
Performance-portable global electromagnetic gyrokinetic PIC code
|
PSZS Module - Phase Space Zone Sampling diagnostics. More...
#include "pszs.hpp"
Static Public Member Functions | |
| static void | close () |
| Close PSZS HDF5 output file. | |
| static void | destroyStaticViews () |
| static void | initialize (int isp, int npart_loc) |
| Initialize PSZS diagnostics for a species. | |
| static void | open (bool reopen=false) |
| Open PSZS HDF5 output file. | |
| static void | set_variables (int isp, PszsVariables &pszs_, const std::array< Real, 3 > &lb, const std::array< Real, 3 > &ub) |
| Set PSZS variables for a species. | |
| static void | solve (Real time) |
| Solve for distribution function and output results. | |
Static Public Attributes | |
| static constexpr int | mass_matrix_id = 1 |
| Matrix identifier for mass matrix. | |
| static constexpr int | ngauss = 4 |
| Number of Gauss quadrature points. | |
PSZS Module - Phase Space Zone Sampling diagnostics.
This class provides static methods for PSZS diagnostics, matching the Fortran pszs_mod module interface.
Usage:
|
static |
Close PSZS HDF5 output file.
Closes the matrix.h5 file. Only rank 0 performs the operation.
Fortran reference: pszs.F90 lines 65-69
|
static |
|
static |
Initialize PSZS diagnostics for a species.
Sets up grids, splines, mass matrices, and HDF5 output structure. This is called once during simulation initialization.
| isp | Species index (0-based) |
| npart_loc | Number of local particles for this species |
Fortran reference: pszs.F90 lines 161-456
|
static |
Open PSZS HDF5 output file.
Opens or creates the matrix.h5 file for PSZS output. Only rank 0 performs file operations.
| reopen | If true, opens existing file; if false, creates new file |
Fortran reference: pszs.F90 lines 47-63
|
static |
Set PSZS variables for a species.
Configures coordinate ordering and bounds for phase space sampling. Sets up labels, grid sizes, and coordinate mappings.
| isp | Species index (0-based in C++, was 1-based in Fortran) |
| pszs_ | Reference to PszsVariables structure for this species |
| lb | Lower bounds for coordinates [3] (ke, tam, mu order in Fortran) |
| ub | Upper bounds for coordinates [3] (ke, tam, mu order in Fortran) |
Fortran reference: pszs.F90 lines 71-159
|
static |
Solve for distribution function and output results.
Solves the linear system for B-spline coefficients and evaluates the distribution function on the grid. Writes results to HDF5 file.
| time | Current simulation time |
Fortran reference: pszs.F90 lines 458-532
|
staticconstexpr |
Matrix identifier for mass matrix.
|
staticconstexpr |
Number of Gauss quadrature points.