From 6aad3d5ebeabd35323e2d38adf35e12b777e85cc Mon Sep 17 00:00:00 2001
From: Brandon Clayton <bclayton@usgs.gov>
Date: Wed, 26 Jan 2022 16:47:35 -0700
Subject: [PATCH] Fix shape

---
 .../reader/BoundingReaderGroundMotions.java   |  4 ++--
 .../reader/BoundingReaderHazardCurves.java    | 22 +++++++++----------
 2 files changed, 13 insertions(+), 13 deletions(-)

diff --git a/src/main/java/gov/usgs/earthquake/nshmp/netcdf/reader/BoundingReaderGroundMotions.java b/src/main/java/gov/usgs/earthquake/nshmp/netcdf/reader/BoundingReaderGroundMotions.java
index b509a99..1923bfd 100644
--- a/src/main/java/gov/usgs/earthquake/nshmp/netcdf/reader/BoundingReaderGroundMotions.java
+++ b/src/main/java/gov/usgs/earthquake/nshmp/netcdf/reader/BoundingReaderGroundMotions.java
@@ -137,15 +137,15 @@ public class BoundingReaderGroundMotions extends BoundingReader<XySequence> {
 
       // Build origin array, e.g [0, siteClass]
       var origin = netcdf.netcdfShape().buildShape()
+          .add(IndexKey.IMT, 0)
           .add(IndexKey.SITE_CLASS, iSiteClass)
-          .add(IndexKey.IML, 0)
           .reduce()
           .build();
 
       // Build shape array, e.g. [nImts, 1]
       var shape = netcdf.netcdfShape().buildShape()
-          .add(IndexKey.SITE_CLASS, 1)
           .add(IndexKey.IMT, imts.size())
+          .add(IndexKey.SITE_CLASS, 1)
           .reduce()
           .build();
 
diff --git a/src/main/java/gov/usgs/earthquake/nshmp/netcdf/reader/BoundingReaderHazardCurves.java b/src/main/java/gov/usgs/earthquake/nshmp/netcdf/reader/BoundingReaderHazardCurves.java
index 488375c..3398ef1 100644
--- a/src/main/java/gov/usgs/earthquake/nshmp/netcdf/reader/BoundingReaderHazardCurves.java
+++ b/src/main/java/gov/usgs/earthquake/nshmp/netcdf/reader/BoundingReaderHazardCurves.java
@@ -70,21 +70,22 @@ public class BoundingReaderHazardCurves extends BoundingReader<StaticDataHazardC
 
       // Build target shape array, e.g. [2, 2, nIML, nIMT, nSiteClass]
       var targetShape = netcdfShape.buildShape()
-          .add(IndexKey.SITE_CLASS, netcdfData.siteClasses().size())
-          .add(IndexKey.LATITUDE, 2)
           .add(IndexKey.LONGITUDE, 2)
-          .add(IndexKey.IMT, netcdfData.imts().size())
+          .add(IndexKey.LATITUDE, 2)
           .add(IndexKey.IML, netcdfData.nIml())
+          .add(IndexKey.IMT, netcdfData.imts().size())
+          .add(IndexKey.SITE_CLASS, netcdfData.siteClasses().size())
           .build();
 
       var aHazards = targetGroup.findVariableLocal(Key.HAZARD).read(targetOrigin, targetShape);
 
+      // Build final shape array, e.g. [1, 1, nIML, nIMT, nSiteClass]
       var shape = netcdfShape.buildShape()
-          .add(IndexKey.SITE_CLASS, netcdfData.siteClasses().size())
-          .add(IndexKey.LATITUDE, 1)
           .add(IndexKey.LONGITUDE, 1)
-          .add(IndexKey.IMT, netcdfData.imts().size())
+          .add(IndexKey.LATITUDE, 1)
           .add(IndexKey.IML, netcdfData.nIml())
+          .add(IndexKey.IMT, netcdfData.imts().size())
+          .add(IndexKey.SITE_CLASS, netcdfData.siteClasses().size())
           .build();
 
       for (var boundingLocation : boundingLocations) {
@@ -115,7 +116,6 @@ public class BoundingReaderHazardCurves extends BoundingReader<StaticDataHazardC
       Array hazards) {
     var netcdfData = ((NetcdfHazardCurves) netcdf).netcdfData();
     var vsImtHazardMap = StaticData.<StaticDataHazardCurves> builder();
-    var logger = Logger.getAnonymousLogger();
 
     for (int iSiteClass = 0; iSiteClass < netcdfData.siteClasses().size(); iSiteClass++) {
       var siteClass = netcdfData.siteClasses().get(iSiteClass);
@@ -126,17 +126,17 @@ public class BoundingReaderHazardCurves extends BoundingReader<StaticDataHazardC
 
         // Build origin array, e.g [0, imt, siteClass]
         var origin = netcdf.netcdfShape().buildShape()
-            .add(IndexKey.SITE_CLASS, iSiteClass)
-            .add(IndexKey.IMT, iImt)
             .add(IndexKey.IML, 0)
+            .add(IndexKey.IMT, iImt)
+            .add(IndexKey.SITE_CLASS, iSiteClass)
             .reduce()
             .build();
 
         // Build shape array, e.g. [nIML, 1, 1]
         var shape = netcdf.netcdfShape().buildShape()
-            .add(IndexKey.SITE_CLASS, 1)
-            .add(IndexKey.IMT, 1)
             .add(IndexKey.IML, netcdfData.nIml())
+            .add(IndexKey.IMT, 1)
+            .add(IndexKey.SITE_CLASS, 1)
             .reduce()
             .build();
 
-- 
GitLab