From 740e2ef640ccb545342c82857f14cb251e8414f8 Mon Sep 17 00:00:00 2001 From: Ana Ordonez Date: Mon, 25 Sep 2023 13:38:27 -0700 Subject: [PATCH 1/5] Update variability_across_timescales_PS_driver.py --- .../variability_across_timescales_PS_driver.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pcmdi_metrics/precip_variability/variability_across_timescales_PS_driver.py b/pcmdi_metrics/precip_variability/variability_across_timescales_PS_driver.py index c606be499..c5fd773b0 100644 --- a/pcmdi_metrics/precip_variability/variability_across_timescales_PS_driver.py +++ b/pcmdi_metrics/precip_variability/variability_across_timescales_PS_driver.py @@ -3,8 +3,6 @@ import glob import os -from genutil import StringConstructor - from pcmdi_metrics.mean_climate.lib.pmp_parser import PMPParser from pcmdi_metrics.precip_variability.lib import ( AddParserArgument, @@ -38,9 +36,11 @@ outdir = StringConstructor( str(outdir_template(output_type="%(output_type)", mip=mip, case_id=case_id)) ) +outdir_template = outdir_template.replace("%(mip)",mip).replace("%(case_id)",case_id) for output_type in ["graphics", "diagnostic_results", "metrics_results"]: - os.makedirs(outdir(output_type=output_type), exist_ok=True) - print(outdir(output_type=output_type)) + outdir = outdir_template.replace("%(output_type)",output_type) + os.makedirs(outdir, exist_ok=True) + print(outdir) # Check data in advance file_list = sorted(glob.glob(os.path.join(modpath, mod))) @@ -57,5 +57,5 @@ syr = prd[0] eyr = prd[1] precip_variability_across_timescale( - file_list, syr, eyr, dfrq, mip, dat, var, fac, nperseg, noverlap, outdir, cmec + file_list, syr, eyr, dfrq, mip, dat, var, fac, nperseg, noverlap, outdir_template, cmec ) From fa5040d47bfd392f39022aa4e64f920b2784a19e Mon Sep 17 00:00:00 2001 From: Ana Ordonez Date: Mon, 25 Sep 2023 13:40:01 -0700 Subject: [PATCH 2/5] Remove genutil constructor --- .../lib/lib_variability_across_timescales.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pcmdi_metrics/precip_variability/lib/lib_variability_across_timescales.py b/pcmdi_metrics/precip_variability/lib/lib_variability_across_timescales.py index 5f54506c7..74352ec9a 100644 --- a/pcmdi_metrics/precip_variability/lib/lib_variability_across_timescales.py +++ b/pcmdi_metrics/precip_variability/lib/lib_variability_across_timescales.py @@ -63,7 +63,7 @@ def precip_variability_across_timescale( # Write data (nc file) outfilename = "PS_pr." + str(dfrq) + "_regrid.180x90_" + dat + ".nc" custom_dataset = xr.merge([freqs, ps, rn, sig95]) - custom_dataset.to_netcdf(path=os.path.join(outdir(output_type="diagnostic_results"), outfilename)) + custom_dataset.to_netcdf(path=os.path.join(outdir.replace("%(output_type)","diagnostic_results"), outfilename)) # Power spectum of anomaly freqs, ps, rn, sig95 = Powerspectrum(anom, nperseg, noverlap) @@ -72,7 +72,7 @@ def precip_variability_across_timescale( # Write data (nc file) outfilename = "PS_pr." + str(dfrq) + "_regrid.180x90_" + dat + "_unforced.nc" custom_dataset = xr.merge([freqs, ps, rn, sig95]) - custom_dataset.to_netcdf(path=os.path.join(outdir(output_type="diagnostic_results"), outfilename)) + custom_dataset.to_netcdf(path=os.path.join(outdir.replace("%(output_type)","diagnostic_results"), outfilename)) # Write data (json file) psdmfm["RESULTS"][dat] = {} @@ -83,7 +83,7 @@ def precip_variability_across_timescale( "PS_pr." + str(dfrq) + "_regrid.180x90_area.freq.mean_" + dat + ".json" ) JSON = pcmdi_metrics.io.base.Base( - outdir(output_type="metrics_results"), outfilename + outdir.replace("%(output_type)","metrics_results"), outfilename ) JSON.write( psdmfm, From 5f44c39e603a53a5cffbf7ef5a9245ce25d915f1 Mon Sep 17 00:00:00 2001 From: Ana Ordonez Date: Mon, 25 Sep 2023 13:53:02 -0700 Subject: [PATCH 3/5] Remove string constructor --- .../variability_across_timescales_PS_driver.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/pcmdi_metrics/precip_variability/variability_across_timescales_PS_driver.py b/pcmdi_metrics/precip_variability/variability_across_timescales_PS_driver.py index c5fd773b0..5b1ee951d 100644 --- a/pcmdi_metrics/precip_variability/variability_across_timescales_PS_driver.py +++ b/pcmdi_metrics/precip_variability/variability_across_timescales_PS_driver.py @@ -33,9 +33,6 @@ # Create output directory case_id = param.case_id outdir_template = param.process_templated_argument("results_dir") -outdir = StringConstructor( - str(outdir_template(output_type="%(output_type)", mip=mip, case_id=case_id)) -) outdir_template = outdir_template.replace("%(mip)",mip).replace("%(case_id)",case_id) for output_type in ["graphics", "diagnostic_results", "metrics_results"]: outdir = outdir_template.replace("%(output_type)",output_type) From 34c54c6546cd108c07ea008e86db187ce591c8f2 Mon Sep 17 00:00:00 2001 From: Ana Ordonez Date: Mon, 25 Sep 2023 13:59:26 -0700 Subject: [PATCH 4/5] Remove process templated arg --- .../variability_across_timescales_PS_driver.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pcmdi_metrics/precip_variability/variability_across_timescales_PS_driver.py b/pcmdi_metrics/precip_variability/variability_across_timescales_PS_driver.py index 5b1ee951d..aeebb6856 100644 --- a/pcmdi_metrics/precip_variability/variability_across_timescales_PS_driver.py +++ b/pcmdi_metrics/precip_variability/variability_across_timescales_PS_driver.py @@ -32,7 +32,7 @@ # Create output directory case_id = param.case_id -outdir_template = param.process_templated_argument("results_dir") +outdir_template = param.results_dir outdir_template = outdir_template.replace("%(mip)",mip).replace("%(case_id)",case_id) for output_type in ["graphics", "diagnostic_results", "metrics_results"]: outdir = outdir_template.replace("%(output_type)",output_type) From 68a9a2577ba71958727954cb5e998b42e1d07e44 Mon Sep 17 00:00:00 2001 From: Ana Ordonez Date: Mon, 25 Sep 2023 14:05:57 -0700 Subject: [PATCH 5/5] Force str type --- .../variability_across_timescales_PS_driver.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pcmdi_metrics/precip_variability/variability_across_timescales_PS_driver.py b/pcmdi_metrics/precip_variability/variability_across_timescales_PS_driver.py index aeebb6856..45d4e4ee1 100644 --- a/pcmdi_metrics/precip_variability/variability_across_timescales_PS_driver.py +++ b/pcmdi_metrics/precip_variability/variability_across_timescales_PS_driver.py @@ -33,7 +33,7 @@ # Create output directory case_id = param.case_id outdir_template = param.results_dir -outdir_template = outdir_template.replace("%(mip)",mip).replace("%(case_id)",case_id) +outdir_template = outdir_template.replace("%(mip)",str(mip)).replace("%(case_id)",str(case_id)) for output_type in ["graphics", "diagnostic_results", "metrics_results"]: outdir = outdir_template.replace("%(output_type)",output_type) os.makedirs(outdir, exist_ok=True)