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.
2020WP/ENHANCE-10_acc_fix_traqsr (diff) – NEMO

Changes between Version 20 and Version 21 of 2020WP/ENHANCE-10_acc_fix_traqsr


Ignore:
Timestamp:
2020-05-29T19:25:08+02:00 (4 years ago)
Author:
acc
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • 2020WP/ENHANCE-10_acc_fix_traqsr

    v20 v21  
    141141            ! most expensive calculations) 
    142142            ! 
    143             ze0(:,:) = LOG ( MIN( 10. , MAX( 0.03, sf_chl(1)%fnow(:,:,1) ) ) )     ! ze0 = log(zchl) 
    144             ze1(:,:) = 0.113328685307 + 0.803 * ze0(:,:)                           ! ze1 : log(zCze)  = log (1.12  * zchl**0.803) 
    145             ze2(:,:) = 3.703768066608 + 0.459 * ze0(:,:)                           ! ze2 : log(zCtot) = log(40.6  * zchl**0.459) 
    146             ze3(:,:) = 6.34247346942  - 0.746 * ze2(:,:)                           ! ze3 : log(zze)   = log(568.2 * zCtot**(-0.746)) 
    147             WHERE( ze3 > 4.62497281328 ) ze3 = 5.298317366548 - 0.293 * ze2        !       IF( log(zze) > log(102.) ) log(zze) = 
    148             !                                                                      !                    log(200.0 * zCtot**(-0.293)) 
    149             ze1(:,:) = EXP(ze1(:,:))                                               ! ze1 = zCze 
    150             ze2(:,:) = 1._wp / ( 0.710 + ze0(:,:) * ( 0.159 + ze0(:,:) * 0.021 ) ) ! ze2 = 1/zdelpsi 
    151             ze3(:,:) = 1._wp / EXP(ze3(:,:))                                       ! ze3 = 1/zze 
     143            DO_2D_00_00 
     144                       ! zlogc = log(zchl) 
     145               zlogc = LOG ( MIN( 10. , MAX( 0.03, sf_chl(1)%fnow(ji,jj,1) ) ) ) 
     146                       ! zc1 : log(zCze)  = log (1.12  * zchl**0.803) 
     147               zc1   = 0.113328685307 + 0.803 * zlogc 
     148                       ! zc2 : log(zCtot) = log(40.6  * zchl**0.459) 
     149               zc2   = 3.703768066608 + 0.459 * zlogc 
     150                       ! zc3 : log(zze)   = log(568.2 * zCtot**(-0.746)) 
     151               zc3   = 6.34247346942  - 0.746 * zc2 
     152                       ! IF( log(zze) > log(102.) ) log(zze) = log(200.0 * zCtot**(-0.293)) 
     153               IF( zc3 > 4.62497281328 ) zc3 = 5.298317366548 - 0.293 * zc2 
     154               ! 
     155               ze0(ji,jj) = zlogc                                                 ! ze0 = log(zchl) 
     156               ze1(ji,jj) = EXP( zc1 )                                            ! ze1 = zCze 
     157               ze2(ji,jj) = 1._wp / ( 0.710 + zlogc * ( 0.159 + zlogc * 0.021 ) ) ! ze2 = 1/zdelpsi 
     158               ze3(ji,jj) = EXP( - zc3 )                                          ! ze3 = 1/zze 
     159            END_2D 
    152160            ! 
    153161            DO_3D_00_00 ( 1, nksr + 1 ) 
     
    254262+            ! most expensive calculations) 
    255263+            ! 
    256 +            ze0(:,:) = LOG ( MIN( 10. , MAX( 0.03, sf_chl(1)%fnow(:,:,1) ) ) )     ! ze0 = log(zchl) 
    257 +            ze1(:,:) = 0.113328685307 + 0.803 * ze0(:,:)                           ! ze1 : log(zCze)  = log (1.12  * zchl**0.803) 
    258 +            ze2(:,:) = 3.703768066608 + 0.459 * ze0(:,:)                           ! ze2 : log(zCtot) = log(40.6  * zchl**0.459) 
    259 +            ze3(:,:) = 6.34247346942  - 0.746 * ze2(:,:)                           ! ze3 : log(zze)   = log(568.2 * zCtot**(-0.746)) 
    260 +            WHERE( ze3 > 4.62497281328 ) ze3 = 5.298317366548 - 0.293 * ze2        !       IF( log(zze) > log(102.) ) log(zze) = 
    261 +            !                                                                      !                    log(200.0 * zCtot**(-0.293)) 
    262 +            ze1(:,:) = EXP(ze1(:,:))                                               ! ze1 = zCze 
    263 +            ze2(:,:) = 1._wp / ( 0.710 + ze0(:,:) * ( 0.159 + ze0(:,:) * 0.021 ) ) ! ze2 = 1/zdelpsi 
    264 +            ze3(:,:) = 1._wp / EXP(ze3(:,:))                                       ! ze3 = 1/zze 
     264+            DO_2D_00_00 
     265+                       ! zlogc = log(zchl) 
     266+               zlogc = LOG ( MIN( 10. , MAX( 0.03, sf_chl(1)%fnow(ji,jj,1) ) ) ) 
     267+                       ! zc1 : log(zCze)  = log (1.12  * zchl**0.803) 
     268+               zc1   = 0.113328685307 + 0.803 * zlogc 
     269+                       ! zc2 : log(zCtot) = log(40.6  * zchl**0.459) 
     270+               zc2   = 3.703768066608 + 0.459 * zlogc 
     271+                       ! zc3 : log(zze)   = log(568.2 * zCtot**(-0.746)) 
     272+               zc3   = 6.34247346942  - 0.746 * zc2 
     273+                       ! IF( log(zze) > log(102.) ) log(zze) = log(200.0 * zCtot**(-0.293)) 
     274+               IF( zc3 > 4.62497281328 ) zc3 = 5.298317366548 - 0.293 * zc2 
     275+               ! 
     276+               ze0(ji,jj) = zlogc                                                 ! ze0 = log(zchl) 
     277+               ze1(ji,jj) = EXP( zc1 )                                            ! ze1 = zCze 
     278+               ze2(ji,jj) = 1._wp / ( 0.710 + zlogc * ( 0.159 + zlogc * 0.021 ) ) ! ze2 = 1/zdelpsi 
     279+               ze3(ji,jj) = EXP( - zc3 )                                          ! ze3 = 1/zze 
     280+            END_2D 
    265281+            ! 
    266282+            DO_3D_00_00 ( 1, nksr + 1 )