Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Remove genutil from precip variability #984

Merged
merged 5 commits into from
Sep 26, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand All @@ -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] = {}
Expand All @@ -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,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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,
Expand Down Expand Up @@ -34,13 +32,12 @@

# 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 = param.results_dir
outdir_template = outdir_template.replace("%(mip)",str(mip)).replace("%(case_id)",str(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)))
Expand All @@ -57,5 +54,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
)