REMORA
Regional Modeling of Oceans Refined Adaptively
Loading...
Searching...
No Matches
REMORA_IndexDefines.H
Go to the documentation of this file.
1#ifndef REMORA_INDEX_DEFINES_H_
2#define REMORA_INDEX_DEFINES_H_
3
4#include <AMReX_REAL.H>
5#include <AMReX_Arena.H>
6
7// Cell-centered state variables
8#define Temp_comp 0
9#define Salt_comp 1
10#define Tracer_comp 2
11
12#define NGROW 2
13
14// Number of 3D/2D variables output in netcdf files
15#define NC3D 5
16#define NC2D 5
17// Number of 2D variables in a netcdf file's header
18#define NCH2D 12
19
20/**
21 * \brief Boundary fill types
22 */
23namespace BCVars {
24 static constexpr int cons_bc = 0;
25 static constexpr int Temp_bc_comp = 0;
26 static constexpr int Salt_bc_comp = 1;
27 static constexpr int Scalar_bc_comp = 2;
28
29 inline int xvel_bc (int ncons) noexcept { return ncons; }
30 inline int yvel_bc (int ncons) noexcept { return ncons + 1; }
31 inline int zvel_bc (int ncons) noexcept { return ncons + 2; }
32 inline int ubar_bc (int ncons) noexcept { return ncons + 3; }
33 inline int vbar_bc (int ncons) noexcept { return ncons + 4; }
34 inline int zeta_bc (int ncons) noexcept { return ncons + 5; }
35 inline int tke_bc (int ncons) noexcept { return ncons + 6; }
36 inline int foextrap_periodic_bc (int ncons) noexcept { return ncons + 7; }
37 inline int foextrap_bc (int ncons) noexcept { return ncons + 8; }
38 inline int u2d_simple_bc (int ncons) noexcept { return ncons + 9; }
39 inline int v2d_simple_bc (int ncons) noexcept { return ncons + 10; }
40 inline int NumTypes (int ncons) noexcept { return ncons + AMREX_SPACEDIM + 8; }
41}
42
43/**
44 * \brief These are only for the variables read in from netcdf boundary condition files
45 *
46 * Note that the salt component must be one greater than the temp component for the
47 * logic in fill_from_bdyfiles to work
48 */
49namespace BdyVars {
50 enum {
51 null = -1,
52 u = 0,
53 v = 1,
54 t = 2,
55 s = 3,
60 };
61}
62
67
68/**
69 * NOTE: the first of these must match up with the BCType enum
70 * in amrex/Src/Base/AMReX_BC_TYPES.H. We had extras at
71 * the end to use locally
72 */
87#endif
@ orlanski_rad_nudge
Boundary fill types.
int NumTypes(int ncons) noexcept
static constexpr int cons_bc
int xvel_bc(int ncons) noexcept
static constexpr int Salt_bc_comp
int zvel_bc(int ncons) noexcept
static constexpr int Temp_bc_comp
int yvel_bc(int ncons) noexcept
int vbar_bc(int ncons) noexcept
int foextrap_bc(int ncons) noexcept
int v2d_simple_bc(int ncons) noexcept
int u2d_simple_bc(int ncons) noexcept
int zeta_bc(int ncons) noexcept
int ubar_bc(int ncons) noexcept
int tke_bc(int ncons) noexcept
static constexpr int Scalar_bc_comp
int foextrap_periodic_bc(int ncons) noexcept
These are only for the variables read in from netcdf boundary condition files.