| ►Nablastr | |
| ►Nfields | |
| ►Ndetails | |
| CPoissonInterpCPtoFP | |
| CDirection | |
| CMultiFabOwner | |
| CMultiFabRegister | |
| ►Nparallelization | |
| CKernelTimer | Defines a timer object to be used on GPU; measures summed thread cycles |
| ►Nutils | |
| ►Nmsg_logger | |
| CLogger | |
| CMsg | |
| CMsgWithCounter | |
| CMsgWithCounterAndRanks | |
| ►Ntimer | |
| CTimer | |
| CSignalHandling | Signal handling |
| ►Nwarn_manager | |
| CWarnManager | |
| ►NMagnetostaticSolver | |
| CEBCalcBfromVectorPotentialPerLevel | |
| CVectorPoissonBoundaryHandler | |
| ►NParticleBoundaryProcess | |
| CAbsorb | |
| CNoOp | |
| ►Nutils | |
| ►Nparser | |
| CBTDIntervalsParser | This class is a parser for multiple slices of the form x,y,z,... where x, y and z are slices of the form i:j:k, as defined in the SliceParser class. This class contains a vector of SliceParsers. The supported function set differs from the IntervalsParser |
| CIntervalsParser | This class is a parser for multiple slices of the form x,y,z,... where x, y and z are slices of the form i:j:k, as defined in the SliceParser class. This class contains a vector of SliceParsers |
| CSliceParser | This class is a parser for slices of the form i:j:k where i, j and k are integers representing respectively the starting point, the stopping point and the period |
| ►Nwarpx | |
| ►Ninitialization | |
| CProjectionDivCleaner | |
| ►Nparticles | |
| ►Ndeposition | |
| CVarianceAccumulationBuffer | |
| CBoundaryBufferParIter | |
| CConfig | |
| ►NWarpXLaserProfiles | |
| CCommonLaserParameters | |
| CFieldFunctionLaserProfile | |
| CFromFileLaserProfile | |
| CGaussianLaserProfile | |
| CILaserProfile | |
| CAcceleratorLattice | |
| CAMReXGMRES | Wrapper for AMReX's GMRES solver |
| CBackgroundMCCCollision | |
| CBackgroundStopping | |
| CBackTransformFunctor | Functor to back-transform cell-centered data and store result in mf_out |
| CBackTransformParticleFunctor | BackTransform functor to select particles and Lorentz Transform them and store in particle buffers |
| CBackwardEulerAlgo | This struct contains only static functions to compute the coefficients for the BackwardEuler scheme of macroscopic Maxwells equations using macroscopic properties, namely, conductivity (sigma) and permittivity (epsilon). Permeability of the material, mu, is used as (beta/mu) for the E-update defined in MacroscopicEvolveECartesian() |
| CBeamRelevant | |
| CBilinearFilter | |
| CBinaryCollision | This class performs generic binary collisions |
| CBoundaryScrapingDiagnostics | |
| CBreitWheelerEngine | |
| CBreitWheelerEvolveOpticalDepth | |
| CBreitWheelerGeneratePairs | |
| CBreitWheelerGetOpticalDepth | |
| ►CBremsstrahlungFunc | This functor does binary Bremsstrahlung reactions in a single cell. Particles of the two interacting species are paired with each other and for each pair we compute the energy of the resulting photon if Bremsstrahlung happens. We fill p_mask with true if it happens so that the new photon corresponding to a given pair can be effectively created in the particle creation functor |
| CExecutor | |
| CBTDiagnostics | |
| CBTDMultiFabHeaderImpl | Class to read, modify, and write MultiFab header in Level_0/Cell_H when back-transformed diag format is selected as plotfile. This class enables multiple fabs to be interweaved and stitched into a single plotfile with a single Header, Cell_H |
| CBTDParticleDataHeaderImpl | Class to read, modify, and write particle header file, Particle_H, when back-transformed diag format is selected as plotfile. This class enables multiple particle buffers to be interweaved and stitched into a single plotfile with a single Particle_H file |
| CBTDPlotfileHeaderImpl | Class to read, modify, and write plotfile header when back-transformed diag format is selected as plotfile. This class enables multiple BTD buffers to be interweaved and stitched into a single plotfile with a single Header |
| CBTDSpeciesHeaderImpl | Class to read, modify, and write species header when back-transformed diag format is selected as plotfile. This class enables multiple BTD particle buffers to be interweaved and stitched into a single plotfile with a single Header |
| Cbw_pair_production_table_wrapper | |
| CCartesianCKCAlgorithm | |
| CCartesianNodalAlgorithm | |
| CCartesianYeeAlgorithm | |
| CCellCenterFunctor | Functor to cell-center MF and store result in mf_out |
| CChargeOnEB | |
| ►CColliderRelevant | |
| Caux_header_index | Auxiliary structure to store headers and indices of the reduced diagnostics |
| CCollisionBase | |
| CCollisionHandler | |
| CCompute_shape_factor | |
| CCompute_shape_factor_pair | |
| CCompute_shifted_shape_factor | |
| CComputeDiagFunctor | Functor to compute a diagnostic and store the result in existing MultiFab |
| CComputeParticleDiagFunctor | Functor to compute a diagnostic and store the result in existing ParticleContainer |
| CcopyAndReorder | Functor that copies the elements of src into dst, while reordering them according to indices |
| CCopyAndTimestamp | |
| CCopyParticleAttribs | Functor that creates copies of the current particle positions and momenta for later use. This is needed by the back-transformed diagnostics |
| CCurlCurlMLMGPC | Curl-curl Preconditioner |
| CCylindricalYeeAlgorithm | |
| CDiagIdx | |
| CDiagnostics | Base class for diagnostics. Contains main routines to filter, compute and flush diagnostics |
| ►CDifferentialLuminosity | |
| Caux_header_index | Auxiliary structure to store headers and indices of the reduced diagnostics |
| CDifferentialLuminosity2D | |
| CDirection | |
| CDivBFunctor | Functor to compute divB into mf_out |
| CDivEFunctor | Functor to compute divE into mf_out |
| CDrift | |
| ►CDSMCFunc | This class performs DSMC (direct simulation Monte Carlo) collisions within a cell. Particles are paired up and for each pair a stochastic process determines whether a collision occurs. The algorithm is similar to the one used for binary Coulomb collisions and the nuclear fusion module |
| CExecutor | |
| CEBCalcEfromPhiPerLevel | |
| CEBCoveredFunctor | Functor to indicate the fraction of the cell that is covered by the embedded boundary |
| CEffectivePotentialES | |
| CElectronPressure | This struct contains only static functions to compute the electron pressure using the particle density at a given point and the user provided reference density and temperatures |
| CElectrostaticSolver | Base class for Electrostatic Solver |
| CExternalFieldParams | Struct to store data related to external electromagnetic fields (flags, field values, and field parsers) |
| CExternalFieldReader | |
| CExternalFieldView | |
| CExternalVectorPotential | This class contains the parameters needed to evaluate a time varying external vector potential, leading to external E/B fields to be applied in Hybrid Solver. This class is used to break up the passed in fields into a spatial and time dependent solution |
| CFaceInfoBox | |
| CFieldAccessorMacroscopic | Functor that returns the division of the source m_field Array4 value by macroparameter obtained using m_parameter, at the respective (i,j,k) |
| CFieldEnergy | |
| CFieldMaximum | |
| CFieldMomentum | This class mainly contains a function that computes the field momentum |
| CFieldPoyntingFlux | This class mainly contains a function that computes the field Poynting flux, S = E cross B, integrated over each face of the domain |
| CFieldProbe | |
| CFieldProbeParticleContainer | |
| CFieldProbePIdx | |
| CFieldReduction | |
| CfillBufferFlag | Functor that fills the elements of the particle array inexflag with the value of the spatial array bmasks, at the corresponding particle position |
| CfillBufferFlagRemainingParticles | Functor that fills the elements of the particle array inexflag with the value of the spatial array bmasks, at the corresponding particle position |
| CFilter | |
| CFindEmbeddedBoundaryIntersection | |
| CFiniteDifferenceSolver | Top-level class for the electromagnetic finite-difference solver |
| CFlushFormat | |
| CFlushFormatAscent | This class aims at dumping performing in-situ diagnostics with ASCENT. In particular, function WriteToFile takes fields and particles as input arguments, and calls amrex functions to do the in-situ visualization |
| CFlushFormatCatalyst | This class aims at dumping performing in-situ analysis and visualization with Catalyst. Catalyst initialize and finalize are called in the constructor and destructor respectivelyThe function WriteToFile takes in the particles, meshes, and fields, and formats them to be used by given pipeline scripts. All exports are defined and executed externally through the given catalyst pipeline and implementation |
| CFlushFormatCheckpoint | |
| CFlushFormatInSitu | This class is a wrapper for the two single-backend in-situ formats, those being Catalyst and Ascent. They both use the exact same code for writing particles and this class aims to reduce redundancy by defining the method only once |
| CFlushFormatOpenPMD | This class aims at dumping diags data to disk using the openPMD standard. In particular, function WriteToFile takes fields and particles as input arguments, and writes data to file |
| CFlushFormatPlotfile | This class aims at dumping diags data to disk using the AMReX Plotfile format. In particular, function WriteToFile takes fields and particles as input arguments, and writes data to file |
| CFlushFormatSensei | This class aims at dumping performing in-situ diagnostics with SENSEI. In particular, function WriteToFile takes fields and particles as input arguments, and calls amrex functions to do the in-situ visualization |
| CFullDiagnostics | |
| CGeometryFilter | Functor that returns 1 if the particle is inside a given axis-aligned region defined by amrex::RealBox, 0 otherwise |
| CGetExternalEBField | Functor class that assigns external field values (E and B) to particles |
| CGetParticlePosition | Functor that can be used to extract the positions of the macroparticles inside a ParallelFor kernel |
| CGetTemperature | Get temperature at a point on the grid |
| CGetVelocity | |
| CguardCellManager | This class computes and stores the number of guard cells needed for the allocation of the MultiFabs and required for each part of the PIC loop |
| CHankelTransform | |
| CHardEdgedPlasmaLens | |
| CHardEdgedPlasmaLensDevice | |
| CHardEdgedQuadrupole | |
| CHardEdgedQuadrupoleDevice | |
| CHybridPICModel | This class contains the parameters needed to evaluate hybrid field solutions (kinetic ions with fluid electrons) |
| CImpactIonizationFilterFunc | Filter functor for impact ionization |
| CImpactIonizationTransformFunc | Transform functor for impact ionization |
| CImplicitOptions | |
| CImplicitSolver | |
| CIndependentPairHelper | |
| ►CInjectorDensity | |
| CObject | |
| CInjectorDensityConstant | |
| CInjectorDensityDeleter | |
| CInjectorDensityFromFile | |
| CInjectorDensityParser | |
| CInjectorDensityPredefined | |
| ►CInjectorFlux | |
| CObject | |
| CInjectorFluxConstant | |
| CInjectorFluxDeleter | |
| CInjectorFluxParser | |
| ►CInjectorMomentum | |
| CObject | |
| CInjectorMomentumBoltzmann | |
| CInjectorMomentumConstant | |
| CInjectorMomentumDeleter | |
| CInjectorMomentumGaussian | |
| CInjectorMomentumGaussianFlux | |
| CInjectorMomentumGaussianParser | |
| CInjectorMomentumJuttner | |
| CInjectorMomentumParser | |
| CInjectorMomentumRadialExpansion | Struct whose getMomentum returns momentum for 1 particle, for radial expansion |
| CInjectorMomentumUniform | |
| ►CInjectorPosition | |
| CObject | |
| CInjectorPositionRandom | |
| CInjectorPositionRandomPlane | |
| CInjectorPositionRegular | |
| CIntIdx | |
| CIonizationFilterFunc | |
| CIonizationTransformFunc | |
| CIsOutsideDomainBoundary | |
| CJacobianFunctionMF | This is a linear function class for computing the action of a Jacobian on a vector using a matrix-free finite-difference method. This class has all of the required functions to be used as the linear operator template parameter in AMReX_GMRES |
| CJacobiPC | Point-Jacobi Preconditioner |
| CJdispFunctor | Functor to cell-center MF for displacement current density and store result in mf_out |
| CJFunctor | Functor to cell-center MF for current density and store result in mf_out |
| CLabFrameExplicitES | |
| CLaserParticleContainer | |
| CLatticeElementBase | |
| CLatticeElementFinder | |
| CLatticeElementFinderDevice | The lattice element finder class that can be trivially copied to the device. This only has simple data and pointers |
| CLaxWendroffAlgo | This struct contains only static functions to compute the coefficients for the Lax-Wendroff scheme of macroscopic Maxwells equations using macroscopic properties, namely, conductivity (sigma), permittivity (epsilon). Permeability of the material, mu, is used as (beta/mu) for the E-update defined in MacroscopicEvolveECartesian() |
| CLevelingThinning | This class implements the leveling thinning algorithm as defined in Muraviev, A., et al. arXiv:2006.08593 (2020). The main steps of the algorithm are the following: for every cell we calculate a level weight, defined by the average weight of the species particles in that cell multiplied by the target ratio. Then, particles with a weight lower than the level weight are either removed, with a probability 1 - particle_weight/level_weight, or have their weight set to the level weight |
| ►CLinearBreitWheelerCollisionFunc | This functor does two-photon binary collisions on a single cell. Particles of the two colliding species are paired with each other and for each pair we compute if a pair-production event occurs. If so, we fill a mask (input parameter p_mask) with true so that product particles corresponding to a given pair can be effectively created in the particle creation functor. This functor also reads and stores the event multiplier |
| CExecutor | |
| ►CLinearComptonCollisionFunc | This functor does perform linear Compton scattering on a single cell. Particles of the two colliding species (a photon species and a electron/positron species) are paired with each other and for each pair we compute if a Compton-scattering event occurs. If so, we fill a mask (input parameter p_mask) with true so that product particles corresponding to a given pair can be effectively created in the particle creation functor. This functor also reads and stores the event multiplier |
| CExecutor | |
| CLinearFunction | This is a base class for defining a linear function class to use with WarpX implicit solvers |
| CLinearSolver | Top-level class for the linear solver |
| CLoadBalanceCosts | |
| CLoadBalanceEfficiency | |
| CLorentzTransformParticles | Transform functor to Lorentz-transform particles and obtain lab-frame data |
| CMacroscopicProperties | This class contains the macroscopic properties of the medium needed to evaluate macroscopic Maxwell equation |
| CMultiDiagnostics | This class contains a vector of all diagnostics in the simulation |
| CMultiFluidContainer | |
| CMultiParticleContainer | |
| CMultiReducedDiags | |
| CMultiSigmaBox | |
| CNCIGodfreyFilter | Class for Godfrey's filter to suppress Numerical Cherenkov Instability |
| CNewtonSolver | Newton method to solve nonlinear equation of form: F(U) = U - b - R(U) = 0. U is the solution vector, b is a constant, and R(U) is some nonlinear function of U, which is computed in the ComputeRHS() Ops function |
| CNonlinearSolver | Top-level class for the nonlinear solver |
| CNoParticleCreationFunc | This class does nothing and is used as second template parameter for binary collisions that do not create particles |
| CNormalizationType | |
| ►CNuclearFusionFunc | This functor does binary nuclear fusions on a single cell. Particles of the two reacting species are paired with each other and for each pair we compute if a fusion event occurs. If so, we fill a mask (input parameter p_mask) with true so that product particles corresponding to a given pair can be effectively created in the particle creation functor. This functor also reads and contains the fusion multiplier |
| CExecutor | |
| CPairGenerationFilterFunc | Filter functor for the Breit Wheeler process |
| CPairGenerationTransformFunc | Transform functor for the Breit-Wheeler process |
| ►CPairWiseCoulombCollisionFunc | This functor performs pairwise Coulomb collision on a single cell by calling the function ElasticCollisionPerez. It also reads and contains the Coulomb logarithm |
| CExecutor | |
| CParserFilter | Functor that returns 0 or 1 depending on a parser selection |
| ►CParticleBoundaries | |
| CParticleBoundariesData | |
| CParticleBoundaryBuffer | |
| CParticleCreationFunc | This functor creates particles produced from a binary collision and sets their initial properties (position, momentum, weight) |
| CParticleDiag | |
| CParticleEnergy | |
| ►CParticleExtrema | |
| Caux_header_index | Auxiliary structure to store headers and indices of the reduced diagnostics |
| CParticleHistogram | |
| CParticleHistogram2D | |
| CParticleMomentum | This class mainly contains a function that computes the particle relativistic momentum of each species |
| CParticleNumber | |
| CParticleReductionFunctor | Functor to calculate per-cell averages of particle properties |
| CPartPerCellFunctor | Functor to cell-center MF and store result in mf_out |
| CPartPerGridFunctor | Functor to cell-center MF and store result in mf_out |
| CPDim3 | |
| CPEC_Insulator | |
| CPhiFunctor | Functor to compute electrostatic potential into mf_out |
| CPhotonCreationFunc | This functor creates photons produced from a binary collision and sets their initial properties (position, momentum, weight) |
| CPhotonEmissionFilterFunc | Filter functor for the QED photon emission process |
| CPhotonEmissionTransformFunc | Transform functor for the QED photon emission process |
| CPhotonParticleContainer | |
| CPhysicalParticleContainer | |
| CPicardSolver | Picard fixed-point iteration method to solve nonlinear equation of form: U = b + R(U). U is the solution vector. b is a constant. R(U) is some nonlinear function of U, which is computed in the Ops function ComputeRHS() |
| CPicsarBreitWheelerCtrl | |
| CPicsarQuantumSyncCtrl | |
| CPIdx | |
| CPlasmaInjector | |
| CPlasmaParserHelper | |
| CPlasmaParserWrapper | |
| CPML | |
| CPML_RZ | |
| CPMLComp | |
| ►CPoissonBoundaryHandler | |
| CPhiCalculatorEB | |
| CPoyntingCellCentered | |
| CPoyntingNodal | |
| CPoyntingStaggered | |
| CPreconditioner | Base class for preconditioners |
| CProcessNumberFunctor | Functor to store the process each Box is assigned to in mf_out |
| CPsatdAlgorithmComoving | |
| CPsatdAlgorithmGalilean | |
| CPsatdAlgorithmGalileanRZ | |
| CPsatdAlgorithmJRhomFirstOrder | |
| CPsatdAlgorithmJRhomSecondOrder | |
| CPsatdAlgorithmPml | |
| CPsatdAlgorithmPmlRZ | |
| CPsatdAlgorithmRZ | |
| CQEDHelper | |
| Cqs_photon_emission_table_wrapper | |
| CQuantumSynchrotronEngine | |
| CQuantumSynchrotronEvolveOpticalDepth | |
| CQuantumSynchrotronGetOpticalDepth | |
| CQuantumSynchrotronPhotonEmission | |
| CRandomFilter | Functor that returns 0 or 1 depending on a random draw per particle |
| CReducedDiags | |
| CRelativisticExplicitES | |
| CResampling | This is a general class used for resampling that is instantiated as a member of MultiParticleContainer. It contains a ResamplingTrigger object used to determine if resampling should be done at a given timestep for a given species and a pointer to a ResamplingAlgorithm object used to carry out the resampling |
| CResamplingAlgorithm | An empty base class from which specific resampling algorithms are derived |
| CResamplingTrigger | This class is used to determine if resampling should be done at a given timestep for a given species. Specifically resampling is performed if the current timestep is included in the IntervalsParser m_resampling_intervals or if the average number of particles per cell of the considered species exceeds the threshold m_max_avg_ppc |
| CRhoFunctor | Functor to compute charge density rho into mf_out |
| CRhoMaximum | |
| CRigidInjectedParticleContainer | |
| CScaleFields | Functor that scales E and B by a factor before pushing the particles. This is used for rigid injection |
| ►CScatteringProcess | |
| CExecutor | |
| CSchwingerFilterFunc | |
| CSchwingerTransformFunc | |
| CSelectParticles | Filter to select particles that correspond to a z-slice of the corresponding lab-frame |
| CSemiImplicitEM | |
| CSetParticlePosition | Functor that can be used to modify the positions of the macroparticles, inside a ParallelFor kernel |
| CSigma | |
| CSigmaBox | |
| CSigmaBoxFactory | |
| CSignalHandling | Signal handling |
| CSmartCopy | This is a functor for performing a "smart copy" that works in both host and device code |
| CSmartCopyFactory | A factory for creating SmartCopy functors |
| CSmartCopyTag | |
| CSmartCreate | This is a functor for performing a "smart create" that works in both host and device code |
| CSmartCreateFactory | A factory for creating SmartCreate functors |
| CSpectralBaseAlgorithm | |
| CSpectralBaseAlgorithmRZ | |
| CSpectralBinomialFilter | Class that sets up binomial filtering in k space |
| CSpectralFieldData | Class that stores the fields in spectral space, and performs the Fourier transforms between real space and spectral space |
| CSpectralFieldDataRZ | |
| CSpectralFieldIndex | |
| CSpectralHankelTransformer | |
| CSpectralKSpace | Class that represents the spectral space |
| CSpectralKSpaceRZ | |
| CSpectralSolver | Top-level class for the electromagnetic spectral solver |
| CSpectralSolverRZ | |
| CSphericalYeeAlgorithm | |
| CSplitAndScatterFunc | This class defines an operator to create product particles from DSMC collisions and sets the particle properties (position, momentum, weight) |
| CStrangImplicitSpectralEM | |
| CTemperatureFunctor | Functor to calculate per-cell averages of particle temperature |
| CTemperatureProperties | Struct to store temperature properties, for use in momentum initialization |
| CThetaImplicitEM | |
| CTimestep | |
| CTmpIdx | |
| CUniformFilter | Functor that returns 1 if stride divide particle_id, 0 otherwise |
| ►CVelocityCoincidenceThinning | This class implements a particle merging scheme wherein particles are clustered in phase space and particles in the same cluster is merged into two remaining particles. The scheme conserves linear momentum and kinetic energy within each cluster |
| CHeapSort | This merging routine requires functionality to sort a GPU vector based on another GPU vector's values. The heap-sort functions below were obtained from https://www.geeksforgeeks.org/iterative-heap-sort/ and modified for the current purpose. It achieves the same as |
| CVelocityBinCalculator | Struct used to assign velocity space bin numbers to a given set of particles |
| CVelocityProperties | Struct to store velocity properties, for use in momentum initialization |
| CWarpX | |
| CWarpXFluidContainer | |
| CWarpXOpenPMDPlot | |
| CWarpXParIter | |
| CWarpXParticleContainer | |
| CWarpXParticleCounter | |
| CWarpXSolverDOF | This is contains the local and global DOF data that maps each grid location and component to its position in a serialized vector |
| CWarpXSolverVec | This is a wrapper class around a Vector of pointers to MultiFabs that contains basic math operators and functionality needed to interact with nonlinear solvers in WarpX and linear solvers in AMReX, such as GMRES. The size of the Vector is the number of amr levels. Hardcoded for 1 right now |