```u_t :: (real ~ " m s^-2" field (x(half), y(grid), z(half)) on        (i = 1 .. nlon by j = 1 .. nlat by k = 1 .. nlev)       )

Scalar Form

u_t := ( 1 / h_x * ave(ave(h_y * v_aux, x), y) * protect(Z)       - (R_d * T) / h_x * df(ln_p, x) * (q * (1 / epsilon - 1) + 1)       - ( ave(( df(u, z ~ "1")               * (eta_p if 2 <= k and k <= nlev \\ 0.0)               ), z)         / df(p, z ~ "1")         )       - 1 / h_x * df(E + phi, x)       )
Dimensioned

u_t := ( 1 / h_x * ave(ave(h_y * v_aux, x), y) * protect(Z)       - ( (R_d * T) / h_x         * df(ln_p, x)         * (q * (1 / epsilon - 1 ~ "1") + 1 ~ "1")         )       - ( ave(( df(u, z ~ "1")               * (eta_p if 2 ~ "1" <= k and k <= nlev \\                  0.0 ~ " kg s^-3 / m"                 )               ), z)         / df(p, z ~ "1")         )       - 1 / h_x * df(E + phi, x)       )
Discretized

u_t := ( ( 1 / hxu         * ( ( ( R_d               * ave_g(T, x)               * df_g(ln_p, x)               * (ave_g(q, x) * (1 - 1 / epsilon) - 1)               )             + ave_h(ave_g(hyv * v_aux, x), y) * protect(ave_h(Z, y))             )           - df_g(E + phi, x)           )         )       - ( ave_g(( df_h(u, z)                 * (ave_g(eta_p, x) if 2 <= k and k <= nlev \\ 0.0)                 ), z)         / df_g(ave_g(p, x), z)         )       )
CSE Eliminated

u_t := ((( 1 / 2 * varidx(t_192, [i, j, nlev]) / varidx(t_47, [i, j, nlev])         + ( ( rdlam * ( ( 1.56961230576048E-7                         * ( (varidx(E, [i, j, k]) + varidx(phi, [i, j, nlev]))                           - varidx(E, [i + 1, j, k])                           - varidx(phi, [i + 1, j, nlev])                           )                         )                       + ( 2.25270758122744E-5                         * (( 0.30391234671126                            * ( varidx(q, [i, j, nlev])                              + varidx(q, [i + 1, j, nlev])                              )                            ) + 1)                         * (varidx(ln_p, [i, j, k]) - varidx(ln_p, [i + 1, j, k]))                         * (varidx(T, [i, j, k]) + varidx(T, [i + 1, j, k]))                         )                       )             - ( 1 / 16               * (varidx(Z, [i, j, k]) + varidx(Z, [i, j - 1, k]))               * ( ( varidx(hyv, [i, j])                   * varidx(t_49, [i, j, nlev])                   * varidx(v, [i, j, nlev])                   )                 + ( varidx(hyv, [i, j - 1])                   * varidx(t_49, [i, j - 1, nlev])                   * varidx(v, [i, j - 1, nlev])                   )                 + ( varidx(hyv, [i + 1, j])                   * varidx(t_49, [i + 1, j, nlev])                   * varidx(v, [i + 1, j, nlev])                   )                 + ( varidx(hyv, [i + 1, j - 1])                   * varidx(t_49, [i + 1, j - 1, nlev])                   * varidx(v, [i + 1, j - 1, nlev])                   )                 )               )             )           / varidx(hxu, [i, j])           )         ) if         nlev <= k        ) \\        ( 1 / 2 * varidx(t_192, [i, j, 2]) / varidx(t_47, [i, j, 1])        + ( ( rdlam * ( ( 1.56961230576048E-7                        * ( (varidx(E, [i, j, k]) + varidx(phi, [i, j, 1]))                          - varidx(E, [i + 1, j, k])                          - varidx(phi, [i + 1, j, 1])                          )                        )                      + ( 2.25270758122744E-5                        * (( 0.30391234671126                           * (varidx(q, [i, j, 1]) + varidx(q, [i + 1, j, 1]))                           ) + 1)                        * (varidx(ln_p, [i, j, k]) - varidx(ln_p, [i + 1, j, k]))                        * (varidx(T, [i, j, k]) + varidx(T, [i + 1, j, k]))                        )                      )            - ( 1 / 16              * (varidx(Z, [i, j, k]) + varidx(Z, [i, j - 1, k]))              * ( ( varidx(hyv, [i, j])                  * varidx(t_49, [i, j, 1])                  * varidx(v, [i, j, 1])                  )                + ( varidx(hyv, [i, j - 1])                  * varidx(t_49, [i, j - 1, 1])                  * varidx(v, [i, j - 1, 1])                  )                + ( varidx(hyv, [i + 1, j])                  * varidx(t_49, [i + 1, j, 1])                  * varidx(v, [i + 1, j, 1])                  )                + ( varidx(hyv, [i + 1, j - 1])                  * varidx(t_49, [i + 1, j - 1, 1])                  * varidx(v, [i + 1, j - 1, 1])                  )                )              )            )          / varidx(hxu, [i, j])          )        ) if k <= 1 \\        ( ( 1 / 2          * ( (varidx(t_192, [i, j, k]) + varidx(t_192, [i, j, k + 1]))            / varidx(t_47, [i, j, k])            )          )        + ( ( rdlam * ( ( 1.56961230576048E-7                        * ( (varidx(E, [i, j, k]) + varidx(phi, [i, j, k]))                          - varidx(E, [i + 1, j, k])                          - varidx(phi, [i + 1, j, k])                          )                        )                      + ( 2.25270758122744E-5                        * (( 0.30391234671126                           * (varidx(q, [i, j, k]) + varidx(q, [i + 1, j, k]))                           ) + 1)                        * (varidx(ln_p, [i, j, k]) - varidx(ln_p, [i + 1, j, k]))                        * (varidx(T, [i, j, k]) + varidx(T, [i + 1, j, k]))                        )                      )            - ( 1 / 16              * (varidx(Z, [i, j, k]) + varidx(Z, [i, j - 1, k]))              * ( ( varidx(hyv, [i, j])                  * varidx(t_49, [i, j, k])                  * varidx(v, [i, j, k])                  )                + ( varidx(hyv, [i, j - 1])                  * varidx(t_49, [i, j - 1, k])                  * varidx(v, [i, j - 1, k])                  )                + ( varidx(hyv, [i + 1, j])                  * varidx(t_49, [i + 1, j, k])                  * varidx(v, [i + 1, j, k])                  )                + ( varidx(hyv, [i + 1, j - 1])                  * varidx(t_49, [i + 1, j - 1, k])                  * varidx(v, [i + 1, j - 1, k])                  )                )              )            )          / varidx(hxu, [i, j])          )        )       )```