alpale_th Subroutine

public subroutine alpale_th(dtime, lmax_th, t_seri, cell_area, cin, s2, n2, strig, ale_bl_trig, ale_bl_stat, ale_bl, alp_bl, alp_bl_stat, proba_notrig, random_notrig, birth_rate)

Uses

  • proc~~alpale_th~~UsesGraph proc~alpale_th alpale_th module~alpale_mod~2 alpale_mod proc~alpale_th->module~alpale_mod~2 module~print_control_mod print_control_mod proc~alpale_th->module~print_control_mod module~dimphy~3 dimphy proc~alpale_th->module~dimphy~3

! correct formula (jyg) ! (1.-max(sign(1.,x-1.e-3),0.))(-0.5x(1.-x/3.(1.-0.25x))) !!! bug introduced by mistake (jyg) ! (1.-max(sign(1.,x-1.e-3),0.))(1.-0.5x(1.-x/3.(1.-0.25x))) !!! initial correct formula (jyg)

Control of the multiplication of no-trigger probabilities between calls to the convection scheme. If multiply_proba_notrig is .false., then proba_notrig is set to 1 at each call to alpale_th, so that only the last call plays a role in the triggering of convection. If it is .true., then propa_notrig is saved between calls to convection and is reset to 1 only after calling the convection scheme. For instance, if the probability of no_trigger is 0.9 at each call, and if there are 3 calls to alpale_th between calls to the convection scheme, then the probability of triggering convection will be 0.1 (= 1.-0.9) if multiply_proba_notrig is .false. and 0.271 (= 1.-0.9^3) if multiply_proba_notrig is .true.

(.NOT.multiply_proba_notrig)

jyg proba_notrig(i)=1. ! birth_rate(i) = max(birth_rate(i),1.e-18) jyg proba_notrig(i)=1. ! birth_rate(i) = max(birth_rate(i),1.e-18) jyg proba_notrig(i)=1. jyg proba_notrig(i)=1. ! birth_rate(i) = max(birth_rate(i),1.e-18) jyg proba_notrig(i)=1.

Arguments

Type IntentOptional Attributes Name
real, intent(in) :: dtime
integer, intent(in), DIMENSION(klon) :: lmax_th
real, intent(in), DIMENSION(klon,klev) :: t_seri
real, intent(in), DIMENSION(klon) :: cell_area
real, intent(in), DIMENSION(klon) :: cin
real, intent(in), DIMENSION(klon) :: s2
real, intent(in), DIMENSION(klon) :: n2
real, intent(in), DIMENSION(klon) :: strig
real, intent(inout), DIMENSION(klon) :: ale_bl_trig
real, intent(in), DIMENSION(klon) :: ale_bl_stat
real, intent(inout), DIMENSION(klon) :: ale_bl
real, intent(inout), DIMENSION(klon) :: alp_bl
real, intent(inout), DIMENSION(klon) :: alp_bl_stat
real, intent(inout), DIMENSION(klon) :: proba_notrig
real, intent(out), DIMENSION(klon) :: random_notrig
real, intent(out), DIMENSION(klon) :: birth_rate

Calls

proc~~alpale_th~~CallsGraph proc~alpale_th alpale_th proc~abort_physic abort_physic proc~alpale_th->proc~abort_physic histclo histclo proc~abort_physic->histclo proc~mpi_abort MPI_ABORT proc~abort_physic->proc~mpi_abort restclo restclo proc~abort_physic->restclo getin_dump getin_dump proc~abort_physic->getin_dump proc~lmdz_mpi_wrapper_abort lmdz_mpi_wrapper_abort proc~mpi_abort->proc~lmdz_mpi_wrapper_abort

Called by

proc~~alpale_th~~CalledByGraph proc~alpale_th alpale_th proc~physiq physiq proc~physiq->proc~alpale_th proc~physiq~2 physiq proc~physiq~2->proc~alpale_th proc~old_lmdz1d old_lmdz1d proc~old_lmdz1d->proc~physiq proc~call_physiq call_physiq proc~call_physiq->proc~physiq proc~call_physiq~2 call_physiq proc~call_physiq~2->proc~physiq proc~scm scm proc~scm->proc~physiq program~lmdz1d lmdz1d program~lmdz1d->proc~old_lmdz1d program~lmdz1d->proc~scm proc~calfis calfis proc~calfis->proc~call_physiq proc~leapfrog leapfrog proc~leapfrog->proc~calfis program~gcm~2 gcm program~gcm~2->proc~leapfrog

Contents