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

lib site updates

parent 8f22b37b
No related branches found
No related tags found
2 merge requests!577Production Release | nshmp-haz,!564Command line and lib updates
......@@ -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 {
......
......@@ -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();
}
}
......
......@@ -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();
......
......@@ -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 {
......
......@@ -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;
}
......
......@@ -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();
......
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