|
| | Geometry () noexcept |
| | Construct a copy of the default Geometry, if one is available.
|
| |
| | Geometry (const Box &dom, const RealBox *rb=nullptr, int coord=-1, int const *is_per=nullptr) |
| | Construct a Geometry for the specified index-space domain.
|
| |
| | Geometry (const Box &dom, const RealBox &rb, int coord, Array< int, 3 > const &is_per) |
| | Construct a Geometry with explicitly supplied physical bounds and periodicity.
|
| |
| | ~Geometry ()=default |
| |
| | Geometry (const Geometry &rhs)=default |
| |
| | Geometry (Geometry &&rhs) noexcept=default |
| |
| Geometry & | operator= (const Geometry &rhs)=default |
| |
| Geometry & | operator= (Geometry &&rhs) noexcept=default |
| |
| GeometryData | data () const noexcept |
| | Return a GPU-safe snapshot of the Geometry data.
|
| |
| void | define (const Box &dom, const RealBox *rb=nullptr, int coord=-1, int const *is_per=nullptr) |
| | Define this Geometry for the specified index-space domain.
|
| |
| void | define (const Box &dom, const RealBox &rb, int coord, Array< int, 3 > const &is_per) |
| | Define this Geometry with explicitly supplied physical bounds and periodicity.
|
| |
| const RealBox & | ProbDomain () const noexcept |
| | Returns the problem domain.
|
| |
| void | ProbDomain (const RealBox &rb) |
| | Sets the problem domain.
|
| |
| const Real * | ProbLo () const noexcept |
| | Returns the lo end of the problem domain in each dimension.
|
| |
| const Real * | ProbHi () const noexcept |
| | Returns the hi end of the problem domain in each dimension.
|
| |
| Real | ProbLo (int dir) const noexcept |
| | Returns the lo end of the problem domain in specified direction.
|
| |
| Real | ProbHi (int dir) const noexcept |
| | Returns the hi end of the problem domain in specified direction.
|
| |
| GpuArray< Real, 3 > | ProbLoArray () const noexcept |
| | Return the lo end of the problem domain in a GpuArray for device code.
|
| |
| GpuArray< Real, 3 > | ProbHiArray () const noexcept |
| | Return the hi end of the problem domain in a GpuArray for device code.
|
| |
| GpuArray< ParticleReal, 3 > | ProbLoArrayInParticleReal () const noexcept |
| | Return the lo end of the roundoff domain in ParticleReal precision.
|
| |
| GpuArray< ParticleReal, 3 > | ProbHiArrayInParticleReal () const noexcept |
| | Return the hi end of the roundoff domain in ParticleReal precision.
|
| |
| Real | ProbSize () const noexcept |
| | Returns the overall size of the domain by multiplying the ProbLength's together.
|
| |
| Real | ProbLength (int dir) const noexcept |
| | Returns length of problem domain in specified dimension.
|
| |
| const Box & | Domain () const noexcept |
| | Returns our rectangular domain.
|
| |
| void | Domain (const Box &bx) |
| | Sets our rectangular domain.
|
| |
| void | GetVolume (MultiFab &vol, const BoxArray &grds, const DistributionMapping &dm, int grow) const |
| | Define vol on grds with dm and fill it with cell volumes.
|
| |
| void | GetVolume (MultiFab &vol) const |
| | Fill all valid and ghost cells of the pre-defined vol with cell volumes.
|
| |
| void | GetVolume (FArrayBox &vol, const BoxArray &grds, int idx, int grow) const |
| | Resize vol to one component on entry idx of grds grown by grow in every direction, and fill it with cell volumes.
|
| |
| void | GetDLogA (MultiFab &dloga, const BoxArray &grds, const DistributionMapping &dm, int dir, int grow) const |
| | Define dloga on grds with dm and fill it with d(log(A))/dr at cell centers.
|
| |
| void | GetFaceArea (MultiFab &area, const BoxArray &grds, const DistributionMapping &dm, int dir, int grow) const |
| | Define area on the faces of grds normal to dir, using dm, and fill it with face areas.
|
| |
| void | GetFaceArea (MultiFab &area, int dir) const |
| | Fill all valid and ghost cells of the pre-defined area with face areas normal to dir.
|
| |
| void | GetFaceArea (FArrayBox &area, const BoxArray &grds, int idx, int dir, int grow) const |
| | Resize area to one component on the faces normal to dir of entry idx of grds grown by grow in every direction, and fill it with face areas.
|
| |
| bool | isPeriodic (int dir) const noexcept |
| | Is the domain periodic in the specified direction?
|
| |
| bool | isAnyPeriodic () const noexcept |
| | Is domain periodic in any direction?
|
| |
| bool | isAllPeriodic () const noexcept |
| | Is domain periodic in all directions?
|
| |
| Array< int, 3 > | isPeriodic () const noexcept |
| | Return the periodicity flags for all directions as an Array.
|
| |
| GpuArray< int, 3 > | isPeriodicArray () const noexcept |
| | Return the periodicity flags in a GpuArray for device code.
|
| |
| int | period (int dir) const noexcept |
| | What's period in specified direction?
|
| |
| Periodicity | periodicity () const noexcept |
| | Return the Periodicity based on the length of the domain.
|
| |
| Periodicity | periodicity (const Box &b) const noexcept |
| | Return the Periodicity based on the length of the cell-centered box b.
|
| |
| void | periodicShift (const Box &target, const Box &src, Vector< IntVect > &out) const noexcept |
| | Compute Array of shifts which will translate src so that it will intersect target with non-zero intersection. The out array will be resized internally, so anything previously there will be gone. DO NOT return non-periodic shifts, even if the boxes do intersect without shifting. The logic is that you will only do this as a special case if there is some periodicity. Each returned IntVect is a nonzero index-space shift whose component is zero in a non-periodic direction and zero or plus/minus the domain length in a periodic direction.
|
| |
| Box | growNonPeriodicDomain (IntVect const &ngrow) const noexcept |
| | Return domain box with non-periodic directions grown by ngrow.
|
| |
| Box | growNonPeriodicDomain (int ngrow) const noexcept |
| | Return domain box with non-periodic directions grown by ngrow.
|
| |
| Box | growPeriodicDomain (IntVect const &ngrow) const noexcept |
| | Return domain box with periodic directions grown by ngrow.
|
| |
| Box | growPeriodicDomain (int ngrow) const noexcept |
| | Return domain box with periodic directions grown by ngrow.
|
| |
| Array< int, 3 > | setPeriodicity (Array< int, 3 > const &period) noexcept |
| | Set the periodicity flags and return the old flags.
|
| |
| void | coarsen (IntVect const &rr) |
| | Coarsen the Geometry by rr.
|
| |
| void | refine (IntVect const &rr) |
| | Refine the Geometry by rr.
|
| |
| bool | outsideRoundoffDomain (ParticleReal x, ParticleReal y, ParticleReal z) const |
| | Returns true if a point is outside the roundoff domain. All particles with positions inside the roundoff domain are sure to be mapped to cells inside the Domain() box. Note that the same need not be true for all points inside ProbDomain().
|
| |
| bool | insideRoundoffDomain (ParticleReal x, ParticleReal y, ParticleReal z) const |
| | Returns true if a point is inside the roundoff domain. All particles with positions inside the roundoff domain are sure to be mapped to cells inside the Domain() box. Note that the same need not be true for all points inside ProbDomain().
|
| |
| void | computeRoundoffDomain () |
| | Compute the roundoff domain.
|
| |
| GpuArray< ParticleReal, 3 > const & | RoundOffLo () const |
| | Returns roundoff domain's lower end.
|
| |
| GpuArray< ParticleReal, 3 > const & | RoundOffHi () const |
| | Returns roundoff domain's higher end.
|
| |
| bool | Ok () const noexcept |
| | Is ok?
|
| |
| void | SetCoord (CoordType coord) noexcept |
| | Set the CoordType.
|
| |
| CoordType | Coord () const noexcept |
| | Returns the CoordType.
|
| |
| int | CoordInt () const noexcept |
| | Returns the CoordType as an int.
|
| |
| bool | IsSPHERICAL () const noexcept |
| | Is CoordType == SPHERICAL?
|
| |
| bool | IsRZ () const noexcept |
| | Is CoordType == RZ?
|
| |
| bool | IsCartesian () const noexcept |
| | Is CoordType == cartesian?
|
| |
| void | SetOffset (const Real *x_lo) noexcept |
| | Sets the offset for each coordinate direction.
|
| |
| const Real * | Offset () const noexcept |
| | Returns the offset.
|
| |
| Real | Offset (int dir) const noexcept |
| | Returns the offset for the specified coordinate direction.
|
| |
| const Real * | CellSize () const noexcept |
| | Returns the cellsize for each coordinate direction.
|
| |
| Real | CellSize (int dir) const noexcept |
| | Returns the cellsize for the specified coordinate direction.
|
| |
| GpuArray< Real, 3 > | CellSizeArray () const noexcept |
| | Returns the cell sizes as a GpuArray for use on host or device.
|
| |
| const Real * | InvCellSize () const noexcept |
| | Returns the inverse cellsize for each coordinate direction.
|
| |
| Real | InvCellSize (int dir) const noexcept |
| | Returns the inverse cellsize for the specified coordinate direction.
|
| |
| GpuArray< Real, 3 > | InvCellSizeArray () const noexcept |
| | Returns the inverse cell sizes as a GpuArray for use on host or device.
|
| |
| Real | CellCenter (int point, int dir) const noexcept |
| | Returns location of cell center in specified direction.
|
| |
| void | CellCenter (const IntVect &point, Vector< Real > &loc) const noexcept |
| | Return location of the specified cell center.
|
| |
| void | CellCenter (const IntVect &point, Real *loc) const noexcept |
| | Return location of the specified cell center.
|
| |
| Real | LoEdge (int point, int dir) const noexcept |
| | Returns location of lo edge in specified direction.
|
| |
| Real | LoEdge (const IntVect &point, int dir) const noexcept |
| | Equivalent to LoEdge(point[dir], dir).
|
| |
| Real | HiEdge (int point, int dir) const noexcept |
| | Returns location of hi edge in specified direction.
|
| |
| Real | HiEdge (const IntVect &point, int dir) const noexcept |
| | Equivalent to HiEdge(point[dir], dir).
|
| |
| void | LoFace (const IntVect &point, int dir, Vector< Real > &loc) const noexcept |
| | Compute the physical location of the lower face in direction dir.
|
| |
| void | LoFace (const IntVect &point, int dir, Real *loc) const noexcept |
| | Compute the physical location of the lower face in direction dir.
|
| |
| void | HiFace (const IntVect &point, int dir, Vector< Real > &loc) const noexcept |
| | Compute the physical location of the upper face in direction dir.
|
| |
| void | HiFace (const IntVect &point, int dir, Real *loc) const noexcept |
| | Compute the physical location of the upper face in direction dir.
|
| |
| void | LoNode (const IntVect &point, Vector< Real > &loc) const noexcept |
| | Return the location of the lower-left node of the cell.
|
| |
| void | LoNode (const IntVect &point, Real *loc) const noexcept |
| | Return the location of the lower-left node of the cell.
|
| |
| void | HiNode (const IntVect &point, Vector< Real > &loc) const noexcept |
| | Return the location of the upper-right node of the cell.
|
| |
| void | HiNode (const IntVect &point, Real *loc) const noexcept |
| | Return the location of the upper-right node of the cell.
|
| |
| IntVect | CellIndex (const Real *point) const noexcept |
| | Returns cell-centered index of cell containing point.
|
| |
| IntVect | LowerIndex (const Real *point) const noexcept |
| | Returns nodal index of lower-left corner of cell containing this point.
|
| |
| IntVect | UpperIndex (const Real *point) const noexcept |
| | Returns nodal index of upper right hand corner of cell containing this point.
|
| |
| void | SetVolume (FArrayBox &a_volfab, const Box ®ion) const |
| | Compute cell volumes in given region and place them into input FAB.
|
| |
| void | GetVolume (FArrayBox &vol, const Box ®ion) const |
| | Compute cell volumes in given region and place them into resize()d input FAB.
|
| |
| void | SetDLogA (FArrayBox &a_dlogafab, const Box ®ion, int dir) const |
| | Compute d(log(A))/dr at cell centers in given region and place them into input FAB.
|
| |
| void | GetDLogA (FArrayBox &dloga, const Box ®ion, int dir) const |
| | Compute d(log(A))/dr at cell centers in given region and return the results in the resize()d input FAB.
|
| |
| Real | Volume (const IntVect &point) const |
| | Return the physical volume of the specified cell.
|
| |
| Real | Volume (const Real xlo[3], const Real xhi[3]) const |
| | Return the volume of the specified cell.
|
| |
| void | SetFaceArea (FArrayBox &a_areafab, const Box ®ion, int dir) const |
| | Compute area of cell faces in given region and given index direction and return the result in input FAB.
|
| |
| void | GetFaceArea (FArrayBox &area, const Box ®ion, int dir) const |
| | Compute area of cell faces in given region and given index direction and return the result in resize()d input FAB.
|
| |
| Real | AreaLo (const IntVect &point, int dir) const noexcept |
| | Returns lo face area of given cell in direction dir.
|
| |
| Real | AreaHi (const IntVect &point, int dir) const noexcept |
| | Returns hi face area of given cell in direction dir.
|
| |
| void | GetEdgeLoc (Vector< Real > &loc, const Box ®ion, int dir) const |
| | Return array of physical locations of cell edges in the resize()d input array.
|
| |
| void | GetCellLoc (Vector< Real > &loc, const Box ®ion, int dir) const |
| | Return array of physical locations of cell centers in the resize()d input array.
|
| |
| void | GetEdgeVolCoord (Vector< Real > &vc, const Box ®ion, int dir) const |
| | Return array of volume coordinates at cell edges for region in given direction.
|
| |
| void | GetCellVolCoord (Vector< Real > &vc, const Box ®ion, int dir) const |
| | Return array of volume coordinates at cell centers for region in given direction.
|
| |