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

Changeset 6825


Ignore:
Timestamp:
2016-07-29T09:44:31+02:00 (8 years ago)
Author:
timgraham
Message:

As used for GO6 from trunk test

Location:
branches/UKMO/dev_r6501_GO6_package_trunk/NEMOGCM
Files:
1 added
12 edited

Legend:

Unmodified
Added
Removed
  • branches/UKMO/dev_r6501_GO6_package_trunk/NEMOGCM/CONFIG/ORCA2_LIM3/EXP00/iodef.xml

    r5517 r6825  
    6161   <file id="file2" name_suffix="_SBC" description="surface fluxes variables" > <!-- time step automaticaly defined based on nn_fsbc --> 
    6262     <field field_ref="empmr"        name="wfo"      /> 
     63          <field field_ref="emp_oce"      name="emp_oce"  long_name="Evap minus Precip over ocean"              /> 
     64          <field field_ref="emp_ice"      name="emp_ice"  long_name="Evap minus Precip over ice"                /> 
    6365     <field field_ref="qsr_oce"      name="qsr_oce"  /> 
    6466     <field field_ref="qns_oce"      name="qns_oce"  /> 
  • branches/UKMO/dev_r6501_GO6_package_trunk/NEMOGCM/CONFIG/SHARED/field_def.xml

    r6472 r6825  
    6161         <field id="mldr10_1max"  long_name="Max of Mixed Layer Depth (dsigma = 0.01 wrt 10m)"   field_ref="mldr10_1"   operation="maximum"                                                                          /> 
    6262         <field id="mldr10_1min"  long_name="Min of Mixed Layer Depth (dsigma = 0.01 wrt 10m)"   field_ref="mldr10_1"   operation="minimum"                                                                          /> 
     63         <field id="mldzint"      long_name="Mixed Layer Depth interpolated"                     standard_name="ocean_mixed_layer_thickness_defined_by_sigma_theta"                                unit="m"          /> 
    6364         <field id="heatc"        long_name="Heat content vertically integrated"                 standard_name="integral_of_sea_water_potential_temperature_wrt_depth_expressed_as_heat_content"   unit="J/m2"       /> 
    6465         <field id="saltc"        long_name="Salt content vertically integrated"                                                                                                                   unit="1e-3*kg/m2" /> 
     
    204205 
    205206         <!-- * variable related to ice shelf forcing * --> 
     207         <field id="berg_calve"   long_name="Iceberg calving"                               unit="kg/m2/s"  /> 
    206208         <field id="fwfisf"       long_name="Ice shelf melting"                                            unit="Kg/m2/s"  /> 
    207209         <field id="qisf"         long_name="Ice Shelf Heat Flux"                                          unit="W/m2"     /> 
     
    501503        <field id="aht2d"        long_name="lateral eddy diffusivity"       standard_name="ocean_tracer_xy_laplacian_diffusivity"      unit="m2/s"   grid_ref="grid_W_2D" /> 
    502504        <field id="aht2d_eiv"    long_name="EIV lateral eddy diffusivity"   standard_name="ocean_tracer_bolus_laplacian_diffusivity"   unit="m2/s"   grid_ref="grid_W_2D" /> 
     505        <!-- variables added for nn_etau revision testing --> 
     506        <field id="htau"         long_name="e-decay length scale of nn_etau TKE"       unit="m"        grid_ref="grid_W_2D" /> 
     507        <field id="tke"          long_name="Turbulent Kinetic Energy"                  unit="m2/s2"    /> 
     508        <field id="tke_niw"      long_name="Turbulent Kinetic Energy due to near-inertial wave breaking"  unit="m2/s2" /> 
    503509      </field_group> 
    504510         
     
    507513         <field id="ahmf_2d"      long_name=" surface f-eddy viscosity coefficient"   unit="m2/s or m4/s" /> 
    508514         <field id="ahmf_3d"      long_name=" 3D      f-eddy viscosity coefficient"   unit="m2/s or m4/s"                           grid_ref="grid_T_3D"/> 
     515 
     516      <!-- product fields --> 
     517      <field_group id="diaprod"> 
     518   <field id="ut"           long_name="product_of_sea_water_x_velocity_and_potential_temperature"      unit="degC m/s"      grid_ref="grid_U_3D"   /> 
     519        <field id="ut_e3u"       long_name="product_of_sea_water_x_velocity_and_potential_temperature * e3u"  unit="degC m2/s"   grid_ref="grid_U_3D" > ut * e3u </field > 
     520   <field id="us"           long_name="product_of_sea_water_x_velocity_and_salinity"                   unit="PSU m/s"       grid_ref="grid_U_3D"   /> 
     521        <field id="us_e3u"       long_name="product_of_sea_water_x_velocity_and_salinity * e3u"             unit="PSU m2/s"      grid_ref="grid_U_3D" > us * e3u </field > 
     522   <field id="urhop"        long_name="product_of_sea_water_x_velocity_and_potential_density"          unit="(kg/m3).(m/s)" grid_ref="grid_U_3D"   /> 
     523        <field id="urhop_e3u"    long_name="product_of_sea_water_x_velocity_and_potential_density * e3u"    unit="(kg/m3).(m2/s)"   grid_ref="grid_U_3D" > urhop * e3u </field > 
     524   <field id="vt"           long_name="product_of_sea_water_y_velocity_and_potential_temperature"      unit="degC m/s"      grid_ref="grid_V_3D"   /> 
     525        <field id="vt_e3v"       long_name="product_of_sea_water_y_velocity_and_potential_temperature * e3v"  unit="degC m2/s"   grid_ref="grid_V_3D" > vt * e3v </field > 
     526   <field id="vs"           long_name="product_of_sea_water_y_velocity_and_salinity"                   unit="PSU m/s"       grid_ref="grid_V_3D"   /> 
     527        <field id="vs_e3v"       long_name="product_of_sea_water_y_velocity_and_salinity * e3t"             unit="PSU m2/s"      grid_ref="grid_V_3D" > vs * e3v </field > 
     528   <field id="vrhop"        long_name="product_of_sea_water_y_velocity_and_potential_density"          unit="(kg/m3).(m/s)" grid_ref="grid_V_3D"   /> 
     529        <field id="vrhop_e3v"    long_name="product_of_sea_water_y_velocity_and_potential_density * e3t"    unit="(kg/m3).(m2/s)"  grid_ref="grid_V_3D" > vrhop * e3v </field > 
     530   <field id="wt"           long_name="product_of_upward_sea_water_velocity_and_potential_temperature" unit="degC m/s"      grid_ref="grid_W_3D"   /> 
     531   <field id="ws"           long_name="product_of_upward_sea_water_velocity_and_salinity"              unit="PSU m/s"       grid_ref="grid_W_3D"   /> 
     532   <field id="wrhop"        long_name="product_of_upward_sea_water_velocity_and_potential_density"     unit="(kg/m3).(m/s)" grid_ref="grid_W_3D"   /> 
     533      </field_group> 
    509534 
    510535      <!-- scalar variables available with key_diaar5 --> 
     
    608633      <!-- variables available with iceberg trajectories --> 
    609634 
    610       <field_group id="icbvar" domain_ref="grid_T"  >  
     635      <field_group id="icbvar" grid_ref="grid_T_2D"  >  
     636        <field id="berg_total_melt"    long_name="icb melt rate 2 of icebergs"                     unit="kg/m2/s"                    /> 
     637        <field id="berg_total_heat_flux"  long_name="icb latent heat of melting of icebergs"          unit="kg/m2/s"                    /> 
    611638        <field id="berg_melt"          long_name="icb melt rate of icebergs"                       unit="kg/m2/s"                    /> 
    612639        <field id="berg_buoy_melt"     long_name="icb buoyancy component of iceberg melt rate"     unit="kg/m2/s"                    /> 
  • branches/UKMO/dev_r6501_GO6_package_trunk/NEMOGCM/CONFIG/SHARED/namelist_ref

    r6503 r6825  
    395395   ln_usecplmask = .false. !  use a coupling mask file to merge data received from several models 
    396396   !                       !   -> file cplmask.nc with the float variable called cplmask (jpi,jpj,nn_cplmodel) 
     397   ln_coupled_iceshelf_fluxes = .false. ! If true use rate of change of mass of Greenland and Antarctic icesheets to set the  
     398                                        ! combined magnitude of the iceberg calving and iceshelf melting freshwater fluxes. 
     399   rn_greenland_calving_fraction = 0.5  ! Set fraction of total freshwater flux for iceberg calving - remainder goes to iceshelf melting. 
     400   rn_antarctica_calving_fraction = 0.5 ! Set fraction of total freshwater flux for iceberg calving - remainder goes to iceshelf melting. 
     401   rn_iceshelf_fluxes_tolerance = 1e-6  ! Fractional threshold for detecting differences in icesheet masses (must be positive definite). 
    397402/ 
    398403!----------------------------------------------------------------------- 
  • branches/UKMO/dev_r6501_GO6_package_trunk/NEMOGCM/NEMO/OPA_SRC/DIA/diawri.F90

    r6507 r6825  
    234234      IF( lk_zdftke ) THEN    
    235235         CALL iom_put( "tke"      , en                               )    ! TKE budget: Turbulent Kinetic Energy    
    236          CALL iom_put( "tke_niw"  , e_niw                            )    ! TKE budget: Near-inertial waves    
    237236      ENDIF  
    238237      CALL iom_put( "avs" , fsavs(:,:,:)               )    ! S vert. eddy diff. coef. (useful only with key_zdfddm) 
     
    982981      CALL histwrite( id_i, "sozotaux", kt, utau             , jpi*jpj    , idex )    ! i-wind stress 
    983982      CALL histwrite( id_i, "sometauy", kt, vtau             , jpi*jpj    , idex )    ! j-wind stress 
    984       IF( lk_vvl ) THEN 
    985          CALL histwrite( id_i, "vovvldep", kt, gdept_n(:,:,:), jpi*jpj*jpk, idex )!  T-cell depth        
    986          CALL histwrite( id_i, "vovvle3t", kt, e3t_n (:,:,:), jpi*jpj*jpk, idex )!  T-cell thickness   
    987       END IF 
    988983 
    989984      IF(  .NOT.ln_linssh  ) THEN              
  • branches/UKMO/dev_r6501_GO6_package_trunk/NEMOGCM/NEMO/OPA_SRC/ICB/icbrst.F90

    r6507 r6825  
    170170      cl_path = TRIM(cn_ocerst_outdir) 
    171171      IF( cl_path(LEN_TRIM(cl_path):) /= '/' ) cl_path = TRIM(cl_path) // '/' 
     172      IF ( ln_rstdate ) THEN 
     173         CALL ju2ymds( fjulday + rdt / rday, iyear, imonth, iday, zsec )            
     174         WRITE(clkt, '(i4.4,2i2.2)') iyear, imonth, iday 
     175      ELSE 
     176         IF( kt > 999999999 ) THEN   ;   WRITE(clkt, *       ) kt 
     177         ELSE                        ;   WRITE(clkt, '(i8.8)') kt 
     178         ENDIF 
     179      ENDIF 
    172180      IF( lk_mpp ) THEN 
    173181         WRITE(cl_filename,'(A,"_icebergs_",A,"_restart_",I4.4,".nc")') TRIM(cexper), TRIM(ADJUSTL(clkt)), narea-1 
  • branches/UKMO/dev_r6501_GO6_package_trunk/NEMOGCM/NEMO/OPA_SRC/IOM/restart.F90

    r6507 r6825  
    2727   USE in_out_manager  ! I/O manager 
    2828   USE iom             ! I/O module 
     29   USE ioipsl, ONLY : ju2ymds    ! for calendar 
     30   USE sbc_oce         ! for icesheet freshwater input variables 
    2931   USE diurnal_bulk 
    3032    
     
    8789         IF( nitrst <= nitend .AND. nitrst > 0 ) THEN  
    8890            IF ( ln_rstdate ) THEN 
    89                CALL ju2ymds( fjulday + rdttra(1) / rday, iyear, imonth, iday, zsec )            
     91               CALL ju2ymds( fjulday + rdt / rday, iyear, imonth, iday, zsec )            
    9092               WRITE(clkt, '(i4.4,2i2.2)') iyear, imonth, iday 
    9193            ELSE 
  • branches/UKMO/dev_r6501_GO6_package_trunk/NEMOGCM/NEMO/OPA_SRC/SBC/sbc_ice.F90

    r6507 r6825  
    108108   ! variables used in the coupled interface 
    109109   INTEGER , PUBLIC, PARAMETER ::   jpl = ncat 
    110    REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:)   ::   u_ice, v_ice          ! jpi, jpj 
     110   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:)   ::   u_ice, v_ice       ! jpi, jpj 
     111   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   a_p, ht_p          ! Meltpond fraction and depth 
    111112#endif 
    112113    
  • branches/UKMO/dev_r6501_GO6_package_trunk/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_cice.F90

    r6507 r6825  
    208208         CALL wrk_alloc( jpi,jpj,jpk, ztfrz3d )  
    209209         DO jk=1,jpk 
    210              CALL eos_fzp( tsn(:,:,jk,jp_sal), ztfrz3d(:,:,jk), fsdept_n(:,:,jk) ) 
     210             CALL eos_fzp( tsn(:,:,jk,jp_sal), ztfrz3d(:,:,jk), gdept_n(:,:,jk) ) 
    211211         ENDDO 
    212212         tsn(:,:,:,jp_tem) = MAX( tsn(:,:,:,jp_tem), ztfrz3d ) 
     
    224224 
    225225      ! calculate surface freezing temperature and send to CICE 
    226       CALL  eos_fzp(sss_m(:,:), sstfrz(:,:), fsdept_n(:,:,1))  
     226      CALL  eos_fzp(sss_m(:,:), sstfrz(:,:), gdept_n(:,:,1))  
    227227      CALL nemo2cice(sstfrz,Tf, 'T', 1. ) 
    228228 
  • branches/UKMO/dev_r6501_GO6_package_trunk/NEMOGCM/NEMO/OPA_SRC/SBC/sbcisf.F90

    r6507 r6825  
    3838   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:)   ::   qisf                  !: net heat flux from ice shelf      [W/m2] 
    3939   REAL(wp), PUBLIC ::   rn_hisf_tbl                 !: thickness of top boundary layer [m] 
     40   LOGICAL , PUBLIC ::   ln_divisf                   !: flag to correct divergence  
    4041   INTEGER , PUBLIC ::   nn_isf                      !: flag to choose between explicit/param/specified   
    4142   INTEGER , PUBLIC ::   nn_isfblk                   !: flag to choose the bulk formulation to compute the ice shelf melting 
     
    9293      INTEGER               :: ji, jj               ! loop index 
    9394      REAL(wp), DIMENSION (:,:), POINTER :: zt_frz, zdep ! freezing temperature (zt_frz) at depth (zdep)  
     95      REAL(wp)                     ::   zgreenland_fwfisf_sum, zantarctica_fwfisf_sum 
     96      INTEGER                      ::   ji, jj, jk, ijkmin, inum, ierror 
     97      REAL(wp)                     ::   zt_frz, zpress 
    9498      !!--------------------------------------------------------------------- 
    9599      ! 
     
    231235         CALL eos_fzp( stbl(:,:), zt_frz(:,:), zdep(:,:) ) 
    232236          
    233          ! if apply only on the trend and not as a volume flux (rdivisf = 0), fwfisf have to be set to 0 now 
    234          fwfisf(:,:) = rdivisf * fwfisf(:,:)          
    235   
    236237         risf_tsc(:,:,jp_tem) = qisf(:,:) * r1_rau0_rcp - fwfisf(:,:) * zt_frz(:,:) * r1_rau0 ! 
    237238         risf_tsc(:,:,jp_sal) = 0.0_wp 
  • branches/UKMO/dev_r6501_GO6_package_trunk/NEMOGCM/NEMO/OPA_SRC/SBC/sbcmod.F90

    r6507 r6825  
    189189         fwfisf  (:,:)   = 0.0_wp ; fwfisf_b  (:,:)   = 0.0_wp 
    190190         risf_tsc(:,:,:) = 0.0_wp ; risf_tsc_b(:,:,:) = 0.0_wp 
    191          rdivisf       = 0.0_wp 
    192191      END IF 
    193192      IF( nn_ice == 0 .AND. nn_components /= jp_iam_opa )   fr_i(:,:) = 0._wp    ! no ice in the domain, ice fraction is always zero 
  • branches/UKMO/dev_r6501_GO6_package_trunk/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfmxl.F90

    r6507 r6825  
    2828 
    2929   PUBLIC   zdf_mxl       ! called by step.F90 
     30   PUBLIC   zdf_mxl_alloc ! Used in zdf_tke_init 
    3031 
    3132   INTEGER , PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   nmln    !: number of level in the mixed layer (used by TOP) 
     
    3940   REAL(wp), PUBLIC ::   rho_c = 0.01_wp    !: density criterion for mixed layer depth 
    4041   REAL(wp)         ::   avt_c = 5.e-4_wp   ! Kz criterion for the turbocline depth 
     42 
     43   ! Namelist variables for  namzdf_mldzint 
     44   INTEGER          :: nn_mld_type         ! mixed layer type             
     45   REAL(wp)         :: rn_zref            ! depth of initial T_ref 
     46   REAL(wp)         :: rn_dT_crit          ! Critical temp diff  
     47   REAL(wp)         :: rn_iso_frac         ! Fraction of rn_dT_crit used  
    4148 
    4249   !!---------------------------------------------------------------------- 
  • branches/UKMO/dev_r6501_GO6_package_trunk/NEMOGCM/NEMO/OPA_SRC/step.F90

    r6503 r6825  
    236236      IF( lk_diaar5  )   CALL dia_ar5( kstp )         ! ar5 diag 
    237237      IF( lk_diaharm )   CALL dia_harm( kstp )        ! Tidal harmonic analysis 
     238                         CALL dia_prod( kstp ) 
    238239                         CALL dia_wri( kstp )         ! ocean model: outputs 
    239240      ! 
Note: See TracChangeset for help on using the changeset viewer.