Ignore:
Timestamp:
Jul 1, 2020 4:16:43 PM (3 months ago)
Author:
gronemeier
Message:

renamed Richardson flux number into gradient Richardson number (model_1d_mod.f90, turbulence_closure_mod.f90, header.f90, surface_mod.f90) and zeta (header.f90);
do not add whitespaces at current-revision section (document_changes)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • palm/trunk/SOURCE/turbulence_closure_mod.f90

    r4510 r4586  
    2020! Current revisions:
    2121! -----------------
    22 ! 
    23 ! 
     22!
     23!
    2424! Former revisions:
    2525! -----------------
    2626! $Id$
     27! Renamed rif to richardson_number (Richardson Flux Number to Gradient Richardson Number)
     28!
     29! 4510 2020-04-29 14:19:18Z raasch
    2730! file re-formatted to follow the PALM coding standard
    2831!
     
    40104013
    40114014    REAL(wp), DIMENSION(nzb+1:nzt) ::  ml_stratification  !< mixing length according to stratification
    4012     REAL(wp), DIMENSION(nzb+1:nzt) ::  rif                !< Richardson flux number
     4015    REAL(wp), DIMENSION(nzb+1:nzt) ::  richardson_number  !< gradient Richardson number
    40134016
    40144017    REAL(wp), DIMENSION(nzb:nzt+1,nysg:nyng,nxlg:nxrg), INTENT(IN) ::  var  !< temperature
     
    41114114
    41124115      !$ACC PARALLEL LOOP COLLAPSE(2) PRIVATE(i, j) &
    4113       !$ACC PRIVATE(ml_stratification, duv2_dz2, rif, dvar_dz) &
     4116      !$ACC PRIVATE(ml_stratification, duv2_dz2, richardson_number, dvar_dz) &
    41144117      !$ACC PRESENT(diss, e, u, v, var, wall_flags_total_0) &
    41154118      !$ACC PRESENT(dd2zu, ml_blackadar, delta)
     
    41174120          DO  j = nys, nyn
    41184121!
    4119 !--          Calculate Richardson-flux number
     4122!--          Calculate Richardson number
    41204123             IF ( use_single_reference_value )  THEN
    41214124
     
    41284131                            + ( ( v(k+1,j,i) - v(k-1,j,i) ) * dd2zu(k) )**2 + 1E-30_wp
    41294132
    4130                    rif(k) = MIN( MAX( g / var_reference * dvar_dz / duv2_dz2, -5.0_wp ),  1.0_wp )
     4133                   richardson_number(k) = MIN( MAX( g / var_reference * dvar_dz / duv2_dz2,        &
     4134                                                    -5.0_wp ),                                     &
     4135                                               1.0_wp )
    41314136                ENDDO
    41324137             ELSE
     
    41434148                            + ( ( v(k+1,j,i) - v(k-1,j,i) ) * dd2zu(k) )**2 + 1E-30_wp
    41444149
    4145                    rif(k) = MIN( MAX( g / var(k,j,i) * dvar_dz / duv2_dz2, -5.0_wp ),  1.0_wp )
     4150                   richardson_number(k) = MIN( MAX( g / var(k,j,i) * dvar_dz / duv2_dz2,           &
     4151                                                    -5.0_wp ),                                     &
     4152                                               1.0_wp )
    41464153                ENDDO
    41474154             ENDIF
     
    41504157             !$ACC LOOP PRIVATE(k)
    41514158             DO  k = nzb+1, nzt
    4152                 IF ( rif(k) >= 0.0_wp )  THEN
    4153                    ml_stratification(k) = ml_blackadar(k) / ( 1.0_wp + 5.0_wp * rif(k) )
     4159                IF ( richardson_number(k) >= 0.0_wp )  THEN
     4160                   ml_stratification(k) = ml_blackadar(k)                                          &
     4161                                        / ( 1.0_wp + 5.0_wp * richardson_number(k) )
    41544162                ELSE
    4155                    ml_stratification(k) = ml_blackadar(k) * SQRT( 1.0_wp - 16.0_wp * rif(k) )
     4163                   ml_stratification(k) = ml_blackadar(k)                                          &
     4164                                        * SQRT( 1.0_wp - 16.0_wp * richardson_number(k) )
    41564165                ENDIF
    41574166             ENDDO
     
    42744283
    42754284    REAL(wp), DIMENSION(nzb+1:nzt) ::  ml_stratification  !< mixing length according to stratification
    4276     REAL(wp), DIMENSION(nzb+1:nzt) ::  rif                !< Richardson flux number
     4285    REAL(wp), DIMENSION(nzb+1:nzt) ::  richardson_number  !< gradient Richardson number
    42774286
    42784287    REAL(wp), DIMENSION(nzb:nzt+1,nysg:nyng,nxlg:nxrg), INTENT(IN) ::  var  !< temperature
     
    43484357
    43494358!
    4350 !--    Calculate Richardson-flux number
     4359!--    Calculate Richardson number
    43514360       IF ( use_single_reference_value )  THEN
    43524361          DO  k = nzb+1, nzt
     
    43564365                      + ( ( v(k+1,j,i) - v(k-1,j,i) ) * dd2zu(k) )**2 + 1E-30_wp
    43574366
    4358              rif(k) = MIN( MAX( g / var_reference * dvar_dz / duv2_dz2, -5.0_wp ),  1.0_wp )
     4367             richardson_number(k) = MIN( MAX( g / var_reference * dvar_dz / duv2_dz2, -5.0_wp ),   &
     4368                                         1.0_wp )
    43594369          ENDDO
    43604370       ELSE
     
    43654375                      + ( ( v(k+1,j,i) - v(k-1,j,i) ) * dd2zu(k) )**2 + 1E-30_wp
    43664376
    4367              rif(k) = MIN( MAX( g / var(k,j,i) * dvar_dz / duv2_dz2, -5.0_wp ), 1.0_wp )
     4377             richardson_number(k) = MIN( MAX( g / var(k,j,i) * dvar_dz / duv2_dz2, -5.0_wp ),      &
     4378                                         1.0_wp )
    43684379          ENDDO
    43694380       ENDIF
     
    43714382!--    Calculate diabatic mixing length using Dyer-profile functions
    43724383       DO  k = nzb+1, nzt
    4373           IF ( rif(k) >= 0.0_wp )  THEN
    4374              ml_stratification(k) = ml_blackadar(k) / ( 1.0_wp + 5.0_wp * rif(k) )
     4384          IF ( richardson_number(k) >= 0.0_wp )  THEN
     4385             ml_stratification(k) = ml_blackadar(k) / ( 1.0_wp + 5.0_wp * richardson_number(k) )
    43754386          ELSE
    4376              ml_stratification(k) = ml_blackadar(k) * SQRT( 1.0_wp - 16.0_wp * rif(k) )
     4387             ml_stratification(k) = ml_blackadar(k)                                                &
     4388                                  * SQRT( 1.0_wp - 16.0_wp * richardson_number(k) )
    43774389          ENDIF
    43784390
     
    47724784    REAL(wp)     ::  var_reference       !< reference temperature
    47734785
    4774     !DIR$ ATTRIBUTES ALIGN:64:: ml_local_profile, ml_stratification, rif
     4786    !DIR$ ATTRIBUTES ALIGN:64:: ml_local_profile, ml_stratification, richardson_number
    47754787    REAL(wp), DIMENSION(nzb+1:nzt) ::  ml_local_profile   !< mixing length (all heights)
    47764788    REAL(wp), DIMENSION(nzb+1:nzt) ::  ml_stratification  !< mixing length according to stratification
    4777     REAL(wp), DIMENSION(nzb+1:nzt) ::  rif                !< Richardson flux number
     4789    REAL(wp), DIMENSION(nzb+1:nzt) ::  richardson_number  !< gradient Richardson number
    47784790
    47794791    REAL(wp), DIMENSION(nzb:nzt+1,nysg:nyng,nxlg:nxrg), INTENT(IN) ::  var  !< temperature
     
    49374949       !$OMP DO
    49384950       !$ACC PARALLEL LOOP COLLAPSE(2) PRIVATE(i, j) &
    4939        !$ACC PRIVATE(dvar_dz, duv2_dz2, ml_stratification, ml_local_profile, rif) &
     4951       !$ACC PRIVATE(dvar_dz, duv2_dz2, ml_stratification, ml_local_profile, richardson_number) &
    49404952       !$ACC PRESENT(wall_flags_total_0, var, dd2zu, e, u, v, delta, ml_blackadar) &
    49414953       !$ACC PRESENT(kh, km, sums_l_l, rmask)
     
    49434955          DO  j = nysg, nyng
    49444956!
    4945 !--          Calculate Richardson-flux number
     4957!--          Calculate Richardson number
    49464958             IF ( use_single_reference_value )  THEN
    49474959                !$ACC LOOP PRIVATE(k)
     
    49534965                            + ( ( v(k+1,j,i) - v(k-1,j,i) ) * dd2zu(k) )**2 + 1E-30_wp
    49544966
    4955                    rif(k) = MIN( MAX( g / var_reference * dvar_dz / duv2_dz2, -5.0_wp ),  1.0_wp )
     4967                   richardson_number(k) = MIN( MAX( g / var_reference * dvar_dz / duv2_dz2,        &
     4968                                                    -5.0_wp ),                                     &
     4969                                               1.0_wp )
    49564970                ENDDO
    49574971             ELSE
     
    49644978                            + ( ( v(k+1,j,i) - v(k-1,j,i) ) * dd2zu(k) )**2 + 1E-30_wp
    49654979
    4966                    rif(k) = MIN( MAX( g / var(k,j,i) * dvar_dz / duv2_dz2, -5.0_wp ),  1.0_wp )
     4980                   richardson_number(k) = MIN( MAX( g / var(k,j,i) * dvar_dz / duv2_dz2,           &
     4981                                                    -5.0_wp ),                                     &
     4982                                               1.0_wp )
    49674983                ENDDO
    49684984             ENDIF
     
    49724988             !$ACC LOOP PRIVATE(k)
    49734989             DO  k = nzb+1, nzt
    4974                 IF ( rif(k) >= 0.0_wp )  THEN
    4975                    ml_stratification(k) = ml_blackadar(k) / ( 1.0_wp + 5.0_wp * rif(k) )
     4990                IF ( richardson_number(k) >= 0.0_wp )  THEN
     4991                   ml_stratification(k) = ml_blackadar(k)                                          &
     4992                                        / ( 1.0_wp + 5.0_wp * richardson_number(k) )
    49764993                ELSE
    49774994                   ml_stratification(k) = ml_blackadar(k)
Note: See TracChangeset for help on using the changeset viewer.