Mondaic
This API reference is not for the latest stable Salvus version.

salvus.opt.models.structured_model

A structured model class based on xarray.

Classes

StructuredModel

class StructuredModel(salvus.opt.models.base_model.BaseModel):
    def __init__(
        self,
        name: str,
        model: Union[str, pathlib.Path, xarray.core.dataset.Dataset],
        fields: List[str],
    ):
        ...

Structured inversion model based on xarray.

Parameters
  • name str — Name of the model.
  • model Union[str, pathlib.Path, xarray.core.dataset.Dataset] — xarray dataset
  • fields List[str] — Names of the elemental fields to use.
Attributes
model xarray.core.dataset.Dataset

The actual dataset representing the model.

name str

Model name.

status str

Model status to keep track of whether the model has been modified.

Methods
from_disk()
def from_disk(parent_folder: pathlib.Path, d: Dict) -> StructuredModel:
    ...

Load a model from disk. This will use the dictionary and path provided.

Parameters
  • parent_folder pathlib.Path — Path to store the model.
  • d Dict — Dictionary containing meta information of the model.
Returns StructuredModel
from_json()
def from_json(d: Dict) -> typing_extensions.Self:
    ...

Create a model from a dictionary.

Parameters
  • d Dict — Dictionary containing meta information of the model.
Returns typing_extensions.Self
copy()
def copy(self, name: str) -> StructuredModel:
    ...

Copy the model.

Parameters
  • name str — Name of the new model.
Returns StructuredModel
dot()
def dot(self, other: StructuredModel) -> float:
    ...

Compute dot product.

Parameters
  • other StructuredModel — Other model to compute the dot product with.
Returns float
max()
def max(self, other: StructuredModel) -> StructuredModel:
    ...

In-place point-wise maximum.

Parameters
  • other StructuredModel — Model to compare with.
Returns StructuredModel — A reference to the modified input model.
min()
def min(self, other: StructuredModel) -> StructuredModel:
    ...

In-place point-wise minimum.

Parameters
  • other StructuredModel — Model to compare with.
Returns StructuredModel — A reference to the modified input model.
norm()
def norm(self) -> float:
    ...

Return the model norm.

Returns float
norm_inf()
def norm_inf(self) -> float:
    ...

Infinity norm.

Returns float
to_disk()
def to_disk(self, parent_folder: Union[str, pathlib.Path]) -> Dict:
    ...

Serialize the model to JSON (and an associated npy file).

Parameters
  • parent_folder Union[str, pathlib.Path] — Parent folder where the JSON + nc files should be stored.
Returns Dict
to_json()
def to_json(self, external_file_hash: Optional[str] = None) -> Dict:
    ...

Serialize the object to dictionary that can be written to JSON.

Parameters
  • external_file_hash Optional[str] — Hash of any external files associated with this object. Can be passed here in which case it will be stored in a centralized location in the JSON file.
Returns Dict