CAM
|
Functions/Subroutines | |
subroutine, public | advance_wp2_wp3 (dt, sfc_elevation, sigma_sqd_w, wm_zm, wm_zt, a3, a3_zt, wp3_on_wp2, wpthvp, wp2thvp, um, vm, upwp, vpwp, up2, vp2, Kh_zm, Kh_zt, tau_zm, tau_zt, tau_C1_zm, Skw_zm, Skw_zt, rho_ds_zm, rho_ds_zt, invrs_rho_ds_zm, invrs_rho_ds_zt, radf, thv_ds_zm, thv_ds_zt, mixt_frac, wp2, wp3, wp3_zm, wp2_zt, err_code) |
subroutine, private | wp23_solve (dt, sfc_elevation, sigma_sqd_w, wm_zm, wm_zt, a3, a3_zt, wp3_on_wp2, wpthvp, wp2thvp, um, vm, upwp, vpwp, up2, vp2, Kw1, Kw8, Kh_zt, Skw_zt, tau1m, tauw3t, tau_C1_zm, C1_Skw_fnc, C11_Skw_fnc, rho_ds_zm, rho_ds_zt, invrs_rho_ds_zm, invrs_rho_ds_zt, radf, thv_ds_zm, thv_ds_zt, nsub, nsup, wp2, wp3, wp3_zm, wp2_zt, err_code) |
subroutine | wp23_gmres (dt, wp2, wm_zm, wm_zt, a1, a1_zt, a3, a3_zt, wp3_on_wp2, Kw1, Kw8, Skw_zt, tau1m, tauw3t, tau_C1_zm, C1_Skw_fnc, C11_Skw_fnc, rho_ds_zm, rho_ds_zt, invrs_rho_ds_zm, invrs_rho_ds_zt, l_crank_nich_diff, nsup, nsub, nrhs, rhs, solut, err_code) |
subroutine, private | wp23_lhs (dt, wp2, wm_zm, wm_zt, a1, a1_zt, a3, a3_zt, wp3_on_wp2, Kw1, Kw8, Skw_zt, tau1m, tauw3t, tau_C1_zm, C1_Skw_fnc, C11_Skw_fnc, rho_ds_zm, rho_ds_zt, invrs_rho_ds_zm, invrs_rho_ds_zt, l_crank_nich_diff, nsub, nsup, lhs) |
subroutine | wp23_lhs_csr (dt, wp2, wm_zm, wm_zt, a1, a1_zt, a3, a3_zt, wp3_on_wp2, Kw1, Kw8, Skw_zt, tau1m, tauw3t, tau_C1_zm, C1_Skw_fnc, C11_Skw_fnc, rho_ds_zm, rho_ds_zt, invrs_rho_ds_zm, invrs_rho_ds_zt, l_crank_nich_diff, lhs_a_csr) |
subroutine, private | wp23_rhs (dt, wp2, wp3, a1, a1_zt, a3, a3_zt, wp3_on_wp2, wpthvp, wp2thvp, um, vm, upwp, vpwp, up2, vp2, Kw1, Kw8, Kh_zt, Skw_zt, tau1m, tauw3t, tau_C1_zm, C1_Skw_fnc, C11_Skw_fnc, rho_ds_zm, invrs_rho_ds_zt, radf, thv_ds_zm, thv_ds_zt, l_crank_nich_diff, rhs) |
pure real(kind=core_rknd) function, dimension(2), private | wp2_term_ta_lhs (rho_ds_ztp1, rho_ds_zt, invrs_rho_ds_zm, invrs_dzm) |
pure real(kind=core_rknd) function, private | wp2_terms_ac_pr2_lhs (C5, wm_ztp1, wm_zt, invrs_dzm) |
pure real(kind=core_rknd) function, private | wp2_term_dp1_lhs (C1_Skw_fnc, tau1m) |
pure real(kind=core_rknd) function, private | wp2_term_pr1_lhs (C4, tau1m) |
pure real(kind=core_rknd) function, private | wp2_terms_bp_pr2_rhs (C5, thv_ds_zm, wpthvp) |
pure real(kind=core_rknd) function, private | wp2_term_dp1_rhs (C1_Skw_fnc, tau1m, threshold) |
pure real(kind=core_rknd) function, private | wp2_term_pr3_rhs (C5, thv_ds_zm, wpthvp, upwp, ump1, um, vpwp, vmp1, vm, invrs_dzm) |
pure real(kind=core_rknd) function, private | wp2_term_pr1_rhs (C4, up2, vp2, tau1m) |
pure real(kind=core_rknd) function, dimension(5), private | wp3_terms_ta_tp_lhs (wp2, wp2m1, a1, a1_zt, a1m1, a3, a3_zt, a3m1, wp3_on_wp2, wp3_on_wp2_m1, rho_ds_zm, rho_ds_zmm1, invrs_rho_ds_zt, const_three_halves, invrs_dzt, level) |
pure real(kind=core_rknd) function, private | wp3_terms_ac_pr2_lhs (C11_Skw_fnc, wm_zm, wm_zmm1, invrs_dzt) |
pure real(kind=core_rknd) function, private | wp3_term_pr1_lhs (C8, C8b, tauw3t, Skw_zt) |
pure real(kind=core_rknd) function, private | wp3_terms_bp1_pr2_rhs (C11_Skw_fnc, thv_ds_zt, wp2thvp) |
pure real(kind=core_rknd) function, private | wp3_term_bp2_rhs (C15, Kh_zt, wpthvp, wpthvp_m1, dum_dz, dum_dz_m1, dvm_dz, dvm_dz_m1, upwp, upwp_m1, vpwp, vpwp_m1, thv_ds_zt, invrs_dzt) |
pure real(kind=core_rknd) function, private | wp3_term_pr1_rhs (C8, C8b, tauw3t, Skw_zt, wp3) |
Variables | |
integer, parameter, private | clip_wp2 = 12 |
subroutine, public advance_wp2_wp3_module::advance_wp2_wp3 | ( | real( kind = core_rknd ), intent(in) | dt, |
real( kind = core_rknd ), intent(in) | sfc_elevation, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | sigma_sqd_w, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | wm_zm, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | wm_zt, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | a3, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | a3_zt, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | wp3_on_wp2, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | wpthvp, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | wp2thvp, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | um, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | vm, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | upwp, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | vpwp, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | up2, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | vp2, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | Kh_zm, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | Kh_zt, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | tau_zm, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | tau_zt, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | tau_C1_zm, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | Skw_zm, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | Skw_zt, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | rho_ds_zm, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | rho_ds_zt, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | invrs_rho_ds_zm, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | invrs_rho_ds_zt, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | radf, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | thv_ds_zm, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | thv_ds_zt, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | mixt_frac, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(inout) | wp2, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(inout) | wp3, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(inout) | wp3_zm, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(inout) | wp2_zt, | ||
integer, intent(inout) | err_code | ||
) |
subroutine advance_wp2_wp3_module::wp23_gmres | ( | real( kind = core_rknd ), intent(in) | dt, |
real( kind = core_rknd ), dimension(gr%nz), intent(in) | wp2, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | wm_zm, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | wm_zt, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | a1, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | a1_zt, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | a3, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | a3_zt, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | wp3_on_wp2, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | Kw1, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | Kw8, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | Skw_zt, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | tau1m, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | tauw3t, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | tau_C1_zm, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | C1_Skw_fnc, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | C11_Skw_fnc, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | rho_ds_zm, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | rho_ds_zt, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | invrs_rho_ds_zm, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | invrs_rho_ds_zt, | ||
logical, intent(in) | l_crank_nich_diff, | ||
integer, intent(in) | nsup, | ||
integer, intent(in) | nsub, | ||
integer, intent(in) | nrhs, | ||
real( kind = core_rknd ), dimension(2*gr%nz), intent(inout) | rhs, | ||
real( kind = core_rknd ), dimension(2*gr%nz), intent(out) | solut, | ||
integer, intent(out) | err_code | ||
) |
|
private |
subroutine advance_wp2_wp3_module::wp23_lhs_csr | ( | real( kind = core_rknd ), intent(in) | dt, |
real( kind = core_rknd ), dimension(gr%nz), intent(in) | wp2, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | wm_zm, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | wm_zt, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | a1, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | a1_zt, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | a3, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | a3_zt, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | wp3_on_wp2, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | Kw1, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | Kw8, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | Skw_zt, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | tau1m, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | tauw3t, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | tau_C1_zm, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | C1_Skw_fnc, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | C11_Skw_fnc, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | rho_ds_zm, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | rho_ds_zt, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | invrs_rho_ds_zm, | ||
real( kind = core_rknd ), dimension(gr%nz), intent(in) | invrs_rho_ds_zt, | ||
logical, intent(in) | l_crank_nich_diff, | ||
real( kind = core_rknd ), dimension(intlc_5d_5d_ja_size), intent(out) | lhs_a_csr | ||
) |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |