Changeset 6315 for branches/2015/nemo_v3_6_STABLE
- Timestamp:
- 2016-02-15T13:24:20+01:00 (8 years ago)
- Location:
- branches/2015/nemo_v3_6_STABLE/NEMOGCM
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2015/nemo_v3_6_STABLE/NEMOGCM/CONFIG/SHARED/field_def.xml
r5517 r6315 23 23 <field_group id="grid_T" grid_ref="grid_T_2D" > 24 24 <field id="e3t" long_name="T-cell thickness" standard_name="cell_thickness" unit="m" grid_ref="grid_T_3D"/> 25 <field id="e3t_0" long_name="Initial T-cell thickness" standard_name="ref_cell_thickness" unit="m" grid_ref="grid_T_3D"/> 25 26 26 27 <field id="toce" long_name="temperature" standard_name="sea_water_potential_temperature" unit="degC" grid_ref="grid_T_3D"/> … … 59 60 <field id="alpha" long_name="thermal expansion" unit="degC-1" grid_ref="grid_T_3D" /> 60 61 <field id="beta" long_name="haline contraction" unit="1e3" grid_ref="grid_T_3D" /> 61 <field id="bn2" long_name="squared Brunt-Vaisala frequency" unit="s-1" grid_ref="grid_T_3D" />62 62 <field id="rhop" long_name="potential density (sigma0)" standard_name="sea_water_sigma_theta" unit="kg/m3" grid_ref="grid_T_3D" /> 63 63 … … 365 365 <field_group id="grid_U" grid_ref="grid_U_2D"> 366 366 <field id="e3u" long_name="U-cell thickness" standard_name="cell_thickness" unit="m" grid_ref="grid_U_3D" /> 367 <field id="e3u_0" long_name="Initial U-cell thickness" standard_name="ref_cell_thickness" unit="m" grid_ref="grid_U_3D"/> 367 368 <field id="utau" long_name="Wind Stress along i-axis" standard_name="surface_downward_x_stress" unit="N/m2" /> 368 369 <field id="uoce" long_name="ocean current along i-axis" standard_name="sea_water_x_velocity" unit="m/s" grid_ref="grid_U_3D" /> … … 400 401 <field_group id="grid_V" grid_ref="grid_V_2D"> 401 402 <field id="e3v" long_name="V-cell thickness" standard_name="cell_thickness" unit="m" grid_ref="grid_V_3D" /> 403 <field id="e3v_0" long_name="Initial V-cell thickness" standard_name="ref_cell_thickness" unit="m" grid_ref="grid_V_3D"/> 402 404 <field id="vtau" long_name="Wind Stress along j-axis" standard_name="surface_downward_y_stress" unit="N/m2" /> 403 405 <field id="voce" long_name="ocean current along j-axis" standard_name="sea_water_y_velocity" unit="m/s" grid_ref="grid_V_3D" /> … … 454 456 <!-- avt_tide: available with key_zdftmx --> 455 457 <field id="av_tide" long_name="tidal vertical diffusivity" standard_name="ocean_vertical_tracer_diffusivity_due_to_tides" unit="m2/s" /> 458 459 <!-- variables available with key_zdftmx_new --> 460 <field id="av_ratio" long_name="S over T diffusivity ratio" standard_name="salinity_over_temperature_diffusivity_ratio" unit="1" /> 461 <field id="av_wave" long_name="wave-induced vertical diffusivity" standard_name="ocean_vertical_tracer_diffusivity_due_to_internal_waves" unit="m2/s" /> 462 <field id="bn2" long_name="squared Brunt-Vaisala frequency" standard_name="squared_brunt_vaisala_frequency" unit="s-1" /> 463 <field id="bflx_tmx" long_name="wave-induced buoyancy flux" standard_name="buoyancy_flux_due_to_internal_waves" unit="W/kg" /> 464 <field id="pcmap_tmx" long_name="power consumed by wave-driven mixing" standard_name="vertically_integrated_power_consumption_by_wave_driven_mixing" unit="W/m2" grid_ref="grid_W_2D" /> 465 <field id="emix_tmx" long_name="power density available for mixing" standard_name="power_available_for_mixing_from_breaking_internal_waves" unit="W/kg" /> 456 466 457 467 <!-- variables available with key_diaar5 --> … … 849 859 <field id="Totlig" long_name="Total ligand concentation" unit="nmol/m3" grid_ref="grid_T_3D" /> 850 860 <field id="Biron" long_name="Bioavailable iron" unit="nmol/m3" grid_ref="grid_T_3D" /> 851 <field id="Sdenit" long_name="Nitrate reduction in the sediments" unit="mol/m2/s" /> 861 <field id="Sdenit" long_name="Nitrate reduction in the sediments" unit="molN/m2/s" /> 862 <field id="SedCal" long_name="Calcite burial in the sediments" unit="molC/m2/s" /> 863 <field id="SedSi" long_name="Silicon burial in the sediments" unit="molSi/m2/s" /> 864 <field id="SedC" long_name="Organic C burial in the sediments" unit="molC/m2/s" /> 852 865 <field id="Ironice" long_name="Iron input/uptake due to sea ice" unit="mol/m2/s" /> 853 866 <field id="HYDR" long_name="Iron input from hydrothemal vents" unit="mol/m2/s" grid_ref="grid_T_3D" /> -
branches/2015/nemo_v3_6_STABLE/NEMOGCM/NEMO/OPA_SRC/DIA/diawri.F90
r6204 r6315 145 145 ENDIF 146 146 147 ! Output of initial vertical scale factor 148 CALL iom_put("e3t_0", e3t_0(:,:,:) ) 149 CALL iom_put("e3u_0", e3t_0(:,:,:) ) 150 CALL iom_put("e3v_0", e3t_0(:,:,:) ) 151 ! 147 152 IF( .NOT.lk_vvl ) THEN 148 153 CALL iom_put( "e3t" , fse3t_n(:,:,:) ) … … 153 158 154 159 CALL iom_put( "ssh" , sshn ) ! sea surface height 155 if( iom_use('ssh2') ) CALL iom_put( "ssh2", sshn(:,:) * sshn(:,:) ) ! square of sea surface height156 160 157 161 CALL iom_put( "toce", tsn(:,:,:,jp_tem) ) ! 3D temperature -
branches/2015/nemo_v3_6_STABLE/NEMOGCM/NEMO/OPA_SRC/IOM/iom.F90
r6204 r6315 139 139 ! horizontal grid definition 140 140 141 #if ! defined key_xios2142 141 CALL set_scalar 143 #endif144 142 145 143 IF( TRIM(cdname) == TRIM(cxios_context) ) THEN … … 1193 1191 REAL(wp), DIMENSION(:) , OPTIONAL, INTENT(in) :: lonvalue, latvalue 1194 1192 REAL(wp), DIMENSION(:,:) , OPTIONAL, INTENT(in) :: bounds_lon, bounds_lat, area 1195 LOGICAL, DIMENSION(:,:) , OPTIONAL, INTENT(in) :: mask 1193 #if ! defined key_xios2 1194 LOGICAL, DIMENSION(:,:) , OPTIONAL, INTENT(in) :: mask 1195 #else 1196 LOGICAL, DIMENSION(:) , OPTIONAL, INTENT(in) :: mask 1197 #endif 1196 1198 1197 1199 #if ! defined key_xios2 … … 1215 1217 CALL xios_set_domain_attr ( cdid, ni_glo=ni_glo, nj_glo=nj_glo, ibegin=ibegin, jbegin=jbegin, ni=ni, nj=nj, & 1216 1218 & data_dim=data_dim, data_ibegin=data_ibegin, data_ni=data_ni, data_jbegin=data_jbegin, data_nj=data_nj , & 1217 & lonvalue_1D=lonvalue, latvalue_1D=latvalue, mask_ 2D=mask, nvertex=nvertex, bounds_lon_1D=bounds_lon,&1219 & lonvalue_1D=lonvalue, latvalue_1D=latvalue, mask_1D=mask, nvertex=nvertex, bounds_lon_1D=bounds_lon, & 1218 1220 & bounds_lat_1D=bounds_lat, area=area, type='curvilinear') 1219 1221 ENDIF … … 1221 1223 CALL xios_set_domaingroup_attr( cdid, ni_glo=ni_glo, nj_glo=nj_glo, ibegin=ibegin, jbegin=jbegin, ni=ni, nj=nj, & 1222 1224 & data_dim=data_dim, data_ibegin=data_ibegin, data_ni=data_ni, data_jbegin=data_jbegin, data_nj=data_nj , & 1223 & lonvalue_1D=lonvalue, latvalue_1D=latvalue, mask_ 2D=mask, nvertex=nvertex, bounds_lon_1D=bounds_lon,&1225 & lonvalue_1D=lonvalue, latvalue_1D=latvalue, mask_1D=mask, nvertex=nvertex, bounds_lon_1D=bounds_lon, & 1224 1226 & bounds_lat_1D=bounds_lat, area=area, type='curvilinear' ) 1225 1227 ENDIF … … 1234 1236 INTEGER , OPTIONAL, INTENT(in) :: ibegin, jbegin, ni, nj 1235 1237 1236 IF ( xios_is_valid_ domain (cdid) ) THEN1238 IF ( xios_is_valid_zoom_domain (cdid) ) THEN 1237 1239 CALL xios_set_zoom_domain_attr ( cdid, ibegin=ibegin, jbegin=jbegin, ni=ni, & 1238 1240 & nj=nj) … … 1326 1328 IF ( xios_is_valid_gridgroup(cdid) ) CALL xios_set_gridgroup_attr( cdid, mask=mask ) 1327 1329 #else 1328 IF ( xios_is_valid_grid (cdid) ) CALL xios_set_grid_attr ( cdid, mask 3=mask )1329 IF ( xios_is_valid_gridgroup(cdid) ) CALL xios_set_gridgroup_attr( cdid, mask 3=mask )1330 IF ( xios_is_valid_grid (cdid) ) CALL xios_set_grid_attr ( cdid, mask_3D=mask ) 1331 IF ( xios_is_valid_gridgroup(cdid) ) CALL xios_set_gridgroup_attr( cdid, mask_3D=mask ) 1330 1332 #endif 1331 1333 CALL xios_solve_inheritance() … … 1388 1390 END SELECT 1389 1391 ! 1392 #if ! defined key_xios2 1390 1393 CALL iom_set_domain_attr( "grid_"//cdgrd , mask = RESHAPE(zmask(nldi:nlei,nldj:nlej,1),(/ni,nj /)) /= 0. ) 1394 #else 1395 CALL iom_set_domain_attr( "grid_"//cdgrd , mask = RESHAPE(zmask(nldi:nlei,nldj:nlej,1),(/ni*nj /)) /= 0. ) 1396 #endif 1391 1397 CALL iom_set_grid_attr ( "grid_"//cdgrd//"_3D", mask = RESHAPE(zmask(nldi:nlei,nldj:nlej,:),(/ni,nj,jpk/)) /= 0. ) 1392 1398 ENDIF … … 1532 1538 #else 1533 1539 ! Pas teste : attention aux indices ! 1534 CALL iom_set_domain_attr(" ptr", ni_glo=jpiglo, nj_glo=jpjglo, ibegin=nimpp+nldi-2, jbegin=njmpp+nldj-2, ni=ni, nj=nj)1535 CALL iom_set_domain_attr(" ptr", data_dim=2, data_ibegin = 1-nldi, data_ni = jpi, data_jbegin = 1-nldj, data_nj = jpj)1536 CALL iom_set_domain_attr(" ptr", lonvalue = zlon, &1540 CALL iom_set_domain_attr("gznl", ni_glo=jpiglo, nj_glo=jpjglo, ibegin=nimpp+nldi-2, jbegin=njmpp+nldj-2, ni=ni, nj=nj) 1541 CALL iom_set_domain_attr("gznl", data_dim=2, data_ibegin = 1-nldi, data_ni = jpi, data_jbegin = 1-nldj, data_nj = jpj) 1542 CALL iom_set_domain_attr("gznl", lonvalue = zlon, & 1537 1543 & latvalue = RESHAPE(plat(nldi:nlei, nldj:nlej),(/ ni*nj /))) 1538 CALL iom_set_zoom_domain_attr ( 'ptr', ibegin=ix, nj=jpjglo)1544 CALL iom_set_zoom_domain_attr ("ptr", ibegin=ix-1, jbegin=0, ni=1, nj=jpjglo) 1539 1545 #endif 1540 1546 … … 1552 1558 REAL(wp), DIMENSION(1) :: zz = 1. 1553 1559 !!---------------------------------------------------------------------- 1560 #if ! defined key_xios2 1554 1561 CALL iom_set_domain_attr('scalarpoint', ni_glo=jpnij, nj_glo=1, ibegin=narea, jbegin=1, ni=1, nj=1) 1562 #else 1563 CALL iom_set_domain_attr('scalarpoint', ni_glo=jpnij, nj_glo=1, ibegin=narea-1, jbegin=0, ni=1, nj=1) 1564 #endif 1555 1565 CALL iom_set_domain_attr('scalarpoint', data_dim=2, data_ibegin = 1, data_ni = 1, data_jbegin = 1, data_nj = 1) 1556 1566 … … 1778 1788 idx = INDEX(clname,'@freq@') + INDEX(clname,'@FREQ@') 1779 1789 DO WHILE ( idx /= 0 ) 1780 IF ( output_freq%hour /= 0 ) THEN 1790 IF ( output_freq%timestep /= 0) THEN 1791 WRITE(clfreq,'(I18,A2)')INT(output_freq%timestep),'ts' 1792 itrlen = LEN_TRIM(ADJUSTL(clfreq)) 1793 ELSE IF ( output_freq%hour /= 0 ) THEN 1781 1794 WRITE(clfreq,'(I19,A1)')INT(output_freq%hour),'h' 1782 1795 itrlen = LEN_TRIM(ADJUSTL(clfreq)) -
branches/2015/nemo_v3_6_STABLE/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsed.F90
r6204 r6315 72 72 CHARACTER (len=25) :: charout 73 73 REAL(wp), POINTER, DIMENSION(:,: ) :: zpdep, zsidep, zwork1, zwork2, zwork3 74 REAL(wp), POINTER, DIMENSION(:,:) :: zsedcal, zsedsi, zsedc 74 75 REAL(wp), POINTER, DIMENSION(:,: ) :: zdenit2d, zironice, zbureff 75 76 REAL(wp), POINTER, DIMENSION(:,: ) :: zwsbio3, zwsbio4, zwscal … … 83 84 ! Allocate temporary workspace 84 85 CALL wrk_alloc( jpi, jpj, zdenit2d, zwork1, zwork2, zwork3, zbureff ) 86 CALL wrk_alloc( jpi, jpj, zsedcal, zsedsi, zsedc ) 85 87 CALL wrk_alloc( jpi, jpj, zwsbio3, zwsbio4, zwscal ) 86 88 CALL wrk_alloc( jpi, jpj, jpk, zsoufer ) … … 91 93 zwork2 (:,:) = 0.e0 92 94 zwork3 (:,:) = 0.e0 95 zsedsi (:,:) = 0.e0 96 zsedcal (:,:) = 0.e0 97 zsedc (:,:) = 0.e0 93 98 94 99 ! Iron input/uptake due to sea ice : Crude parameterization based on Lancelot et al. … … 298 303 tra(ji,jj,ikt,jptal) = tra(ji,jj,ikt,jptal) + zcaloss * zrivalk * 2.0 299 304 tra(ji,jj,ikt,jpdic) = tra(ji,jj,ikt,jpdic) + zcaloss * zrivalk 305 zsedcal(ji,jj) = (1.0 - zrivalk) * zcaloss / zdep 306 zsedsi (ji,jj) = (1.0 - zrivsil) * zsiloss / zdep 300 307 #endif 301 308 END DO … … 336 343 tra(ji,jj,ikt,jptal) = tra(ji,jj,ikt,jptal) + rno3 * (zolimit + (1.+rdenit) * (zpdenit + zdenitt) ) 337 344 tra(ji,jj,ikt,jpdic) = tra(ji,jj,ikt,jpdic) + zpdenit + zolimit + zdenitt 338 sdenit(ji,jj) = rdenit * zpdenit * fse3t(ji,jj,ikt) 345 sdenit(ji,jj) = rdenit * zpdenit / zdep 346 zsedc(ji,jj) = (1. - zrivno3) * zwstpoc / zdep 339 347 #endif 340 348 END DO … … 392 400 CALL iom_put( "INTNFIX" , zwork1 ) 393 401 ENDIF 402 IF( iom_use("SedCal" ) ) CALL iom_put( "SedCal", zsedcal(:,:) * 1.e+3 ) 403 IF( iom_use("SedSi" ) ) CALL iom_put( "SedSi", zsedsi (:,:) * 1.e+3 ) 404 IF( iom_use("SedC" ) ) CALL iom_put( "SedC", zsedc (:,:) * 1.e+3 ) 405 IF( iom_use("Sdenit" ) ) CALL iom_put( "Sdenit", sdenit (:,:) * 1.e+3 * rno3 ) 394 406 ENDIF 395 407 ELSE … … 405 417 ! 406 418 CALL wrk_dealloc( jpi, jpj, zdenit2d, zwork1, zwork2, zwork3, zbureff ) 419 CALL wrk_dealloc( jpi, jpj, zsedcal , zsedsi, zsedc ) 407 420 CALL wrk_dealloc( jpi, jpj, zwsbio3, zwsbio4, zwscal ) 408 421 CALL wrk_dealloc( jpi, jpj, jpk, zsoufer )
Note: See TracChangeset
for help on using the changeset viewer.