|
MPI-AMRVAC 3.2
The MPI - Adaptive Mesh Refinement - Versatile Advection Code (development version)
|
Public Attributes | |
| character(len=std_len) | filename |
| double precision, dimension(:,:), allocatable | table |
| integer | dim1 |
| integer | dim2 |
| double precision | var1_min |
| double precision | var1_max |
| double precision | var2_min |
| double precision | var2_max |
| double precision | step_inv_1 |
| double precision | step_inv_2 |
| double precision, dimension(max-min) | precomputed |
| double precision | for |
| double precision | each |
| double precision | axis |
| logical | is_uniform = .true. |
| Curvature-adaptive (non-uniform) grid support. When .true. (default), the grid is uniform in log10 space and the existing affine index calculation applies. When .false., the table file carries an explicit pair of axis node arrays read from the binary trailer; index lookup uses binary search and the local fractional coordinate becomes t1 = (var1 - var1_nodes(i)) / (var1_nodes(i+1) - var1_nodes(i)) The PCHIP/bicubic kernels themselves are unchanged. | |
| double precision, dimension(:), allocatable | var1_nodes |
| double precision, dimension(:), allocatable | var2_nodes |
| integer | guard_m_1 = 0 |
| Guard (bucket) array for O(1) adaptive index lookup. Built when is_uniform = .false. via eos_build_guards. For each axis: guard_M : number of buckets covering [v(1), v(N)] guard_scale: M / (v(N) - v(1)) guard(:) : 1-based array, size M; guard(k) is the smallest 1-based node index ii such that v(ii) >= left edge of bucket k (i.e., v(1) + (k-1)*span/M). Lookup: k = 1 + min(M-1, max(0, floor((val - v(1)) * scale))) ii = guard(k); while (ii < N .and. v(ii) < val) ii = ii + 1 M is sized at build time so the safety while-loop iterates at most once for typical curvature-equidistributed grids. | |
| integer | guard_m_2 = 0 |
| double precision | guard_scale_1 = 0.0d0 |
| double precision | guard_scale_2 = 0.0d0 |
| integer, dimension(:), allocatable | guard_1 |
| integer, dimension(:), allocatable | guard_2 |
Definition at line 71 of file mod_eos_container.t.
| double precision mod_eos_container::eos_table_container::axis |
Definition at line 77 of file mod_eos_container.t.
| integer mod_eos_container::eos_table_container::dim1 |
Definition at line 75 of file mod_eos_container.t.
| integer mod_eos_container::eos_table_container::dim2 |
Definition at line 75 of file mod_eos_container.t.
| double precision mod_eos_container::eos_table_container::each |
Definition at line 77 of file mod_eos_container.t.
| character(len=std_len) mod_eos_container::eos_table_container::filename |
Definition at line 73 of file mod_eos_container.t.
| double precision mod_eos_container::eos_table_container::for |
Definition at line 77 of file mod_eos_container.t.
| integer, dimension(:), allocatable mod_eos_container::eos_table_container::guard_1 |
Definition at line 107 of file mod_eos_container.t.
| integer, dimension(:), allocatable mod_eos_container::eos_table_container::guard_2 |
Definition at line 107 of file mod_eos_container.t.
| integer mod_eos_container::eos_table_container::guard_m_1 = 0 |
Guard (bucket) array for O(1) adaptive index lookup. Built when is_uniform = .false. via eos_build_guards. For each axis: guard_M : number of buckets covering [v(1), v(N)] guard_scale: M / (v(N) - v(1)) guard(:) : 1-based array, size M; guard(k) is the smallest 1-based node index ii such that v(ii) >= left edge of bucket k (i.e., v(1) + (k-1)*span/M). Lookup: k = 1 + min(M-1, max(0, floor((val - v(1)) * scale))) ii = guard(k); while (ii < N .and. v(ii) < val) ii = ii + 1 M is sized at build time so the safety while-loop iterates at most once for typical curvature-equidistributed grids.
Definition at line 105 of file mod_eos_container.t.
| integer mod_eos_container::eos_table_container::guard_m_2 = 0 |
Definition at line 105 of file mod_eos_container.t.
| double precision mod_eos_container::eos_table_container::guard_scale_1 = 0.0d0 |
Definition at line 106 of file mod_eos_container.t.
| double precision mod_eos_container::eos_table_container::guard_scale_2 = 0.0d0 |
Definition at line 106 of file mod_eos_container.t.
| logical mod_eos_container::eos_table_container::is_uniform = .true. |
Curvature-adaptive (non-uniform) grid support. When .true. (default), the grid is uniform in log10 space and the existing affine index calculation applies. When .false., the table file carries an explicit pair of axis node arrays read from the binary trailer; index lookup uses binary search and the local fractional coordinate becomes t1 = (var1 - var1_nodes(i)) / (var1_nodes(i+1) - var1_nodes(i)) The PCHIP/bicubic kernels themselves are unchanged.
Naming follows the existing var1/var2 convention: var1_nodes has length dim1, var2_nodes has length dim2.
Definition at line 90 of file mod_eos_container.t.
| double precision, dimension(max-min) mod_eos_container::eos_table_container::precomputed |
Definition at line 77 of file mod_eos_container.t.
| double precision mod_eos_container::eos_table_container::step_inv_1 |
Definition at line 77 of file mod_eos_container.t.
| double precision mod_eos_container::eos_table_container::step_inv_2 |
Definition at line 77 of file mod_eos_container.t.
| double precision, dimension(:,:), allocatable mod_eos_container::eos_table_container::table |
Definition at line 74 of file mod_eos_container.t.
| double precision mod_eos_container::eos_table_container::var1_max |
Definition at line 76 of file mod_eos_container.t.
| double precision mod_eos_container::eos_table_container::var1_min |
Definition at line 76 of file mod_eos_container.t.
| double precision, dimension(:), allocatable mod_eos_container::eos_table_container::var1_nodes |
Definition at line 91 of file mod_eos_container.t.
| double precision mod_eos_container::eos_table_container::var2_max |
Definition at line 76 of file mod_eos_container.t.
| double precision mod_eos_container::eos_table_container::var2_min |
Definition at line 76 of file mod_eos_container.t.
| double precision, dimension(:), allocatable mod_eos_container::eos_table_container::var2_nodes |
Definition at line 91 of file mod_eos_container.t.