|
| | WarpX () |
| |
| | ~WarpX () |
| |
| int | Verbose () const |
| |
| void | InitData () |
| |
| void | Evolve (int numsteps=-1) |
| |
| MultiParticleContainer & | GetPartContainer () |
| |
| MacroscopicProperties & | GetMacroscopicProperties () |
| |
| MultiDiagnostics & | GetMultiDiags () |
| |
| ParticleBoundaryBuffer & | GetParticleBoundaryBuffer () |
| |
| std::array< const amrex::MultiFab *const, 3 > | get_array_Bfield_aux (const int lev) const |
| |
| std::array< const amrex::MultiFab *const, 3 > | get_array_Efield_aux (const int lev) const |
| |
| amrex::MultiFab * | get_pointer_Efield_aux (int lev, int direction) const |
| |
| amrex::MultiFab * | get_pointer_Bfield_aux (int lev, int direction) const |
| |
| amrex::MultiFab * | get_pointer_Efield_fp (int lev, int direction) const |
| |
| amrex::MultiFab * | get_pointer_Bfield_fp (int lev, int direction) const |
| |
| amrex::MultiFab * | get_pointer_current_fp (int lev, int direction) const |
| |
| amrex::MultiFab * | get_pointer_current_fp_nodal (int lev, int direction) const |
| |
| amrex::MultiFab * | get_pointer_rho_fp (int lev) const |
| |
| amrex::MultiFab * | get_pointer_F_fp (int lev) const |
| |
| amrex::MultiFab * | get_pointer_G_fp (int lev) const |
| |
| amrex::MultiFab * | get_pointer_phi_fp (int lev) const |
| |
| amrex::MultiFab * | get_pointer_vector_potential_fp (int lev, int direction) const |
| |
| amrex::MultiFab * | get_pointer_Efield_cp (int lev, int direction) const |
| |
| amrex::MultiFab * | get_pointer_Bfield_cp (int lev, int direction) const |
| |
| amrex::MultiFab * | get_pointer_current_cp (int lev, int direction) const |
| |
| amrex::MultiFab * | get_pointer_rho_cp (int lev) const |
| |
| amrex::MultiFab * | get_pointer_F_cp (int lev) const |
| |
| amrex::MultiFab * | get_pointer_G_cp (int lev) const |
| |
| amrex::MultiFab * | get_pointer_edge_lengths (int lev, int direction) const |
| |
| amrex::MultiFab * | get_pointer_face_areas (int lev, int direction) const |
| |
| const amrex::MultiFab & | getEfield (int lev, int direction) |
| |
| const amrex::MultiFab & | getBfield (int lev, int direction) |
| |
| const amrex::MultiFab & | getcurrent_cp (int lev, int direction) |
| |
| const amrex::MultiFab & | getEfield_cp (int lev, int direction) |
| |
| const amrex::MultiFab & | getBfield_cp (int lev, int direction) |
| |
| const amrex::MultiFab & | getrho_cp (int lev) |
| |
| const amrex::MultiFab & | getF_cp (int lev) |
| |
| const amrex::MultiFab & | getG_cp (int lev) |
| |
| const amrex::MultiFab & | getcurrent_fp (int lev, int direction) |
| |
| const amrex::MultiFab & | getEfield_fp (int lev, int direction) |
| |
| const amrex::MultiFab & | getBfield_fp (int lev, int direction) |
| |
| const amrex::MultiFab & | getrho_fp (int lev) |
| |
| const amrex::MultiFab & | getphi_fp (int lev) |
| |
| const amrex::MultiFab & | getF_fp (int lev) |
| |
| const amrex::MultiFab & | getG_fp (int lev) |
| |
| const amrex::MultiFab & | getEfield_avg_fp (int lev, int direction) |
| |
| const amrex::MultiFab & | getBfield_avg_fp (int lev, int direction) |
| |
| const amrex::MultiFab & | getEfield_avg_cp (int lev, int direction) |
| |
| const amrex::MultiFab & | getBfield_avg_cp (int lev, int direction) |
| |
| bool | DoPML () const |
| |
| const PML_RZ * | getPMLRZ () |
| |
| std::vector< bool > | getPMLdirections () const |
| |
| void | setLoadBalanceEfficiency (const int lev, const amrex::Real efficiency) |
| |
| amrex::Real | getLoadBalanceEfficiency (const int lev) |
| |
| void | applyMirrors (amrex::Real time) |
| |
| void | ComputeDt () |
| |
| void | PrintMainPICparameters () |
| |
| void | WriteUsedInputsFile () const |
| |
| void | PrintDtDxDyDz () |
| |
| void | ComputeMaxStep () |
| | Compute the last time step of the simulation Calls computeMaxStepBoostAccelerator() if required. More...
|
| |
| void | computeMaxStepBoostAccelerator () |
| |
| int | MoveWindow (const int step, bool move_j) |
| | Move the moving window. More...
|
| |
| void | ShiftGalileanBoundary () |
| | This function shifts the boundary of the grid by 'm_v_galilean*dt'. In doding so, only positions attributes are changed while fields remain unchanged. More...
|
| |
| void | UpdatePlasmaInjectionPosition (amrex::Real dt) |
| |
| void | ResetProbDomain (const amrex::RealBox &rb) |
| |
| void | EvolveE (amrex::Real dt) |
| |
| void | EvolveE (int lev, amrex::Real dt) |
| |
| void | EvolveB (amrex::Real dt, DtType dt_type) |
| |
| void | EvolveB (int lev, amrex::Real dt, DtType dt_type) |
| |
| void | EvolveF (amrex::Real dt, DtType dt_type) |
| |
| void | EvolveF (int lev, amrex::Real dt, DtType dt_type) |
| |
| void | EvolveG (amrex::Real dt, DtType dt_type) |
| |
| void | EvolveG (int lev, amrex::Real dt, DtType dt_type) |
| |
| void | EvolveB (int lev, PatchType patch_type, amrex::Real dt, DtType dt_type) |
| |
| void | EvolveE (int lev, PatchType patch_type, amrex::Real dt) |
| |
| void | EvolveF (int lev, PatchType patch_type, amrex::Real dt, DtType dt_type) |
| |
| void | EvolveG (int lev, PatchType patch_type, amrex::Real dt, DtType dt_type) |
| |
| void | MacroscopicEvolveE (amrex::Real dt) |
| |
| void | MacroscopicEvolveE (int lev, amrex::Real dt) |
| |
| void | MacroscopicEvolveE (int lev, PatchType patch_type, amrex::Real dt) |
| |
| void | Hybrid_QED_Push (amrex::Vector< amrex::Real > dt) |
| |
| void | Hybrid_QED_Push (int lev, amrex::Real dt) |
| |
| void | Hybrid_QED_Push (int lev, PatchType patch_type, amrex::Real dt) |
| |
| void | LoadBalance () |
| | perform load balance; compute and communicate new amrex::DistributionMapping More...
|
| |
| void | ResetCosts () |
| | resets costs to zero More...
|
| |
| utils::parser::IntervalsParser | get_load_balance_intervals () const |
| | returns the load balance interval More...
|
| |
| void | DampFieldsInGuards (const int lev, const std::array< std::unique_ptr< amrex::MultiFab >, 3 > &Efield, const std::array< std::unique_ptr< amrex::MultiFab >, 3 > &Bfield) |
| | Private function for spectral solver Applies a damping factor in the guards cells that extend beyond the extent of the domain, reducing fluctuations that can appear in parallel simulations. This will be called when FieldBoundaryType is set to damped. Vector version. More...
|
| |
| void | DampFieldsInGuards (const int lev, std::unique_ptr< amrex::MultiFab > &mf) |
| | Private function for spectral solver Applies a damping factor in the guards cells that extend beyond the extent of the domain, reducing fluctuations that can appear in parallel simulations. This will be called when FieldBoundaryType is set to damped. Scalar version. More...
|
| |
| void | ApplyInverseVolumeScalingToCurrentDensity (amrex::MultiFab *Jx, amrex::MultiFab *Jy, amrex::MultiFab *Jz, int lev) |
| |
| void | ApplyInverseVolumeScalingToChargeDensity (amrex::MultiFab *Rho, int lev) |
| |
| void | ApplyEfieldBoundary (const int lev, PatchType patch_type) |
| |
| void | ApplyBfieldBoundary (const int lev, PatchType patch_type, DtType dt_type) |
| |
| void | DampPML () |
| |
| void | DampPML (const int lev) |
| |
| void | DampPML (const int lev, PatchType patch_type) |
| |
| void | DampPML_Cartesian (const int lev, PatchType patch_type) |
| |
| void | DampJPML () |
| |
| void | DampJPML (int lev) |
| |
| void | DampJPML (int lev, PatchType patch_type) |
| |
| void | CopyJPML () |
| | Copy the current J from the regular grid to the PML. More...
|
| |
| bool | isAnyBoundaryPML () |
| |
| void | NodalSyncPML () |
| | Synchronize the nodal points of the PML MultiFabs. More...
|
| |
| void | NodalSyncPML (int lev) |
| | Synchronize the nodal points of the PML MultiFabs for given MR level. More...
|
| |
| void | NodalSyncPML (int lev, PatchType patch_type) |
| | Synchronize the nodal points of the PML MultiFabs for given MR level and patch. More...
|
| |
| PML * | GetPML (int lev) |
| |
| PML_RZ * | GetPML_RZ (int lev) |
| |
| void | doFieldIonization () |
| |
| void | doFieldIonization (int lev) |
| |
| void | doQEDEvents () |
| |
| void | doQEDEvents (int lev) |
| |
| void | PushParticlesandDepose (int lev, amrex::Real cur_time, DtType a_dt_type=DtType::Full, bool skip_current=false) |
| |
| void | PushParticlesandDepose (amrex::Real cur_time, bool skip_current=false) |
| |
| void | UpdateAuxilaryData () |
| |
| void | UpdateAuxilaryDataStagToNodal () |
| |
| void | UpdateAuxilaryDataSameType () |
| |
| void | UpdateCurrentNodalToStag (amrex::MultiFab &dst, amrex::MultiFab const &src) |
| | This function is called if warpx.do_current_centering = 1 and it centers the currents from a nodal grid to a staggered grid (Yee) using finite-order interpolation based on the Fornberg coefficients. More...
|
| |
| void | FillBoundaryB (amrex::IntVect ng, std::optional< bool > nodal_sync=std::nullopt) |
| |
| void | FillBoundaryE (amrex::IntVect ng, std::optional< bool > nodal_sync=std::nullopt) |
| |
| void | FillBoundaryB_avg (amrex::IntVect ng) |
| |
| void | FillBoundaryE_avg (amrex::IntVect ng) |
| |
| void | FillBoundaryF (amrex::IntVect ng, std::optional< bool > nodal_sync=std::nullopt) |
| |
| void | FillBoundaryG (amrex::IntVect ng, std::optional< bool > nodal_sync=std::nullopt) |
| |
| void | FillBoundaryAux (amrex::IntVect ng) |
| |
| void | FillBoundaryE (int lev, amrex::IntVect ng, std::optional< bool > nodal_sync=std::nullopt) |
| |
| void | FillBoundaryB (int lev, amrex::IntVect ng, std::optional< bool > nodal_sync=std::nullopt) |
| |
| void | FillBoundaryE_avg (int lev, amrex::IntVect ng) |
| |
| void | FillBoundaryB_avg (int lev, amrex::IntVect ng) |
| |
| void | FillBoundaryF (int lev, amrex::IntVect ng, std::optional< bool > nodal_sync=std::nullopt) |
| |
| void | FillBoundaryG (int lev, amrex::IntVect ng, std::optional< bool > nodal_sync=std::nullopt) |
| |
| void | FillBoundaryAux (int lev, amrex::IntVect ng) |
| |
| void | SyncCurrentAndRho () |
| | Synchronize J and rho: filter (if used), exchange guard cells, interpolate across MR levels. Contains separate calls to WarpX::SyncCurrent and WarpX::SyncRho. More...
|
| |
| void | SyncCurrent (const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &J_fp, const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &J_cp) |
| | Apply filter and sum guard cells across MR levels. If current centering is used, center the current from a nodal grid to a staggered grid. For each MR level beyond level 0, interpolate the fine-patch current onto the coarse-patch current at the same level. Then, for each MR level, including level 0, apply filter and sum guard cells across levels. More...
|
| |
| void | SyncRho () |
| |
| amrex::Vector< int > | getnsubsteps () const |
| |
| int | getnsubsteps (int lev) const |
| |
| amrex::Vector< int > | getistep () const |
| |
| int | getistep (int lev) const |
| |
| void | setistep (int lev, int ii) |
| |
| amrex::Vector< amrex::Real > | gett_old () const |
| |
| amrex::Real | gett_old (int lev) const |
| |
| amrex::Vector< amrex::Real > | gett_new () const |
| |
| amrex::Real | gett_new (int lev) const |
| |
| void | sett_new (int lev, amrex::Real time) |
| |
| amrex::Vector< amrex::Real > | getdt () const |
| |
| amrex::Real | getdt (int lev) const |
| |
| int | getdo_moving_window () const |
| |
| amrex::Real | getmoving_window_x () const |
| |
| amrex::Real | getcurrent_injection_position () const |
| |
| bool | getis_synchronized () const |
| |
| int | maxStep () const |
| |
| void | updateMaxStep (const int new_max_step) |
| |
| amrex::Real | stopTime () const |
| |
| void | updateStopTime (const amrex::Real new_stop_time) |
| |
| void | AverageAndPackFields (amrex::Vector< std::string > &varnames, amrex::Vector< amrex::MultiFab > &mf_avg, const amrex::IntVect ngrow) const |
| |
| void | prepareFields (int const step, amrex::Vector< std::string > &varnames, amrex::Vector< amrex::MultiFab > &mf_avg, amrex::Vector< const amrex::MultiFab *> &output_mf, amrex::Vector< amrex::Geometry > &output_geom) const |
| |
| void | ComputeDivE (amrex::MultiFab &divE, const int lev) |
| |
| const amrex::IntVect | getngEB () const |
| |
| const amrex::IntVect | getngF () const |
| |
| const amrex::IntVect | getngUpdateAux () const |
| |
| const amrex::IntVect | get_ng_depos_J () const |
| |
| const amrex::IntVect | get_ng_depos_rho () const |
| |
| const amrex::IntVect | get_ng_fieldgather () const |
| |
| const amrex::IntVect | get_numprocs () const |
| |
| void | ComputeSpaceChargeField (bool const reset_fields) |
| |
| void | AddBoundaryField () |
| |
| void | AddSpaceChargeField (WarpXParticleContainer &pc) |
| |
| void | AddSpaceChargeFieldLabFrame () |
| |
| void | computePhi (const amrex::Vector< std::unique_ptr< amrex::MultiFab > > &rho, amrex::Vector< std::unique_ptr< amrex::MultiFab > > &phi, std::array< amrex::Real, 3 > const beta={{0, 0, 0}}, amrex::Real const required_precision=amrex::Real(1.e-11), amrex::Real absolute_tolerance=amrex::Real(0.0), const int max_iters=200, const int verbosity=2) const |
| |
| void | setPhiBC (amrex::Vector< std::unique_ptr< amrex::MultiFab > > &phi) const |
| |
| void | computeE (amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > &E, const amrex::Vector< std::unique_ptr< amrex::MultiFab > > &phi, std::array< amrex::Real, 3 > const beta={{0, 0, 0}}) const |
| |
| void | computeB (amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > &B, const amrex::Vector< std::unique_ptr< amrex::MultiFab > > &phi, std::array< amrex::Real, 3 > const beta={{0, 0, 0}}) const |
| |
| void | computePhiTriDiagonal (const amrex::Vector< std::unique_ptr< amrex::MultiFab > > &rho, amrex::Vector< std::unique_ptr< amrex::MultiFab > > &phi) const |
| |
| void | ComputeMagnetostaticField () |
| |
| void | AddMagnetostaticFieldLabFrame () |
| |
| void | computeVectorPotential (const amrex::Vector< amrex::Array< std::unique_ptr< amrex::MultiFab >, 3 > > &curr, amrex::Vector< amrex::Array< std::unique_ptr< amrex::MultiFab >, 3 > > &A, amrex::Real const required_precision=amrex::Real(1.e-11), amrex::Real absolute_tolerance=amrex::Real(0.0), const int max_iters=200, const int verbosity=2) const |
| |
| void | setVectorPotentialBC (amrex::Vector< amrex::Array< std::unique_ptr< amrex::MultiFab >, 3 > > &A) const |
| |
| void | InitializeExternalFieldsOnGridUsingParser (amrex::MultiFab *mfx, amrex::MultiFab *mfy, amrex::MultiFab *mfz, amrex::ParserExecutor< 3 > const &xfield_parser, amrex::ParserExecutor< 3 > const &yfield_parser, amrex::ParserExecutor< 3 > const &zfield_parser, std::array< std::unique_ptr< amrex::MultiFab >, 3 > const &edge_lengths, std::array< std::unique_ptr< amrex::MultiFab >, 3 > const &face_areas, const char field, const int lev, PatchType patch_type) |
| | This function initializes the E and B fields on each level using the parser and the user-defined function for the external fields. The subroutine will parse the x_/y_z_external_grid_function and then, the field multifab is initialized based on the (x,y,z) position on the staggered yee-grid or cell-centered grid, in the interior cells and guard cells. More...
|
| |
| void | InitializeEBGridData (int lev) |
| | This function initializes and calculates grid quantities used along with EBs such as edge lengths, face areas, distance to EB, etc. It also appropriately communicates EB data to guard cells. More...
|
| |
| void | ComputeCostsHeuristic (amrex::Vector< std::unique_ptr< amrex::LayoutData< amrex::Real > > > &costs) |
| | adds particle and cell contributions in cells to compute heuristic cost in each box on each level, and records in costs More...
|
| |
| void | ApplyFilterandSumBoundaryRho (int lev, int glev, amrex::MultiFab &rho, int icomp, int ncomp) |
| |
| virtual void | ErrorEst (int lev, amrex::TagBoxArray &tags, amrex::Real time, int) final |
| | Tagging cells for refinement. More...
|
| |
| const AcceleratorLattice & | get_accelerator_lattice (int lev) |
| |
| void | InitEB () |
| |
| void | ComputeDistanceToEB () |
| | Compute the length of the mesh edges. Here the length is a value in [0, 1]. An edge of length 0 is fully covered. More...
|
| |
| amrex::Array1D< int, 0, 2 > | CountExtFaces () |
| | Auxiliary function to count the amount of faces which still need to be extended. More...
|
| |
| void | ComputeFaceExtensions () |
| | Main function computing the cell extension. Where possible it computes one-way extensions and, when this is not possible, it does eight-ways extensions. More...
|
| |
| void | InitBorrowing () |
| | Initialize the memory for the FaceInfoBoxes. More...
|
| |
| void | ShrinkBorrowing () |
| | Shrink the vectors in the FaceInfoBoxes. More...
|
| |
| void | ComputeOneWayExtensions () |
| | Do the one-way extension. More...
|
| |
| void | ComputeEightWaysExtensions () |
| | Do the eight-ways extension. More...
|
| |
| void | ApplyBCKCorrection (const int idim) |
| | Whenever an unstable cell cannot be extended we increase its area to be the minimal for stability. This is the method Benkler-Chavannes-Kuster method and it is less accurate than the regular ECT but it still works better than staircasing. (see https://ieeexplore.ieee.org/document/1638381) More...
|
| |
| void | PSATDSubtractCurrentPartialSumsAvg () |
| | Subtract the average of the cumulative sums of the preliminary current D from the current J (computed from D according to the Vay deposition scheme) More...
|
| |
| SpectralSolverRZ & | get_spectral_solver_fp (int lev) |
| |
| | AmrCore () |
| |
| | AmrCore (const RealBox *rb, int max_level_in, const Vector< int > &n_cell_in, int coord=-1, Vector< IntVect > ref_ratios=Vector< IntVect >(), const int *is_per=nullptr) |
| |
| | AmrCore (const RealBox &rb, int max_level_in, const Vector< int > &n_cell_in, int coord, Vector< IntVect > const &ref_ratios, Array< int, AMREX_SPACEDIM > const &is_per) |
| |
| | AmrCore (Geometry const &level_0_geom, AmrInfo const &amr_info) |
| |
| | AmrCore (AmrCore &&rhs) noexcept |
| |
| AmrCore & | operator= (AmrCore &&rhs) noexcept |
| |
| | AmrCore (const AmrCore &rhs)=delete |
| |
| AmrCore & | operator= (const AmrCore &rhs)=delete |
| |
| | ~AmrCore () override |
| |
| void | InitFromScratch (Real time) |
| |
| virtual void | regrid (int lbase, Real time, bool initial=false) |
| |
| void | printGridSummary (std::ostream &os, int min_lev, int max_lev) const noexcept |
| |
| | AmrMesh () |
| |
| | AmrMesh (const RealBox *rb, int max_level_in, const Vector< int > &n_cell_in, int coord=-1, Vector< IntVect > refrat=Vector< IntVect >(), const int *is_per=nullptr) |
| |
| | AmrMesh (const RealBox &rb, int max_level_in, const Vector< int > &n_cell_in, int coord, Vector< IntVect > const &a_refrat, Array< int, AMREX_SPACEDIM > const &is_per) |
| |
| | AmrMesh (Geometry const &level_0_geom, AmrInfo const &amr_info) |
| |
| | AmrMesh (const AmrMesh &rhs)=delete |
| |
| AmrMesh & | operator= (const AmrMesh &rhs)=delete |
| |
| | AmrMesh (AmrMesh &&rhs)=default |
| |
| AmrMesh & | operator= (AmrMesh &&rhs)=default |
| |
| virtual | ~AmrMesh ()=default |
| |
| int | Verbose () const noexcept |
| |
| int | maxLevel () const noexcept |
| |
| int | finestLevel () const noexcept |
| |
| IntVect | refRatio (int lev) const noexcept |
| |
| int | MaxRefRatio (int lev) const noexcept |
| |
| const Vector< IntVect > & | refRatio () const noexcept |
| |
| const Vector< Geometry > & | Geom () const noexcept |
| |
| const Vector< DistributionMapping > & | DistributionMap () const noexcept |
| |
| const Vector< BoxArray > & | boxArray () const noexcept |
| |
| const Geometry & | Geom (int lev) const noexcept |
| |
| const DistributionMapping & | DistributionMap (int lev) const noexcept |
| |
| const BoxArray & | boxArray (int lev) const noexcept |
| |
| Vector< Geometry > | Geom (int a_coarsest_lev, int a_finest_lev) const noexcept |
| |
| Vector< BoxArray > | boxArray (int a_coarsest_lev, int a_finest_lev) const noexcept |
| |
| Vector< DistributionMapping > | DistributionMap (int a_coarsest_lev, int a_finest_lev) const noexcept |
| |
| Vector< Geometry > & | Geom () noexcept |
| |
| Geometry & | Geom (int lev) noexcept |
| |
| void | SetMaxGridSize (int new_mgs) noexcept |
| |
| void | SetMaxGridSize (const IntVect &new_mgs) noexcept |
| |
| void | SetMaxGridSize (const Vector< int > &new_mgs) noexcept |
| |
| void | SetMaxGridSize (const Vector< IntVect > &new_mgs) noexcept |
| |
| void | SetBlockingFactor (int new_bf) noexcept |
| |
| void | SetBlockingFactor (const IntVect &new_bf) noexcept |
| |
| void | SetBlockingFactor (const Vector< int > &new_bf) noexcept |
| |
| void | SetBlockingFactor (const Vector< IntVect > &new_bf) noexcept |
| |
| void | SetGridEff (Real eff) noexcept |
| |
| void | SetNProper (int n) noexcept |
| |
| void | SetFinestLevel (int new_finest_level) noexcept |
| |
| void | SetDistributionMap (int lev, const DistributionMapping &dmap_in) noexcept |
| |
| void | SetBoxArray (int lev, const BoxArray &ba_in) noexcept |
| |
| void | SetGeometry (int lev, const Geometry &geom_in) noexcept |
| |
| int | GetLevel (Box const &domain) noexcept |
| |
| void | ClearDistributionMap (int lev) noexcept |
| |
| void | ClearBoxArray (int lev) noexcept |
| |
| int | nErrorBuf (int lev, int direction=0) const noexcept |
| |
| const IntVect & | nErrorBufVect (int lev) const noexcept |
| |
| Real | gridEff () const noexcept |
| |
| int | nProper () const noexcept |
| |
| const IntVect & | blockingFactor (int lev) const noexcept |
| |
| const IntVect & | maxGridSize (int lev) const noexcept |
| |
| bool | LevelDefined (int lev) noexcept |
| |
| bool | useFixedCoarseGrids () const noexcept |
| |
| int | useFixedUpToLevel () const noexcept |
| |
| void | ChopGrids (int lev, BoxArray &ba, int target_size) const |
| |
| BoxArray | MakeBaseGrids () const |
| |
| void | MakeNewGrids (int lbase, Real time, int &new_finest, Vector< BoxArray > &new_grids) |
| |
| void | MakeNewGrids (Real time=0.0) |
| |
| virtual void | ManualTagsPlacement (int, TagBoxArray &, const Vector< IntVect > &) |
| |
| virtual BoxArray | GetAreaNotToTag (int) |
| |
| long | CountCells (int lev) noexcept |
| |
|
| static WarpX & | GetInstance () |
| |
| static void | ResetInstance () |
| |
| static std::string | Version () |
| | Version of WarpX executable. More...
|
| |
| static std::string | PicsarVersion () |
| | Version of PICSAR dependency. More...
|
| |
| static void | shiftMF (amrex::MultiFab &mf, const amrex::Geometry &geom, int num_shift, int dir, const int lev, bool update_cost_flag, amrex::Real external_field=0.0, bool useparser=false, amrex::ParserExecutor< 3 > const &field_parser={}) |
| |
| static void | GotoNextLine (std::istream &is) |
| |
| static void | AllocInitMultiFab (std::unique_ptr< amrex::MultiFab > &mf, const amrex::BoxArray &ba, const amrex::DistributionMapping &dm, const int ncomp, const amrex::IntVect &ngrow, const std::string &name, std::optional< const amrex::Real > initial_value={}) |
| | Allocate and optionally initialize the MultiFab. This also adds the MultiFab to the map of MultiFabs (used to ease the access to MultiFabs from the Python interface. More...
|
| |
| static void | AllocInitMultiFab (std::unique_ptr< amrex::iMultiFab > &mf, const amrex::BoxArray &ba, const amrex::DistributionMapping &dm, const int ncomp, const amrex::IntVect &ngrow, const std::string &name, std::optional< const int > initial_value={}) |
| | Allocate and optionally initialize the iMultiFab. This also adds the iMultiFab to the map of MultiFabs (used to ease the access to MultiFabs from the Python interface. More...
|
| |
| static void | AliasInitMultiFab (std::unique_ptr< amrex::MultiFab > &mf, const amrex::MultiFab &mf_to_alias, const int scomp, const int ncomp, const std::string &name, std::optional< const amrex::Real > initial_value) |
| | Create an alias of a MultiFab, adding the alias to the MultiFab map. More...
|
| |
| static void | AddToMultiFabMap (const std::string &name, const std::unique_ptr< amrex::MultiFab > &mf) |
| | Add the MultiFab to the map of MultiFabs. More...
|
| |
| static void | AddToMultiFabMap (const std::string &name, const std::unique_ptr< amrex::iMultiFab > &mf) |
| | Add the iMultiFab to the map of MultiFabs. More...
|
| |
| static amrex::LayoutData< amrex::Real > * | getCosts (int lev) |
| |
| static std::array< amrex::Real, 3 > | CellSize (int lev) |
| |
| static amrex::RealBox | getRealBox (const amrex::Box &bx, int lev) |
| |
| static std::array< amrex::Real, 3 > | LowerCorner (const amrex::Box &bx, const int lev, const amrex::Real time_shift_delta) |
| | Return the lower corner of the box in real units. More...
|
| |
| static std::array< amrex::Real, 3 > | UpperCorner (const amrex::Box &bx, const int lev, const amrex::Real time_shift_delta) |
| | Return the upper corner of the box in real units. More...
|
| |
| static amrex::IntVect | RefRatio (int lev) |
| |
| static const amrex::iMultiFab * | CurrentBufferMasks (int lev) |
| |
| static const amrex::iMultiFab * | GatherBufferMasks (int lev) |
| |
| static int | moving_window_active (int const step) |
| |
| static void | ComputeDivB (amrex::MultiFab &divB, int const dcomp, const std::array< const amrex::MultiFab *const, 3 > &B, const std::array< amrex::Real, 3 > &dx) |
| |
| static void | ComputeDivB (amrex::MultiFab &divB, int const dcomp, const std::array< const amrex::MultiFab *const, 3 > &B, const std::array< amrex::Real, 3 > &dx, amrex::IntVect const ngrow) |
| |
| static amrex::Vector< amrex::Real > | getFornbergStencilCoefficients (const int n_order, const short a_grid_type) |
| | Returns an array of coefficients (Fornberg coefficients), corresponding to the weight of each point in a finite-difference approximation of a derivative (up to order n_order). More...
|
| |
|
| static std::string | authors = "" |
| | Author of an input file / simulation setup. More...
|
| |
| static amrex::Vector< amrex::Real > | E_external_grid |
| | Initial electric field on the grid. More...
|
| |
| static amrex::Vector< amrex::Real > | B_external_grid |
| | Initial magnetic field on the grid. More...
|
| |
| static std::string | B_ext_grid_s = "default" |
| | Initialization type for external magnetic field on the grid. More...
|
| |
| static std::string | E_ext_grid_s = "default" |
| | Initialization type for external electric field on the grid. More...
|
| |
| static std::string | str_Bx_ext_grid_function |
| | String storing parser function to initialize x-component of the magnetic field on the grid. More...
|
| |
| static std::string | str_By_ext_grid_function |
| | String storing parser function to initialize y-component of the magnetic field on the grid. More...
|
| |
| static std::string | str_Bz_ext_grid_function |
| | String storing parser function to initialize z-component of the magnetic field on the grid. More...
|
| |
| static std::string | str_Ex_ext_grid_function |
| | String storing parser function to initialize x-component of the electric field on the grid. More...
|
| |
| static std::string | str_Ey_ext_grid_function |
| | String storing parser function to initialize y-component of the electric field on the grid. More...
|
| |
| static std::string | str_Ez_ext_grid_function |
| | String storing parser function to initialize z-component of the electric field on the grid. More...
|
| |
| static short | current_deposition_algo |
| | Integer that corresponds to the current deposition algorithm (Esirkepov, direct, Vay) More...
|
| |
| static short | charge_deposition_algo |
| | Integer that corresponds to the charge deposition algorithm (only standard deposition) More...
|
| |
| static short | field_gathering_algo |
| | Integer that corresponds to the field gathering algorithm (energy-conserving, momentum-conserving) More...
|
| |
| static short | particle_pusher_algo |
| | Integer that corresponds to the particle push algorithm (Boris, Vay, Higuera-Cary) More...
|
| |
| static short | electromagnetic_solver_id |
| | Integer that corresponds to the type of Maxwell solver (Yee, CKC, PSATD, ECT) More...
|
| |
| static short | load_balance_costs_update_algo |
| |
| static int | em_solver_medium |
| | Integer that corresponds to electromagnetic Maxwell solver (vacuum - 0, macroscopic - 1) More...
|
| |
| static int | macroscopic_solver_algo |
| |
| static amrex::Vector< int > | field_boundary_lo |
| |
| static amrex::Vector< int > | field_boundary_hi |
| |
| static amrex::Vector< ParticleBoundaryType > | particle_boundary_lo |
| |
| static amrex::Vector< ParticleBoundaryType > | particle_boundary_hi |
| |
| static short | psatd_solution_type |
| |
| static short | J_in_time |
| |
| static short | rho_in_time |
| |
| static bool | do_current_centering = false |
| |
| static bool | do_single_precision_comms = false |
| | perform field communications in single precision More...
|
| |
| static amrex::IntVect | m_fill_guards_fields = amrex::IntVect(0) |
| | Whether to fill guard cells when computing inverse FFTs of fields. More...
|
| |
| static amrex::IntVect | m_fill_guards_current = amrex::IntVect(0) |
| | Whether to fill guard cells when computing inverse FFTs of currents. More...
|
| |
| static bool | do_dive_cleaning = false |
| |
| static bool | do_divb_cleaning = false |
| | Solve additional Maxwell equation for G in order to control errors in magnetic Gauss' law. More...
|
| |
| static int | nox = 0 |
| | Order of the particle shape factors (splines) along x. More...
|
| |
| static int | noy = 0 |
| | Order of the particle shape factors (splines) along y. More...
|
| |
| static int | noz = 0 |
| | Order of the particle shape factors (splines) along z. More...
|
| |
| static int | field_centering_nox = 2 |
| | Order of finite centering of fields (from staggered grid to nodal grid), along x. More...
|
| |
| static int | field_centering_noy = 2 |
| | Order of finite centering of fields (from staggered grid to nodal grid), along y. More...
|
| |
| static int | field_centering_noz = 2 |
| | Order of finite centering of fields (from staggered grid to nodal grid), along z. More...
|
| |
| static int | current_centering_nox = 2 |
| | Order of finite centering of currents (from nodal grid to staggered grid), along x. More...
|
| |
| static int | current_centering_noy = 2 |
| | Order of finite centering of currents (from nodal grid to staggered grid), along y. More...
|
| |
| static int | current_centering_noz = 2 |
| | Order of finite centering of currents (from nodal grid to staggered grid), along z. More...
|
| |
| static int | n_rz_azimuthal_modes = 1 |
| | Number of modes for the RZ multi-mode version. More...
|
| |
| static int | ncomps = 1 |
| |
| static bool | use_fdtd_nci_corr = false |
| |
| static bool | galerkin_interpolation = true |
| |
| static bool | use_filter = true |
| | If true, a bilinear filter is used to smooth charge and currents. More...
|
| |
| static bool | use_kspace_filter = true |
| | If true, the bilinear filtering of charge and currents is done in Fourier space. More...
|
| |
| static bool | use_filter_compensation = false |
| | If true, a compensation step is added to the bilinear filtering of charge and currents. More...
|
| |
| static bool | serialize_initial_conditions = false |
| | If true, the initial conditions from random number generators are serialized (useful for reproducible testing with OpenMP) More...
|
| |
| static amrex::Real | gamma_boost = 1._rt |
| | Lorentz factor of the boosted frame in which a boosted-frame simulation is run. More...
|
| |
| static amrex::Real | beta_boost = 0._rt |
| | Beta value corresponding to the Lorentz factor of the boosted frame of the simulation. More...
|
| |
| static amrex::Vector< int > | boost_direction = {0,0,0} |
| | Direction of the Lorentz transform that defines the boosted frame of the simulation. More...
|
| |
| static amrex::Real | zmax_plasma_to_compute_max_step = 0._rt |
| |
| static bool | do_compute_max_step_from_zmax = false |
| |
| static amrex::Real | zmin_domain_boost_step_0 = 0._rt |
| |
| static bool | compute_max_step_from_btd = false |
| | If true, the code will compute max_step from the back transformed diagnostics. More...
|
| |
| static bool | do_dynamic_scheduling = true |
| |
| static bool | refine_plasma = false |
| |
| static utils::parser::IntervalsParser | sort_intervals |
| |
| static amrex::IntVect | sort_bin_size |
| |
| static bool | sort_particles_for_deposition = false |
| | If true, particles will be sorted in the order x -> y -> z -> ppc for faster deposition. More...
|
| |
| static amrex::IntVect | sort_idx_type |
| | Specifies the type of grid used for the above sorting, i.e. cell-centered, nodal, or mixed. More...
|
| |
| static bool | do_subcycling = false |
| |
| static bool | do_multi_J = false |
| |
| static int | do_multi_J_n_depositions |
| |
| static bool | do_device_synchronize = false |
| |
| static bool | safe_guard_cells = 0 |
| |
| static int | n_field_gather_buffer = -1 |
| |
| static int | n_current_deposition_buffer = -1 |
| |
| static short | grid_type |
| |
| static std::map< std::string, amrex::MultiFab * > | multifab_map |
| |
| static std::map< std::string, amrex::iMultiFab * > | imultifab_map |
| |
| static amrex::IntVect | filter_npass_each_dir |
| |
| static int | num_mirrors = 0 |
| |
| static amrex::Real | quantum_xi_c2 = PhysConst::xi_c2 |
| |
| static int | electrostatic_solver_id |
| |
| static amrex::Real | self_fields_required_precision = 1.e-11_rt |
| |
| static amrex::Real | self_fields_absolute_tolerance = 0.0_rt |
| |
| static int | self_fields_max_iters = 200 |
| |
| static int | self_fields_verbosity = 2 |
| |
| static int | do_moving_window = 0 |
| |
| static int | start_moving_window_step = 0 |
| |
| static int | end_moving_window_step = -1 |
| |
| static int | moving_window_dir = -1 |
| |
| static amrex::Real | moving_window_v = std::numeric_limits<amrex::Real>::max() |
| |
| static bool | fft_do_time_averaging = false |
| |
|
| void | HandleSignals () |
| | Complete the asynchronous broadcast of signal flags, and initiate a checkpoint if requested. More...
|
| |
| void | EvolveEM (int numsteps) |
| |
| void | FillBoundaryB (const int lev, const PatchType patch_type, const amrex::IntVect ng, std::optional< bool > nodal_sync=std::nullopt) |
| |
| void | FillBoundaryE (const int lev, const PatchType patch_type, const amrex::IntVect ng, std::optional< bool > nodal_sync=std::nullopt) |
| |
| void | FillBoundaryF (int lev, PatchType patch_type, amrex::IntVect ng, std::optional< bool > nodal_sync=std::nullopt) |
| |
| void | FillBoundaryG (int lev, PatchType patch_type, amrex::IntVect ng, std::optional< bool > nodal_sync=std::nullopt) |
| |
| void | FillBoundaryB_avg (int lev, PatchType patch_type, amrex::IntVect ng) |
| |
| void | FillBoundaryE_avg (int lev, PatchType patch_type, amrex::IntVect ng) |
| |
| void | OneStep_nosub (amrex::Real t) |
| |
| void | OneStep_sub1 (amrex::Real t) |
| |
| void | OneStep_multiJ (const amrex::Real t) |
| | Perform one PIC iteration, with the multiple J deposition per time step. More...
|
| |
| void | RestrictCurrentFromFineToCoarsePatch (const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &J_fp, const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &J_cp, const int lev) |
| | Fills the values of the current on the coarse patch by averaging the values of the current of the fine patch (on the same level). More...
|
| |
| void | AddCurrentFromFineLevelandSumBoundary (const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &J_fp, const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &J_cp, const int lev) |
| |
| void | StoreCurrent (const int lev) |
| |
| void | RestoreCurrent (const int lev) |
| |
| void | ApplyFilterJ (const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> ¤t, const int lev, const int idim) |
| |
| void | ApplyFilterJ (const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> ¤t, const int lev) |
| |
| void | SumBoundaryJ (const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> ¤t, const int lev, const int idim, const amrex::Periodicity &period) |
| |
| void | SumBoundaryJ (const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> ¤t, const int lev, const amrex::Periodicity &period) |
| |
| void | NodalSyncJ (const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &J_fp, const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &J_cp, const int lev, PatchType patch_type) |
| |
| void | RestrictRhoFromFineToCoarsePatch (const amrex::Vector< std::unique_ptr< amrex::MultiFab >> &charge_fp, const amrex::Vector< std::unique_ptr< amrex::MultiFab >> &charge_cp, const int lev) |
| |
| void | ApplyFilterandSumBoundaryRho (const amrex::Vector< std::unique_ptr< amrex::MultiFab >> &charge_fp, const amrex::Vector< std::unique_ptr< amrex::MultiFab >> &charge_cp, const int lev, PatchType patch_type, const int icomp, const int ncomp) |
| |
| void | AddRhoFromFineLevelandSumBoundary (const amrex::Vector< std::unique_ptr< amrex::MultiFab >> &charge_fp, const amrex::Vector< std::unique_ptr< amrex::MultiFab >> &charge_cp, const int lev, const int icomp, const int ncomp) |
| |
| void | NodalSyncRho (const amrex::Vector< std::unique_ptr< amrex::MultiFab >> &charge_fp, const amrex::Vector< std::unique_ptr< amrex::MultiFab >> &charge_cp, const int lev, PatchType patch_type, const int icomp, const int ncomp) |
| |
| void | ReadParameters () |
| |
| void | BackwardCompatibility () |
| |
| void | InitFromScratch () |
| |
| void | AllocLevelData (int lev, const amrex::BoxArray &new_grids, const amrex::DistributionMapping &new_dmap) |
| |
| amrex::DistributionMapping | GetRestartDMap (const std::string &chkfile, const amrex::BoxArray &ba, int lev) const |
| |
| void | InitFromCheckpoint () |
| |
| void | PostRestart () |
| |
| void | InitPML () |
| |
| void | ComputePMLFactors () |
| |
| void | InitFilter () |
| |
| void | InitDiagnostics () |
| |
| void | InitNCICorrector () |
| |
| void | CheckGuardCells () |
| | Check that the number of guard cells is smaller than the number of valid cells, for all available MultiFabs, and abort otherwise. More...
|
| |
| void | CheckGuardCells (amrex::MultiFab const &mf) |
| | Check that the number of guard cells is smaller than the number of valid cells, for a given MultiFab, and abort otherwise. More...
|
| |
| void | CheckKnownIssues () |
| | Checks for known numerical issues involving different WarpX modules. More...
|
| |
| void | PerformanceHints () |
| |
| void | BuildBufferMasks () |
| |
| void | BuildBufferMasksInBox (const amrex::Box tbx, amrex::IArrayBox &buffer_mask, const amrex::IArrayBox &guard_mask, const int ng) |
| | Build buffer mask within given FArrayBox. More...
|
| |
| const amrex::iMultiFab * | getCurrentBufferMasks (int lev) const |
| |
| const amrex::iMultiFab * | getGatherBufferMasks (int lev) const |
| |
| void | ReorderFornbergCoefficients (amrex::Vector< amrex::Real > &ordered_coeffs, amrex::Vector< amrex::Real > &unordered_coeffs, const int order) |
| | Re-orders the Fornberg coefficients so that they can be used more conveniently for finite-order centering operations. For example, for finite-order centering of order 6, the Fornberg coefficients (c_0,c_1,c_2) are re-ordered as (c_2,c_1,c_0,c_0,c_1,c_2). More...
|
| |
| void | AllocateCenteringCoefficients (amrex::Gpu::DeviceVector< amrex::Real > &device_centering_stencil_coeffs_x, amrex::Gpu::DeviceVector< amrex::Real > &device_centering_stencil_coeffs_y, amrex::Gpu::DeviceVector< amrex::Real > &device_centering_stencil_coeffs_z, const int centering_nox, const int centering_noy, const int centering_noz, const short a_grid_type) |
| | Allocates and initializes the stencil coefficients used for the finite-order centering of fields and currents, and stores them in the given device vectors. More...
|
| |
| void | AllocLevelMFs (int lev, const amrex::BoxArray &ba, const amrex::DistributionMapping &dm, const amrex::IntVect &ngEB, amrex::IntVect &ngJ, const amrex::IntVect &ngRho, const amrex::IntVect &ngF, const amrex::IntVect &ngG, const bool aux_is_nodal) |
| |
| void | AllocLevelSpectralSolverRZ (amrex::Vector< std::unique_ptr< SpectralSolverRZ >> &spectral_solver, const int lev, const amrex::BoxArray &realspace_ba, const amrex::DistributionMapping &dm, const std::array< amrex::Real, 3 > &dx) |
| |
| amrex::FabFactory< amrex::FArrayBox > const & | fieldFactory (int lev) const noexcept |
| |
| void | ScrapeParticles () |
| |
| void | PushPSATD () |
| |
| void | PSATDForwardTransformEB (const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &E_fp, const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &B_fp, const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &E_cp, const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &B_cp) |
| | Forward FFT of E,B on all mesh refinement levels. More...
|
| |
| void | PSATDBackwardTransformEB (const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &E_fp, const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &B_fp, const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &E_cp, const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &B_cp) |
| | Backward FFT of E,B on all mesh refinement levels, with field damping in the guard cells (if needed) More...
|
| |
| void | PSATDBackwardTransformEBavg (const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &E_avg_fp, const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &B_avg_fp, const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &E_avg_cp, const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &B_avg_cp) |
| | Backward FFT of averaged E,B on all mesh refinement levels. More...
|
| |
| void | PSATDForwardTransformJ (const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &J_fp, const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &J_cp, const bool apply_kspace_filter=true) |
| | Forward FFT of J on all mesh refinement levels, with k-space filtering (if needed) More...
|
| |
| void | PSATDBackwardTransformJ (const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &J_fp, const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &J_cp) |
| | Backward FFT of J on all mesh refinement levels. More...
|
| |
| void | PSATDForwardTransformRho (const amrex::Vector< std::unique_ptr< amrex::MultiFab >> &charge_fp, const amrex::Vector< std::unique_ptr< amrex::MultiFab >> &charge_cp, const int icomp, const int dcomp, const bool apply_kspace_filter=true) |
| | Forward FFT of rho on all mesh refinement levels, with k-space filtering (if needed) More...
|
| |
| void | PSATDMoveRhoNewToRhoOld () |
| | Copy rho_new to rho_old in spectral space (when rho is linear in time) More...
|
| |
| void | PSATDMoveJNewToJOld () |
| | Copy J_new to J_old in spectral space (when J is linear in time) More...
|
| |
| void | PSATDForwardTransformF () |
| | Forward FFT of F on all mesh refinement levels. More...
|
| |
| void | PSATDBackwardTransformF () |
| | Backward FFT of F on all mesh refinement levels. More...
|
| |
| void | PSATDForwardTransformG () |
| | Forward FFT of G on all mesh refinement levels. More...
|
| |
| void | PSATDBackwardTransformG () |
| | Backward FFT of G on all mesh refinement levels. More...
|
| |
| void | PSATDCurrentCorrection () |
| | Correct current in Fourier space so that the continuity equation is satisfied. More...
|
| |
| void | PSATDVayDeposition () |
| | Vay deposition in Fourier space (https://doi.org/10.1016/j.jcp.2013.03.010) More...
|
| |
| void | PSATDPushSpectralFields () |
| | Update all necessary fields in spectral space. More...
|
| |
| void | PSATDScaleAverageFields (const amrex::Real scale_factor) |
| | Scale averaged E,B fields to account for time integration. More...
|
| |
| void | PSATDEraseAverageFields () |
| | Set averaged E,B fields to zero before new iteration. More...
|
| |
|
| amrex::Vector< int > | istep |
| |
| amrex::Vector< int > | nsubsteps |
| |
| amrex::Vector< amrex::Real > | t_new |
| |
| amrex::Vector< amrex::Real > | t_old |
| |
| amrex::Vector< amrex::Real > | dt |
| |
| std::unique_ptr< MultiParticleContainer > | mypc |
| |
| std::unique_ptr< MultiDiagnostics > | multi_diags |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | Efield_aux |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | Bfield_aux |
| |
| amrex::Vector< std::unique_ptr< amrex::MultiFab > > | F_fp |
| |
| amrex::Vector< std::unique_ptr< amrex::MultiFab > > | G_fp |
| |
| amrex::Vector< std::unique_ptr< amrex::MultiFab > > | rho_fp |
| |
| amrex::Vector< std::unique_ptr< amrex::MultiFab > > | phi_fp |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | current_fp |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | current_fp_vay |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | Efield_fp |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | Bfield_fp |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | Efield_avg_fp |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | Bfield_avg_fp |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | vector_potential_fp_nodal |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | vector_potential_grad_buf_e_stag |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | vector_potential_grad_buf_b_stag |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | m_edge_lengths |
| | EB: Lengths of the mesh edges. More...
|
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | m_face_areas |
| | EB: Areas of the mesh faces. More...
|
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::iMultiFab >, 3 > > | m_flag_info_face |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::iMultiFab >, 3 > > | m_flag_ext_face |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | m_area_mod |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::LayoutData< FaceInfoBox > >, 3 > > | m_borrowing |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | ECTRhofield |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | Venl |
| |
| amrex::Vector< std::unique_ptr< amrex::MultiFab > > | m_distance_to_eb |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | current_store |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | current_fp_nodal |
| |
| amrex::Vector< std::unique_ptr< amrex::MultiFab > > | F_cp |
| |
| amrex::Vector< std::unique_ptr< amrex::MultiFab > > | G_cp |
| |
| amrex::Vector< std::unique_ptr< amrex::MultiFab > > | rho_cp |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | current_cp |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | Efield_cp |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | Bfield_cp |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | Efield_avg_cp |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | Bfield_avg_cp |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | Efield_cax |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | Bfield_cax |
| |
| amrex::Vector< std::unique_ptr< amrex::iMultiFab > > | current_buffer_masks |
| |
| amrex::Vector< std::unique_ptr< amrex::iMultiFab > > | gather_buffer_masks |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | current_buf |
| |
| amrex::Vector< std::unique_ptr< amrex::MultiFab > > | charge_buf |
| |
| int | do_pml = 0 |
| |
| int | do_silver_mueller = 0 |
| |
| int | pml_ncell = 10 |
| |
| int | pml_delta = 10 |
| |
| int | pml_has_particles = 0 |
| |
| int | do_pml_j_damping = 0 |
| |
| int | do_pml_in_domain = 0 |
| |
| bool | do_pml_dive_cleaning |
| |
| bool | do_pml_divb_cleaning |
| |
| amrex::Vector< amrex::IntVect > | do_pml_Lo |
| |
| amrex::Vector< amrex::IntVect > | do_pml_Hi |
| |
| amrex::Vector< std::unique_ptr< PML > > | pml |
| |
| amrex::Vector< std::unique_ptr< PML_RZ > > | pml_rz |
| |
| amrex::Real | v_particle_pml |
| |
| amrex::Real | moving_window_x = std::numeric_limits<amrex::Real>::max() |
| |
| amrex::Real | current_injection_position = 0 |
| |
| int | warpx_do_continuous_injection = 0 |
| |
| int | num_injected_species = -1 |
| |
| amrex::Vector< int > | injected_plasma_species |
| |
| std::optional< amrex::Real > | m_const_dt |
| |
| std::unique_ptr< MacroscopicProperties > | m_macroscopic_properties |
| |
| utils::parser::IntervalsParser | load_balance_intervals |
| |
| amrex::Vector< std::unique_ptr< amrex::LayoutData< amrex::Real > > > | costs |
| |
| int | load_balance_with_sfc = 0 |
| |
| amrex::Real | load_balance_knapsack_factor = amrex::Real(1.24) |
| |
| amrex::Real | load_balance_efficiency_ratio_threshold = amrex::Real(1.1) |
| |
| amrex::Vector< amrex::Real > | load_balance_efficiency |
| |
| amrex::Real | costs_heuristic_cells_wt = amrex::Real(0) |
| |
| amrex::Real | costs_heuristic_particles_wt = amrex::Real(0) |
| |
| utils::parser::IntervalsParser | override_sync_intervals |
| |
| int | verbose = 1 |
| |
| bool | use_hybrid_QED = 0 |
| |
| int | max_step = std::numeric_limits<int>::max() |
| |
| amrex::Real | stop_time = std::numeric_limits<amrex::Real>::max() |
| |
| int | regrid_int = -1 |
| |
| amrex::Real | cfl = amrex::Real(0.999) |
| |
| std::string | restart_chkfile |
| |
| amrex::VisMF::Header::Version | plotfile_headerversion = amrex::VisMF::Header::Version_v1 |
| |
| amrex::VisMF::Header::Version | slice_plotfile_headerversion = amrex::VisMF::Header::Version_v1 |
| |
| bool | use_single_read = true |
| |
| bool | use_single_write = true |
| |
| int | mffile_nstreams = 4 |
| |
| int | field_io_nfiles = 1024 |
| |
| int | particle_io_nfiles = 1024 |
| |
| amrex::RealVect | fine_tag_lo |
| |
| amrex::RealVect | fine_tag_hi |
| |
| bool | is_synchronized = true |
| |
| const bool | sync_nodal_points = true |
| |
| guardCellManager | guard_cells |
| |
| int | slice_max_grid_size |
| |
| int | slice_plot_int = -1 |
| |
| amrex::RealBox | slice_realbox |
| |
| amrex::IntVect | slice_cr_ratio |
| |
| amrex::Vector< std::unique_ptr< amrex::MultiFab > > | F_slice |
| |
| amrex::Vector< std::unique_ptr< amrex::MultiFab > > | G_slice |
| |
| amrex::Vector< std::unique_ptr< amrex::MultiFab > > | rho_slice |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | current_slice |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | Efield_slice |
| |
| amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 > > | Bfield_slice |
| |
| bool | fft_periodic_single_box = false |
| |
| int | nox_fft = 16 |
| |
| int | noy_fft = 16 |
| |
| int | noz_fft = 16 |
| |
| amrex::IntVect | numprocs {0} |
| | Domain decomposition on Level 0. More...
|
| |
| std::unique_ptr< ParticleBoundaryBuffer > | m_particle_boundary_buffer |
| | particle buffer for scraped particles on the boundaries More...
|
| |
| amrex::Vector< std::unique_ptr< AcceleratorLattice > > | m_accelerator_lattice |
| |
| amrex::Vector< std::unique_ptr< amrex::FabFactory< amrex::FArrayBox > > > | m_field_factory |
| |
| amrex::Vector< std::unique_ptr< SpectralSolverRZ > > | spectral_solver_fp |
| |
| amrex::Vector< std::unique_ptr< SpectralSolverRZ > > | spectral_solver_cp |
| |
| amrex::Vector< std::unique_ptr< FiniteDifferenceSolver > > | m_fdtd_solver_fp |
| |
| amrex::Vector< std::unique_ptr< FiniteDifferenceSolver > > | m_fdtd_solver_cp |
| |