Skip to content

pratiktech28/gprmax_material_property_check

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 

Repository files navigation

Material Property NRMSE Validation

download download

download

🛠️ gprMax Material Property Check

Automated Physics Validation Gate using NRMSE for High-Fidelity EM Simulations.

📌 Overview This repository serves as an Automated Quality Assurance (QA) Gate for gprMax simulations. It focuses on validating simulated material constants (permittivity, conductivity, etc.) against theoretical benchmarks. By automating this process, we ensure that every simulation remains physically accurate and free from manual configuration errors.

🧪 Mathematical Foundation

To quantify the reliability of the simulations, I have implemented a validation logic based on the Normalized Root Mean Square Error (NRMSE).

$$NRMSE = \frac{\sqrt{\text{mean}((Simulated - Theoretical)^2)}}{\max(Theoretical) - \min(Theoretical)}$$

Normalized Quality Metric: This provides a unitless reliability score, allowing for standardized testing across different material types. Precision Threshold: A strict 0.01 (1%) threshold is defined. Any simulation exceeding this error margin triggers an automatic failure in the CI/CD pipeline.


image
KEYS :- Automated Material Property check demonstrating a perfect NRMSE of 0.000000, performing well within the pre-defined 0.01 (1%) accuracy threshold for high-fidelity physics simulations.

🚀 Key Features 1. Local Validation Logic The core engine performs a deep-dive check on material properties post-simulation. Proof of Accuracy: Achieved a perfect NRMSE of 0.000000 during benchmark testing, ensuring the implementation is mathematically sound.

2. GitHub Actions: Live Physics Automation I have integrated this logic into a CI/CD Pipeline to provide real-time validation for every code change or simulation update. Automated Workflow: GitHub Actions spins up the environment, executes gprMax, calculates the NRMSE, and generates a pass/fail report dynamically. Reliability: Ensures that physics-based fidelity is maintained even in remote cloud environments.

📦 Getting Started

Installation
# Clone the repository
git clone https://github.com/pratiktech28/gprmax_material_property_check.git

# Install necessary dependencies
pip install numpy matplotlib

Running the Test
# Execute the automated validation script
python scripts/material_validation.py




About

Automated Physics Validation Gate for gprMax simulations using NRMSE to ensure material property accuracy in CI/CD pipelines.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors