43 real(dp), 
intent(in) :: time
 
   45 integer(i4b) :: i, j, kc, kt
 
   46 real(dp) :: age_trans, date_trans1, date_trans2, date_trans3
 
   47 real(dp) :: enh_shear_compr_diff, enh_mult
 
   56 age_trans = age_trans_0*year_sec
 
   62       if (age_t(kt,j,i) < age_trans) 
then 
   63          enh_t(kt,j,i) = enh_intg   
 
   65          enh_t(kt,j,i) = enh_fact   
 
   70       if (age_c(kc,j,i) < age_trans) 
then 
   71          enh_c(kc,j,i) = enh_intg   
 
   73          enh_c(kc,j,i) = enh_fact   
 
   82 date_trans1 = date_trans1_0*year_sec
 
   83 date_trans2 = date_trans2_0*year_sec
 
   84 date_trans3 = date_trans3_0*year_sec
 
   90       if ( (time-age_t(kt,j,i)) < date_trans1 ) 
then 
   91          enh_t(kt,j,i) = enh_fact   
 
   92       else if ( ((time-age_t(kt,j,i)) >= date_trans1).and. &
 
   93                 ((time-age_t(kt,j,i)) <  date_trans2) ) 
then 
   94          enh_t(kt,j,i) = enh_intg   
 
   95       else if ( ((time-age_t(kt,j,i)) >= date_trans2).and. &
 
   96                 ((time-age_t(kt,j,i)) <  date_trans3) ) 
then 
   97          enh_t(kt,j,i) = enh_fact   
 
   99          enh_t(kt,j,i) = enh_intg   
 
  104       if ( (time-age_c(kc,j,i)) < date_trans1 ) 
then 
  105          enh_c(kc,j,i) = enh_fact   
 
  106       else if ( ((time-age_c(kc,j,i)) >= date_trans1).and. &
 
  107                 ((time-age_c(kc,j,i)) <  date_trans2) ) 
then 
  108          enh_c(kc,j,i) = enh_intg   
 
  109       else if ( ((time-age_c(kc,j,i)) >= date_trans2).and. &
 
  110                 ((time-age_c(kc,j,i)) <  date_trans3) ) 
then 
  111          enh_c(kc,j,i) = enh_fact   
 
  113          enh_c(kc,j,i) = enh_intg   
 
  120 #elif (ENHMOD==4 || ENHMOD==5) 
  122 enh_shear_compr_diff = enh_shear-enh_compr
 
  128       enh_t(kt,j,i) = enh_compr &
 
  129                       + enh_shear_compr_diff*lambda_shear_t(kt,j,i)**2
 
  133       enh_c(kc,j,i) = enh_compr &
 
  134                       + enh_shear_compr_diff*lambda_shear_c(kc,j,i)**2
 
  141    stop 
' calc_enhance: Parameter ENHMOD must be either 1, 2, 3, 4 or 5!' 
  148 #if (ENHMOD==1 || ENHMOD==2 || ENHMOD==3 || ENHMOD==4) 
  153    if ( maske(j,i)==3_i2b ) 
then    
  156          enh_t(kt,j,i) = enh_shelf
 
  160          enh_c(kc,j,i) = enh_shelf
 
  173    stop 
' calc_enhance: Parameter ENHMOD must be either 1, 2, 3, 4 or 5!' 
  180 #if ( defined(NMARS) \ 
  181       || defined(smars) )   /* martian ice sheet */
 
  184    enh_mult = exp(-3.0_dp*2.0_dp*frac_dust)
 
  186    enh_mult = exp(-1.8_dp*2.0_dp*frac_dust)
 
  188    enh_mult = exp(-4.0_dp*2.0_dp*frac_dust)
 
  190    stop 
' calc_enhance: FLOW_LAW==4 has not been implemented yet!' 
  193 enh_t = enh_t * enh_mult
 
  194 enh_c = enh_c * enh_mult
 
Declarations of kind types for SICOPOLIS. 
 
Declarations of global variables for SICOPOLIS (for the ANT domain). 
 
subroutine calc_enhance(time)
Computation of the flow enhancement factor. 
 
Declarations of global variables for SICOPOLIS.