Skip to content

Doc/nshm model relational.md#11

Open
chrisbc wants to merge 5 commits intomainfrom
doc/nshm-model-relational.md
Open

Doc/nshm model relational.md#11
chrisbc wants to merge 5 commits intomainfrom
doc/nshm-model-relational.md

Conversation

@chrisbc
Copy link
Copy Markdown
Member

@chrisbc chrisbc commented Nov 13, 2023

commit WIP on domain model (which includes relational work to date)


The NZ NSHM project publishes **Seismic Hazard Model** versions in the [GNS_Science/nzshm-model]() github repository.

Models may be Published or Partial.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd go with Published or Unpublished

Models may be Published or Partial.

- Published models are for use by 3rd parties e.g. `NSHM_v1.0.4`.
- Partial/Unpublished models are typically used for comparisons against complete models, e.g sensitivity tests. They usually are most informative when compared to a published model.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"Unpublished models are typically used for scientific experimentation, e.g. sensitivity tests or testing new concepts."
Remove sentence about "usually are most informative . . ."

class HazardModelRealisation {
vs30s() integer
LocationList() string[]
IMTList() string[]
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add IMTLList() string[]
we specify both the IMTs (intensity measure types) and the IMTLs (intensity measure type levels)

tag() string e.g. `Hik TL, N16.5, b0.95, C4, s0.42`
}

class SourceLogicTreeSource {
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't like the nomenclature that uses "Source" twice. What if we changed SourceLogicTreeSource to be simply Source? Just like a WalnutTree has Walnuts not WalnutTreeWalnuts


In `NSHM_v1.0.4` the model contains 4 SourceLogicTreeGroups: one each for Crustal, Hikurangi, Puysegur and Slab sources.

Each SourceLogicTreeSource is a re-useable arrangment of fault sources, so these are uniquely identified to support reuse in independent **Seismic Hazard Models**.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we follow the above change to Source then this could be changed to:
Each Source is a re-useable arrangement of ruptures (individual earthquake sources), so these are uniquely identified to support reuse in independent Seismic Hazard Models.


NSHM and many other SeismicHazardModels will include different types of SourceLogicTreeSource model.

In NZ NSHM we have three ...
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is too specific and restrictive. We can describe in generic terms that we can combine Source objects or have just a single one to create a SourceLogicTreeBranch. We can use the current model as an example of how sources are split by region and/or TRT and that some have multiple contributions (IFM + DSM) and others are just a DSM

notes() string
}

class SourceLogicTreeGroup {
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could we make our terminology less of a mounthful by using SRM instead of Source?
SRMLogicTree
SRMLogicTreeGroup
...

Though, this may then not match with what we've done in nzshm-model (does that matter?)

- Subduction sources contain a single fault source describing the ruptures that can occur across the subduction fault system.
- A single Slab source that describes source rates occuring in the interface region (25-)

We use the NRML (XML) file format for SourceLogicTreeSource sources. This format is required to run hazard calculation in Openquake, and it's well known throughout our user community.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is now a combination of XML and hdf5

}

SeismicHazardModel -- "0..*" HazardModelRealisation
HazardModelRealisation -- "0..*" HazardCurveResult
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure I follow the difference between HazardModelRealization and HazardCurveResult


???+ "Accessing the NSHM hazard realisations"

The NZ NSHM project makes Hazard Model Realisations available via a graphql web API. There is also a python client library that wraps the web API and also allows the user to cache results locally for better performance in many situations.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this true? We use THS to store/retrieve component realizations. The composite realizations are not kept (at the moment).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants