Changeset 6152 for CONFIG


Ignore:
Timestamp:
05/30/22 11:44:29 (2 years ago)
Author:
cetlod
Message:

CM65_work : minor improvments

Location:
CONFIG/UNIFORM/v6/IPSLCM6.5.1/SOURCES/NEMO
Files:
2 added
5 edited

Legend:

Unmodified
Added
Removed
  • CONFIG/UNIFORM/v6/IPSLCM6.5.1/SOURCES/NEMO/context_nemo.xml

    r6119 r6152  
    1111       <variable id="ref_month" type="int"> 01 </variable> 
    1212       <variable id="ref_day"   type="int"> 01 </variable> 
    13        <variable id="rau0"      type="float" > 1026.0 </variable> 
     13       <variable id="rho0"      type="float" > 1026.0 </variable> 
    1414       <variable id="cpocean"   type="float" > 3991.86795711963 </variable> 
    1515       <variable id="convSpsu"  type="float" > 0.99530670233846  </variable> 
  • CONFIG/UNIFORM/v6/IPSLCM6.5.1/SOURCES/NEMO/cpl_oasis3.F90

    r6119 r6152  
    1414   !!            3.6  !  2014-11  (S. Masson) OASIS3-MCT 
    1515   !!---------------------------------------------------------------------- 
    16     
     16 
    1717   !!---------------------------------------------------------------------- 
    1818   !!   'key_oasis3'                    coupled Ocean/Atmosphere via OASIS3-MCT 
     
    6464#endif 
    6565 
    66    INTEGER                    ::   nrcv         ! total number of fields received  
    67    INTEGER                    ::   nsnd         ! total number of fields sent  
     66   INTEGER                    ::   nrcv         ! total number of fields received 
     67   INTEGER                    ::   nsnd         ! total number of fields sent 
    6868   INTEGER                    ::   ncplmodel    ! Maximum number of models to/from which NEMO is potentialy sending/receiving data 
    69    INTEGER, PUBLIC, PARAMETER ::   nmaxfld=60   ! Maximum number of coupling fields 
     69   INTEGER, PUBLIC, PARAMETER ::   nmaxfld=62   ! Maximum number of coupling fields 
    7070   INTEGER, PUBLIC, PARAMETER ::   nmaxcat=5    ! Maximum number of coupling fields 
    7171   INTEGER, PUBLIC, PARAMETER ::   nmaxcpl=5    ! Maximum number of coupling fields 
    72    LOGICAL, PARAMETER         ::   ltmp_wapatch = .TRUE.   ! patch to restore wraparound rows in cpl_send, cpl_rcv, cpl_define   
    73    INTEGER                    ::   nldi_save, nlei_save 
    74    INTEGER                    ::   nldj_save, nlej_save 
    75     
     72 
    7673   TYPE, PUBLIC ::   FLD_CPL               !: Type for coupling field information 
    7774      LOGICAL               ::   laction   ! To be coupled or not 
    78       CHARACTER(len = 8)    ::   clname    ! Name of the coupling field    
    79       CHARACTER(len = 1)    ::   clgrid    ! Grid type   
     75      CHARACTER(len = 8)    ::   clname    ! Name of the coupling field 
     76      CHARACTER(len = 1)    ::   clgrid    ! Grid type 
    8077      REAL(wp)              ::   nsgn      ! Control of the sign change 
    8178      INTEGER, DIMENSION(nmaxcat,nmaxcpl) ::   nid   ! Id of the field (no more than 9 categories and 9 extrena models) 
     
    9087   !!---------------------------------------------------------------------- 
    9188   !! NEMO/OCE 4.0 , NEMO Consortium (2018) 
    92    !! $Id: cpl_oasis3.F90 12132 2019-12-10 10:38:28Z smasson $ 
     89   !! $Id: cpl_oasis3.F90 14434 2021-02-11 08:20:52Z smasson $ 
    9390   !! Software governed by the CeCILL license (see ./LICENSE) 
    9491   !!---------------------------------------------------------------------- 
     
    10299      !!    exchange between AGCM, OGCM and COUPLER. (OASIS3 software) 
    103100      !! 
    104       !! ** Method  :   OASIS3 MPI communication  
     101      !! ** Method  :   OASIS3 MPI communication 
    105102      !!-------------------------------------------------------------------- 
    106103      CHARACTER(len = *), INTENT(in   ) ::   cd_modname   ! model name as set in namcouple file 
     
    115112      !------------------------------------------------------------------ 
    116113      CALL oasis_init_comp ( ncomp_id, TRIM(cd_modname), nerror ) 
    117       IF ( nerror /= OASIS_Ok ) & 
     114      IF( nerror /= OASIS_Ok ) & 
    118115         CALL oasis_abort (ncomp_id, 'cpl_init', 'Failure in oasis_init_comp') 
    119116 
    120117      !------------------------------------------------------------------ 
    121       ! 3rd Get an MPI communicator for OPA local communication 
     118      ! 3rd Get an MPI communicator for OCE local communication 
    122119      !------------------------------------------------------------------ 
    123120 
    124121      CALL oasis_get_localcomm ( kl_comm, nerror ) 
    125       IF ( nerror /= OASIS_Ok ) & 
     122      IF( nerror /= OASIS_Ok ) & 
    126123         CALL oasis_abort (ncomp_id, 'cpl_init','Failure in oasis_get_localcomm' ) 
    127124      ! 
     
    136133      !!    exchange between AGCM, OGCM and COUPLER. (OASIS3 software) 
    137134      !! 
    138       !! ** Method  :   OASIS3 MPI communication  
     135      !! ** Method  :   OASIS3 MPI communication 
    139136      !!-------------------------------------------------------------------- 
    140137      INTEGER, INTENT(in) ::   krcv, ksnd     ! Number of received and sent coupling fields 
     
    149146      !!-------------------------------------------------------------------- 
    150147 
    151       ! patch to restore wraparound rows in cpl_send, cpl_rcv, cpl_define 
    152       IF ( ltmp_wapatch ) THEN 
    153          nldi_save = nldi   ;   nlei_save = nlei 
    154          nldj_save = nldj   ;   nlej_save = nlej 
    155          IF( nimpp           ==      1 ) nldi = 1 
    156          IF( nimpp + jpi - 1 == jpiglo ) nlei = jpi 
    157          IF( njmpp           ==      1 ) nldj = 1 
    158          IF( njmpp + jpj - 1 == jpjglo ) nlej = jpj 
    159       ENDIF  
    160148      IF(lwp) WRITE(numout,*) 
    161149      IF(lwp) WRITE(numout,*) 'cpl_define : initialization in coupled ocean/atmosphere case' 
     
    178166      ENDIF 
    179167      ! 
    180       ! ... Define the shape for the area that excludes the halo 
    181       !     For serial configuration (key_mpp_mpi not being active) 
    182       !     nl* is set to the global values 1 and jp*glo. 
     168      ! ... Define the shape for the area that excludes the halo as we don't want them to be "seen" by oasis 
    183169      ! 
    184170      ishape(1) = 1 
    185       ishape(2) = nlei-nldi+1 
     171      ishape(2) = Ni_0 
    186172      ishape(3) = 1 
    187       ishape(4) = nlej-nldj+1 
     173      ishape(4) = Nj_0 
    188174      ! 
    189175      ! ... Allocate memory for data exchange 
    190176      ! 
    191       ALLOCATE(exfld(nlei-nldi+1, nlej-nldj+1), stat = nerror) 
     177      ALLOCATE(exfld(Ni_0, Nj_0), stat = nerror)        ! allocate only inner domain (without halos) 
    192178      IF( nerror > 0 ) THEN 
    193179         CALL oasis_abort ( ncomp_id, 'cpl_define', 'Failure in allocating exfld')   ;   RETURN 
     
    195181      ! 
    196182      ! ----------------------------------------------------------------- 
    197       ! ... Define the partition  
     183      ! ... Define the partition, excluding halos as we don't want them to be "seen" by oasis 
    198184      ! ----------------------------------------------------------------- 
    199        
    200       paral(1) = 2                                              ! box partitioning 
    201       paral(2) = jpiglo * (nldj-1+njmpp-1) + (nldi-1+nimpp-1)   ! NEMO lower left corner global offset     
    202       paral(3) = nlei-nldi+1                                    ! local extent in i  
    203       paral(4) = nlej-nldj+1                                    ! local extent in j 
    204       paral(5) = jpiglo                                         ! global extent in x 
    205        
    206       IF( ln_ctl ) THEN 
     185 
     186      paral(1) = 2                                      ! box partitioning 
     187      paral(2) = Ni0glo * mjg0(nn_hls) + mig0(nn_hls)   ! NEMO lower left corner global offset, without halos 
     188      paral(3) = Ni_0                                   ! local extent in i, excluding halos 
     189      paral(4) = Nj_0                                   ! local extent in j, excluding halos 
     190      paral(5) = Ni0glo                                 ! global extent in x, excluding halos 
     191 
     192      IF( sn_cfctl%l_oasout ) THEN 
    207193         WRITE(numout,*) ' multiexchg: paral (1:5)', paral 
    208          WRITE(numout,*) ' multiexchg: jpi, jpj =', jpi, jpj 
    209          WRITE(numout,*) ' multiexchg: nldi, nlei, nimpp =', nldi, nlei, nimpp 
    210          WRITE(numout,*) ' multiexchg: nldj, nlej, njmpp =', nldj, nlej, njmpp 
    211       ENDIF 
    212     
    213       CALL oasis_def_partition ( id_part, paral, nerror, jpiglo*jpjglo ) 
    214       ! 
    215       ! ... Announce send variables.  
     194         WRITE(numout,*) ' multiexchg: Ni_0, Nj_0 =', Ni_0, Nj_0 
     195         WRITE(numout,*) ' multiexchg: Nis0, Nie0, nimpp =', Nis0, Nie0, nimpp 
     196         WRITE(numout,*) ' multiexchg: Njs0, Nje0, njmpp =', Njs0, Nje0, njmpp 
     197      ENDIF 
     198 
     199      CALL oasis_def_partition ( id_part, paral, nerror, Ni0glo*Nj0glo )   ! global number of points, excluding halos 
     200      ! 
     201      ! ... Announce send variables. 
    216202      ! 
    217203      ssnd(:)%ncplmodel = kcplmodel 
    218204      ! 
    219205      DO ji = 1, ksnd 
    220          IF ( ssnd(ji)%laction ) THEN 
     206         IF( ssnd(ji)%laction ) THEN 
    221207 
    222208            IF( ssnd(ji)%nct > nmaxcat ) THEN 
     
    225211               RETURN 
    226212            ENDIF 
    227              
     213 
    228214            DO jc = 1, ssnd(ji)%nct 
    229215               DO jm = 1, kcplmodel 
    230216 
    231                   IF ( ssnd(ji)%nct .GT. 1 ) THEN 
     217                  IF( ssnd(ji)%nct .GT. 1 ) THEN 
    232218                     WRITE(cli2,'(i2.2)') jc 
    233219                     zclname = TRIM(ssnd(ji)%clname)//'_cat'//cli2 
     
    235221                     zclname = ssnd(ji)%clname 
    236222                  ENDIF 
    237                   IF ( kcplmodel  > 1 ) THEN 
     223                  IF( kcplmodel  > 1 ) THEN 
    238224                     WRITE(cli2,'(i2.2)') jm 
    239225                     zclname = 'model'//cli2//'_'//TRIM(zclname) 
    240226                  ENDIF 
    241227#if defined key_agrif 
    242                   IF( agrif_fixed() /= 0 ) THEN  
     228                  IF( agrif_fixed() /= 0 ) THEN 
    243229                     zclname=TRIM(Agrif_CFixed())//'_'//TRIM(zclname) 
    244                   END IF 
    245 #endif 
    246                   IF( ln_ctl ) WRITE(numout,*) "Define", ji, jc, jm, " "//TRIM(zclname), " for ", OASIS_Out 
     230                  ENDIF 
     231#endif 
     232                  IF( sn_cfctl%l_oasout ) WRITE(numout,*) "Define", ji, jc, jm, " "//TRIM(zclname), " for ", OASIS_Out 
    247233                  CALL oasis_def_var (ssnd(ji)%nid(jc,jm), zclname, id_part   , (/ 2, 1 /),   & 
    248234                     &                OASIS_Out          , ishape , OASIS_REAL, nerror ) 
    249                   IF ( nerror /= OASIS_Ok ) THEN 
     235                  IF( nerror /= OASIS_Ok ) THEN 
    250236                     WRITE(numout,*) 'Failed to define transient ', ji, jc, jm, " "//TRIM(zclname) 
    251237                     CALL oasis_abort ( ssnd(ji)%nid(jc,jm), 'cpl_define', 'Failure in oasis_def_var' ) 
    252238                  ENDIF 
    253                   IF( ln_ctl .AND. ssnd(ji)%nid(jc,jm) /= -1 ) WRITE(numout,*) "variable defined in the namcouple" 
    254                   IF( ln_ctl .AND. ssnd(ji)%nid(jc,jm) == -1 ) WRITE(numout,*) "variable NOT defined in the namcouple" 
     239                  IF( sn_cfctl%l_oasout .AND. ssnd(ji)%nid(jc,jm) /= -1 ) WRITE(numout,*) "variable defined in the namcouple" 
     240                  IF( sn_cfctl%l_oasout .AND. ssnd(ji)%nid(jc,jm) == -1 ) WRITE(numout,*) "variable NOT defined in the namcouple" 
    255241               END DO 
    256242            END DO 
     
    258244      END DO 
    259245      ! 
    260       ! ... Announce received variables.  
     246      ! ... Announce received variables. 
    261247      ! 
    262248      srcv(:)%ncplmodel = kcplmodel 
    263249      ! 
    264250      DO ji = 1, krcv 
    265          IF ( srcv(ji)%laction ) THEN  
    266              
     251         IF( srcv(ji)%laction ) THEN 
     252 
    267253            IF( srcv(ji)%nct > nmaxcat ) THEN 
    268254               CALL oasis_abort ( ncomp_id, 'cpl_define', 'Number of categories of '//   & 
     
    270256               RETURN 
    271257            ENDIF 
    272              
     258 
    273259            DO jc = 1, srcv(ji)%nct 
    274260               DO jm = 1, kcplmodel 
    275                    
    276                   IF ( srcv(ji)%nct .GT. 1 ) THEN 
     261 
     262                  IF( srcv(ji)%nct .GT. 1 ) THEN 
    277263                     WRITE(cli2,'(i2.2)') jc 
    278264                     zclname = TRIM(srcv(ji)%clname)//'_cat'//cli2 
     
    280266                     zclname = srcv(ji)%clname 
    281267                  ENDIF 
    282                   IF ( kcplmodel  > 1 ) THEN 
     268                  IF( kcplmodel  > 1 ) THEN 
    283269                     WRITE(cli2,'(i2.2)') jm 
    284270                     zclname = 'model'//cli2//'_'//TRIM(zclname) 
    285271                  ENDIF 
    286272#if defined key_agrif 
    287                   IF( agrif_fixed() /= 0 ) THEN  
     273                  IF( agrif_fixed() /= 0 ) THEN 
    288274                     zclname=TRIM(Agrif_CFixed())//'_'//TRIM(zclname) 
    289                   END IF 
    290 #endif 
    291                   IF( ln_ctl ) WRITE(numout,*) "Define", ji, jc, jm, " "//TRIM(zclname), " for ", OASIS_In 
     275                  ENDIF 
     276#endif 
     277                  IF( sn_cfctl%l_oasout ) WRITE(numout,*) "Define", ji, jc, jm, " "//TRIM(zclname), " for ", OASIS_In 
    292278                  CALL oasis_def_var (srcv(ji)%nid(jc,jm), zclname, id_part   , (/ 2, 1 /),   & 
    293279                     &                OASIS_In           , ishape , OASIS_REAL, nerror ) 
    294                   IF ( nerror /= OASIS_Ok ) THEN 
     280                  IF( nerror /= OASIS_Ok ) THEN 
    295281                     WRITE(numout,*) 'Failed to define transient ', ji, jc, jm, " "//TRIM(zclname) 
    296282                     CALL oasis_abort ( srcv(ji)%nid(jc,jm), 'cpl_define', 'Failure in oasis_def_var' ) 
    297283                  ENDIF 
    298                   IF( ln_ctl .AND. srcv(ji)%nid(jc,jm) /= -1 ) WRITE(numout,*) "variable defined in the namcouple" 
    299                   IF( ln_ctl .AND. srcv(ji)%nid(jc,jm) == -1 ) WRITE(numout,*) "variable NOT defined in the namcouple" 
     284                  IF( sn_cfctl%l_oasout .AND. srcv(ji)%nid(jc,jm) /= -1 ) WRITE(numout,*) "variable defined in the namcouple" 
     285                  IF( sn_cfctl%l_oasout .AND. srcv(ji)%nid(jc,jm) == -1 ) WRITE(numout,*) "variable NOT defined in the namcouple" 
    300286 
    301287               END DO 
     
    303289         ENDIF 
    304290      END DO 
    305        
     291 
    306292      !------------------------------------------------------------------ 
    307293      ! End of definition phase 
    308294      !------------------------------------------------------------------ 
    309       !      
     295      ! 
    310296#if defined key_agrif 
    311       IF( agrif_fixed() == Agrif_Nb_Fine_Grids() ) THEN 
     297      ! Warning: Agrif_Nb_Fine_Grids not yet defined at this stage for Agrif_Root -> must use Agrif_Root_Only() 
     298      IF( Agrif_Root_Only() .OR. agrif_fixed() == Agrif_Nb_Fine_Grids() ) THEN 
    312299#endif 
    313300      CALL xios_oasis_enddef() 
     
    318305#endif 
    319306      ! 
    320       IF ( ltmp_wapatch ) THEN 
    321          nldi = nldi_save   ;   nlei = nlei_save 
    322          nldj = nldj_save   ;   nlej = nlej_save 
    323       ENDIF 
    324307   END SUBROUTINE cpl_define 
    325     
    326     
     308 
     309 
    327310   SUBROUTINE cpl_snd( kid, kstep, pdata, kinfo ) 
    328311      !!--------------------------------------------------------------------- 
     
    339322      INTEGER                                   ::   jc,jm     ! local loop index 
    340323      !!-------------------------------------------------------------------- 
    341       ! patch to restore wraparound rows in cpl_send, cpl_rcv, cpl_define 
    342       IF ( ltmp_wapatch ) THEN 
    343          nldi_save = nldi   ;   nlei_save = nlei 
    344          nldj_save = nldj   ;   nlej_save = nlej 
    345          IF( nimpp           ==      1 ) nldi = 1 
    346          IF( nimpp + jpi - 1 == jpiglo ) nlei = jpi 
    347          IF( njmpp           ==      1 ) nldj = 1 
    348          IF( njmpp + jpj - 1 == jpjglo ) nlej = jpj 
    349       ENDIF 
    350324      ! 
    351325      ! snd data to OASIS3 
     
    353327      DO jc = 1, ssnd(kid)%nct 
    354328         DO jm = 1, ssnd(kid)%ncplmodel 
    355          
    356             IF( ssnd(kid)%nid(jc,jm) /= -1 ) THEN 
    357                CALL oasis_put ( ssnd(kid)%nid(jc,jm), kstep, pdata(nldi:nlei, nldj:nlej,jc), kinfo ) 
    358                 
    359                IF ( ln_ctl ) THEN         
     329 
     330            IF( ssnd(kid)%nid(jc,jm) /= -1 ) THEN   ! exclude halos from data sent to oasis 
     331               CALL oasis_put ( ssnd(kid)%nid(jc,jm), kstep, pdata(Nis0:Nie0, Njs0:Nje0,jc), kinfo ) 
     332 
     333               IF ( sn_cfctl%l_oasout ) THEN 
    360334                  IF ( kinfo == OASIS_Sent     .OR. kinfo == OASIS_ToRest .OR.   & 
    361335                     & kinfo == OASIS_SentOut  .OR. kinfo == OASIS_ToRestOut ) THEN 
     
    365339                     WRITE(numout,*) 'oasis_put:  kstep ', kstep 
    366340                     WRITE(numout,*) 'oasis_put:   info ', kinfo 
    367                      WRITE(numout,*) '     - Minimum value is ', MINVAL(pdata(nldi:nlei,nldj:nlej,jc)) 
    368                      WRITE(numout,*) '     - Maximum value is ', MAXVAL(pdata(nldi:nlei,nldj:nlej,jc)) 
    369                      WRITE(numout,*) '     -     Sum value is ', SUM(pdata(nldi:nlei,nldj:nlej,jc)) 
     341                     WRITE(numout,*) '     - Minimum value is ', MINVAL(pdata(Nis0:Nie0,Njs0:Nje0,jc)) 
     342                     WRITE(numout,*) '     - Maximum value is ', MAXVAL(pdata(Nis0:Nie0,Njs0:Nje0,jc)) 
     343                     WRITE(numout,*) '     -     Sum value is ',    SUM(pdata(Nis0:Nie0,Njs0:Nje0,jc)) 
    370344                     WRITE(numout,*) '****************' 
    371345                  ENDIF 
    372346               ENDIF 
    373                 
     347 
    374348            ENDIF 
    375              
     349 
    376350         ENDDO 
    377351      ENDDO 
    378       IF ( ltmp_wapatch ) THEN 
    379          nldi = nldi_save   ;   nlei = nlei_save 
    380          nldj = nldj_save   ;   nlej = nlej_save 
    381       ENDIF 
    382352      ! 
    383353    END SUBROUTINE cpl_snd 
     
    398368      !! 
    399369      INTEGER                                   ::   jc,jm     ! local loop index 
    400       LOGICAL                                   ::   llaction, llfisrt 
     370      LOGICAL                                   ::   llaction, ll_1st 
    401371      !!-------------------------------------------------------------------- 
    402       ! patch to restore wraparound rows in cpl_send, cpl_rcv, cpl_define 
    403       IF ( ltmp_wapatch ) THEN 
    404          nldi_save = nldi   ;   nlei_save = nlei 
    405          nldj_save = nldj   ;   nlej_save = nlej 
    406       ENDIF 
    407372      ! 
    408373      ! receive local data from OASIS3 on every process 
     
    411376      ! 
    412377      DO jc = 1, srcv(kid)%nct 
    413          IF ( ltmp_wapatch ) THEN 
    414             IF( nimpp           ==      1 ) nldi = 1 
    415             IF( nimpp + jpi - 1 == jpiglo ) nlei = jpi 
    416             IF( njmpp           ==      1 ) nldj = 1 
    417             IF( njmpp + jpj - 1 == jpjglo ) nlej = jpj 
    418          ENDIF 
    419          llfisrt = .TRUE. 
     378         ll_1st = .TRUE. 
    420379 
    421380         DO jm = 1, srcv(kid)%ncplmodel 
     
    423382            IF( srcv(kid)%nid(jc,jm) /= -1 ) THEN 
    424383 
    425                CALL oasis_get ( srcv(kid)%nid(jc,jm), kstep, exfld, kinfo )          
    426                 
     384               CALL oasis_get ( srcv(kid)%nid(jc,jm), kstep, exfld, kinfo ) 
     385 
    427386               llaction =  kinfo == OASIS_Recvd   .OR. kinfo == OASIS_FromRest .OR.   & 
    428387                  &        kinfo == OASIS_RecvOut .OR. kinfo == OASIS_FromRestOut 
    429                 
    430                IF ( ln_ctl )   WRITE(numout,*) "llaction, kinfo, kstep, ivarid: " , llaction, kinfo, kstep, srcv(kid)%nid(jc,jm) 
    431                 
    432                IF ( llaction ) THEN 
    433                    
     388 
     389               IF ( sn_cfctl%l_oasout )   & 
     390                  &  WRITE(numout,*) "llaction, kinfo, kstep, ivarid: " , llaction, kinfo, kstep, srcv(kid)%nid(jc,jm) 
     391 
     392               IF( llaction ) THEN   ! data received from oasis do not include halos 
     393 
    434394                  kinfo = OASIS_Rcv 
    435                   IF( llfisrt ) THEN  
    436                      pdata(nldi:nlei,nldj:nlej,jc) =                                 exfld(:,:) * pmask(nldi:nlei,nldj:nlej,jm) 
    437                      llfisrt = .FALSE. 
     395                  IF( ll_1st ) THEN 
     396                     pdata(Nis0:Nie0,Njs0:Nje0,jc) =   exfld(:,:) * pmask(Nis0:Nie0,Njs0:Nje0,jm) 
     397                     ll_1st = .FALSE. 
    438398                  ELSE 
    439                      pdata(nldi:nlei,nldj:nlej,jc) = pdata(nldi:nlei,nldj:nlej,jc) + exfld(:,:) * pmask(nldi:nlei,nldj:nlej,jm) 
    440                   ENDIF 
    441                    
    442                   IF ( ln_ctl ) THEN         
     399                     pdata(Nis0:Nie0,Njs0:Nje0,jc) = pdata(Nis0:Nie0,Njs0:Nje0,jc)   & 
     400                        &                                + exfld(:,:) * pmask(Nis0:Nie0,Njs0:Nje0,jm) 
     401                  ENDIF 
     402 
     403                  IF ( sn_cfctl%l_oasout ) THEN 
    443404                     WRITE(numout,*) '****************' 
    444405                     WRITE(numout,*) 'oasis_get: Incoming ', srcv(kid)%clname 
     
    446407                     WRITE(numout,*) 'oasis_get:   kstep', kstep 
    447408                     WRITE(numout,*) 'oasis_get:   info ', kinfo 
    448                      WRITE(numout,*) '     - Minimum value is ', MINVAL(pdata(nldi:nlei,nldj:nlej,jc)) 
    449                      WRITE(numout,*) '     - Maximum value is ', MAXVAL(pdata(nldi:nlei,nldj:nlej,jc)) 
    450                      WRITE(numout,*) '     -     Sum value is ', SUM(pdata(nldi:nlei,nldj:nlej,jc)) 
     409                     WRITE(numout,*) '     - Minimum value is ', MINVAL(pdata(Nis0:Nie0,Njs0:Nje0,jc)) 
     410                     WRITE(numout,*) '     - Maximum value is ', MAXVAL(pdata(Nis0:Nie0,Njs0:Nje0,jc)) 
     411                     WRITE(numout,*) '     -     Sum value is ',    SUM(pdata(Nis0:Nie0,Njs0:Nje0,jc)) 
    451412                     WRITE(numout,*) '****************' 
    452413                  ENDIF 
    453                    
     414 
    454415               ENDIF 
    455                 
     416 
    456417            ENDIF 
    457              
     418 
    458419         ENDDO 
    459420 
    460          IF ( ltmp_wapatch ) THEN 
    461             nldi = nldi_save   ;   nlei = nlei_save 
    462             nldj = nldj_save   ;   nlej = nlej_save 
     421         !--- we must call lbc_lnk to fill the halos that where not received. 
     422         IF( .NOT. ll_1st ) THEN 
     423            CALL lbc_lnk( 'cpl_oasis3', pdata(:,:,jc), srcv(kid)%clgrid, srcv(kid)%nsgn ) 
    463424         ENDIF 
    464          !--- Fill the overlap areas and extra hallows (mpp) 
    465          !--- check periodicity conditions (all cases) 
    466          IF( .not. llfisrt ) THEN 
    467             CALL lbc_lnk( 'cpl_oasis3', pdata(:,:,jc), srcv(kid)%clgrid, srcv(kid)%nsgn )    
    468          ENDIF 
    469   
     425 
    470426      ENDDO 
    471427      ! 
     
    473429 
    474430 
    475    INTEGER FUNCTION cpl_freq( cdfieldname )   
     431   INTEGER FUNCTION cpl_freq( cdfieldname ) 
    476432      !!--------------------------------------------------------------------- 
    477433      !!              ***  ROUTINE cpl_freq  *** 
     
    491447      ! 
    492448      DO ji = 1, nsnd 
    493          IF (ssnd(ji)%laction ) THEN 
     449         IF(ssnd(ji)%laction ) THEN 
    494450            DO jm = 1, ncplmodel 
    495451               IF( ssnd(ji)%nid(1,jm) /= -1 ) THEN 
     
    503459      ENDDO 
    504460      DO ji = 1, nrcv 
    505          IF (srcv(ji)%laction ) THEN 
     461         IF(srcv(ji)%laction ) THEN 
    506462            DO jm = 1, ncplmodel 
    507463               IF( srcv(ji)%nid(1,jm) /= -1 ) THEN 
     
    516472      ! 
    517473      IF( id /= -1 ) THEN 
    518 #if  defined key_oa3mct_v3 
     474#if  defined key_oa3mct_v1v2 
    519475         CALL oasis_get_freqs(id, mop, 1, itmp, info) 
    520476#else 
     
    537493      ! 
    538494      DEALLOCATE( exfld ) 
    539       IF (nstop == 0) THEN 
    540          CALL oasis_terminate( nerror )          
     495      IF(nstop == 0) THEN 
     496         CALL oasis_terminate( nerror ) 
    541497      ELSE 
    542498         CALL oasis_abort( ncomp_id, "cpl_finalize", "NEMO ABORT STOP" ) 
    543       ENDIF        
     499      ENDIF 
    544500      ! 
    545501   END SUBROUTINE cpl_finalize 
     
    591547      WRITE(numout,*) 'oasis_enddef: Error you sould not be there...' 
    592548   END SUBROUTINE oasis_enddef 
    593    
     549 
    594550   SUBROUTINE oasis_put(k1,k2,p1,k3) 
    595551      REAL(wp), DIMENSION(:,:), INTENT(in   ) ::  p1 
     
    621577      WRITE(numout,*) 'oasis_terminate: Error you sould not be there...' 
    622578   END SUBROUTINE oasis_terminate 
    623     
     579 
    624580#endif 
    625581 
  • CONFIG/UNIFORM/v6/IPSLCM6.5.1/SOURCES/NEMO/file_def_nemo-ice_ORCA1.xml

    r6119 r6152  
    6767         <field field_ref="icestr"           name="sistre"  level="2" /> 
    6868         <field field_ref="normstr"          name="normstr" level="2"/> 
    69          <field field_ref="sheastr"          name="sheastr" level="2" /> 
    70          <field field_ref="isig1"            name="isig1"   level="2" /> 
    71          <field field_ref="isig2"            name="isig2"   level="2" /> 
    72          <field field_ref="isig3"            name="isig3"   level="2" /> 
     69         <field field_ref="sheastr"          name="sheastr" level="2" /> 
     70         <field field_ref="sig1_pnorm"       name="sig1_pnorm"  level="2" /> 
     71         <field field_ref="sig2_pnorm"       name="sig2_pnorm" level="2"/> 
    7372       <!-- heat fluxes --> 
    7473         <field field_ref="qt_oce_ai"        name="qt_oce_ai"   level="2" /> 
     
    8584         <field field_ref="hfxcndbot"        name="hfxcndbot"  level="2" /> 
    8685         <field field_ref="hfxsensib"        name="hfxsensib"  level="2" /> 
    87  
     86         <field field_ref="hfxsub"           name="hfxsub"     level="2" /> 
     87         <field field_ref="hfxspr"           name="hfxspr"     level="2" /> 
     88         <field field_ref="hfxmelt"          name="hfxmelt"    level="2" /> 
     89         <field field_ref="hfxldmelt"        name="hfxldmelt" level="2" /> 
     90         <field field_ref="hfxldgrow"        name="hfxldgrow"  level="2" /> 
    8891       <!-- salt fluxes --> 
    8992         <field field_ref="sfxice"           name="sfxice" level="1" /> 
    9093         <field field_ref="sfxsni"           name="sfxsni" level="1" /> 
    91  
    92        <!-- mass fluxes --> 
     94        <!-- mass fluxes --> 
    9395         <field field_ref="vfxice"           name="vfxice" level="2" /> 
    9496         <field field_ref="vfxsnw"           name="vfxsnw" level="2" /> 
    9597         <field field_ref="vfxsub"           name="vfxsub" level="2" /> 
    9698         <field field_ref="vfxsub_err"       name="vfxsub_err" level="2" /> 
     99         <field field_ref="vfxsnw_pre"       name="vfxsnw_pre" level="2" /> 
     100         <field field_ref="vfxsnw_sub"       name="vfxsnw_sub" level="2" /> 
     101         <field field_ref="vfxpnd"           name="vfxpnd" level="2" /> 
    97102 
    98103     <!-- outputs by category --> 
  • CONFIG/UNIFORM/v6/IPSLCM6.5.1/SOURCES/NEMO/file_def_nemo-oce.xml

    r6119 r6152  
    7171          <field field_ref="ibgheat_tot"      name="ibgheat_tot" level="1"  /> 
    7272          <field field_ref="sbgheat_tot"      name="sbgheat_tot" level="1"  /> 
     73          <field field_ref="ipbgvol_tot"      name="ipbgvol_tot" level="1"  /> 
     74          <field field_ref="ilbgvol_tot"      name="ilbgvol_tot" level="1"  /> 
    7375           
    7476          <!-- global drifts (conservation checks) --> 
     
    124126          <field field_ref="subl_ai_cea"   name="subl_ai_cea"   level="1"    /> 
    125127          <field field_ref="fmmflx"        name="fmmflx"  level="1" /> 
    126           <field field_ref="fwfisf"        name="fwfisf"  level="1" /> 
     128          <field field_ref="fwfisf_par"     name="fwfisf"  level="1" /> 
    127129          <field field_ref="hflx_snow_ai_cea" name="hflx_snow_ai"  level="1"  /> 
    128130          <field field_ref="hflx_snow_ao_cea" name="hflx_snow_ao" level="1"  /> 
    129131          <field field_ref="hflx_ice_cea"     name="hflx_ice"     level="1"  /> 
    130           <field field_ref="hflx_isf_cea"     name="hflx_isf"     level="1"  /> 
     132          <field field_ref="qhcisf_par"     name="hflx_isf"     level="1"  /> 
    131133          <field field_ref="hflx_rnf_cea"     name="hflx_rnf"     level="1"  /> 
    132134          <!-- For salt conservation checking --> 
     
    176178 
    177179        <file id="file8" name_suffix="_trdtra" description="ocean trends variables" > 
    178           <field field_ref="ttrd_zdfp_e3t"   name="ttrdtr_zdfp"  long_name="Tendency_of_heat_content_from_parameterized_dianeutral_mixing"  unit="W m-2"     level="2"  > this * $cpocean * $rau0  </field> 
    179           <field field_ref="ttrd_iso_e3t"    name="ttrdtr_iso"   long_name="Tendency_of_heat_content_from_parameterized_eddy_diffusion"     unit="W m-2"     level="2"   > this * $cpocean * $rau0  </field> 
    180           <field field_ref="ttrd_totad_e3t"  name="ttrdtr_totad" long_name="Tendency_of_heat_content_from_residual_mean_advection"          unit="W m-2"     level="2"   > this * $cpocean * $rau0  </field> 
    181           <field field_ref="ttrd_tot_e3t"    name="ttrdtr_tot"   long_name="Tendency_of_heat_content_from_all_processes"                    unit="W m-2"     level="2"   > this * $cpocean * $rau0  </field> 
    182           <field field_ref="strd_zdfp_e3t"   name="strdtr_zdfp"  long_name="Tendency_of_salt_content_from_parameterized_dianeutral_mixing"  unit="kg m-2 s-1" level="2"  > this * $rau0 </field> 
    183           <field field_ref="strd_iso_e3t"    name="strdtr_iso"   long_name="Tendency_of_salt_content_from_parameterized_eddy_diffusion"     unit="kg m-2 s-1" level="2"  > this * $rau0 </field> 
    184           <field field_ref="strd_totad_e3t"  name="strdtr_totad" long_name="Tendency_of_salt_content_from_residual_mean_advection"          unit="kg m-2 s-1" level="2"  > this * $rau0  </field> 
    185           <field field_ref="strd_tot_e3t"    name="strdtr_tot"   long_name="Tendency_of_salt_content_from_all_processes"                    unit="kg m-2 s-1" level="2"  > this * $rau0  </field> 
     180          <field field_ref="ttrd_zdfp_e3t"   name="ttrdtr_zdfp"  long_name="Tendency_of_heat_content_from_parameterized_dianeutral_mixing"  unit="W m-2"     level="2"  > this * $cpocean * $rho0  </field> 
     181          <field field_ref="ttrd_iso_e3t"    name="ttrdtr_iso"   long_name="Tendency_of_heat_content_from_parameterized_eddy_diffusion"     unit="W m-2"     level="2"   > this * $cpocean * $rho0  </field> 
     182          <field field_ref="ttrd_totad_e3t"  name="ttrdtr_totad" long_name="Tendency_of_heat_content_from_residual_mean_advection"          unit="W m-2"     level="2"   > this * $cpocean * $rho0  </field> 
     183          <field field_ref="ttrd_tot_e3t"    name="ttrdtr_tot"   long_name="Tendency_of_heat_content_from_all_processes"                    unit="W m-2"     level="2"   > this * $cpocean * $rho0  </field> 
     184          <field field_ref="strd_zdfp_e3t"   name="strdtr_zdfp"  long_name="Tendency_of_salt_content_from_parameterized_dianeutral_mixing"  unit="kg m-2 s-1" level="2"  > this * $rho0 </field> 
     185          <field field_ref="strd_iso_e3t"    name="strdtr_iso"   long_name="Tendency_of_salt_content_from_parameterized_eddy_diffusion"     unit="kg m-2 s-1" level="2"  > this * $rho0 </field> 
     186          <field field_ref="strd_totad_e3t"  name="strdtr_totad" long_name="Tendency_of_salt_content_from_residual_mean_advection"          unit="kg m-2 s-1" level="2"  > this * $rho0  </field> 
     187          <field field_ref="strd_tot_e3t"    name="strdtr_tot"   long_name="Tendency_of_salt_content_from_all_processes"                    unit="kg m-2 s-1" level="2"  > this * $rho0  </field> 
    186188        </file> 
    187189 
     
    247249      <!-- <field field_ref="28d"           level="1" /> --> 
    248250      <field field_ref="hc300"         level="1" /> 
    249       <field field_ref="heatc"         level="1" /> 
    250251      <!-- next variables are additional for PISCES offline--> 
    251252          <field field_ref="hdiv"         name="hdivtr"   long_name="horizontal divergence transport"      operation="average" freq_op="1mo" level="2" > @hdiv * @e3t </field> 
     
    259260          <field field_ref="qt_ice"        name="qt_ice"   long_name="downward total flux at ice surface"         level="2"   /> 
    260261          <field field_ref="qemp_ice"      name="qemp_ice" long_name="Downward Heat Flux from E-P over ice"        level="2"    /> 
    261           <field field_ref="hflx_rain_cea" name="hflx_rain_cea"    level="2"   /> 
    262           <field field_ref="hflx_evap_cea" name="hflx_evap_cea"    level="2"   /> 
    263           <field field_ref="hflx_snow_cea" name="hflx_snow_cea"    level="2"   /> 
    264           <field field_ref="hflx_cal_cea"  name="hflx_cal_cea"    level="2"   /> 
    265           <!-- For freshwater conservation checking --> 
    266           <field field_ref="empmr"         name="wfo"      long_name="water_flux_into_sea_water"        level="1"              /> 
    267           <field field_ref="emp_oce"       name="emp_oce"       level="2"                /> 
    268           <field field_ref="emp_ice"       name="emp_ice"       level="2"                /> 
    269           <field field_ref="runoffs"       name="runoffs"        level="2"               /> 
    270       <field field_ref="runoffs"       name="friver"   long_name="water_flux_into_sea_water_from_rivers"     level="1" > runoffs - iceberg_cea </field> 
    271           <field field_ref="calving_cea"   name="calving" level="2" /> 
     262          <field field_ref="hflx_rain_cea" name="hflx_rain_cea"    level="2"   /> 
     263          <field field_ref="hflx_evap_cea" name="hflx_evap_cea"    level="2"   /> 
     264          <field field_ref="hflx_snow_cea" name="hflx_snow_cea"    level="2"   /> 
     265          <field field_ref="hflx_snow_ao_cea" name="hflx_snow_ao_cea"    level="2"   /> 
     266          <field field_ref="hflx_snow_ai_cea" name="hflx_snow_ai_cea"    level="2"   /> 
     267          <field field_ref="hflx_cal_cea"  name="hflx_cal_cea"    level="2"   /> 
     268          <field field_ref="hflx_icb_cea"  name="hflx_icb_cea"    level="2"   /> 
     269          <field field_ref="hflx_rnf_cea"  name="hflx_rnf_cea"    level="2"   /> 
     270          <field field_ref="qhcisf_par"     name="hflx_isf_cea"     level="1"  /> 
     271 
     272          <!-- For freshwater conservation checking --> 
     273          <field field_ref="empmr"         name="wfo"      long_name="water_flux_into_sea_water"        level="1"              /> 
     274          <field field_ref="emp_oce"       name="emp_oce"       level="2"                /> 
     275          <field field_ref="emp_ice"       name="emp_ice"       level="2"                /> 
     276          <field field_ref="runoffs"       name="runoffs"        level="2"               /> 
     277          <field field_ref="runoffs"       name="friver"   long_name="water_flux_into_sea_water_from_rivers"     level="1" > runoffs - iceberg_cea </field> 
     278          <field field_ref="calving_cea"   name="calving" level="2" /> 
    272279          <field field_ref="iceberg_cea"   name="iceberg" level="2" /> 
    273           <field field_ref="iceshelf_cea"  name="iceshelf" level="2" /> 
    274           <field field_ref="vfxice"        name="vfxice" level="2" /> 
    275           <field field_ref="vfxsnw"        name="vfxsnw" level="2" /> 
    276           <field field_ref="vfxsub"        name="vfxsub" level="2" /> 
    277           <field field_ref="rain"          name="rain"   level="2"    /> 
    278           <field field_ref="snow_ao_cea"   name="snow_ao_cea"    level="2"   /> 
    279           <field field_ref="snow_ai_cea"   name="snow_ai_cea"    level="2"   /> 
    280           <field field_ref="evap_ao_cea"   name="evap_ao_cea"    level="2"   /> 
    281           <field field_ref="subl_ai_cea"   name="subl_ai_cea"    level="2"   /> 
    282           <!-- For salt conservation checking --> 
     280          <field field_ref="fwfisf_par"     name="iceshelf" level="2" /> 
     281         <field field_ref="vfxice"           name="vfxice" level="2" /> 
     282         <field field_ref="vfxsnw"           name="vfxsnw" level="2" /> 
     283         <field field_ref="vfxsub"           name="vfxsub" level="2" /> 
     284         <field field_ref="vfxsub_err"       name="vfxsub_err" level="2" /> 
     285         <field field_ref="vfxsnw_pre"       name="vfxsnw_pre" level="2" /> 
     286         <field field_ref="vfxsnw_sub"       name="vfxsnw_sub" level="2" /> 
     287         <field field_ref="vfxpnd"           name="vfxpnd" level="2" /> 
     288          <field field_ref="rain"          name="rain"   level="2"    /> 
     289          <field field_ref="snow_ao_cea"   name="snow_ao_cea"    level="2"   /> 
     290          <field field_ref="snow_ai_cea"   name="snow_ai_cea"    level="2"   /> 
     291          <field field_ref="evap_ao_cea"   name="evap_ao_cea"    level="2"   /> 
     292          <field field_ref="subl_ai_cea"   name="subl_ai_cea"    level="2"   /> 
     293          <field field_ref="precip"       name="precip" level="2" /> 
     294          <field field_ref="snowpre"      name="snowpre" level="2"  /> 
     295          <!-- For salt conservation checking --> 
    283296          <field field_ref="saltflx"      name="sosflxdo" level="2"  /> 
    284297        </file> 
     
    291304          <field field_ref="uocetr_eff"   name="uocetr_eff"  level="2" /> 
    292305          <field field_ref="ahu_bbl"       /> 
    293       <!-- available with key_diaar5 --> 
    294       <field field_ref="u_masstr"     name="vozomatr"  level="2" /> 
    295       <field field_ref="u_heattr"     name="sozohetr"  level="2" /> 
    296       <field field_ref="u_salttr"     name="sozosatr"  level="2" /> 
    297306        </file> 
    298307         
     
    304313          <field field_ref="vocetr_eff"   name="vocetr_eff" level="2"  /> 
    305314          <field field_ref="ahv_bbl"       /> 
    306       <!-- available with key_diaar5 --> 
    307       <field field_ref="v_masstr"     name="vomematr" level="2"  /> 
    308       <field field_ref="v_heattr"     name="somehetr" level="2"  /> 
    309       <field field_ref="v_salttr"     name="somesatr" level="2"  /> 
    310315        </file> 
    311316         
     
    420425 
    421426        <file id="file18" name_suffix="_trdtra" description="ocean trends variables" > 
    422           <field field_ref="ttrd_zdfp_e3t"   name="ttrdtr_zdfp"  long_name="Tendency_of_heat_content_from_parameterized_dianeutral_mixing"  unit="W m-2"      level="2"   > this * $cpocean * $rau0  </field> 
    423           <field field_ref="ttrd_iso_e3t"    name="ttrdtr_iso"   long_name="Tendency_of_heat_content_from_parameterized_eddy_diffusion"     unit="W m-2"      level="2"   > this * $cpocean * $rau0  </field> 
    424           <field field_ref="ttrd_totad_e3t"  name="ttrdtr_totad" long_name="Tendency_of_heat_content_from_residual_mean_advection"          unit="W m-2"      level="2"   > this * $cpocean * $rau0  </field> 
    425           <field field_ref="ttrd_tot_e3t"    name="ttrdtr_tot"   long_name="Tendency_of_heat_content_from_all_processes"                    unit="W m-2"      level="2"   > this * $cpocean * $rau0  </field> 
    426           <field field_ref="strd_zdfp_e3t"   name="strdtr_zdfp"  long_name="Tendency_of_salt_content_from_parameterized_dianeutral_mixing"  unit="kg m-2 s-1" level="2"   > this * $rau0 </field> 
    427           <field field_ref="strd_iso_e3t"    name="strdtr_iso"   long_name="Tendency_of_salt_content_from_parameterized_eddy_diffusion"     unit="kg m-2 s-1" level="2"  > this * $rau0 </field> 
    428           <field field_ref="strd_totad_e3t"  name="strdtr_totad" long_name="Tendency_of_salt_content_from_residual_mean_advection"          unit="kg m-2 s-1" level="2"  > this * $rau0  </field> 
    429           <field field_ref="strd_tot_e3t"    name="strdtr_tot"   long_name="Tendency_of_salt_content_from_all_processes"                    unit="kg m-2 s-1" level="2"  > this * $rau0  </field> 
     427          <field field_ref="ttrd_zdfp_e3t"   name="ttrdtr_zdfp"  long_name="Tendency_of_heat_content_from_parameterized_dianeutral_mixing"  unit="W m-2"      level="2"   > this * $cpocean * $rho0  </field> 
     428          <field field_ref="ttrd_iso_e3t"    name="ttrdtr_iso"   long_name="Tendency_of_heat_content_from_parameterized_eddy_diffusion"     unit="W m-2"      level="2"   > this * $cpocean * $rho0  </field> 
     429          <field field_ref="ttrd_totad_e3t"  name="ttrdtr_totad" long_name="Tendency_of_heat_content_from_residual_mean_advection"          unit="W m-2"      level="2"   > this * $cpocean * $rho0  </field> 
     430          <field field_ref="ttrd_tot_e3t"    name="ttrdtr_tot"   long_name="Tendency_of_heat_content_from_all_processes"                    unit="W m-2"      level="2"   > this * $cpocean * $rho0  </field> 
     431          <field field_ref="strd_zdfp_e3t"   name="strdtr_zdfp"  long_name="Tendency_of_salt_content_from_parameterized_dianeutral_mixing"  unit="kg m-2 s-1" level="2"   > this * $rho0 </field> 
     432          <field field_ref="strd_iso_e3t"    name="strdtr_iso"   long_name="Tendency_of_salt_content_from_parameterized_eddy_diffusion"     unit="kg m-2 s-1" level="2"  > this * $rho0 </field> 
     433          <field field_ref="strd_totad_e3t"  name="strdtr_totad" long_name="Tendency_of_salt_content_from_residual_mean_advection"          unit="kg m-2 s-1" level="2"  > this * $rho0  </field> 
     434          <field field_ref="strd_tot_e3t"    name="strdtr_tot"   long_name="Tendency_of_salt_content_from_all_processes"                    unit="kg m-2 s-1" level="2"  > this * $rho0  </field> 
    430435        </file> 
    431436 
     
    476481          <field field_ref="hflx_snow_cea" name="hflx_snow_cea"    level="2"   /> 
    477482          <field field_ref="hflx_cal_cea"  name="hflx_cal_cea"    level="2"   /> 
     483          <field field_ref="qhcisf_par"     name="hflx_isf"     level="1"  /> 
    478484          <!-- For freshwater conservation checking --> 
    479485          <field field_ref="empmr"         name="wfo"      long_name="water_flux_into_sea_water"             level="2"         /> 
     
    484490          <field field_ref="calving_cea"   name="calving" level="2" /> 
    485491          <field field_ref="iceberg_cea"   name="iceberg" level="2" /> 
    486           <field field_ref="iceshelf_cea"  name="iceshelf" level="2"  /> 
     492          <field field_ref="fwfisf_par"  name="iceshelf" level="2"  /> 
    487493          <field field_ref="vfxice"        name="vfxice" level="2"  /> 
    488494          <field field_ref="vfxsnw"        name="vfxsnw" level="2" /> 
     
    556562 
    557563        <file id="file26" name_suffix="_trdtra" description="ocean trends variables" > 
    558           <field field_ref="ttrd_zdfp_e3t"   name="ttrdtr_zdfp"  long_name="Tendency_of_heat_content_from_parameterized_dianeutral_mixing"  unit="W m-2"      level="2"  > this * $cpocean * $rau0  </field> 
    559           <field field_ref="ttrd_iso_e3t"    name="ttrdtr_iso"   long_name="Tendency_of_heat_content_from_parameterized_eddy_diffusion"     unit="W m-2"      level="2"  > this * $cpocean * $rau0  </field> 
    560           <field field_ref="ttrd_totad_e3t"  name="ttrdtr_totad" long_name="Tendency_of_heat_content_from_residual_mean_advection"          unit="W m-2"      level="2"  > this * $cpocean * $rau0  </field> 
    561           <field field_ref="ttrd_tot_e3t"    name="ttrdtr_tot"   long_name="Tendency_of_heat_content_from_all_processes"                    unit="W m-2"      level="2"  > this * $cpocean * $rau0  </field> 
    562           <field field_ref="strd_zdfp_e3t"   name="strdtr_zdfp"  long_name="Tendency_of_salt_content_from_parameterized_dianeutral_mixing"  unit="kg m-2 s-1" level="2"  > this * $rau0 </field> 
    563           <field field_ref="strd_iso_e3t"    name="strdtr_iso"   long_name="Tendency_of_salt_content_from_parameterized_eddy_diffusion"     unit="kg m-2 s-1" level="2"  > this * $rau0 </field> 
    564           <field field_ref="strd_totad_e3t"  name="strdtr_totad" long_name="Tendency_of_salt_content_from_residual_mean_advection"          unit="kg m-2 s-1" level="2"  > this * $rau0  </field> 
    565           <field field_ref="strd_tot_e3t"    name="strdtr_tot"   long_name="Tendency_of_salt_content_from_all_processes"                    unit="kg m-2 s-1" level="2"  > this * $rau0  </field> 
     564          <field field_ref="ttrd_zdfp_e3t"   name="ttrdtr_zdfp"  long_name="Tendency_of_heat_content_from_parameterized_dianeutral_mixing"  unit="W m-2"      level="2"  > this * $cpocean * $rho0  </field> 
     565          <field field_ref="ttrd_iso_e3t"    name="ttrdtr_iso"   long_name="Tendency_of_heat_content_from_parameterized_eddy_diffusion"     unit="W m-2"      level="2"  > this * $cpocean * $rho0  </field> 
     566          <field field_ref="ttrd_totad_e3t"  name="ttrdtr_totad" long_name="Tendency_of_heat_content_from_residual_mean_advection"          unit="W m-2"      level="2"  > this * $cpocean * $rho0  </field> 
     567          <field field_ref="ttrd_tot_e3t"    name="ttrdtr_tot"   long_name="Tendency_of_heat_content_from_all_processes"                    unit="W m-2"      level="2"  > this * $cpocean * $rho0  </field> 
     568          <field field_ref="strd_zdfp_e3t"   name="strdtr_zdfp"  long_name="Tendency_of_salt_content_from_parameterized_dianeutral_mixing"  unit="kg m-2 s-1" level="2"  > this * $rho0 </field> 
     569          <field field_ref="strd_iso_e3t"    name="strdtr_iso"   long_name="Tendency_of_salt_content_from_parameterized_eddy_diffusion"     unit="kg m-2 s-1" level="2"  > this * $rho0 </field> 
     570          <field field_ref="strd_totad_e3t"  name="strdtr_totad" long_name="Tendency_of_salt_content_from_residual_mean_advection"          unit="kg m-2 s-1" level="2"  > this * $rho0  </field> 
     571          <field field_ref="strd_tot_e3t"    name="strdtr_tot"   long_name="Tendency_of_salt_content_from_all_processes"                    unit="kg m-2 s-1" level="2"  > this * $rho0  </field> 
    566572        </file> 
    567573 
  • CONFIG/UNIFORM/v6/IPSLCM6.5.1/SOURCES/NEMO/file_def_nemo-pisces.xml

    r6119 r6152  
    3333          <field field_ref="tcexp"    name="tcexp"     unit="PgC/yr" operation="instant" level="2" > tcexp * 12. * 86400. * 365. / 1e15 </field> 
    3434          <field field_ref="tintpp"   name="tintpp"    unit="PgC/yr" operation="instant" level="2" > tintpp * 12. * 86400. * 365. / 1e15 </field> 
    35           <field field_ref="pno3tot"  name="pno3tot"   unit="umolN"  operation="instant" level="2" > pno3tot * 16. / 122. * 1e6 </field> 
    36           <field field_ref="ppo4tot"  name="ppo4tot"   unit="umolP"  operation="instant" level="2" > ppo4tot * 1. / 122. * 1e6 </field> 
     35          <field field_ref="pno3tot"  name="pno3tot"   unit="umolN"  operation="instant" level="2" > pno3tot * 16. / 117. * 1e6 </field> 
     36          <field field_ref="ppo4tot"  name="ppo4tot"   unit="umolP"  operation="instant" level="2" > ppo4tot * 1. / 117. * 1e6 </field> 
    3737          <field field_ref="psiltot"  name="psiltot"   unit="umolC"  operation="instant" level="2" > psiltot * 1e6  </field> 
    3838          <field field_ref="palktot"  name="palktot"   unit="umolC"  operation="instant" level="2" > palktot * 1e6  </field> 
     
    5151          <field field_ref="tcexp"    name="tcexp"     unit="PgC/yr" operation="instant" level="2" > tcexp * 12. * 86400. * 365. / 1e15 </field> 
    5252          <field field_ref="tintpp"   name="tintpp"    unit="PgC/yr" operation="instant" level="2" > tintpp * 12. * 86400. * 365. / 1e15 </field> 
    53           <field field_ref="pno3tot"  name="pno3tot"   unit="umolN"  operation="instant" level="2" > pno3tot * 16. / 122. * 1e6 </field> 
    54           <field field_ref="ppo4tot"  name="ppo4tot"   unit="umolP"  operation="instant" level="2" > ppo4tot * 1. / 122. * 1e6 </field> 
     53          <field field_ref="pno3tot"  name="pno3tot"   unit="umolN"  operation="instant" level="2" > pno3tot * 16. / 117. * 1e6 </field> 
     54          <field field_ref="ppo4tot"  name="ppo4tot"   unit="umolP"  operation="instant" level="2" > ppo4tot * 1. / 117. * 1e6 </field> 
    5555          <field field_ref="psiltot"  name="psiltot"   unit="umolC"  operation="instant" level="2" > psiltot * 1e6  </field> 
    5656          <field field_ref="palktot"  name="palktot"   unit="umolC"  operation="instant" level="2" > palktot * 1e6  </field> 
     
    123123        <field field_ref="EPCAL100"   name="EPCAL100" level="2"  /> 
    124124        <field field_ref="xfracal"    name="xfracal"  level="2" /> 
     125        <field field_ref="GRAZ1"      name="GRAZ"     level="2" > this + GRAZ2 </field> 
    125126 
    126127       </file> 
     
    133134          <field field_ref="tcexp"    name="tcexp"     unit="PgC/yr" operation="instant" level="1" > tcexp * 12. * 86400. * 365. / 1e15 </field> 
    134135          <field field_ref="tintpp"   name="tintpp"    unit="PgC/yr" operation="instant" level="1" > tintpp * 12. * 86400. * 365. / 1e15 </field> 
    135           <field field_ref="pno3tot"  name="pno3tot"   unit="umolN"  operation="instant" level="1" > pno3tot * 16. / 122. * 1e6 </field> 
    136           <field field_ref="ppo4tot"  name="ppo4tot"   unit="umolP"  operation="instant" level="1" > ppo4tot * 1. / 122. * 1e6 </field> 
     136          <field field_ref="pno3tot"  name="pno3tot"   unit="umolN"  operation="instant" level="1" > pno3tot * 16. / 117. * 1e6 </field> 
     137          <field field_ref="ppo4tot"  name="ppo4tot"   unit="umolP"  operation="instant" level="1" > ppo4tot * 1. / 117. * 1e6 </field> 
    137138          <field field_ref="psiltot"  name="psiltot"   unit="umolC"  operation="instant" level="1" > psiltot * 1e6  </field> 
    138139          <field field_ref="palktot"  name="palktot"   unit="umolC"  operation="instant" level="1" > palktot * 1e6  </field> 
     
    208209        <field field_ref="EPCAL100"   name="EPCAL100" level="1"  /> 
    209210        <field field_ref="xfracal"    name="xfracal"  level="2" /> 
     211        <field field_ref="GRAZ1"      name="GRAZ"     level="2" > this + GRAZ2 </field> 
    210212 
    211213        </file> 
Note: See TracChangeset for help on using the changeset viewer.