Skip to content
Snippets Groups Projects
Commit e5abf450 authored by Powers, Peter M.'s avatar Powers, Peter M.
Browse files

Merge branch 'increment-lib' into 'main'

Increment lib

Closes #509

See merge request !602
parents 30799a97 65eb70ca
No related branches found
No related tags found
2 merge requests!603Production Release,!602Increment lib
Pipeline #120189 passed with warnings
...@@ -10,7 +10,7 @@ micronautRxVersion = 2.1.1 ...@@ -10,7 +10,7 @@ micronautRxVersion = 2.1.1
micronautPluginVersion = 3.1.1 micronautPluginVersion = 3.1.1
nodePluginVersion = 3.0.1 nodePluginVersion = 3.0.1
nodeVersion = 16.3.0 nodeVersion = 16.3.0
nshmpLibVersion = 0.9.10 nshmpLibVersion = 0.9.11
nshmpWsUtilsVersion = 0.1.7 nshmpWsUtilsVersion = 0.1.7
shadowVersion = 7.1.2 shadowVersion = 7.1.2
spotbugsVersion = 4.7.0 spotbugsVersion = 4.7.0
......
...@@ -52,6 +52,7 @@ import gov.usgs.earthquake.nshmp.data.XySequence; ...@@ -52,6 +52,7 @@ import gov.usgs.earthquake.nshmp.data.XySequence;
import gov.usgs.earthquake.nshmp.gmm.Imt; import gov.usgs.earthquake.nshmp.gmm.Imt;
import gov.usgs.earthquake.nshmp.internal.Logging; import gov.usgs.earthquake.nshmp.internal.Logging;
import gov.usgs.earthquake.nshmp.model.HazardModel; import gov.usgs.earthquake.nshmp.model.HazardModel;
import gov.usgs.earthquake.nshmp.model.SiteData;
/** /**
* Disaggregate probabilistic seismic hazard at a return period of interest or * Disaggregate probabilistic seismic hazard at a return period of interest or
...@@ -165,7 +166,10 @@ public class DisaggCalc { ...@@ -165,7 +166,10 @@ public class DisaggCalc {
: OptionalDouble.empty(); : OptionalDouble.empty();
/* Sites */ /* Sites */
List<Site> sites = Sites.fromCsv(siteFile, model.siteData(), vs30); SiteData siteData = config.hazard.useSiteData
? model.siteData()
: SiteData.EMPTY;
List<Site> sites = Sites.fromCsv(siteFile, siteData, vs30);
log.info("Sites: " + sites.size()); log.info("Sites: " + sites.size());
Set<Imt> modelImts = model.config().hazard.imts; Set<Imt> modelImts = model.config().hazard.imts;
...@@ -288,7 +292,8 @@ public class DisaggCalc { ...@@ -288,7 +292,8 @@ public class DisaggCalc {
log.info(PROGRAM + " (return period): calculating ..."); log.info(PROGRAM + " (return period): calculating ...");
HazardExport handler = HazardExport.create(model, config, sites, out); boolean namedSites = sites.get(0).name() != Site.NO_NAME;
HazardExport handler = HazardExport.create(model, config, namedSites, out);
Path disaggDir = out.resolve("disagg"); Path disaggDir = out.resolve("disagg");
Files.createDirectory(disaggDir); Files.createDirectory(disaggDir);
......
...@@ -12,7 +12,6 @@ import java.util.Arrays; ...@@ -12,7 +12,6 @@ import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Optional; import java.util.Optional;
import java.util.OptionalDouble; import java.util.OptionalDouble;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService; import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors; import java.util.concurrent.Executors;
import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.ThreadPoolExecutor;
...@@ -111,10 +110,13 @@ public class HazardCalc { ...@@ -111,10 +110,13 @@ public class HazardCalc {
log.info(""); log.info("");
Path out = createOutputDir(config.output.directory); Path out = createOutputDir(config.output.directory);
SiteData siteData = config.hazard.useSiteData
? model.siteData()
: SiteData.EMPTY;
if (config.hazard.vs30s.isEmpty()) { if (config.hazard.vs30s.isEmpty()) {
List<Site> sites = readSites(args[1], model.siteData(), OptionalDouble.empty(), log); List<Site> sites = readSites(args[1], siteData, OptionalDouble.empty(), log);
log.info("Sites: " + Sites.toString(sites)); log.info("Sites: " + Sites.toString(sites));
calc(model, config, sites, out, log); calc(model, config, sites, out, log);
...@@ -122,7 +124,7 @@ public class HazardCalc { ...@@ -122,7 +124,7 @@ public class HazardCalc {
for (double vs30 : config.hazard.vs30s) { for (double vs30 : config.hazard.vs30s) {
log.info("Vs30 batch: " + vs30); log.info("Vs30 batch: " + vs30);
List<Site> sites = readSites(args[1], model.siteData(), OptionalDouble.of(vs30), log); List<Site> sites = readSites(args[1], siteData, OptionalDouble.of(vs30), log);
log.info("Sites: " + Sites.toString(sites)); log.info("Sites: " + Sites.toString(sites));
Path vs30dir = out.resolve("vs30-" + ((int) vs30)); Path vs30dir = out.resolve("vs30-" + ((int) vs30));
Files.createDirectory(vs30dir); Files.createDirectory(vs30dir);
...@@ -177,14 +179,15 @@ public class HazardCalc { ...@@ -177,14 +179,15 @@ public class HazardCalc {
CalcConfig config, CalcConfig config,
List<Site> sites, List<Site> sites,
Path out, Path out,
Logger log) throws IOException, InterruptedException, ExecutionException { Logger log) throws IOException {
int threadCount = config.performance.threadCount.value(); int threadCount = config.performance.threadCount.value();
final ExecutorService exec = initExecutor(threadCount); final ExecutorService exec = initExecutor(threadCount);
log.info("Threads: " + ((ThreadPoolExecutor) exec).getCorePoolSize()); log.info("Threads: " + ((ThreadPoolExecutor) exec).getCorePoolSize());
log.info(PROGRAM + ": calculating ..."); log.info(PROGRAM + ": calculating ...");
HazardExport handler = HazardExport.create(model, config, sites, out); boolean namedSites = sites.get(0).name() != Site.NO_NAME;
HazardExport handler = HazardExport.create(model, config, namedSites, out);
Stopwatch stopwatch = Stopwatch.createStarted(); Stopwatch stopwatch = Stopwatch.createStarted();
int logInterval = sites.size() < 100 ? 1 : sites.size() < 1000 ? 10 : 100; int logInterval = sites.size() < 100 ? 1 : sites.size() < 1000 ? 10 : 100;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment