Files
ResearchProject/FESurrogateModelTutorial/tests/test_dataset_builder.py
T
2026-05-21 17:03:51 +09:00

28 lines
999 B
Python

import pandas as pd
from femsurrogate.data.bounds import DEFAULT_PARAMETER_BOUNDS
from femsurrogate.data.dataset import build_dataset, run_beam2d_case
from femsurrogate.data.sampling import generate_lhs_samples
from femsurrogate.data.schema import TARGET_COLUMNS, BeamParameters
def test_run_beam2d_case_returns_physical_responses():
result = run_beam2d_case(
BeamParameters(L_m=2.0, b_m=0.05, h_m=0.1, E_pa=200e9, P_n=1000.0)
)
assert result.tip_uy_m < 0.0
assert result.max_abs_bending_stress_pa > 0.0
assert result.mass_kg > 0.0
assert result.compliance_j > 0.0
def test_build_dataset_preserves_samples_and_adds_schema_columns():
samples = generate_lhs_samples(DEFAULT_PARAMETER_BOUNDS, n=4, seed=20260521)
dataset = build_dataset(samples)
assert len(dataset) == len(samples)
pd.testing.assert_frame_equal(dataset[list(samples.columns)], samples)
for column in ["A_m2", "I_m4", *TARGET_COLUMNS]:
assert column in dataset.columns