Commit 604d3c44 authored by Modellers Operational's avatar Modellers Operational

Merge branch 'master' of gitlab.ecosystem-modelling.pml.ac.uk:pml-modelling/rose_fvcom_setup

parents 08692a75 2f44f148
[command]
default = ln -s ${COMMON_FILES_PATH}/* ${ROSE_DATAC};
default = ln -sf ${COMMON_FILES_PATH}/* ${ROSE_DATAC};
[command]
default = ln -s ${ROSE_DATA}/* ${ROSE_DATAC};
default = ln -sf ${ROSE_DATA}/* ${ROSE_DATAC};
[command]
default = cp ${GRID_NAME}_run.nml ${ROSE_DATAC}; mkdir ${ROSE_DATAC}/output
default = cp ${GRID_NAME}_run.nml ${ROSE_DATAC}; mkdir -p ${ROSE_DATAC}/output
[file:${GRID_NAME}_run.nml]
source = namelist:NML_CASE namelist:NML_STARTUP namelist:NML_IO namelist:NML_INTEGRATION namelist:NML_RESTART namelist:NML_NETCDF namelist:NML_NETCDF_AV namelist:NML_SURFACE_FORCING namelist:NML_HEATING_CALCULATED namelist:NML_PHYSICS namelist:NML_RIVER_TYPE namelist:NML_OPEN_BOUNDARY_CONTROL namelist:NML_GRID_COORDINATES namelist:NML_GROUNDWATER namelist:NML_LAG namelist:NML_ADDITIONAL_MODELS namelist:NML_PROBES namelist:NML_STATION_TIMESERIES namelist:NML_FABM namelist:NML_NESTING namelist:NML_NCNEST namelist:NML_NCNEST_WAVE namelist:NML_BOUNDSCHK namelist:NML_DYE_RELEASE namelist:NML_PWP namelist:NML_SST_ASSIMILATION namelist:NML_SSTGRD_ASSIMILATION namelist:NML_SSHGRD_ASSIMILATION namelist:NML_TSGRD_ASSIMILATION namelist:NML_CUR_NGASSIMILATION namelist:NML_CUR_OIASSIMILATION namelist:NML_TS_NGASSIMILATION namelist:NML_TS_OIASSIMILATION
......
......@@ -3,8 +3,7 @@
COLD_START=True
SEDIMENT=False
USE_CETO=True
MIN_NODES=4
MAX_NODES=10
NODES=10
FORECAST=True
REMOTE_USER='modop'
MAIL_TO='mbe@pml.ac.uk'
......
......@@ -3,9 +3,8 @@
COLD_START=True
SEDIMENT=False
USE_CETO=True
MIN_NODES=4
MAX_NODES=10
FORECAST=True
NODES=10
REMOTE_USER='modop'
INITIAL_START_DATE='2019-02-05T00:00:00Z'
......@@ -33,7 +32,7 @@ AIR_PRESSURE_ON='T'
WRF_RUN_SUITE='wrf'
WRF_FORECAST_FILE_DIR='/gpfs1/users/modellers/modop/Models/WRF_transfer_dir/'
WRF_ARCHIVE_DIR='/data/sthenno1/scratch/modop/Model/WRF/output'
WRF_ARCHIVE_DATEFMT='%Y%m%d'
WRF_ARCHIVE_DATEFMT='%Y-%m-%d'
## River setup
......
......@@ -25,7 +25,14 @@
run_fvcom[-P1D] => start_cycle => softlink_forcing & softlink_forcing_remote => write_run_namelist
{% if FORECAST and (WIND_ON == 'T' or HEATING_ON == 'T' or PRECIPITATION_ON == 'T' or AIR_PRESSURE_ON == 'T') %}
start_cycle => wrf_suite_trigger <wrf::transfer_for_fvcom> => get_wrf_file => write_run_namelist
start_cycle => wrf_suite_trigger <wrf::transfer_for_fvcom>
wrf_suite_trigger <wrf::transfer_for_fvcom>:succeeded & softlink_forcing_remote => get_wrf_file
wrf_suite_trigger <wrf::transfer_for_fvcom>:failed | get_wrf_file => write_run_namelist
wrf_suite_trigger <wrf::transfer_for_fvcom>:succeeded => !adjust_namelist_met
wrf_suite_trigger <wrf::transfer_for_fvcom>:failed & write_run_namelist => adjust_namelist_met
(wrf_suite_trigger <wrf::transfer_for_fvcom>:succeeded & write_run_namelist) | adjust_namelist_met => run_fvcom
{% elif WIND_ON == 'T' or HEATING_ON == 'T' or PRECIPITATION_ON == 'T' or AIR_PRESSURE_ON == 'T' %}
start_cycle => get_archive_wrf_file => convert_wrf_file => write_run_namelist
{% endif %}
......@@ -46,8 +53,8 @@
{% if RIVER_MODEL == 'NEURAL_NET' and FORECAST %}
start_cycle => wrf_archive_trigger <wrf::cycle_finished> & update_river_model & softlink_forcing => generate_rivers
generate_rivers:failed => trigger_archive_wrf & write_empty_river_nml
generate_rivers:succeeded => !trigger_archive_wrf & !write_empty_river_nml
wrf_archive_trigger <wrf::cycle_finished>:failed | generate_rivers:failed => write_empty_river_nml
generate_rivers:succeeded => !write_empty_river_nml
generate_rivers:succeeded | write_empty_river_nml => mv_river_files => write_river_number
write_run_namelist => write_river_number => run_fvcom
......@@ -168,7 +175,7 @@
submission polling intervals = PT10S
execution polling intervals = PT10S, PT1M
[[[directives]]]
--nodes = {{MIN_NODES}}-{{MAX_NODES}}
--nodes = {{NODES}}
--ntasks-per-node=20
--threads-per-core=1
--time=24:00:00
......@@ -207,7 +214,7 @@
inherit = remote_job
[[softlink_forcing]]
[[softlink_forcing_remote]]
inherit = slurm_job_1
inherit = slurm_job_1
[[wrf_suite_trigger]]
script =""
......@@ -248,12 +255,20 @@
interval = PT1M
max-polls = 1440
[[[job]]]
execution retry delays = 3*PT15M
execution retry delays = 3*PT15M
[[get_archive_wrf_file]]
inherit = remote_job
[[convert_wrf_file]]
inherit = slurm_job_1
[[adjust_namelist_met]]
inherit = remote_job
script = """
sed -i "s|.*AIRPRESSURE_ON.*|AIRPRESSURE_ON=F,|" ${ROSE_DATAC}/${GRID_NAME}_run.nml
sed -i "s|.*HEATING_ON.*|HEATING_ON=F,|" ${ROSE_DATAC}/${GRID_NAME}_run.nml
sed -i "s|.*RECIPITATION_ON.*|PRECIPITATION_ON=F,|" ${ROSE_DATAC}/${GRID_NAME}_run.nml
sed -i "s|.*WIND_ON.*|WIND_ON=T,|" ${ROSE_DATAC}/${GRID_NAME}_run.nml
"""
[[update_river_model]]
[[generate_rivers]]
......@@ -267,14 +282,9 @@
NO_RIVERS=$(grep "&NML_RIVER" ${ROSE_DATAC}/${GRID_NAME}_riv.nml | wc -l);
sed -i "s|.*RIVER_NUMBER.*| RIVER_NUMBER = ${NO_RIVERS},|" ${ROSE_DATAC}/${GRID_NAME}_run.nml
"""
[[trigger_archive_wrf]]
script = """
echo "Get the dates missing from the river model and pass to the wrf archive run"
"""
[[write_empty_river_nml]]
script = """
echo "Make a fake riv.nml and copy to run directory"
touch ${GRID_NAME}_riv.nml; cp ${GRID_NAME}_riv.nml /${REMOTE_TRANSFER_DIR}/
"""
[[run_fvcom]]
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment