84 amrex::Real ic_real = (
x - prob_lo_crse[0]) / dx_crse[0];
85 amrex::Real jc_real = (
y - prob_lo_crse[1]) / dx_crse[1];
86 amrex::Real kc_real = (
z - prob_lo_crse[2]) / dx_crse[2];
88 int ic =
static_cast<int>(amrex::Math::floor(ic_real));
89 int jc =
static_cast<int>(amrex::Math::floor(jc_real));
90 int kc =
static_cast<int>(amrex::Math::floor(kc_real));
92 amrex::Real dx = ic_real - ic;
93 amrex::Real dy = jc_real - jc;
94 amrex::Real dz = kc_real - kc;
97 amrex::Real v000 = crse(ic, jc, kc, n);
98 amrex::Real v100 = crse(ic + 1, jc, kc, n);
99 amrex::Real v010 = crse(ic, jc + 1, kc, n);
100 amrex::Real v110 = crse(ic + 1, jc + 1, kc, n);
101 amrex::Real v001 = crse(ic, jc, kc + 1, n);
102 amrex::Real v101 = crse(ic + 1, jc, kc + 1, n);
103 amrex::Real v011 = crse(ic, jc + 1, kc + 1, n);
104 amrex::Real v111 = crse(ic + 1, jc + 1, kc + 1, n);
106 amrex::Real v = v000 * (1 - dx) * (1 - dy) * (1 - dz) +
107 v100 * dx * (1 - dy) * (1 - dz) +
108 v010 * (1 - dx) * dy * (1 - dz) +
109 v110 * dx * dy * (1 - dz) +
110 v001 * (1 - dx) * (1 - dy) * dz +
111 v101 * dx * (1 - dy) * dz +
112 v011 * (1 - dx) * dy * dz +