File hexapic.hpp¶
FileList > hexapic > source > hexapic.hpp
Core data structures, types, and global parameters for the HEXAPIC Particle-in-Cell (PIC) code. More...
#include <mpi.h>#include <math.h>#include <stdio.h>#include <unistd.h>#include <stdlib.h>#include <string.h>#include <limits.h>#include <time.h>#include <iostream>#include <vector>#include <set>#include <fstream>#include <sstream>#include <petsc.h>#include <iomanip>#include <openPMD/openPMD.hpp>
Namespaces¶
| Type | Name | 
|---|---|
| namespace | openPMD  |  
Classes¶
| Type | Name | 
|---|---|
| struct | Boundary  |  
| struct | Cell  |  
| struct | Collision  |  
| struct | Grid  |  
| struct | Neighbours  |  
| struct | Particle  |  
| struct | SecondaryEmission  |  
| struct | Source  |  
| struct | SourceSpecie  |  
| struct | Species  |  
| struct | Species_inject  |  
| struct | Species_load  |  
Public Types¶
| Type | Name | 
|---|---|
| typedef void(* | reactionFunction  |  
Public Attributes¶
| Type | Name | 
|---|---|
| Mat | A  Matrix.  |  
| PetscScalar | Bb  normalised basis for B  |  
| PetscScalar | Bf  external magnetic field  |  
| std::vector< std::vector< std::string > > | MCC_init_data  |  
| std::vector< std::vector< std::string > > | PSI_init_data  |  
| PetscScalar | Sconst  |  
| PetscScalar * | V_global  |  
| PetscScalar * | V_local  |  
| Vec | b  Solution and source term.  |  
| PetscInt | boris  |  
| std::vector< Cell > | cells  |  
| std::vector< std::vector< PetscScalar > > | chunks_float  |  
| std::vector< Collision > | collisions  |  
| VecScatter | ctx  |  
| PetscScalar | dV  |  
| PetscInt | davg  |  
| bool | digital_smoothing  |  
| PetscInt | dsteps  |  
| PetscScalar | dt  |  
| PetscScalar | dx  |  
| PetscScalar | dx2_inv  |  
| PetscScalar | dy  |  
| PetscScalar | dy2_inv  |  
| double | et  elapsed time for profiling  |  
| FILE * | f  |  
| Grid | grid  |  
| PetscScalar | hdt  |  
| PetscErrorCode | ierr  Error catcher.  |  
| KSP | ksp  Krylov subspace solver context.  |  
| std::vector< MeshRecordComponent > | meshes  |  
| int | nmpi  |  
| PC | pc  Preconditioner context.  |  
| std::vector< PetscScalar > | rho  |  
| std::vector< PetscInt > | rho_index  |  
| int | rmpi  |  
| Series | series  |  
| std::vector< Source > | sources  |  
| std::vector< Species > | species  |  
| std::vector< PetscScalar > | t_store  |  
| std::vector< PetscScalar > | trajx  |  
| std::vector< PetscScalar > | trajy  |  
| std::vector< PetscScalar > | trajz  |  
| PetscInt | tstep  |  
| Vec | x  |  
| Vec | x_array  |  
Public Functions¶
Macros¶
| Type | Name | 
|---|---|
| define | EPS0 8.8542e-12 |  
| define | EXTERNAL extern |  
| define | FALSE 0 |  
| define | PI 3.141592653589793 |  
| define | REAL PetscScalar |  
| define | TRUE 1 |  
| define | TWOPI 6.28318530717959 |  
| define | comm MPI\_COMM\_WORLD |  
| define | frand () ((REAL) rand() / (RAND\_MAX+1.0)) |  
| define | np2c_global 2e6 |  
| define | plot_3D FALSE |  
| define | q_e 1.602e-19 |  
Detailed Description¶
Copyright:
Copyright © 2025
Public Types Documentation¶
typedef reactionFunction¶
Public Attributes Documentation¶
variable A¶
Matrix.
variable Bb¶
normalised basis for B
variable Bf¶
external magnetic field
variable MCC_init_data¶
variable PSI_init_data¶
variable Sconst¶
variable V_global¶
variable V_local¶
variable b¶
Solution and source term.
variable boris¶
variable cells¶
variable chunks_float¶
variable collisions¶
variable ctx¶
variable dV¶
variable davg¶
variable digital_smoothing¶
variable dsteps¶
variable dt¶
variable dx¶
variable dx2_inv¶
variable dy¶
variable dy2_inv¶
variable et¶
elapsed time for profiling
variable f¶
variable grid¶
variable hdt¶
variable ierr¶
Error catcher.
variable ksp¶
Krylov subspace solver context.
variable meshes¶
variable nmpi¶
variable pc¶
Preconditioner context.