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 15730 – NEMO

Changeset 15730


Ignore:
Timestamp:
2022-02-28T12:47:48+01:00 (2 years ago)
Author:
jpalmier
Message:

Merge with NEMO404_GO8_package up to r15700

Location:
NEMO/branches/UKMO/NEMO_4.0.4_GO8_paquage_branch
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/UKMO/NEMO_4.0.4_GO8_paquage_branch/cfgs/SHARED/field_def_nemo-ice.xml

    r15658 r15730  
    180180          <!-- TEOS-10 --> 
    181181          <field id="sss_m_abs"    unit="psu"  /> 
     182          <!-- SEOS --> 
     183          <field id="sss_m_seos"    unit="psu"  /> 
    182184 
    183185          <field id="ssu_m"    unit="m/s"  /> 
     
    378380     <!-- TEOS-10 --> 
    379381          <field id="sss_m_abs"    unit="psu"  /> 
     382     <!-- SEOS --> 
     383          <field id="sss_m_seos"    unit="psu"  /> 
    380384      
    381385     <!-- heat --> 
  • NEMO/branches/UKMO/NEMO_4.0.4_GO8_paquage_branch/cfgs/SHARED/field_def_nemo-oce.xml

    r15662 r15730  
    3838        <field id="soce_abs"         long_name="absolute salinity"               standard_name="sea_water_absolute_salinity"       unit="1e-3"     grid_ref="grid_T_3D"/> 
    3939        <field id="soce_abs_e3t"     long_name="absolute salinity    (thickness weighted)"                                         unit="1e-3"     grid_ref="grid_T_3D" > soce_abs * e3t </field > 
     40   <!-- SEOS --> 
     41        <field id="toce_seos"         long_name="temperature"        standard_name="sea_water_temperature"   unit="degC"     grid_ref="grid_T_3D"/> 
     42        <field id="toce_seos_e3t"     long_name="temperature (thickness weighted)"                                        unit="degC"     grid_ref="grid_T_3D" > toce_seos * e3t </field > 
     43        <field id="soce_seos"         long_name="salinity"               standard_name="sea_water_salinity"       unit="1e-3"     grid_ref="grid_T_3D"/> 
     44        <field id="soce_seos_e3t"     long_name="salinity    (thickness weighted)"                                         unit="1e-3"     grid_ref="grid_T_3D" > soce_seos * e3t </field > 
    4045 
    4146        <field id="toce_e3t_300"      field_ref="toce_e3t"          unit="degree_C"     grid_ref="grid_T_zoom_300"      detect_missing_value="true" /> 
     
    95100        <field id="somint_abs"       long_name="vertical integral of absolute salinity times density"        standard_name="integral_wrt_depth_of_product_of_density_and_absolute_salinity"  unit="(kg m2) x (1e-3)" /> 
    96101 
     102        <!-- SEOS --> 
     103        <field id="sst_seos"          long_name="sea surface temperature"                            standard_name="sea_surface_temperature"             unit="degC"     /> 
     104        <field id="sst2_seos"         long_name="square of sea surface temperature"                  standard_name="square_of_sea_surface_temperature"   unit="degC2"     > sst_seos * sst_seos </field > 
     105        <field id="sstmax_seos"       long_name="max of sea surface temperature"   field_ref="sst_seos"   operation="maximum"                                                 /> 
     106        <field id="sstmin_seos"       long_name="min of sea surface temperature"   field_ref="sst_seos"   operation="minimum"                                                 /> 
     107        <field id="sstgrad_seos"      long_name="module of sst gradient"                                                                                 unit="degC/m"   /> 
     108        <field id="sstgrad2_seos"     long_name="square of module of sst gradient"                                                                       unit="degC2/m2" /> 
     109        <field id="sbt_seos"          long_name="sea bottom temperature"                                                                                 unit="degC"     /> 
     110        <field id="tosmint_seos"      long_name="vertical integral of temperature times density"     standard_name="integral_wrt_depth_of_product_of_density_and_temperature"  unit="(kg m2) degree_C" /> 
     111        <field id="sst_wl_seos"       long_name="Delta SST of warm layer"                                                                                unit="degC"     /> 
     112        <field id="sst_cs_seos"       long_name="Delta SST of cool skin"                                                                                 unit="degC"     /> 
     113   <field id="temp_3m_seos"      long_name="temperature at 3m"                                                                                      unit="degC"     /> 
     114 
     115        <field id="sss_seos"          long_name="sea surface salinity"                               standard_name="sea_surface_salinity"                unit="1e-3"     /> 
     116        <field id="sss2_seos"         long_name="square of sea surface salinity"                                                                         unit="1e-6"      > sss_seos * sss_seos </field > 
     117        <field id="sssmax_seos"       long_name="max of sea surface salinity"      field_ref="sss_seos"   operation="maximum"                                                 /> 
     118        <field id="sssmin_seos"       long_name="min of sea surface salinity"      field_ref="sss_seos"   operation="minimum"                                                 /> 
     119        <field id="sbs_seos"          long_name="sea bottom salinity"                                                                                    unit="0.001"    /> 
     120        <field id="somint_seos"       long_name="vertical integral of salinity times density"        standard_name="integral_wrt_depth_of_product_of_density_and_salinity"  unit="(kg m2) x (1e-3)" /> 
     121 
     122 
     123 
     124 
    97125        <field id="taubot"       long_name="bottom stress module"                                                                                   unit="N/m2"     />  
    98126 
     
    129157        <field id="beta"         long_name="haline contraction"                                                        unit="1e3"    grid_ref="grid_T_3D" /> 
    130158        <field id="rhop"         long_name="potential density (sigma0)"        standard_name="sea_water_sigma_theta"   unit="kg/m3"  grid_ref="grid_T_3D" /> 
     159        <field id="rhop_e3t"     long_name="potential density (sigma0) thickness weighted"        standard_name="sea_water_sigma_theta"   unit="kg/m3"  grid_ref="grid_T_3D"> rhop * e3t </field> 
    131160        <field id="N_2d"         long_name="Depth-mean N"                                                              unit="m/s" /> 
    132161        <field id="modslp"       long_name="sqrt( slpi^2 + slpj^2 )"                                                   unit="1"      grid_ref="grid_T_3D" /> 
     
    409438          <!-- TEOS-10 --> 
    410439          <field id="sss_m_abs"    unit="psu"  /> 
     440          <!-- SEOS --> 
     441          <field id="sss_m_seos"    unit="psu"  /> 
     442 
     443 
    411444 
    412445          <field id="ssu_m"    unit="m/s"  /> 
     
    9731006      <field field_ref="toce_con"         name="thetao_con"   long_name="sea_water_conservative_temperature"      /> 
    9741007      <field field_ref="soce_abs"         name="so_con"       long_name="sea_water_absolute_salinity"                   /> 
     1008      <!-- SEOS --> 
     1009      <field field_ref="toce_seos"         name="thetao_seos"   long_name="sea_water_temperature"      /> 
     1010      <field field_ref="soce_seos"         name="so_seos"       long_name="sea_water_salinity"                   /> 
     1011 
    9751012 
    9761013      <field field_ref="uoce"         name="uo"       long_name="sea_water_x_velocity"                 /> 
     
    9891026      <field field_ref="sst2_con"         name="tossq_con"    long_name="square_of_sea_surface_conservative_temperature"             /> 
    9901027      <field field_ref="sstgrad_con"      name="tosgrad_con"  long_name="module_of_sea_surface_conservative_temperature_gradient"    /> 
    991       <field field_ref="sss_abs"          name="sos"      long_name="sea_surface_absolute_salinity"                          /> 
     1028      <field field_ref="sss_abs"          name="sos_abs"      long_name="sea_surface_absolute_salinity"                          /> 
     1029      <!-- SEOS --> 
     1030      <field field_ref="sst_seos"          name="tos_seos"      long_name="sea_surface_temperature"                       /> 
     1031      <field field_ref="sst2_seos"         name="tossq_seos"    long_name="square_of_sea_surface_temperature"             /> 
     1032      <field field_ref="sstgrad_seos"      name="tosgrad_seos"  long_name="module_of_sea_surface_temperature_gradient"    /> 
     1033      <field field_ref="sss_seos"          name="sos_seos"      long_name="sea_surface_salinity"                          /> 
     1034 
     1035 
    9921036 
    9931037      <field field_ref="ssh"          name="zos"      long_name="sea_surface_height_above_geoid"                /> 
     
    10251069      <field field_ref="sst2_con"         name="tossq_con"    long_name="square_of_sea_surface_conservative_temperature"             /> 
    10261070      <field field_ref="sss_abs"          name="sos_abs"      long_name="sea_surface_absolute_salinity"                          /> 
    1027  
     1071      <!-- SEOS --> 
     1072      <field field_ref="toce_seos"         name="thetao_seos"   long_name="sea_water_temperature"               /> 
     1073      <field field_ref="soce_seos"         name="so_seos"       long_name="sea_water_salinity"                            /> 
     1074      <field field_ref="sst_seos"          name="tos_seos"      long_name="sea_surface_temperature"                       /> 
     1075      <field field_ref="sst2_seos"         name="tossq_seos"    long_name="square_of_sea_surface_temperature"             /> 
     1076      <field field_ref="sss_seos"          name="sos_seos"      long_name="sea_surface_salinity"                          /> 
     1077 
     1078      <field field_ref="rhop"         name="sigma0"   long_name="potential density"                             /> 
    10281079      <field field_ref="ssh"          name="zos"      long_name="sea_surface_height_above_geoid"                /> 
    10291080      <field field_ref="empmr"        name="wfo"      long_name="water_flux_into_sea_water"                     /> 
     
    10731124      <field id="mid_sal_abs"            name="vosaline_mid_abs"  unit="psu"   /> 
    10741125      <field id="bot_sal_abs"            name="vosaline_bot_abs"  unit="psu"   /> 
     1126      <!-- SEOS --> 
     1127      <field id="top_temp_seos"           name="votemper_top_seos"  unit="degC"  /> 
     1128      <field id="mid_temp_seos"           name="votemper_mid_seos"  unit="degC"  /> 
     1129      <field id="bot_temp_seos"           name="votemper_bot_seos"  unit="degC"  /> 
     1130      <field id="top_sal_seos"            name="vosaline_top_seos"  unit="psu"   /> 
     1131      <field id="mid_sal_seos"            name="vosaline_mid_seos"  unit="psu"   /> 
     1132      <field id="bot_sal_seos"            name="vosaline_bot_seos"  unit="psu"   /> 
     1133 
    10751134 
    10761135      <field id="sshnmasked"         name="sossheig"      unit="m"     />  
     
    10931152    <!-- 25h diagnostic output --> 
    10941153    <field_group id="25h_grid_T" grid_ref="grid_T_3D" operation="instant"> 
     1154      <field id="tempis25h"         name="insitu temperature 25h mean"    unit="degC" /> 
    10951155      <!-- EOS80 --> 
    10961156      <field id="temper25h_pot"         name="potential temperature 25h mean"    unit="degC" /> 
    1097       <field id="tempis25h"         name="insitu temperature 25h mean"    unit="degC" /> 
    10981157      <field id="salin25h_pra"          name="practical salinity 25h mean"                 unit="psu"  /> 
    10991158      <!-- TEOS10 --> 
    11001159      <field id="temper25h_con"         name="conservative temperature 25h mean"    unit="degC" /> 
    1101       <field id="tempis25h"         name="insitu temperature 25h mean"    unit="degC" /> 
    11021160      <field id="salin25h_abs"          name="absolute salinity 25h mean"                 unit="psu"  /> 
     1161      <!-- SEOS --> 
     1162      <field id="temper25h_seos"         name="temperature 25h mean"    unit="degC" /> 
     1163      <field id="salin25h_seos"          name="salinity 25h mean"                 unit="psu"  /> 
     1164 
    11031165 
    11041166      <field id="ssh25h"            name="sea surface height 25h mean"  grid_ref="grid_T_2D"      unit="m"    /> 
  • NEMO/branches/UKMO/NEMO_4.0.4_GO8_paquage_branch/src/ICE/icedyn_rhg_evp.F90

    r14075 r15730  
    839839               ! Stress invariants (sigma_I, sigma_II, Coon 1974, Feltham 2008) 
    840840               zsig_I (ji,jj)   =   zsig1 * 0.5_wp                                           ! 1st stress invariant, aka average normal stress, aka negative pressure 
    841                zsig_II(ji,jj)   =   SQRT ( MAX( 0._wp, zsig2 * zsig2 * 0.25_wp + zsig12 ) )  ! 2nd  ''       '', aka maximum shear stress 
     841               zsig_II(ji,jj)   =   SQRT( zsig2 * zsig2 * 0.25_wp + zsig12 * zsig12 )        ! 2nd  ''       '', aka maximum shear stress 
    842842                
    843843            END DO 
     
    873873!!$               ! Stress invariants (sigma_I, sigma_II, Coon 1974, Feltham 2008), T-point 
    874874!!$               zsig_I(ji,jj)    =   zsig1 * 0.5_wp                                           ! 1st stress invariant, aka average normal stress, aka negative pressure 
    875 !!$               zsig_II(ji,jj)   =   SQRT ( MAX( 0._wp, zsig2 * zsig2 * 0.25_wp + zsig12 ) )  ! 2nd  ''       '', aka maximum shear stress 
     875!!$               zsig_II(ji,jj)   =   SQRT( zsig2 * zsig2 * 0.25_wp + zsig12 * zsig12 )        ! 2nd  ''       '', aka maximum shear stress 
    876876!!$       
    877877!!$               ! Normalized  principal stresses (used to display the ellipse) 
     
    882882!!$         END DO                
    883883!!$         ! 
    884 !!$         CALL iom_put( 'sig1_pnorm' , zsig1_p )  
    885 !!$         CALL iom_put( 'sig2_pnorm' , zsig2_p )  
     884!!$         IF( iom_use('sig1_pnorm') )  CALL iom_put( 'sig1_pnorm' , zsig1_p(:,:) * zmsk00(:,:) )  
     885!!$         IF( iom_use('sig2_pnorm') )  CALL iom_put( 'sig2_pnorm' , zsig2_p(:,:) * zmsk00(:,:) )  
    886886!!$       
    887887!!$         DEALLOCATE( zsig1_p , zsig2_p , zsig_I, zsig_II ) 
     
    10061006 
    10071007      ! time 
    1008       it = ( kt - 1 ) * kitermax + kiter 
     1008      it = ( kt - nit000 ) * kitermax + kiter 
    10091009       
    10101010      ! convergence 
     
    10261026         istatus = NF90_PUT_VAR( ncvgid, nvarid, (/zresm/), (/it/), (/1/) ) 
    10271027         ! close file 
    1028          IF( kt == nitend - nn_fsbc + 1 )   istatus = NF90_CLOSE(ncvgid) 
     1028         IF( kt == nitend - nn_fsbc + 1 .AND. kiter == kitermax )   istatus = NF90_CLOSE(ncvgid) 
    10291029      ENDIF 
    10301030       
  • NEMO/branches/UKMO/NEMO_4.0.4_GO8_paquage_branch/src/OCE/DIA/diaprod.F90

    r15658 r15730  
    6565      ! 
    6666 
    67       IF( iom_use("urhop") .OR. iom_use("vrhop") .OR. iom_use("wrhop") & 
    68 #if ! defined key_diaar5 
    69      &  .OR. iom_use("rhop") & 
    70 #endif 
    71      & ) THEN 
     67      IF( iom_use("urhop") .OR. iom_use("vrhop") .OR. iom_use("wrhop") ) THEN 
    7268         CALL eos( tsn, z3d, zrhop )                 ! now in situ and potential density 
    7369         zrhop(:,:,:) = zrhop(:,:,:)-1000.e0         ! reference potential density to 1000 to avoid precision issues in rhop2 calculation 
    7470         zrhop(:,:,jpk) = 0._wp 
    75 #if ! defined key_diaar5 
    76          CALL iom_put( 'rhop', zrhop ) 
    77 #else 
    78          ! If key_diaar5 set then there is already an iom_put call to output rhop. 
    79          ! Really should be a standard diagnostics option? 
    80 #endif 
    8171      ENDIF 
    8272 
  • NEMO/branches/UKMO/NEMO_4.0.4_GO8_paquage_branch/src/OCE/ICB/icbini.F90

    r14075 r15730  
    7272      IF( .NOT. ln_icebergs )   RETURN 
    7373 
     74      ALLOCATE( utau_icb(jpi,jpj) , vtau_icb(jpi,jpj) ) 
    7475      !                          ! allocate gridded fields 
    7576      IF( icb_alloc() /= 0 )   CALL ctl_stop( 'STOP', 'icb_alloc : unable to allocate arrays' ) 
  • NEMO/branches/UKMO/NEMO_4.0.4_GO8_paquage_branch/src/OCE/ICB/icbutl.F90

    r15658 r15730  
    7676      ss_e(1:jpi,1:jpj) = sss_m(:,:) 
    7777      fr_e(1:jpi,1:jpj) = fr_i (:,:) 
    78       ua_e(1:jpi,1:jpj) = utau (:,:) * umask(:,:,1) ! maybe mask useless because mask applied in sbcblk 
    79       va_e(1:jpi,1:jpj) = vtau (:,:) * vmask(:,:,1) ! maybe mask useless because mask applied in sbcblk 
     78      ua_e(1:jpi,1:jpj) = utau_icb (:,:) * umask(:,:,1) ! maybe mask useless because mask applied in sbcblk 
     79      va_e(1:jpi,1:jpj) = vtau_icb (:,:) * vmask(:,:,1) ! maybe mask useless because mask applied in sbcblk 
    8080      ! 
    8181      CALL lbc_lnk_icb( 'icbutl', uo_e, 'U', -1._wp, 1, 1 ) 
  • NEMO/branches/UKMO/NEMO_4.0.4_GO8_paquage_branch/src/OCE/SBC/sbc_oce.F90

    r15662 r15730  
    111111   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   utau   , utau_b   !: sea surface i-stress (ocean referential)     [N/m2] 
    112112   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   vtau   , vtau_b   !: sea surface j-stress (ocean referential)     [N/m2] 
     113   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   utau_icb, vtau_icb !: sea surface (i,j)-stress used by icebergs   [N/m2] 
    113114   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   taum              !: module of sea surface stress (at T-point)    [N/m2]  
    114115   !! wndm is used onmpute surface gases exchanges in ice-free ocean or leads 
  • NEMO/branches/UKMO/NEMO_4.0.4_GO8_paquage_branch/src/OCE/SBC/sbcmod.F90

    r14075 r15730  
    448448      IF( ln_mixcpl )          CALL sbc_cpl_rcv   ( kt, nn_fsbc, nn_ice )   ! forced-coupled mixed formulation after forcing 
    449449      ! 
    450       IF ( ln_wave .AND. (ln_tauwoc .OR. ln_tauw) ) CALL sbc_wstress( )      ! Wind stress provided by waves  
     450      IF ( ln_wave .AND. (ln_tauwoc .OR. ln_tauw) ) CALL sbc_wstress( )       ! Wind stress provided by waves  
     451      ! 
     452      IF( ln_icebergs ) THEN  ! save pure stresses (with no ice-ocean stress) for use by icebergs 
     453         utau_icb(:,:) = utau(:,:) ; vtau_icb(:,:) = vtau(:,:)  
     454      ENDIF 
    451455      ! 
    452456      !                                            !==  Misc. Options  ==! 
  • NEMO/branches/UKMO/NEMO_4.0.4_GO8_paquage_branch/src/OCE/SBC/sbcrnf.F90

    r15662 r15730  
    174174            CALL eos_fzp( sss_m(:,:), ztfrz(:,:) ) 
    175175            WHERE( sf_t_rnf(1)%fnow(:,:,1) == -999._wp )             ! if missing data value use SST as runoffs temperature 
    176                rnf_tsc(:,:,jp_tem) = sst_m(:,:) * rnf(:,:) * r1_rau0 
     176               rnf_tsc(:,:,jp_tem) = MAX( sst_m(:,:), 0.0_wp ) * rnf(:,:) * r1_rau0 
    177177            END WHERE 
    178178            WHERE( sf_t_rnf(1)%fnow(:,:,1) == -222._wp ) 
Note: See TracChangeset for help on using the changeset viewer.