New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 12968 for NEMO/branches/2020 – NEMO

Changeset 12968 for NEMO/branches/2020


Ignore:
Timestamp:
2020-05-26T11:26:27+02:00 (4 years ago)
Author:
acc
Message:

Branch: 2020/dev_r12953_ENHANCE-10_acc_fix_traqsr. Replaced implied do-loops in recent changes with explicit 2D loop macros as agreed after review (#2469)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2020/dev_r12953_ENHANCE-10_acc_fix_traqsr/src/OCE/TRA/traqsr.F90

    r12956 r12968  
    171171            ! most expensive calculations) 
    172172            ! 
    173             ze0(:,:) = LOG ( MIN( 10. , MAX( 0.03, sf_chl(1)%fnow(:,:,1) ) ) )     ! ze0 = log(zchl) 
    174             ze1(:,:) = 0.113328685307 + 0.803 * ze0(:,:)                           ! ze1 : log(zCze)  = log (1.12  * zchl**0.803) 
    175             ze2(:,:) = 3.703768066608 + 0.459 * ze0(:,:)                           ! ze2 : log(zCtot) = log(40.6  * zchl**0.459) 
    176             ze3(:,:) = 6.34247346942  - 0.746 * ze2(:,:)                           ! ze3 : log(zze)   = log(568.2 * zCtot**(-0.746)) 
    177             WHERE( ze3 > 4.62497281328 ) ze3 = 5.298317366548 - 0.293 * ze2        !       IF( log(zze) > log(102.) ) log(zze) =  
    178             !                                                                      !                    log(200.0 * zCtot**(-0.293)) 
    179             ze1(:,:) = EXP(ze1(:,:))                                               ! ze1 = zCze 
    180             ze2(:,:) = 1._wp / ( 0.710 + ze0(:,:) * ( 0.159 + ze0(:,:) * 0.021 ) ) ! ze2 = 1/zdelpsi 
    181             ze3(:,:) = 1._wp / EXP(ze3(:,:))                                       ! ze3 = 1/zze 
    182             ! 
     173            DO_2D_00_00 
     174                       ! zlogc = log(zchl) 
     175               zlogc = LOG ( MIN( 10. , MAX( 0.03, sf_chl(1)%fnow(ji,jj,1) ) ) )      
     176                       ! zc1 : log(zCze)  = log (1.12  * zchl**0.803) 
     177               zc1   = 0.113328685307 + 0.803 * zlogc                          
     178                       ! zc2 : log(zCtot) = log(40.6  * zchl**0.459) 
     179               zc2   = 3.703768066608 + 0.459 * zlogc                            
     180                       ! zc3 : log(zze)   = log(568.2 * zCtot**(-0.746)) 
     181               zc3   = 6.34247346942  - 0.746 * zc2                            
     182                       ! IF( log(zze) > log(102.) ) log(zze) = log(200.0 * zCtot**(-0.293)) 
     183               IF( zc3 > 4.62497281328 ) zc3 = 5.298317366548 - 0.293 * zc2         
     184               !    
     185               ze0(ji,jj) = zlogc                                                 ! ze0 = log(zchl) 
     186               ze1(ji,jj) = EXP( zc1 )                                            ! ze1 = zCze 
     187               ze2(ji,jj) = 1._wp / ( 0.710 + zlogc * ( 0.159 + zlogc * 0.021 ) ) ! ze2 = 1/zdelpsi 
     188               ze3(ji,jj) = EXP( - zc3 )                                          ! ze3 = 1/zze 
     189            END_2D 
     190             
     191! 
    183192            DO_3D_00_00 ( 1, nksr + 1 ) 
    184193               ! zchl    = ALOG( ze0(ji,jj) ) 
Note: See TracChangeset for help on using the changeset viewer.