From 9fc5d61f45b160c7ced2c7889b811053b7ac6ea3 Mon Sep 17 00:00:00 2001 From: Peter Powers <pmpowers@usgs.gov> Date: Wed, 3 Nov 2021 09:57:21 -0600 Subject: [PATCH] lib site updates --- .../gov/usgs/earthquake/nshmp/DisaggCalc.java | 6 +++--- .../gov/usgs/earthquake/nshmp/DisaggEpsilon.java | 15 ++++++++------- .../gov/usgs/earthquake/nshmp/HazardCalc.java | 9 +++++---- .../java/gov/usgs/earthquake/nshmp/RateCalc.java | 7 +++---- .../usgs/earthquake/nshmp/www/meta/MetaUtil.java | 12 ++++++------ .../nshmp/www/services/HazardService.java | 4 +--- 6 files changed, 26 insertions(+), 27 deletions(-) diff --git a/src/main/java/gov/usgs/earthquake/nshmp/DisaggCalc.java b/src/main/java/gov/usgs/earthquake/nshmp/DisaggCalc.java index dccbe7cd4..4c8224c72 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/DisaggCalc.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/DisaggCalc.java @@ -6,6 +6,7 @@ import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; +import java.util.List; import java.util.Optional; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; @@ -22,7 +23,6 @@ import gov.usgs.earthquake.nshmp.calc.Hazard; import gov.usgs.earthquake.nshmp.calc.HazardCalcs; import gov.usgs.earthquake.nshmp.calc.HazardExport; import gov.usgs.earthquake.nshmp.calc.Site; -import gov.usgs.earthquake.nshmp.calc.Sites; import gov.usgs.earthquake.nshmp.calc.ThreadCount; import gov.usgs.earthquake.nshmp.internal.Logging; import gov.usgs.earthquake.nshmp.model.HazardModel; @@ -97,7 +97,7 @@ public class DisaggCalc { log.info(config.toString()); log.info(""); - Sites sites = HazardCalc.readSites(args[1], config, model.siteData(), log); + List<Site> sites = HazardCalc.readSites(args[1], config, model.siteData(), log); log.info("Sites: " + sites); double returnPeriod = config.disagg.returnPeriod; @@ -128,7 +128,7 @@ public class DisaggCalc { private static Path calc( HazardModel model, CalcConfig config, - Sites sites, + List<Site> sites, double returnPeriod, Logger log) throws IOException { diff --git a/src/main/java/gov/usgs/earthquake/nshmp/DisaggEpsilon.java b/src/main/java/gov/usgs/earthquake/nshmp/DisaggEpsilon.java index f0c60f602..066a6fca2 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/DisaggEpsilon.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/DisaggEpsilon.java @@ -219,7 +219,8 @@ public class DisaggEpsilon { * returns the path to the directory where results were written. * * TODO consider refactoring to supply an Optional<Double> return period to - * HazardCalc.calc() that will trigger disaggregations if the value is present. + * HazardCalc.calc() that will trigger disaggregations if the value is + * present. */ private static Path calc( HazardModel model, @@ -240,7 +241,7 @@ public class DisaggEpsilon { log.info(PROGRAM + ": calculating ..."); Path outDir = createOutputDir(config.output.directory); - Path siteDir = outDir.resolve("vs30-" + (int) sites.get(0).vs30); + Path siteDir = outDir.resolve("vs30-" + (int) sites.get(0).vs30()); Files.createDirectory(siteDir); Stopwatch stopwatch = Stopwatch.createStarted(); @@ -267,8 +268,8 @@ public class DisaggEpsilon { String filename = String.format( "edisagg_%.2f_%.2f.json", - site.location.longitude, - site.location.latitude); + site.location().longitude, + site.location().latitude); Path resultPath = siteDir.resolve(filename); Writer writer = Files.newBufferedWriter(resultPath); @@ -303,11 +304,11 @@ public class DisaggEpsilon { ResponseData(List<String> models, Site site, Imt imt, double iml) { this.models = models; - this.longitude = site.location.longitude; - this.latitude = site.location.latitude; + this.longitude = site.location().longitude; + this.latitude = site.location().latitude; this.imt = imt.toString(); this.iml = iml; - this.vs30 = site.vs30; + this.vs30 = site.vs30(); } } diff --git a/src/main/java/gov/usgs/earthquake/nshmp/HazardCalc.java b/src/main/java/gov/usgs/earthquake/nshmp/HazardCalc.java index c6a8fb44e..8218dc569 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/HazardCalc.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/HazardCalc.java @@ -9,6 +9,7 @@ import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.util.Arrays; +import java.util.List; import java.util.Optional; import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; @@ -107,7 +108,7 @@ public class HazardCalc { log.info(config.toString()); log.info(""); - Sites sites = readSites(args[1], config, model.siteData(), log); + List<Site> sites = readSites(args[1], config, model.siteData(), log); log.info("Sites: " + sites); Path out = calc(model, config, sites, log); @@ -130,7 +131,7 @@ public class HazardCalc { } } - static Sites readSites( + static List<Site> readSites( String arg, CalcConfig defaults, SiteData siteData, @@ -145,7 +146,7 @@ public class HazardCalc { try { return fname.endsWith(".csv") ? Sites.fromCsv(path, defaults, siteData) - : Sites.fromJson(path, defaults, siteData); + : Sites.fromGeoJson(path, defaults, siteData); } catch (IOException ioe) { throw new IllegalArgumentException( "Error parsing sites file [%s]; see sites file documentation"); @@ -159,7 +160,7 @@ public class HazardCalc { private static Path calc( HazardModel model, CalcConfig config, - Sites sites, + List<Site> sites, Logger log) throws IOException, InterruptedException, ExecutionException { int threadCount = config.performance.threadCount.value(); diff --git a/src/main/java/gov/usgs/earthquake/nshmp/RateCalc.java b/src/main/java/gov/usgs/earthquake/nshmp/RateCalc.java index cc3118f47..b923a90b8 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/RateCalc.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/RateCalc.java @@ -27,7 +27,6 @@ import gov.usgs.earthquake.nshmp.calc.CalcConfig; import gov.usgs.earthquake.nshmp.calc.EqRate; import gov.usgs.earthquake.nshmp.calc.EqRateExport; import gov.usgs.earthquake.nshmp.calc.Site; -import gov.usgs.earthquake.nshmp.calc.Sites; import gov.usgs.earthquake.nshmp.calc.ThreadCount; import gov.usgs.earthquake.nshmp.internal.Logging; import gov.usgs.earthquake.nshmp.model.HazardModel; @@ -107,7 +106,7 @@ public class RateCalc { log.info(config.toString()); log.info(""); - Sites sites = HazardCalc.readSites(args[1], config, model.siteData(), log); + List<Site> sites = HazardCalc.readSites(args[1], config, model.siteData(), log); log.info("Sites: " + sites); Path out = calc(model, config, sites, log); @@ -137,7 +136,7 @@ public class RateCalc { private static Path calc( HazardModel model, CalcConfig config, - Sites sites, + List<Site> sites, Logger log) throws IOException, ExecutionException, InterruptedException { ThreadCount threadCount = config.performance.threadCount; @@ -170,7 +169,7 @@ public class RateCalc { private static EqRateExport concurrentCalc( HazardModel model, CalcConfig config, - Sites sites, + List<Site> sites, Logger log, ListeningExecutorService executor) throws InterruptedException, ExecutionException, IOException { diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/meta/MetaUtil.java b/src/main/java/gov/usgs/earthquake/nshmp/www/meta/MetaUtil.java index b2153504d..74c7c7ab4 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/www/meta/MetaUtil.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/www/meta/MetaUtil.java @@ -33,15 +33,15 @@ public final class MetaUtil { public JsonElement serialize(Site site, Type typeOfSrc, JsonSerializationContext context) { JsonObject loc = new JsonObject(); - loc.addProperty("latitude", Maths.round(site.location.latitude, 3)); - loc.addProperty("longitude", Maths.round(site.location.longitude, 3)); + loc.addProperty("latitude", Maths.round(site.location().latitude, 3)); + loc.addProperty("longitude", Maths.round(site.location().longitude, 3)); JsonObject json = new JsonObject(); json.add("location", loc); - json.addProperty("vs30", site.vs30); - json.addProperty("vsInfered", site.vsInferred); - json.addProperty("z1p0", Double.isNaN(site.z1p0) ? null : site.z1p0); - json.addProperty("z2p5", Double.isNaN(site.z2p5) ? null : site.z2p5); + json.addProperty("vs30", site.vs30()); + json.addProperty("vsInfered", site.vsInferred()); + json.addProperty("z1p0", Double.isNaN(site.z1p0()) ? null : site.z1p0()); + json.addProperty("z2p5", Double.isNaN(site.z2p5()) ? null : site.z2p5()); return json; } diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/services/HazardService.java b/src/main/java/gov/usgs/earthquake/nshmp/www/services/HazardService.java index 10261bbff..a439c75bb 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/www/services/HazardService.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/www/services/HazardService.java @@ -35,7 +35,6 @@ import gov.usgs.earthquake.nshmp.www.meta.Status; import gov.usgs.earthquake.nshmp.www.services.ServicesUtil.ServiceQueryData; import gov.usgs.earthquake.nshmp.www.services.ServicesUtil.ServiceRequestData; import gov.usgs.earthquake.nshmp.www.services.SourceServices.SourceModel; - import io.micronaut.http.HttpRequest; import io.micronaut.http.HttpResponse; @@ -116,10 +115,9 @@ public final class HazardService { this.data = data; } - @Override + @Override // TODO this needs to pick up SiteData public Site apply(CalcConfig config) { return Site.builder() - .dataService(config.siteData.service) .location(Location.create(data.longitude, data.latitude)) .vs30(data.vs30) .build(); -- GitLab