From 3a38513c59d9d8b3be39d315ad54b72d79abfff8 Mon Sep 17 00:00:00 2001
From: "pre-commit-ci[bot]"
<66853113+pre-commit-ci[bot]@users.noreply.github.com>
Date: Tue, 23 Jul 2024 18:29:45 +0000
Subject: [PATCH] [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
---
.idea/alfasim-sdk.iml | 2 +-
.../inspectionProfiles/profiles_settings.xml | 2 +-
.idea/vcs.xml | 2 +-
.idea/workspace.xml | 2 +-
src/alfasim_sdk/result_reader/aggregator.py | 112 ++++++++++++-----
.../result_reader/aggregator_constants.py | 2 +-
tests/conftest.py | 60 +++++++--
tests/results/test_aggregator.py | 117 +++++++++++++-----
8 files changed, 223 insertions(+), 76 deletions(-)
diff --git a/.idea/alfasim-sdk.iml b/.idea/alfasim-sdk.iml
index aad402c4..ec2ec5b8 100644
--- a/.idea/alfasim-sdk.iml
+++ b/.idea/alfasim-sdk.iml
@@ -7,4 +7,4 @@
-
\ No newline at end of file
+
diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml
index 105ce2da..cc5462da 100644
--- a/.idea/inspectionProfiles/profiles_settings.xml
+++ b/.idea/inspectionProfiles/profiles_settings.xml
@@ -3,4 +3,4 @@
-
\ No newline at end of file
+
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
index 9e8e6940..f518decb 100644
--- a/.idea/vcs.xml
+++ b/.idea/vcs.xml
@@ -6,4 +6,4 @@
-
\ No newline at end of file
+
diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index ee2ae346..31a780da 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -198,4 +198,4 @@
-
\ No newline at end of file
+
diff --git a/src/alfasim_sdk/result_reader/aggregator.py b/src/alfasim_sdk/result_reader/aggregator.py
index a51b54d9..6d035488 100644
--- a/src/alfasim_sdk/result_reader/aggregator.py
+++ b/src/alfasim_sdk/result_reader/aggregator.py
@@ -6,7 +6,7 @@
from collections import namedtuple
from contextlib import contextmanager
from pathlib import Path
-from typing import Any, Type, TypeVar
+from typing import Any
from typing import Callable
from typing import DefaultDict
from typing import Dict
@@ -15,6 +15,8 @@
from typing import Literal
from typing import Optional
from typing import Tuple
+from typing import Type
+from typing import TypeVar
from typing import Union
import attr
@@ -24,9 +26,7 @@
from typing_extensions import Self
from alfasim_sdk.result_reader.aggregator_constants import (
- GLOBAL_SENSITIVITY_ANALYSIS_GROUP_NAME, UNCERTAINTY_PROPAGATION_GROUP_META_ATTR_NAME,
- UNCERTAINTY_PROPAGATION_DSET_REALIZATION_OUTPUS, UNCERTAINTY_PROPAGATION_GROUP_NAME,
- UNCERTAINTY_PROPAGATION_DSET_MEAN_RESULT, UNCERTAINTY_PROPAGATION_DSET_STD_RESULT,
+ GLOBAL_SENSITIVITY_ANALYSIS_GROUP_NAME,
)
from alfasim_sdk.result_reader.aggregator_constants import (
HISTORY_MATCHING_DETERMINISTIC_DSET_NAME,
@@ -47,6 +47,21 @@
from alfasim_sdk.result_reader.aggregator_constants import RESULT_FILE_PREFIX
from alfasim_sdk.result_reader.aggregator_constants import TIME_SET_DSET_NAME
from alfasim_sdk.result_reader.aggregator_constants import TRENDS_GROUP_NAME
+from alfasim_sdk.result_reader.aggregator_constants import (
+ UNCERTAINTY_PROPAGATION_DSET_MEAN_RESULT,
+)
+from alfasim_sdk.result_reader.aggregator_constants import (
+ UNCERTAINTY_PROPAGATION_DSET_REALIZATION_OUTPUS,
+)
+from alfasim_sdk.result_reader.aggregator_constants import (
+ UNCERTAINTY_PROPAGATION_DSET_STD_RESULT,
+)
+from alfasim_sdk.result_reader.aggregator_constants import (
+ UNCERTAINTY_PROPAGATION_GROUP_META_ATTR_NAME,
+)
+from alfasim_sdk.result_reader.aggregator_constants import (
+ UNCERTAINTY_PROPAGATION_GROUP_NAME,
+)
OutputKeyType = str
"""\
@@ -111,6 +126,7 @@ class ResultsNeedFullReloadError(RuntimeError):
"restart file" and the option "keep old results" is selected.
"""
+
@attr.s(slots=True, hash=False)
class BaseUQMetaData:
"""
@@ -132,6 +148,7 @@ class BaseUQMetaData:
:ivar unit:
The unit of a dimensionless property (-, %)
"""
+
property_id: str = attr.ib(validator=attr.validators.instance_of(str))
trend_id: str = attr.ib(validator=attr.validators.instance_of(str))
category: str = attr.ib(validator=attr.validators.instance_of(str))
@@ -165,9 +182,12 @@ class UPItem(BaseUQMetaData):
:ivar sample_indexes:
The indexes to access each sample of an item.
"""
+
samples: int = attr.ib(validator=attr.validators.instance_of(int))
result_index: int = attr.ib(validator=attr.validators.instance_of(int))
- sample_indexes: List[List[int]] = attr.ib(validator=attr.validators.instance_of(List))
+ sample_indexes: List[List[int]] = attr.ib(
+ validator=attr.validators.instance_of(List)
+ )
@classmethod
def from_dict(cls, data: Dict[str, Any]) -> Self:
@@ -180,8 +200,8 @@ def from_dict(cls, data: Dict[str, Any]) -> Self:
position_unit=data["position_unit"],
unit=data["unit"],
samples=data["samples"],
- result_index=data['result_index'],
- sample_indexes=data['sample_indexes']
+ result_index=data["result_index"],
+ sample_indexes=data["sample_indexes"],
)
items: Dict[str, UPItem] = attr.ib(validator=attr.validators.instance_of(Dict))
@@ -195,7 +215,6 @@ def empty(cls, result_directory: Path) -> Self:
@classmethod
def get_metadata_from_dir(cls, result_directory: Path) -> Self:
-
def map_data(
up_metadata: Dict,
) -> Dict[str, UncertaintyPropagationAnalysesMetaData.UPItem]:
@@ -204,7 +223,13 @@ def map_data(
for key, data in up_metadata.items()
}
- return read_results_file(result_directory=result_directory, metadata_class=cls, meta_data_attrs=UNCERTAINTY_PROPAGATION_GROUP_META_ATTR_NAME, map_data=map_data)
+ return read_results_file(
+ result_directory=result_directory,
+ metadata_class=cls,
+ meta_data_attrs=UNCERTAINTY_PROPAGATION_GROUP_META_ATTR_NAME,
+ map_data=map_data,
+ )
+
@attr.s(slots=True, hash=False)
class GlobalSensitivityAnalysisMetadata:
@@ -226,6 +251,7 @@ class GSAItem(BaseUQMetaData):
:ivar qoi_data_index:
The data index of a quantity of interest.
"""
+
parametric_var_id: str = attr.ib(validator=attr.validators.instance_of(str))
parametric_var_name: str = attr.ib(validator=attr.validators.instance_of(str))
qoi_index: Optional[int] = attr.ib(
@@ -276,32 +302,47 @@ def map_data(
key: GlobalSensitivityAnalysisMetadata.GSAItem.from_dict(data)
for key, data in gsa_metadata.items()
}
- return read_results_file(result_directory=result_directory,metadata_class=cls, map_data=map_data,meta_data_attrs=GLOBAL_SENSITIVITY_ANALYSIS_GROUP_NAME)
-UQMetadataClass = Union[GlobalSensitivityAnalysisMetadata,UncertaintyPropagationAnalysesMetaData]
+ return read_results_file(
+ result_directory=result_directory,
+ metadata_class=cls,
+ map_data=map_data,
+ meta_data_attrs=GLOBAL_SENSITIVITY_ANALYSIS_GROUP_NAME,
+ )
+
+
+UQMetadataClass = Union[
+ GlobalSensitivityAnalysisMetadata, UncertaintyPropagationAnalysesMetaData
+]
+
@attr.s(frozen=True)
class UPResult:
"""
Holder for each uncertainty propagation result.
"""
- category: str = attr.ib(validator=attr.validators.optional(attr.validators.instance_of(str)))
- unit: str = attr.ib(validator=attr.validators.optional(attr.validators.instance_of(str)))
+
+ category: str = attr.ib(
+ validator=attr.validators.optional(attr.validators.instance_of(str))
+ )
+ unit: str = attr.ib(
+ validator=attr.validators.optional(attr.validators.instance_of(str))
+ )
realization_output: List[np.ndarray] = attr.ib(default=attr.Factory(List))
std_result: np.ndarray = attr.ib(default=attr.Factory(lambda: np.array([])))
mean_result: np.ndarray = attr.ib(default=attr.Factory(lambda: np.array([])))
MetadataClassType = TypeVar("MetadataClassType", bound=UQMetadataClass)
+
+
def read_results_file(
result_directory: Path,
metadata_class: Type[MetadataClassType],
map_data: Callable,
- meta_data_attrs: str) -> MetadataClassType:
-
- with open_result_file(
- result_directory, result_filename="result"
- ) as result_file:
+ meta_data_attrs: str,
+) -> MetadataClassType:
+ with open_result_file(result_directory, result_filename="result") as result_file:
if not result_file:
return metadata_class.empty(result_directory=result_directory)
@@ -312,6 +353,7 @@ def read_results_file(
items=map_data(loaded_metadata), result_directory=result_directory
)
+
@attr.define(slots=True, hash=True)
class HistoricDataCurveMetadata:
"""
@@ -1813,9 +1855,10 @@ def read_global_sensitivity_analysis_meta_data(
result_directory=result_directory
)
+
def read_uncertainty_propagation_analyses_meta_data(
result_directory: Path,
-)-> Optional[UncertaintyPropagationAnalysesMetaData]:
+) -> Optional[UncertaintyPropagationAnalysesMetaData]:
"""
Read the uncertainty propagation analyses metadata persisted in a result file.
"""
@@ -1825,7 +1868,9 @@ def read_uncertainty_propagation_analyses_meta_data(
)
-def read_uncertainty_propagation_results(metadata: UncertaintyPropagationAnalysesMetaData, results_key: str) -> Optional[UPResult]:
+def read_uncertainty_propagation_results(
+ metadata: UncertaintyPropagationAnalysesMetaData, results_key: str
+) -> Optional[UPResult]:
"""
Get the uncertainty propagation results.
@@ -1841,23 +1886,30 @@ def read_uncertainty_propagation_results(metadata: UncertaintyPropagationAnalyse
with open_result_file(metadata.result_directory) as file:
up_group = file[UNCERTAINTY_PROPAGATION_GROUP_NAME]
- realization_output_samples = up_group[UNCERTAINTY_PROPAGATION_DSET_REALIZATION_OUTPUS]
-
- realization_outputs = [realization_output_samples[sample_index][qoi_index] for qoi_index, sample_index in meta.sample_indexes]
- mean_result = up_group[UNCERTAINTY_PROPAGATION_DSET_MEAN_RESULT][meta.result_index]
- std_result = up_group[UNCERTAINTY_PROPAGATION_DSET_STD_RESULT][meta.result_index]
+ realization_output_samples = up_group[
+ UNCERTAINTY_PROPAGATION_DSET_REALIZATION_OUTPUS
+ ]
+
+ realization_outputs = [
+ realization_output_samples[sample_index][qoi_index]
+ for qoi_index, sample_index in meta.sample_indexes
+ ]
+ mean_result = up_group[UNCERTAINTY_PROPAGATION_DSET_MEAN_RESULT][
+ meta.result_index
+ ]
+ std_result = up_group[UNCERTAINTY_PROPAGATION_DSET_STD_RESULT][
+ meta.result_index
+ ]
return UPResult(
realization_output=realization_outputs,
mean_result=mean_result,
std_result=std_result,
category=meta.category,
- unit=meta.unit
+ unit=meta.unit,
)
-def read_uq_time_set(
- result_directory: Path,
- group_name: str
-) -> Optional[numpy.array]:
+
+def read_uq_time_set(result_directory: Path, group_name: str) -> Optional[numpy.array]:
"""
Get the time set for based uq analysis results.
diff --git a/src/alfasim_sdk/result_reader/aggregator_constants.py b/src/alfasim_sdk/result_reader/aggregator_constants.py
index 0a9799df..6a0a82f0 100644
--- a/src/alfasim_sdk/result_reader/aggregator_constants.py
+++ b/src/alfasim_sdk/result_reader/aggregator_constants.py
@@ -14,7 +14,7 @@
)
UNCERTAINTY_PROPAGATION_DSET_MEAN_RESULT = "uncertainty_propagation_mean_results"
UNCERTAINTY_PROPAGATION_DSET_STD_RESULT = "uncertainty_propagation_std_results"
-UNCERTAINTY_PROPAGATION_GROUP_NAME = 'uncertainty_propagation'
+UNCERTAINTY_PROPAGATION_GROUP_NAME = "uncertainty_propagation"
TIME_SET_DSET_NAME = "time_set"
diff --git a/tests/conftest.py b/tests/conftest.py
index 22e20631..972e9a85 100644
--- a/tests/conftest.py
+++ b/tests/conftest.py
@@ -16,9 +16,7 @@
HISTORY_MATCHING_HISTORIC_DATA_GROUP_NAME,
)
from alfasim_sdk.result_reader.aggregator_constants import (
- GLOBAL_SENSITIVITY_ANALYSIS_GROUP_NAME, UNCERTAINTY_PROPAGATION_GROUP_META_ATTR_NAME, UNCERTAINTY_PROPAGATION_GROUP_NAME,
- UNCERTAINTY_PROPAGATION_DSET_REALIZATION_OUTPUS, UNCERTAINTY_PROPAGATION_DSET_MEAN_RESULT,
- UNCERTAINTY_PROPAGATION_DSET_STD_RESULT,
+ GLOBAL_SENSITIVITY_ANALYSIS_GROUP_NAME,
)
from alfasim_sdk.result_reader.aggregator_constants import (
HISTORY_MATCHING_DETERMINISTIC_DSET_NAME,
@@ -29,6 +27,21 @@
)
from alfasim_sdk.result_reader.aggregator_constants import META_GROUP_NAME
from alfasim_sdk.result_reader.aggregator_constants import TIME_SET_DSET_NAME
+from alfasim_sdk.result_reader.aggregator_constants import (
+ UNCERTAINTY_PROPAGATION_DSET_MEAN_RESULT,
+)
+from alfasim_sdk.result_reader.aggregator_constants import (
+ UNCERTAINTY_PROPAGATION_DSET_REALIZATION_OUTPUS,
+)
+from alfasim_sdk.result_reader.aggregator_constants import (
+ UNCERTAINTY_PROPAGATION_DSET_STD_RESULT,
+)
+from alfasim_sdk.result_reader.aggregator_constants import (
+ UNCERTAINTY_PROPAGATION_GROUP_META_ATTR_NAME,
+)
+from alfasim_sdk.result_reader.aggregator_constants import (
+ UNCERTAINTY_PROPAGATION_GROUP_NAME,
+)
from alfasim_sdk.result_reader.reader import Results
@@ -274,6 +287,7 @@ def global_sa_results_dir(datadir: Path) -> Path:
file.close()
return result_dir
+
@pytest.fixture()
def up_results_dir(datadir: Path) -> Path:
"""
@@ -289,8 +303,13 @@ def up_results_dir(datadir: Path) -> Path:
realization_outputs = np.array(
[
[
- [i + (qoi_index*10) + tl for tl in (0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7)]
- for qoi_index, trend_property in enumerate([('trend_id_1','temperature'), ('trend_id_1','absolute_pressure')])
+ [
+ i + (qoi_index * 10) + tl
+ for tl in (0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7)
+ ]
+ for qoi_index, trend_property in enumerate(
+ [("trend_id_1", "temperature"), ("trend_id_1", "absolute_pressure")]
+ )
]
for i in range(5)
]
@@ -311,7 +330,7 @@ def up_results_dir(datadir: Path) -> Path:
"position_unit": "m",
"unit": "K",
"samples": 5,
- "sample_indexes": [[0,0], [0,1], [0,2],[0,3],[0,4]],
+ "sample_indexes": [[0, 0], [0, 1], [0, 2], [0, 3], [0, 4]],
"result_index": 0,
},
"absolute_pressure@trend_id_1": {
@@ -323,28 +342,45 @@ def up_results_dir(datadir: Path) -> Path:
"position_unit": "m",
"unit": "bar",
"samples": 5,
- "sample_indexes": [[1, 0],[1, 1], [1, 2], [1, 3],[1,4]],
+ "sample_indexes": [[1, 0], [1, 1], [1, 2], [1, 3], [1, 4]],
"result_index": 1,
},
}
- meta_group.attrs[UNCERTAINTY_PROPAGATION_GROUP_META_ATTR_NAME] = json.dumps(fake_meta)
- time_set_dset = uncertainty_propagation_group.create_dataset(name=TIME_SET_DSET_NAME, shape=time_set.shape)
+ meta_group.attrs[UNCERTAINTY_PROPAGATION_GROUP_META_ATTR_NAME] = json.dumps(
+ fake_meta
+ )
+ time_set_dset = uncertainty_propagation_group.create_dataset(
+ name=TIME_SET_DSET_NAME, shape=time_set.shape
+ )
time_set_dset[:] = time_set
- realization_outputs_dset = uncertainty_propagation_group.create_dataset(name=UNCERTAINTY_PROPAGATION_DSET_REALIZATION_OUTPUS, shape=realization_outputs.shape, maxshape=(None, None, None))
+ realization_outputs_dset = uncertainty_propagation_group.create_dataset(
+ name=UNCERTAINTY_PROPAGATION_DSET_REALIZATION_OUTPUS,
+ shape=realization_outputs.shape,
+ maxshape=(None, None, None),
+ )
realization_outputs = realization_outputs
realization_outputs_dset[:] = realization_outputs
mean_results_array = np.mean(realization_outputs, axis=0)
- mean_results = uncertainty_propagation_group.create_dataset(name=UNCERTAINTY_PROPAGATION_DSET_MEAN_RESULT, shape=mean_results_array.shape, maxshape=(None, None))
+ mean_results = uncertainty_propagation_group.create_dataset(
+ name=UNCERTAINTY_PROPAGATION_DSET_MEAN_RESULT,
+ shape=mean_results_array.shape,
+ maxshape=(None, None),
+ )
mean_results[:] = mean_results_array
std_results_array = np.std(realization_outputs, axis=0)
- std_results = uncertainty_propagation_group.create_dataset(name=UNCERTAINTY_PROPAGATION_DSET_STD_RESULT, shape=std_results_array.shape, maxshape=(None, None))
+ std_results = uncertainty_propagation_group.create_dataset(
+ name=UNCERTAINTY_PROPAGATION_DSET_STD_RESULT,
+ shape=std_results_array.shape,
+ maxshape=(None, None),
+ )
std_results[:] = std_results_array
file.swmr_mode = True
return result_dir
+
def _create_and_populate_hm_result_file(
result_dir: Path,
result: np.ndarray,
diff --git a/tests/results/test_aggregator.py b/tests/results/test_aggregator.py
index d6ecc5b6..5437081e 100644
--- a/tests/results/test_aggregator.py
+++ b/tests/results/test_aggregator.py
@@ -13,17 +13,13 @@
from pytest_mock import MockerFixture
from pytest_regressions.num_regression import NumericRegressionFixture
+from alfasim_sdk.result_reader.aggregator import concatenate_metadata
from alfasim_sdk.result_reader.aggregator import HistoricDataCurveMetadata
-from alfasim_sdk.result_reader.aggregator import concatenate_metadata, read_uncertainty_propagation_analyses_meta_data, \
- read_uncertainty_propagation_results
from alfasim_sdk.result_reader.aggregator import HistoryMatchingMetadata
from alfasim_sdk.result_reader.aggregator import open_result_files
from alfasim_sdk.result_reader.aggregator import (
read_global_sensitivity_analysis_meta_data,
)
-from alfasim_sdk.result_reader.aggregator import (
- read_uq_time_set,
-)
from alfasim_sdk.result_reader.aggregator import read_global_sensitivity_coefficients
from alfasim_sdk.result_reader.aggregator import (
read_history_matching_historic_data_curves,
@@ -34,10 +30,19 @@
from alfasim_sdk.result_reader.aggregator import read_profiles_local_statistics
from alfasim_sdk.result_reader.aggregator import read_time_sets
from alfasim_sdk.result_reader.aggregator import read_trends_data
+from alfasim_sdk.result_reader.aggregator import (
+ read_uncertainty_propagation_analyses_meta_data,
+)
+from alfasim_sdk.result_reader.aggregator import read_uncertainty_propagation_results
+from alfasim_sdk.result_reader.aggregator import (
+ read_uq_time_set,
+)
from alfasim_sdk.result_reader.aggregator import ResultsNeedFullReloadError
from alfasim_sdk.result_reader.aggregator import TimeSetInfoItem
-from alfasim_sdk.result_reader.aggregator_constants import HISTORY_MATCHING_GROUP_NAME, \
- GLOBAL_SENSITIVITY_ANALYSIS_GROUP_NAME
+from alfasim_sdk.result_reader.aggregator_constants import (
+ GLOBAL_SENSITIVITY_ANALYSIS_GROUP_NAME,
+)
+from alfasim_sdk.result_reader.aggregator_constants import HISTORY_MATCHING_GROUP_NAME
from alfasim_sdk.result_reader.aggregator_constants import META_GROUP_NAME
from alfasim_sdk.result_reader.aggregator_constants import RESULTS_FOLDER_NAME
from alfasim_sdk.result_reader.reader import Results
@@ -351,7 +356,7 @@ def test_read_gsa_metadata(global_sa_results_dir: Path) -> None:
def test_read_gsa_timeset(global_sa_results_dir: Path) -> None:
time_set = read_uq_time_set(
result_directory=global_sa_results_dir,
- group_name=GLOBAL_SENSITIVITY_ANALYSIS_GROUP_NAME
+ group_name=GLOBAL_SENSITIVITY_ANALYSIS_GROUP_NAME,
)
assert numpy.all(time_set == [0, 1, 2, 3, 4, 5, 6, 7])
@@ -377,7 +382,9 @@ def test_read_incomplete_gsa_metadata(global_sa_results_dir: Path) -> None:
"""
creating_file = global_sa_results_dir / "result.creating"
creating_file.touch()
- gsa_time_set = read_uq_time_set(global_sa_results_dir, GLOBAL_SENSITIVITY_ANALYSIS_GROUP_NAME)
+ gsa_time_set = read_uq_time_set(
+ global_sa_results_dir, GLOBAL_SENSITIVITY_ANALYSIS_GROUP_NAME
+ )
assert gsa_time_set is None
gsa_meta_data = read_global_sensitivity_analysis_meta_data(global_sa_results_dir)
assert gsa_meta_data.items == {}
@@ -565,31 +572,83 @@ def test_read_history_matching_historic_data_curves_backward_compatibility(
curves = read_history_matching_historic_data_curves(metadata)
assert curves == {}
-def test_read_uncertainty_propagation_results(datadir: Path, up_results_dir: Path) -> None:
- empty_metadata = read_uncertainty_propagation_analyses_meta_data(result_directory=datadir)
+def test_read_uncertainty_propagation_results(
+ datadir: Path, up_results_dir: Path
+) -> None:
+ empty_metadata = read_uncertainty_propagation_analyses_meta_data(
+ result_directory=datadir
+ )
assert empty_metadata.items == {}
- result = read_uncertainty_propagation_results(metadata=empty_metadata,results_key='absolute_pressure@trend_id_1')
+ result = read_uncertainty_propagation_results(
+ metadata=empty_metadata, results_key="absolute_pressure@trend_id_1"
+ )
assert result is None
- metadata = read_uncertainty_propagation_analyses_meta_data(result_directory=up_results_dir)
- assert list(metadata.items.keys()) == ['temperature@trend_id_1', 'absolute_pressure@trend_id_1']
-
- assert metadata.items['temperature@trend_id_1'].result_index == 0
- assert metadata.items['temperature@trend_id_1'].sample_indexes == [[0, 0], [0, 1], [0, 2], [0, 3], [0, 4]]
+ metadata = read_uncertainty_propagation_analyses_meta_data(
+ result_directory=up_results_dir
+ )
+ assert list(metadata.items.keys()) == [
+ "temperature@trend_id_1",
+ "absolute_pressure@trend_id_1",
+ ]
- assert metadata.items['absolute_pressure@trend_id_1'].result_index == 1
- assert metadata.items['absolute_pressure@trend_id_1'].sample_indexes == [[1, 0], [1, 1], [1, 2], [1, 3], [1, 4]]
+ assert metadata.items["temperature@trend_id_1"].result_index == 0
+ assert metadata.items["temperature@trend_id_1"].sample_indexes == [
+ [0, 0],
+ [0, 1],
+ [0, 2],
+ [0, 3],
+ [0, 4],
+ ]
- result = read_uncertainty_propagation_results(metadata=metadata,results_key='temperature@trend_id_1')
- assert np.all(result.realization_output[0] == np.array([0.1,0.2,0.3,0.4,0.5,0.6,0.7],dtype=np.float32))
- assert np.all(result.realization_output[-1] == np.array([4.1, 4.2, 4.3, 4.4, 4.5, 4.6, 4.7], dtype=np.float32))
- assert np.all(result.mean_result == np.array([2.1, 2.2, 2.3, 2.4, 2.5, 2.6, 2.7], dtype=np.float32))
- assert np.allclose(result.std_result, np.array([1.41, 1.41, 1.41, 1.41, 1.41, 1.41, 1.41], dtype=np.float32), rtol=0.01)
+ assert metadata.items["absolute_pressure@trend_id_1"].result_index == 1
+ assert metadata.items["absolute_pressure@trend_id_1"].sample_indexes == [
+ [1, 0],
+ [1, 1],
+ [1, 2],
+ [1, 3],
+ [1, 4],
+ ]
- result = read_uncertainty_propagation_results(metadata=metadata,results_key='absolute_pressure@trend_id_1')
- assert np.all(result.realization_output[0] == np.array([10.1, 10.2, 10.3, 10.4, 10.5, 10.6, 10.7], dtype=np.float32))
- assert np.all(result.realization_output[-1] == np.array([14.1, 14.2, 14.3, 14.4, 14.5, 14.6, 14.7], dtype=np.float32))
- assert np.all(result.mean_result == np.array([12.1, 12.2, 12.3, 12.4, 12.5, 12.6, 12.7], dtype=np.float32))
- assert np.allclose(result.std_result,np.array([1.414, 1.414, 1.414, 1.414, 1.414, 1.414, 1.414], dtype=np.float32), rtol=0.001)
+ result = read_uncertainty_propagation_results(
+ metadata=metadata, results_key="temperature@trend_id_1"
+ )
+ assert np.all(
+ result.realization_output[0]
+ == np.array([0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7], dtype=np.float32)
+ )
+ assert np.all(
+ result.realization_output[-1]
+ == np.array([4.1, 4.2, 4.3, 4.4, 4.5, 4.6, 4.7], dtype=np.float32)
+ )
+ assert np.all(
+ result.mean_result
+ == np.array([2.1, 2.2, 2.3, 2.4, 2.5, 2.6, 2.7], dtype=np.float32)
+ )
+ assert np.allclose(
+ result.std_result,
+ np.array([1.41, 1.41, 1.41, 1.41, 1.41, 1.41, 1.41], dtype=np.float32),
+ rtol=0.01,
+ )
+ result = read_uncertainty_propagation_results(
+ metadata=metadata, results_key="absolute_pressure@trend_id_1"
+ )
+ assert np.all(
+ result.realization_output[0]
+ == np.array([10.1, 10.2, 10.3, 10.4, 10.5, 10.6, 10.7], dtype=np.float32)
+ )
+ assert np.all(
+ result.realization_output[-1]
+ == np.array([14.1, 14.2, 14.3, 14.4, 14.5, 14.6, 14.7], dtype=np.float32)
+ )
+ assert np.all(
+ result.mean_result
+ == np.array([12.1, 12.2, 12.3, 12.4, 12.5, 12.6, 12.7], dtype=np.float32)
+ )
+ assert np.allclose(
+ result.std_result,
+ np.array([1.414, 1.414, 1.414, 1.414, 1.414, 1.414, 1.414], dtype=np.float32),
+ rtol=0.001,
+ )