PISM, A Parallel Ice Sheet Model  stable v2.1-1-g6902d5502 committed by Ed Bueler on 2023-12-20 08:38:27 -0800

◆ assemble_R()

void pism::energy::enthSystemCtx::assemble_R ( )
protected

Assemble the R array. The R value switches at the CTS.

In a simple abstract diffusion

\[ \frac{\partial u}{\partial t} = D \frac{\partial^2 u}{\partial z^2}, \]

with time steps \(\Delta t\) and spatial steps \(\Delta z\) we define

\[ R = \frac{D \Delta t}{\Delta z^2}. \]

This is used in an implicit method to write each line in the linear system, for example [MortonMayers]:

\[ -R U_{j-1}^{n+1} + (1+2R) U_j^{n+1} - R U_{j+1}^{n+1} = U_j^n. \]

In the case of conservation of energy [AschwandenBuelerKhroulevBlatter],

\[ u=E \qquad \text{ and } \qquad D = \frac{K}{\rho} \qquad \text{ and } \qquad K = \frac{k}{c}. \]

Thus

\[ R = \frac{k \Delta t}{\rho c \Delta z^2}. \]

Definition at line 393 of file enthSystem.cc.

References pism::k, k_from_T(), pism::columnSystemCtx::m_dz, m_EC, m_Enth, m_Enth_s, m_ice_k, m_ice_thickness, m_k_depends_on_T, pism::columnSystemCtx::m_ks, m_R, m_R_cold, m_R_factor, and m_R_temp.

Referenced by init().