diff --git a/src/main/java/gov/usgs/earthquake/nshmp/gmm/Gmm.java b/src/main/java/gov/usgs/earthquake/nshmp/gmm/Gmm.java index 69def58b5a85c245ea17cd9b620677a0aec37504..022aa2a2eb88bfcd44149db6aee8461bc5852132 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/gmm/Gmm.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/gmm/Gmm.java @@ -853,33 +853,33 @@ public enum Gmm { /* NGA-East for USGS */ - /** @see NgaEast_2018 */ + /** @see NgaEast */ NGA_EAST_2018( NgaEast.NgaEast_2018.class, NgaEast.NgaEast_2018.NAME, NgaEast.COEFFS_SIGMA_PANEL, NgaEast.CONSTRAINTS), - /** NGA-East for USGS with Guo & Chapman Gulf CPA **/ + /** @see NgaEast */ NGA_EAST_2023( - NgaEast.Usgs17Cpa.class, - NgaEast.Usgs17Cpa.NAME, + NgaEast.NgaEast_2023.class, + NgaEast.NgaEast_2023.NAME, NgaEast.COEFFS_SIGMA_PANEL, NgaEast.CONSTRAINTS), /* NGA-East USGS Seed Tree */ - /** @see NgaEast_2018 */ + /** @see NgaEast */ NGA_EAST_SEEDS_2018( NgaEast.UsgsSeeds_2018.class, NgaEast.UsgsSeeds_2018.NAME, NgaEast.COEFFS_SIGMA_PANEL, NgaEast.CONSTRAINTS), - /** NGA-East for USGS Seed Models with Guo & Chapman Gulf CPA **/ + /** @see NgaEast */ NGA_EAST_SEEDS_2023( - NgaEast.UsgsSeedsCpa.class, - NgaEast.UsgsSeedsCpa.NAME, + NgaEast.UsgsSeeds_2023.class, + NgaEast.UsgsSeeds_2023.NAME, NgaEast.COEFFS_SIGMA_PANEL, NgaEast.CONSTRAINTS), @@ -1524,7 +1524,6 @@ public enum Gmm { NGA_EAST_SEED_1CVSP, NGA_EAST_SEED_2CCSP, NGA_EAST_SEED_2CVSP, - // NGA_EAST_SEED_ANC15, NGA_EAST_SEED_B_A04, NGA_EAST_SEED_B_AB14, NGA_EAST_SEED_B_AB95, diff --git a/src/main/java/gov/usgs/earthquake/nshmp/gmm/NgaEast.java b/src/main/java/gov/usgs/earthquake/nshmp/gmm/NgaEast.java index 2012c18ac3352e72b3bf6a6c576a2b4ed8e6cdd5..5e130b953a54a06d53d9ffe4fc85110c3e7ee322 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/gmm/NgaEast.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/gmm/NgaEast.java @@ -109,28 +109,6 @@ import gov.usgs.earthquake.nshmp.tree.LogicTree; * @author U.S. Geological Survey * @see Gmm#NGA_EAST_2018 * @see Gmm#NGA_EAST_SEEDS_2018 - * @see Gmm#NGA_EAST_SEED_1CCSP - * @see Gmm#NGA_EAST_SEED_1CVSP - * @see Gmm#NGA_EAST_SEED_2CCSP - * @see Gmm#NGA_EAST_SEED_2CVSP - * @see Gmm#NGA_EAST_SEED_B_A04 - * @see Gmm#NGA_EAST_SEED_B_AB14 - * @see Gmm#NGA_EAST_SEED_B_AB95 - * @see Gmm#NGA_EAST_SEED_B_BCA10D - * @see Gmm#NGA_EAST_SEED_B_BS11 - * @see Gmm#NGA_EAST_SEED_B_SGD02 - * @see Gmm#NGA_EAST_SEED_FRANKEL - * @see Gmm#NGA_EAST_SEED_GRAIZER - * @see Gmm#NGA_EAST_SEED_GRAIZER16 - * @see Gmm#NGA_EAST_SEED_GRAIZER17 - * @see Gmm#NGA_EAST_SEED_HA15 - * @see Gmm#NGA_EAST_SEED_PEER_EX - * @see Gmm#NGA_EAST_SEED_PEER_GP - * @see Gmm#NGA_EAST_SEED_PZCT15_M1SS - * @see Gmm#NGA_EAST_SEED_PZCT15_M2ES - * @see Gmm#NGA_EAST_SEED_SP15 - * @see Gmm#NGA_EAST_SEED_SP16 - * @see Gmm#NGA_EAST_SEED_YA15 */ public abstract class NgaEast implements GroundMotionModel { @@ -362,10 +340,7 @@ public abstract class NgaEast implements GroundMotionModel { return φs2s2; } - /* - * Base model used for sammons and seed model groups that share common site - * class and sigma models. - */ + /* Implementation of sammons map models. */ static class NgaEast_2018 extends NgaEast { static final String NAME = NgaEast.NAME + " (2018)"; static final int MODEL_COUNT = 17; @@ -407,37 +382,6 @@ public abstract class NgaEast implements GroundMotionModel { } } - /* Guo and Chapman Gulf Coastal Plain Amplification (CPA) model. */ - @Deprecated - static class Usgs17Cpa extends NgaEast_2018 { - - // static final String NAME = "NGA-East (2023)"; - static final String NAME = NgaEast.NAME + " (Gulf Coast)"; - - Usgs17Cpa(Imt imt) { - super(imt); - } - - @Override - public LogicTree<GroundMotion> calc(GmmInput in) { - double cpa = Double.isNaN(in.zSed) - ? 0.0 - : log(ChapmanGuo_2021.cpaPsaRatio(imt, in.zSed, in.Mw, in.rJB)); - Position p = tables[0].position(in.rRup, in.Mw); - double[] μs = new double[MODEL_COUNT]; - for (int i = 0; i < MODEL_COUNT; i++) { - double μ = tables[i].get(p); - μs[i] = μ + cpa; - } - double[] σs = new double[] { - sigmaEpri(in.Mw), - sigmaPanel(in.Mw, 3000.0) }; - return GroundMotions.createTree( - MEAN_IDS, μs, μWts, - SIGMA_IDS, σs, SIGMA_WTS); - } - } - /* * Updated NGA-East for use in the 2023 nshm-conus update. This model includes * (1) the final published nonlinear site amplification model of Hshash et al. @@ -575,45 +519,12 @@ public abstract class NgaEast implements GroundMotionModel { } } - /* Guo and Chapman Gulf Coastal Plain Amplification (CPA) model. */ - @Deprecated - static class UsgsSeedsCpa extends UsgsSeeds_2018 { - - static final String NAME = UsgsSeeds_2018.NAME + " (Gulf Coast)"; - - UsgsSeedsCpa(Imt imt) { - super(imt); - } - - @Override - public LogicTree<GroundMotion> calc(GmmInput in) { - GmmInput inRock = GmmInput.builder().fromCopy(in).vs30(3000).build(); - double cpa = Double.isNaN(in.zSed) - ? 0.0 - : log(ChapmanGuo_2021.cpaPsaRatio(imt, in.zSed, in.Mw, in.rJB)); - Position p = tables.values().iterator().next().position(in.rRup, in.Mw); - double[] μs = new double[GMMS.size()]; - for (int i = 0; i < GMMS.size(); i++) { - Gmm seed = GMMS.get(i); - if (seed == Gmm.NGA_EAST_SEED_SP16) { - μs[i] = GroundMotions.combine(sp16.calc(inRock)).mean() + cpa; - } else if (imt == Imt.PGV && noPgvSeeds.contains(seed)) { - // use custom input to ensure hard rock from seeds - μs[i] = UsgsPgvSupport.calcAB20Pgv(seed, inRock).mean() + cpa; - } else { - μs[i] = tables.get(seed).get(p) + cpa; - } - } - double[] σs = new double[] { - sigmaEpri(in.Mw), - sigmaPanel(in.Mw, 3000) }; - return GroundMotions.createTree( - MEAN_IDS, μs, MEAN_WTS, - SIGMA_IDS, σs, SIGMA_WTS); - } - } - - /* Guo and Chapman Gulf Coastal Plain Amplification (CPA) model. */ + /* + * Updated NGA-East for use in the 2023 nshm-conus update. This model includes + * (1) the final published nonlinear site amplification model of Hshash et al. + * (2020) and (2) the Gulf and Atlantic coastal plain effects model of Chapman + * & Guo (2021). + */ static class UsgsSeeds_2023 extends UsgsSeeds_2018 { static final String NAME = NgaEast.NAME + " Seed Tree (2023)"; @@ -700,8 +611,8 @@ public abstract class NgaEast implements GroundMotionModel { } static final class Seed_2CCSP extends Seed { - static final String ID = "2CCSPᵀ"; - static final String NAME = Seed.NAME + ID; + static final String ID = "2CCSP"; + static final String NAME = Seed.NAME + ID + "ᵀ"; Seed_2CCSP(Imt imt) { super(ID, imt); @@ -709,23 +620,14 @@ public abstract class NgaEast implements GroundMotionModel { } static final class Seed_2CVSP extends Seed { - static final String ID = "2CVSPᵀ"; - static final String NAME = Seed.NAME + ID; + static final String ID = "2CVSP"; + static final String NAME = Seed.NAME + ID + "ᵀ"; Seed_2CVSP(Imt imt) { super(ID, imt); } } - static final class Seed_ANC15 extends Seed { - static final String ID = "ANC15"; - static final String NAME = Seed.NAME + ID; - - Seed_ANC15(Imt imt) { - super(ID, imt); - } - } - static final class Seed_B_a04 extends Seed { static final String ID = "B_a04"; static final String NAME = Seed.NAME + ID; @@ -745,8 +647,8 @@ public abstract class NgaEast implements GroundMotionModel { } static final class Seed_B_ab95 extends Seed { - static final String ID = "B_ab95ᵀ"; - static final String NAME = Seed.NAME + ID; + static final String ID = "B_ab95"; + static final String NAME = Seed.NAME + ID + "ᵀ"; Seed_B_ab95(Imt imt) { super(ID, imt); @@ -754,8 +656,8 @@ public abstract class NgaEast implements GroundMotionModel { } static final class Seed_B_bca10d extends Seed { - static final String ID = "B_bca10dᵀ"; - static final String NAME = Seed.NAME + ID; + static final String ID = "B_bca10d"; + static final String NAME = Seed.NAME + ID + "ᵀ"; Seed_B_bca10d(Imt imt) { super(ID, imt); @@ -763,8 +665,8 @@ public abstract class NgaEast implements GroundMotionModel { } static final class Seed_B_bs11 extends Seed { - static final String ID = "B_bs11ᵀ"; - static final String NAME = Seed.NAME + ID; + static final String ID = "B_bs11"; + static final String NAME = Seed.NAME + ID + "ᵀ"; Seed_B_bs11(Imt imt) { super(ID, imt); @@ -781,8 +683,8 @@ public abstract class NgaEast implements GroundMotionModel { } static final class Seed_B20_ab14mod1 extends Seed { - static final String ID = "B20_ab14mod1*"; - static final String NAME = Seed.NAME + ID; + static final String ID = "B20_ab14mod1"; + static final String NAME = Seed.NAME + ID + "*"; Seed_B20_ab14mod1(Imt imt) { super(ID, imt); @@ -790,8 +692,8 @@ public abstract class NgaEast implements GroundMotionModel { } static final class Seed_B20_ab14mod2 extends Seed { - static final String ID = "B20_ab14mod2*"; - static final String NAME = Seed.NAME + ID; + static final String ID = "B20_ab14mod2"; + static final String NAME = Seed.NAME + ID + "*"; Seed_B20_ab14mod2(Imt imt) { super(ID, imt); @@ -799,8 +701,8 @@ public abstract class NgaEast implements GroundMotionModel { } static final class Seed_B20_bca10d extends Seed { - static final String ID = "B20_bca10d*"; - static final String NAME = Seed.NAME + ID; + static final String ID = "B20_bca10d"; + static final String NAME = Seed.NAME + ID + "*"; Seed_B20_bca10d(Imt imt) { super(ID, imt); @@ -808,8 +710,8 @@ public abstract class NgaEast implements GroundMotionModel { } static final class Seed_Frankel extends Seed { - static final String ID = "Frankelᵀ"; - static final String NAME = Seed.NAME + ID; + static final String ID = "Frankel"; + static final String NAME = Seed.NAME + ID + "ᵀ"; Seed_Frankel(Imt imt) { super(ID, imt); @@ -826,8 +728,8 @@ public abstract class NgaEast implements GroundMotionModel { } static final class Seed_Graizer16 extends Seed { - static final String ID = "Graizer16ᵀ*"; - static final String NAME = Seed.NAME + ID; + static final String ID = "Graizer16"; + static final String NAME = Seed.NAME + ID + "ᵀ*"; Seed_Graizer16(Imt imt) { super(ID, imt); @@ -835,8 +737,8 @@ public abstract class NgaEast implements GroundMotionModel { } static final class Seed_Graizer17 extends Seed { - static final String ID = "Graizer17ᵀ*"; - static final String NAME = Seed.NAME + ID; + static final String ID = "Graizer17"; + static final String NAME = Seed.NAME + ID + "ᵀ*"; Seed_Graizer17(Imt imt) { super(ID, imt); @@ -844,8 +746,8 @@ public abstract class NgaEast implements GroundMotionModel { } static final class Seed_HA15 extends Seed { - static final String ID = "HA15ᵀ"; - static final String NAME = Seed.NAME + ID; + static final String ID = "HA15"; + static final String NAME = Seed.NAME + ID + "ᵀ"; Seed_HA15(Imt imt) { super(ID, imt); @@ -862,8 +764,8 @@ public abstract class NgaEast implements GroundMotionModel { } static final class Seed_PEER_GP extends Seed { - static final String ID = "PEER_GPᵀ"; - static final String NAME = Seed.NAME + ID; + static final String ID = "PEER_GP"; + static final String NAME = Seed.NAME + ID + "ᵀ"; Seed_PEER_GP(Imt imt) { super(ID, imt); @@ -871,8 +773,8 @@ public abstract class NgaEast implements GroundMotionModel { } static final class Seed_PZCT15_M1SS extends Seed { - static final String ID = "PZCT15_M1SSᵀ"; - static final String NAME = Seed.NAME + ID; + static final String ID = "PZCT15_M1SS"; + static final String NAME = Seed.NAME + ID + "ᵀ"; Seed_PZCT15_M1SS(Imt imt) { super(ID, imt); @@ -880,8 +782,8 @@ public abstract class NgaEast implements GroundMotionModel { } static final class Seed_PZCT15_M2ES extends Seed { - static final String ID = "PZCT15_M2ESᵀ"; - static final String NAME = Seed.NAME + ID; + static final String ID = "PZCT15_M2ES"; + static final String NAME = Seed.NAME + ID + "ᵀ"; Seed_PZCT15_M2ES(Imt imt) { super(ID, imt); @@ -898,8 +800,8 @@ public abstract class NgaEast implements GroundMotionModel { } static final class Seed_YA15 extends Seed { - static final String ID = "YA15ᵀ"; - static final String NAME = Seed.NAME + ID; + static final String ID = "YA15"; + static final String NAME = Seed.NAME + ID + "ᵀ"; Seed_YA15(Imt imt) { super(ID, imt);