Docker-in-Docker (DinD) capabilities of public runners deactivated. More info

Commit 15c8c58d authored by Thomas Dubos's avatar Thomas Dubos
Browse files

Initial set of scripts and configuration files

parent 1e430026
ECMWF*.tar
dynamico
XIOS
Grib/*
*~
#!/bin/bash
#PBS -N nudging
#PBS -q std
#PBS -n
#PBS -l nodes=1:ppn=64
#PBS -l walltime=00:15:00
#PBS -l mem=240gb
#PBS -l vmem=240gb
#####comment:PBS -l mem=31922327552,ncpus=60
#Jobs start in the HOME directory, cd to submitted directory
cd "$PBS_O_WORKDIR"
############################################################
NCPU=$(wc -l < $PBS_NODEFILE)
awk "NR % 1 == 0" $PBS_NODEFILE | head -n 60 > nodelist.txt
echo ------------------JOB SUMMARY--------------------------
echo 'PBS OUT: Job allocated on: '${NCPU}' cpu(s)'
echo 'PBS OUT: Job running on the following node(s): '
cat nodelist.txt
echo -------------------------------------------------------
echo PBS OUT: Job running on: $PBS_O_HOST
echo PBS OUT: Originating queue: $PBS_O_QUEUE
echo PBS OUT: Executing queue: $PBS_QUEUE
echo PBS OUT: Work directory: $PBS_O_WORKDIR
echo PBS OUT: Execution mode: $PBS_ENVIRONMENT
echo PBS OUT: Job identifier: $PBS_JOBID
echo PBS OUT: Job name: $PBS_JOBNAME
echo PBS OUT: Node file: $PBS_NODEFILE
echo PBS OUT: Current home directory: $PBS_O_HOME
echo PBS OUT: PATH= $PBS_O_PATH
echo -------------------------------------------------------
export OMP_NUM_THREADS=1
export OMP_STACKSIZE=128M
ulimit -s unlimited
module purge
module load gnu/4.9.3
module load intel/15.0.6.233
module load openmpi/1.6.5-ifort
module load hdf5/1.8.18-parallel-ifort
module load netcdf4/4.4.1.1-parallel-ifort
rm -rf gcm.log logs *.nc netcdf
ln -s input/*.nc .
file -L *.nc
mpirun -np 60 -cpus-per-proc $OMP_NUM_THREADS -bycore -bind-to-core -report-bindings ./gcm.exe > gcm.log 2>&1
>> gcm.log
date >> gcm.log
mkdir -p netcdf
cp gcm.log *.def netcdf
mv *.nc netcdf
mkdir -p logs
cp *.xml logs
cp -pr /mnt/homedafs-2.5/lov/homedata/dubos/testing/build_mpi/bin/icosa_gcm.exe logs
cp -pr /mnt/homedafs-2.5/lov/homedata/dubos/testing/DYNAMICO_git/src logs
mv xios_client_*.err xios_client_*.out gcm.log logs
<!-- =========================================================================================================== -->
<!-- DYNAMICO context -->
<!-- context_dynamico.xml : Configuration file for DYNAMICO for reading and writing files using XIOS -->
<!-- -->
<!-- =========================================================================================================== -->
<context id="icosagcm" >
<calendar type="d360" start_date="2000-01-01 00:00:00" time_origin="2000-01-01 00:00:00"/>
<!-- =========================================================================================================== -->
<!-- Definition of all existing variables in field_def_dynamico.xml -->
<!-- =========================================================================================================== -->
<field_definition src="./field_def_dynamico.xml" />
<!-- =========================================================================================================== -->
<!-- Definition of restart files and other input files -->
<!-- =========================================================================================================== -->
<file_definition type="one_file" par_access="collective">
<file id="output" name="output" enabled=".FALSE." output_freq="2h" sync_freq="2h" output_level="10" >
<field_group group_ref="standard_output"/>
</file>
<!-- =========================================================================================================== -->
<!-- Writing restart file -->
<!-- =========================================================================================================== -->
<file id="restart" enabled="true">
<field_group id="group_restart" operation="once">
<field id="it_restart" name="iteration" grid_ref="scalar" />
<field id="q_restart" name="q" grid_ref="grid_q" prec="8"/>
<field_group domain_ref="i" prec="8">
<field id="xcell_restart" name="xcell" />
<field id="ycell_restart" name="ycell" />
<field id="zcell_restart" name="zcell" />
<field id="ps_restart" name="ps" />
<field id="phis_restart" name="phis" />
<field_group axis_ref="lev" >
<field id="theta_rhodz_restart" name="theta_rhodz" />
<field id="u_restart" name="u" domain_ref="u"/>
<field id="ulon_restart" name="ulon" />
<field id="ulat_restart" name="ulat" />
<field id="p_restart" name="p" />
<field_group id="tracers_restart">
<!-- tracers will be add atomatically here-->
</field_group>
</field_group>
<field_group axis_ref="levp1" >
<field id="geopot_restart" name="geopot" />
<field id="W_restart" name="W" />
</field_group>
</field_group>
</field_group>
</file>
<!-- =========================================================================================================== -->
<!-- Writing initial state file (when not previously read from start file) -->
<!-- =========================================================================================================== -->
<file id="start0" mode="write" enabled="false">
<field_group id="group_start0" operation="once">
<field id="it_start0" name="iteration" grid_ref="scalar" />
<field id="q_start0" name="q" grid_ref="grid_q" prec="8"/>
<field_group domain_ref="i" prec="8">
<field id="xcell_start0" name="xcell" />
<field id="ycell_start0" name="ycell" />
<field id="zcell_start0" name="zcell" />
<field id="ps_start0" name="ps" />
<field id="phis_start0" name="phis" />
<field_group axis_ref="lev" >
<field id="theta_rhodz_start0" name="theta_rhodz" />
<field id="u_start0" name="u" domain_ref="u"/>
<field id="ulon_start0" name="ulon" />
<field id="ulat_start0" name="ulat" />
<field id="p_start0" name="p" />
<field_group id="tracers_start0">
<!-- tracers will be add atomatically here-->
</field_group>
</field_group>
</field_group>
</field_group>
</file>
<!-- =========================================================================================================== -->
<!-- reading start file -->
<!-- =========================================================================================================== -->
<file id="start" enabled="false" mode="read">
<field_group id="group_start" operation="once">
<field id="it_start" name="iteration" grid_ref="scalar" />
<field_group domain_ref="i" prec="8">
<field id="xcell_start" name="xcell" />
<field id="ycell_start" name="ycell" />
<field id="zcell_start" name="zcell" />
<field id="ps_start" name="ps" />
<field id="phis_start" name="phis" />
<field_group axis_ref="lev" >
<field id="theta_rhodz_start" name="theta_rhodz" />
<field id="u_start" name="u" domain_ref="u"/>
<field id="ulon_start" name="ulon" />
<field id="ulat_start" name="ulat" />
<field_group id="tracers_start">
<!-- tracers will be add atomatically here-->
</field_group>
</field_group>
<field_group axis_ref="levp1" >
<field id="geopot_start" name="geopot" />
<field id="W_start" name="W" />
</field_group>
</field_group>
<field id="q_start" name="q" grid_ref="grid_q" prec="8"/>
</field_group>
</file>
<!-- =========================================================================================================== -->
<!-- reading start file and perform interpolation (restarting from a different resolution) -->
<!-- =========================================================================================================== -->
<file id="start_interp" enabled="false" mode="read">
<field_group operation="once">
<field id="it_start_interp" name="iteration" grid_ref="scalar" />
<field_group domain_ref="i_start_interp_read" prec="8">
<field id="ps_start_interp_read" name="ps" />
<field id="phis_start_interp_read" name="phis" />
<field_group axis_ref="lev_start_interp_read" >
<field id="theta_rhodz_start_interp_read" name="theta_rhodz" />
<field id="ulon_start_interp_read" name="ulon" />
<field id="ulat_start_interp_read" name="ulat" />
<field id="p_start_interp_read" name="p" />
<field_group id="tracers_start_interp_read">
<!-- tracers will be add atomatically here-->
</field_group>
</field_group>
</field_group>
</field_group>
</file>
</file_definition>
<field_definition>
<field_group id="start_interp">
<field_group domain_ref="i_start_interp" >
<field id="ps_start_interp" field_ref="ps_start_interp_read" />
<field id="phis_start_interp" field_ref="phis_start_interp_read" />
<field id="p_start_interp_horiz" field_ref="p_start_interp_read" axis_ref="lev_start_interp_read"/>
<field_group axis_ref="lev_start_interp" >
<field id="theta_rhodz_start_interp" field_ref="theta_rhodz_start_interp_read" />
<field id="ulon_start_interp" field_ref="ulon_start_interp_read" />
<field id="ulat_start_interp" field_ref="ulat_start_interp_read" />
<field_group id="tracers_start_interp">
<!-- tracers will be add atomatically here-->
</field_group>
</field_group>
</field_group>
</field_group>
<field id="p_start_interp" domain_ref="i" axis_ref="lev" />
</field_definition>
<domain_definition>
<domain id="i_start_interp_read" type="unstructured" >
<generate_rectilinear_domain/>
</domain>
<domain id="i_start_interp" domain_ref="i">
<interpolate_domain order="1" />
</domain>
</domain_definition>
<axis_definition>
<axis id="lev_start_interp_read" />
<axis id="lev_start_interp" axis_ref="lev">
<interpolate_axis order="1" coordinate_src="p_start_interp_horiz" coordinate_dst="p_start_interp" extrapolate="true"/>
</axis>
</axis_definition>
<!-- ========================================================================================================================= -->
<!-- Pressure is automatically resent at initialization to XIOS workflow to optionnaly do an interpolation in pressure level -->
<!-- And reinject tracer in the initial state -->
<!-- ========================================================================================================================= -->
<field_definition>
<field id="p_init0" domain_ref="i" axis_ref="lev"/>
<field id="ps_init0" domain_ref="i" />
</field_definition>
<!-- =========================================================================================================== -->
<!-- read field from file for etat0_database -->
<!-- =========================================================================================================== -->
<field_definition>
<field_group id="read_fields" enabled="false" operation="instant">
<field id="relief_db" field_ref="relief_reg" domain_ref="from_relief" read_access="true" />
<field_group domain_ref="from_ecdyn" read_access="true" >
<field id="ps_db" field_ref="ps_reg" />
<field id="z_db" field_ref="z_reg" />
<field id="ts_db" field_ref="ts_reg" />
<field_group axis_ref="lev_ecdyn" >
<field id="u_db" field_ref="u_reg" />
<field id="v_db" field_ref="v_reg" />
<field id="temp_db" field_ref="temp_reg" />
<field id="q_db" field_ref="q_reg" />
</field_group>
</field_group>
</field_group>
</field_definition>
<file_definition>
<file_group id="read_files" enabled="false" >
<file id="relief" name="Relief" type="one_file" mode="read" output_freq="10ts">
<field id="relief_reg" name="RELIEF" domain_ref="domain_relief" operation="instant" />
</file>
<file id="ECDYN" name="ECDYN" type="one_file" mode="read" output_freq="10ts">
<field_group domain_ref="domain_ecdyn" operation="instant">
<field id="ps_reg" name="SP" />
<field id="z_reg" name="Z" />
<field id="ts_reg" name="ST" />
<field_group axis_ref="lev_ecdyn" >
<field id="u_reg" name="U" />
<field id="v_reg" name="V" />
<field id="temp_reg" name="TEMP" />
<field id="q_reg" name="R" />
</field_group>
</field_group>
</file>
</file_group>
</file_definition>
<!-- =========================================================================================================== -->
<!-- Axis definitions -->
<!-- =========================================================================================================== -->
<axis_definition prec="8">
<axis id="lev" name="lev" positive="down" standard_name="atmopshere_hybrid_sigma_pressure_coordinate" long_name="hybrid level at midpoints" axis_type="Z"/>
<axis id="levp1" name="ilev" unit="level" positive="down" standard_name="atmopshere_hybride_sigma_pressure_coordinate" long_name="hybrid level at interface" axis_type="Z" />
<axis id="nq" name="nq" />
<axis id="nq_start" name="nq" />
<axis id="lev_ecdyn" />
<axis id="lev_pressure" positive="down" n_glo="2" unit="Pa" value="(0,1)[85000 50000]" >
<interpolate_axis order="1" coordinate="p" />
</axis>
<axis id="presnivs_mb" >
<interpolate_axis order="1" />
</axis>
</axis_definition>
<!-- =========================================================================================================== -->
<!-- Domain definitions -->
<!-- =========================================================================================================== -->
<domain_definition prec="8">
<domain_group id="i">
<domain id="i" name="mesh"/>
<domain id="from_relief" >
<interpolate_domain/>
</domain>
<domain id="from_ecdyn" >
<interpolate_domain/>
</domain>
</domain_group>
<domain id="v" />
<domain id="u" />
<domain id="regular_half_degree" type="rectilinear" ni_glo="720" nj_glo="360" >
<generate_rectilinear_domain />
<interpolate_domain order="1"/>
</domain>
<domain id="regular_one_degree" type="rectilinear" ni_glo="360" nj_glo="180" >
<generate_rectilinear_domain />
<interpolate_domain order="1"/>
</domain>
<domain id="regular_two_degree" type="rectilinear" ni_glo="180" nj_glo="90" >
<generate_rectilinear_domain />
<interpolate_domain order="1"/>
</domain>
<domain id="domain_relief" type="rectilinear" >
<generate_rectilinear_domain />
</domain>
<domain id="domain_ecdyn" type="rectilinear" >
<generate_rectilinear_domain />
</domain>
</domain_definition>
<scalar_definition>
<scalar id="scalar" />
</scalar_definition>
<!-- =========================================================================================================== -->
<!-- Grid definitions -->
<!-- =========================================================================================================== -->
<grid_definition>
<grid id="scalar">
<scalar />
</grid>
<grid id="grid_q">
<domain domain_ref="i" />
<axis axis_ref="lev" />
<axis axis_ref="nq" />
</grid>
<grid id="grid_q_start">
<domain domain_ref="i" />
<axis axis_ref="lev" />
<axis axis_ref="nq_start" />
</grid>
<grid id="grid_q_regular_two_degree">
<domain domain_ref="regular_two_degree" />
<axis axis_ref="lev" />
<axis axis_ref="nq" />
</grid>
<grid id="grid_q_regular_one_degree">
<domain domain_ref="regular_one_degree" />
<axis axis_ref="lev" />
<axis axis_ref="nq" />
</grid>
<grid id="grid_q_regular_alf_degree">
<domain domain_ref="regular_half_degree" />
<axis axis_ref="lev" />
<axis axis_ref="nq" />
</grid>
</grid_definition>
</context>
<context id="icosagcm_input" >
<calendar type="d360" start_date="2000-01-01 00:00:00" time_origin="2000-01-01 00:00:00"/>
<file_definition type="one_file" par_access="collective">
<file id="start" name="start" enabled="true" mode="read" output_freq="1d">
<field id="xcell_start" name="xcell" domain_ref="i" operation="instant" prec="8"/>
<field id="ycell_start" name="ycell" domain_ref="i" operation="instant" prec="8"/>
<field id="zcell_start" name="zcell" domain_ref="i" operation="instant" prec="8"/>
</file>
</file_definition>
<domain_definition>
<domain id="i"/>
</domain_definition>
</context>
<!-- =========================================================================================================== -->
<!-- field_def_dynamico.xml -->
<!-- Definition of all existing variables that can be output from DYNAMCIO -->
<!-- =========================================================================================================== -->
<field_definition>
<field_group id="standard_output" level="1" enabled=".TRUE." operation="instant">
<field id="timestep" grid_ref="scalar" unit="s"/>
<field id="preff" grid_ref="scalar" unit="Pa"/>
<field id="ap" axis_ref="levp1" long_name="hybrid A coefficient at layer interface" />
<field id="bp" axis_ref="levp1" long_name="hybrid B coefficient at layer interface" />
<field id="mid_ap" axis_ref="lev" long_name="hybrid A coefficient at midpoints" />
<field id="mid_bp" axis_ref="lev" long_name="hybrid B coefficient at midpoints" />
<field_group id="standard_output2D" domain_ref="i">
<field id="ps" standard_name="surface_pressure" long_name="Surface pressure" unit="Pa"/>
<field id="dps" />
<field id="Ai" />
<field id="phis" operation="once" freq_offset="0ts" name="PHIS" standard_name="surface_geopotential" long_name="Surface geopotential" unit="m2/m2" />
<field id="phi" />
<field id="precl" name="PRECT" standard_name="rainfall_rate" long_name="Large Scale precipitation rate" unit="m/s"/>/>
<field id="Q1_col_int" />
<field id="Q2_col_int" />
<field id="ps_init" />
<field id="coeff_nudging" freq_offset="0ts"/>
<field id="u850" name="U850" long_name="Zonal wind at 850 hPa" unit="m/s"/>
<field id="v850" name="V850" long_name="Meridional wind at 850 hPa" unit="m/s"/>
<field id="w850" name="W850" long_name="Vertical velocity at 850 hPa" unit="m/s"/>
<field id="t850" name="T850" long_name="Temperature at 850 hPa" unit="K"/>
<field id="omega850" name="OMEGA850" long_name="Vertical pressure velocity at 850 hPa" unit="Pa/s"/>
<field id="u500" name="U500" long_name="Zonal wind at 500 hPa" unit="m/s"/>
<field id="v500" name="V500" long_name="Meridional wind at 850 hPa" unit="m/s"/>
<field id="w500" name="W500" long_name="Vertical velocity at 500 hPa" unit="m/s"/>
<field id="t500" name="T500" long_name="Temperature at 850 hPa" unit="K"/>
<field id="omega500" name="OMEGA500" long_name="Vertical pressure velocity at 500 hPa" unit="Pa/s"/>
<field id="SST" name="SST" long_name="Sea surface temperature" unit="K"/>
<field id="ulon_850_500" field_ref="p" axis_ref="lev_pressure" />
<field_group id="standard_output3D" axis_ref="lev">
<field id="mass" />
<field id="div" />
<field id="dmass"/>
<field id="p" name="P" standard_name="air_pressure" long_name="Pressure" unit="Pa"/>
<field id="theta" />
<field id="dyn_q" />
<field id="pk"/>
<field id="ulon" name="U" standard_name="eastward_wind" long_name="Zonal wind" unit="m/s"/>
<field id="ulat" name="V" standard_name="northward_wind" long_name="Meridional wind" unit="m/s"/>
<field id="uz" name="W" standard_name="upward_air_velocity" long_name="Vertical velocity" unit="m/s"/>
<field id="omega" name="OMEGA" standard_name="lagrangian_tendency_of_air_pressure" long_name="Vertical pressure velocity" unit="Pa/s"/>
<field id="temp" name="T" standard_name="air_temperature" long_name="Temperature" unit="K"/>
<field id="kinetic_trisk" />
<field id="kinetic" />
<field id="dulon_diss1"/>
<field id="dulat_diss1"/>
<field id="dulon_diss2"/>
<field id="dulat_diss2"/>
<field id="dulon_phys"/>
<field id="dulat_phys"/>
<field id="mass_t" long_name="Time-averaged air mass" unit="kg/m2"/>
<field id="massflux_lon" long_name="Time-averaged air mass flux, zonal" unit="kg/m/s"/>
<field id="massflux_lat" long_name="Time-averaged air mass flux, meridional" unit="kg/m/s"/>
<field id="ulon_t" long_name="Time-averaged zonal momentum" unit="kg/m/s"/>
<field id="ulonflux_lon" long_name="Time-averaged zonal momentum flux, zonal" unit="kg/s2"/>
<field id="ulonflux_lat" long_name="Time-averaged zonal momentum flux, meridional" unit="kg/s2"/>
<field id="theta_t" long_name="Time-averaged potential temperature" unit="K.kg/m2"/>
<field id="thetaflux_lon" long_name="Time-averaged potential temperature flux, zonal" unit="K.kg/m/s"/>
<field id="thetaflux_lat" long_name="Time-averaged potential temperature flux, meridional" unit="K/kg/m/s"/>
<field id="epot_t" long_name="Time-averaged potential energy" unit="J/m2"/>
<field id="epotflux_lon" long_name="Time-averaged potential energy flux, zonal" unit="J/m/s"/>
<field id="epotflux_lat" long_name="Time-averaged potential energy flux, meridional" unit="J/m/s"/>
<field id="ekin_t" long_name="Time-averaged kinetic energy" unit="J/m2"/>
<field id="ekinflux_lon" long_name="Time-averaged kinetic energy flux, zonal" unit="J/m/s"/>
<field id="ekinflux_lat" long_name="Time-averaged kinetic energy flux, meridional" unit="J/m/s"/>
<field id="enthalpy_t" long_name="Time-averaged enthalpy" unit="J/m2"/>
<field id="enthalpyflux_lon" long_name="Time-averaged enthalpy flux, zonal" unit="J/m/s"/>
<field id="enthalpyflux_lat" long_name="Time-averaged enthalpy flux, meridional" unit="J/m/s"/>
<field id="mass_init" />
<field id="div_init" />
<field id="p_init" />
<field id="theta_init" />
<field id="dyn_q_init" />
<field id="ulon_init"/>
<field id="ulat_init"/>
<field id="uz_init"/>
<field id="temp_init"/>
<field id="kinetic_trisk_init" />
<field id="kinetic_init" />
<field_group id="standard_output_tracers">
<!-- tracers are automatically inserted here -->
</field_group>
<field_group id="standard_output_tracers_init" operation="once">
<!-- tracers are automatically inserted here -->
</field_group>
</field_group>
<field_group axis_ref="levp1">
<field id="geopot" name="PHI" standard_name="geopotential" long_name="geopotential" unit="m2/s2"/>
<field id="geopot_init"/>
</field_group>
</field_group>
<field_group grid_ref="grid_q">
<field id="q_init" />
<field id="q" />
<field id="qmass_t" />
<field id="qflux_lon" />
<field id="qflux_lat" />
</field_group>
<field_group domain_ref="v" axis_ref="lev">
<field id="vort" />
<field id="vort_init" />
<field id="pv" />
</field_group>
</field_group>
</field_definition>
<!-- =========================================================================================================== -->
<!-- file_def_dynamico -->
<!-- Definition of output diagnostic files (not including restart files) -->
<!-- =========================================================================================================== -->