#include <AMReX_Array.H>
#include <AMReX_Array4.H>
#include <AMReX_Box.H>
#include <AMReX_BoxArray.H>
#include <AMReX_DistributionMapping.H>
#include <AMReX_Geometry.H>
#include <AMReX_MultiFab.H>
#include <AMReX_REAL.H>
#include <algorithm>
#include <cmath>
#include <limits>
Go to the source code of this file.
|
| bool | invert_latlon_offset (amrex::Real dlat, amrex::Real dlon, amrex::Real dlat_di, amrex::Real dlon_di, amrex::Real dlat_dj, amrex::Real dlon_dj, amrex::Real &di, amrex::Real &dj) |
| |
| amrex::Real | wrap_longitude_difference (amrex::Real dlon) |
| |
| void | grid_rotation_from_latlon (const amrex::Array4< const amrex::Real > &ll, const amrex::Box &dom, int i, int j, amrex::Real &cos_alpha, amrex::Real &sin_alpha) |
| |
| LatLonStatus | locate_latlon_on_grid (const amrex::Array4< const amrex::Real > &ll, const amrex::Box &dom, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &problo, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &dx, amrex::Real req_lat, amrex::Real req_lon, LatLonLocation &loc) |
| |
| void | pack_latlon (amrex::MultiFab &latlon, const amrex::MultiFab &lat, const amrex::MultiFab &lon) |
| |
◆ LatLonStatus
| Enumerator |
|---|
| Ok | |
| Degenerate | |
| TooFar | |
◆ grid_rotation_from_latlon()
| void grid_rotation_from_latlon |
( |
const amrex::Array4< const amrex::Real > & |
ll, |
|
|
const amrex::Box & |
dom, |
|
|
int |
i, |
|
|
int |
j, |
|
|
amrex::Real & |
cos_alpha, |
|
|
amrex::Real & |
sin_alpha |
|
) |
| |
◆ invert_latlon_offset()
57 const amrex::Real scale = std::max(std::max(std::abs(dlat_di), std::abs(dlon_di)),
58 std::max(std::abs(dlat_dj), std::abs(dlon_dj)));
59 const amrex::Real det = dlat_di*dlon_dj - dlat_dj*dlon_di;
62 if (scale <=
amrex::Real(0.0) || std::abs(det) <= rel*scale*scale) {
65 di = ( dlat*dlon_dj - dlon*dlat_dj) / det;
66 dj = (-dlat*dlon_di + dlon*dlat_di) / det;
amrex::Real Real
Definition: ERF_ShocInterface.H:19
real(c_double), parameter epsilon
Definition: ERF_module_model_constants.F90:12
real(c_double), private di
Definition: ERF_module_mp_morr_two_moment.F90:203
Referenced by locate_latlon_on_grid().
◆ locate_latlon_on_grid()
◆ pack_latlon()
| void pack_latlon |
( |
amrex::MultiFab & |
latlon, |
|
|
const amrex::MultiFab & |
lat, |
|
|
const amrex::MultiFab & |
lon |
|
) |
| |
◆ wrap_longitude_difference()