|
RadCluster
Graph-based cluster dynamics for irradiated materials
|
Functions | |
| ishigami (x1, x2, x3, a=7.0, b=0.1) | |
| build (N=4096, seed=7) | |
| report (tag, r, drop_note="") | |
| main () | |
Variables | |
| HERE = Path(__file__).resolve().parent | |
| dict | EXACT_S = {"x1": 0.3139, "x2": 0.4424, "x3": 0.0000} |
| dict | EXACT_ST = {"x1": 0.5576, "x2": 0.4424, "x3": 0.2437} |
Validate the Saltelli estimator against Ishigami, whose indices are analytic.
f(x) = sin(x1) + a sin^2(x2) + b x3^4 sin(x1), x ~ U[-pi, pi]^3
with a = 7, b = 0.1 the exact indices are
S1 = 0.3139 S2 = 0.4424 S3 = 0.0000
ST1 = 0.5576 ST2 = 0.4424 ST3 = 0.2437
x3 is the interesting one: S3 = 0 exactly while ST3 = 0.244, i.e. it acts ONLY
through its interaction with x1. An estimator that got S right but ST wrong
would pass a naive check and then silently screen out exactly the parameters
that matter through interactions -- which for this campaign would mean dropping
a loop-conversion parameter that is inert alone but live in combination.
Also tests PAIRWISE DELETION, the part that is easy to get wrong: some AB rows
are deliberately marked unusable and the indices must stay near truth, with
n_eff reporting the reduced count for the affected parameter only.
python test_sobol.py
| test_sobol.build | ( | N = 4096, |
|
seed = 7 |
|||
| ) |
Definition at line 43 of file test_sobol.py.
| test_sobol.ishigami | ( | x1, | |
| x2, | |||
| x3, | |||
a = 7.0, |
|||
b = 0.1 |
|||
| ) |
Definition at line 39 of file test_sobol.py.
| test_sobol.main | ( | ) |
Definition at line 84 of file test_sobol.py.
| test_sobol.report | ( | tag, | |
| r, | |||
drop_note = "" |
|||
| ) |
Definition at line 70 of file test_sobol.py.
| dict test_sobol.EXACT_S = {"x1": 0.3139, "x2": 0.4424, "x3": 0.0000} |
Definition at line 35 of file test_sobol.py.
| dict test_sobol.EXACT_ST = {"x1": 0.5576, "x2": 0.4424, "x3": 0.2437} |
Definition at line 36 of file test_sobol.py.
| test_sobol.HERE = Path(__file__).resolve().parent |
Definition at line 31 of file test_sobol.py.