From f9ecb004512cda69f574b0381ea3c589dd19b14f Mon Sep 17 00:00:00 2001
From: Alina Lacheim <a.lacheim@outlook.de>
Date: Wed, 11 Dec 2024 18:49:36 +0100
Subject: [PATCH] delted test for seq_design

---
 tests/test_PostProcessing.py | 89 +++++++++++++++++++++++++++++++++---
 1 file changed, 82 insertions(+), 7 deletions(-)

diff --git a/tests/test_PostProcessing.py b/tests/test_PostProcessing.py
index df049e0bd..322fdc5c3 100644
--- a/tests/test_PostProcessing.py
+++ b/tests/test_PostProcessing.py
@@ -23,7 +23,6 @@ import pytest
 
 from bayesvalidrox.post_processing.post_processing import PostProcessing
 from bayesvalidrox.surrogate_models.inputs import Input
-from bayesvalidrox.surrogate_models.input_space import InputSpace
 from bayesvalidrox.surrogate_models.exp_designs import ExpDesigns
 from bayesvalidrox.surrogate_models.surrogate_models import MetaModel
 from bayesvalidrox.surrogate_models.polynomial_chaos import PCE
@@ -46,9 +45,88 @@ def basic_engine():
     engine.emulator = True
     return engine
 
+@pytest.fixture
+def basic_engine_trained():
+    inp = Input()
+    inp.add_marginals()
+    inp.Marginals[0].dist_type = 'normal'
+    inp.Marginals[0].parameters = [0, 1]
+
+    # Create and configure the MetaModel
+    mm = MetaModel(inp)
+
+    # Create the engine object
+    engine = type('Engine', (object,), {})()
+    engine.trained = True
+    engine.MetaModel = mm
+
+    # Set up sequential design diagnostics data
+    engine.SeqModifiedLOO = {'Z': np.array([0.1, 0.2, 0.3])}
+    engine.seqValidError = {'Z': np.array([0.15, 0.25, 0.35])}
+    engine.SeqKLD = {'Z': np.array([0.05, 0.1, 0.15])}
+    engine.SeqBME = {'Z': np.array([0.02, 0.04, 0.06])}
+    engine.seqRMSEMean = {'Z': np.array([0.12, 0.14, 0.16])}
+    engine.seqRMSEStd = {'Z': np.array([0.03, 0.05, 0.07])}
+    engine.SeqDistHellinger = {'Z': np.array([0.08, 0.09, 0.1])}
+
+    # Configure experiment design
+    expdes = ExpDesigns(inp)
+    expdes.par_names = ["Parameter 1", "Parameter 2"]  # Names for the two input parameters
+    expdes.x_values = {'X1': [0.1, 0.2, 0.3], 'X2': [0.4, 0.5, 0.6]}  # Mock parameter values per design step
+    expdes.X = np.array([[0, 0], [1, 1], [0.5, 0.5], [0.1, 0.5]])  # Two input dimensions
+    expdes.Y = {'Z': [[0.4], [0.5], [0.3], [0.4]]}  # Output values
+    engine.out_names = ['Z']
+    engine.ExpDesign = expdes
+
+    return engine
+
+@pytest.fixture
+def basic_engine_sequential():
+    
+    inp = Input()
+    inp.add_marginals()
+    inp.Marginals[0].dist_type = 'normal'
+    inp.Marginals[0].parameters = [0, 1]
+    
+    mm = MetaModel(inp)
+    mod = PL()
+    
+    expdes = ExpDesigns(inp)
+    expdes.n_init_samples = 4
+    expdes.n_max_samples = 4
+    expdes.X = np.array([[0, 0], [1, 1], [0.5, 0.5], [0.1, 0.5]])  # Two input dimensions
+    expdes.Y = {'Z': [[0.4], [0.5], [0.3], [0.4]]}  # Output values
+    expdes.x_values = np.array([0])
+    
+    engine = Engine(mm, mod, expdes)
+    engine.out_names = ['Z']
+    engine.train = True
+    engine.emulator = True
+    
+    engine.train_sequential()
+    
+    engine.SeqModifiedLOO = {'DKL_rep_1': np.array([[1.31565589e-10],
+       [1.31413432e-10]])}
+    engine.seqValidError = {}
+    engine.SeqKLD = {'DKL_rep_1': np.array([[2.6296851 ],
+       [2.60875351]])}
+    engine.SeqBME = {'DKL_rep_1': np.array([[-19.33941695],
+       [-19.29572507]])}
+    engine.seqRMSEMean = {'DKL_rep_1': np.array([[1.02174823],
+       [1.02174727]])}
+    engine.seqRMSEStd = {'DKL_rep_1': np.array([[0.76724993],
+       [0.76725023]])}
+    engine.SeqDistHellinger = {}
+    
+    for key, array in engine.SeqModifiedLOO.items():
+        assert np.all(array != None), f"Array {key} contains None values."
+    
+    return engine
+
 @pytest.fixture
 def pce_engine():
     inp = Input()
+    
     inp.add_marginals()
     inp.Marginals[0].dist_type = 'normal'
     inp.Marginals[0].parameters = [0, 1]
@@ -96,7 +174,7 @@ def gpe_engine():
     inp.Marginals[0].dist_type = 'normal'
     inp.Marginals[0].parameters = [0, 1]
     expdes = ExpDesigns(inp)
-    expdes.init_param_space(max_deg=1)
+    expdes.init_param_space()
     expdes.X = np.array([[0], [1], [0.5]])
     expdes.Y = {'Z': [[0.4], [0.5], [0.45]]}
     expdes.x_values = [0]
@@ -254,11 +332,8 @@ def test_plot_metamodel_3d_nopce(basic_engine) -> None:
     assert str(excinfo.value) == 'This function is only applicable if the MetaModel input dimension is 2.'
     
 
-#%% _get_sample
-#%% _eval_model
-#%% _plot_validation
-
-def test_plot_validation_nopce(basic_engine) -> None:
+#%% plot_metamodel_3d
+def test_plot_metamodel_3d_pce(pce_engine_3d_plot) -> None:
     """
     Plot validation of non-PCE metamodel
     """
-- 
GitLab