salvus.opt.models.unstructured_model
An unstructured mesh model
Classes
UnstructuredModel
UnstructuredModelclass UnstructuredModel(salvus.opt.models.base_model.BaseModel):
def __init__(
self,
name: str,
model: Union[
str, pathlib.Path, salvus.mesh.unstructured_mesh.UnstructuredMesh
],
fields: List[str],
):
...Unstructured mesh inversion model.
Parameters
namestr — Name of the model.modelUnion[str, pathlib.Path, salvus.mesh.unstructured_mesh.UnstructuredMesh] — The unstructured mesh.fieldsList[str] — Names of the elemental fields to use.
Attributes
model salvus.mesh.unstructured_mesh.UnstructuredMesh
model salvus.mesh.unstructured_mesh.UnstructuredMeshThe actual dataset representing the model.
name str
name strModel name.
status str
status strModel status to keep track of whether the model has been modified.
Methods
from_disk()
from_disk()def from_disk(parent_folder: pathlib.Path, d: Dict) -> UnstructuredModel:
...Load a model from disk. This will use the dictionary and path provided.
Parameters
parent_folderpathlib.Path — Path to store the model.dDict — Dictionary containing meta information of the model.
Returns UnstructuredModel
from_json()
from_json()def from_json(d: Dict) -> typing_extensions.Self:
...Create a model from a dictionary.
Parameters
dDict — Dictionary containing meta information of the model.
Returns typing_extensions.Self
copy()
copy()def copy(self, name: str) -> UnstructuredModel:
...Copy the model.
Parameters
namestr — Name of the new model.
Returns UnstructuredModel
dot()
dot()def dot(self, other: UnstructuredModel) -> float:
...Compute dot product.
Parameters
otherUnstructuredModel — Other model to compute the dot product with.
Returns float
max()
max()def max(self, other: UnstructuredModel) -> UnstructuredModel:
...In-place point-wise maximum.
Parameters
otherUnstructuredModel — Model to compare with.
Returns UnstructuredModel — A reference to the modified input model.
min()
min()def min(self, other: UnstructuredModel) -> UnstructuredModel:
...In-place point-wise minimum.
Parameters
otherUnstructuredModel — Model to compare with.
Returns UnstructuredModel — A reference to the modified input model.
norm()
norm()def norm(self) -> float:
...Return the model norm.
Returns float
norm_inf()
norm_inf()def norm_inf(self) -> float:
...Infinity norm.
Returns float
to_disk()
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_folderUnion[str, pathlib.Path] — Parent folder where the JSON + h5 files should be stored.
Returns Dict
to_json()
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_hashOptional[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