|
WarpX
|
Functions | |
| void | Loop (amrex::MultiFab &mf_dst, const amrex::MultiFab &mf_src, int dcomp, int scomp, int ncomp, amrex::IntVect ngrow, amrex::IntVect crse_ratio=amrex::IntVect(1)) |
Loops over the boxes of the coarsened MultiFab mf_dst and fills them by interpolating the data contained in the fine MultiFab mf_src. | |
| void | Coarsen (amrex::MultiFab &mf_dst, const amrex::MultiFab &mf_src, int dcomp, int scomp, int ncomp, int ngrow, amrex::IntVect crse_ratio=amrex::IntVect(1)) |
Stores in the coarsened MultiFab mf_dst the values obtained by interpolating the data contained in the fine MultiFab mf_src. | |
| void | Coarsen (amrex::MultiFab &mf_dst, const amrex::MultiFab &mf_src, const int dcomp, const int scomp, const int ncomp, const amrex::IntVect ngrowvect, const amrex::IntVect crse_ratio) |
| AMREX_GPU_DEVICE AMREX_FORCE_INLINE amrex::Real | Interp (amrex::Array4< amrex::Real const > const &arr_src, amrex::GpuArray< int, 3 > const &sf, amrex::GpuArray< int, 3 > const &sc, amrex::GpuArray< int, 3 > const &cr, const int i, const int j, const int k, const int comp) |
Interpolates the floating point data contained in the source Array4 arr_src, extracted from a fine MultiFab, by averaging over either 1 point or 2 equally distant points. | |
Mesh Coarsening by Sampling
These methods are mostly used for I/O.
| void ablastr::coarsen::sample::Coarsen | ( | amrex::MultiFab & | mf_dst, |
| const amrex::MultiFab & | mf_src, | ||
| const int | dcomp, | ||
| const int | scomp, | ||
| const int | ncomp, | ||
| const amrex::IntVect | ngrowvect, | ||
| const amrex::IntVect | crse_ratio ) |
| void ablastr::coarsen::sample::Coarsen | ( | amrex::MultiFab & | mf_dst, |
| const amrex::MultiFab & | mf_src, | ||
| int | dcomp, | ||
| int | scomp, | ||
| int | ncomp, | ||
| int | ngrow, | ||
| amrex::IntVect | crse_ratio = amrex::IntVect(1) ) |
Stores in the coarsened MultiFab mf_dst the values obtained by interpolating the data contained in the fine MultiFab mf_src.
| [in,out] | mf_dst | coarsened MultiFab containing the floating point data to be filled by interpolating the fine MultiFab mf_src |
| [in] | mf_src | fine MultiFab containing the floating point data to be interpolated |
| [in] | dcomp | offset for the fourth component of the coarsened Array4 object, extracted from its MultiFab, where the interpolated values will be stored |
| [in] | scomp | offset for the fourth component of the fine Array4 object, extracted from its MultiFab, containing the data to be interpolated |
| [in] | ncomp | number of components to loop over for the coarsened Array4 extracted from the coarsened MultiFab mf_dst |
| [in] | ngrow | number of guard cells to fill |
| [in] | crse_ratio | coarsening ratio between the fine MultiFab mf_src and the coarsened MultiFab mf_dst along each spatial direction |
| AMREX_GPU_DEVICE AMREX_FORCE_INLINE amrex::Real ablastr::coarsen::sample::Interp | ( | amrex::Array4< amrex::Real const > const & | arr_src, |
| amrex::GpuArray< int, 3 > const & | sf, | ||
| amrex::GpuArray< int, 3 > const & | sc, | ||
| amrex::GpuArray< int, 3 > const & | cr, | ||
| const int | i, | ||
| const int | j, | ||
| const int | k, | ||
| const int | comp ) |
Interpolates the floating point data contained in the source Array4 arr_src, extracted from a fine MultiFab, by averaging over either 1 point or 2 equally distant points.
| [in] | arr_src | floating point data to be interpolated |
| [in] | sf | staggering of the source fine MultiFab |
| [in] | sc | staggering of the destination coarsened MultiFab |
| [in] | cr | coarsening ratio along each spatial direction |
| [in] | i | index along x of the coarsened Array4 to be filled |
| [in] | j | index along y of the coarsened Array4 to be filled |
| [in] | k | index along z of the coarsened Array4 to be filled |
| [in] | comp | index along the fourth component of the Array4 arr_src containing the data to be interpolated |
| void ablastr::coarsen::sample::Loop | ( | amrex::MultiFab & | mf_dst, |
| const amrex::MultiFab & | mf_src, | ||
| int | dcomp, | ||
| int | scomp, | ||
| int | ncomp, | ||
| amrex::IntVect | ngrow, | ||
| amrex::IntVect | crse_ratio = amrex::IntVect(1) ) |
Loops over the boxes of the coarsened MultiFab mf_dst and fills them by interpolating the data contained in the fine MultiFab mf_src.
| [in,out] | mf_dst | coarsened MultiFab containing the floating point data to be filled by interpolating the source fine MultiFab |
| [in] | mf_src | fine MultiFab containing the floating point data to be interpolated |
| [in] | dcomp | offset for the fourth component of the coarsened Array4 object, extracted from its MultiFab, where the interpolated values will be stored |
| [in] | scomp | offset for the fourth component of the fine Array4 object, extracted from its MultiFab, containing the data to be interpolated |
| [in] | ncomp | number of components to loop over for the coarsened Array4 extracted from the coarsened MultiFab mf_dst |
| [in] | ngrow | number of guard cells to fill |
| [in] | crse_ratio | coarsening ratio between the fine MultiFab mf_src and the coarsened MultiFab mf_dst along each spatial direction |