diff --git a/scripts/cleanup_exp.py b/scripts/cleanup_exp.py new file mode 100644 index 0000000000000000000000000000000000000000..99b77d65601ecb955c273dc87e491581923b72ce --- /dev/null +++ b/scripts/cleanup_exp.py @@ -0,0 +1,36 @@ +import os +from config.cfg import exp, cluster +from utils import try_remove + +"""Run this script after an experiment to reduce cluster disk usage. + +1) remove wrfrst +2) remove run_DART folders from exp +3) remove run_WRF files from exp +""" +expname = sys.argv[1] +keep_last_init_wrfrst = True + +print('removing files for exp', exp) + +# 1) wrfrst +inits = reversed(sorted(glob.glob(cluster.archive_base+'/'+expname+'/20??-??-??_??:??'))) +for k, init in enumerate(inits): + rst_files = glob.glob(init+'/*/wrfrst_*') + + if k == 0: # last init of exp + + if not keep_last_init_wrfrst: + for f in rst_files: + try_remove(f) + else: + for f in rst_files: + try_remove(f) + +# 2) run_DART/exp +os.removedirs(cluster.tmpfiledir+'/run_DART/'+expname) + +# 3) run_WRF/exp +for iens in range(1, exp.n_ens+1): + os.removedirs(cluster.wrf_rundir(iens)) + print(cluster.wrf_rundir(iens), 'removed.') \ No newline at end of file