How dc110123/pinn_repo works
This repository develops a universal physics-informed neural network for solar-panel I–V and maximum-power prediction. Its documented workflow builds a filtered panel dataset, generates synthetic curves, trains and tunes a PINN, then checks curve shape, population accuracy, and dynamic-weather behavior. The README describes the training-module separation, while the sampled main.py is only a greeting, so the documented training entry point is shown rather than an edge from main.py. Validation code references model/scaler files not present in the tree; those missing assets are not represented as repository nodes.
Main entry points: data_loader.py Data preparation · panel_shape_validation.py Curve shape checks · panel_accuracy_validation.py Population accuracy · panel_simulation.py Dynamic simulation
Components 15
Panel data
- Data preparation
src/data_loader.py - Synthetic I–V data
src/data_loader.py
PINN training
- Bayesian training
src/bayesian_optimization_and_training.py - Optuna search
src/bayesian_optimization_and_training.py - PINN training engine
src/network_and_train_step.py - PINN model
src/network_and_train_step.py
Model validation
- Trained weights
model/universal_pinn_weights.weights.h5 - Curve shape checks
simulation/Test_A/panel_shape_validation.py - Population accuracy
simulation/Test_B/panel_accuracy_validation.py - Dynamic simulation
simulation/Test_C/panel_simulation.py
Panel analysis
- Cell-count analysis
src/eda_cell_count.py - Materials analysis
src/eda_panel_materials.py
Other components
- Engineer
- CEC database
- CLI stub
main.py
Connections 23
- Engineer → Bayesian training: starts documented search
README.md - CEC database → Data preparation: provides modules
README.md - Data preparation → Synthetic I–V data: generates curves
src/data_loader.py - Synthetic I–V data → Bayesian training: supplies training data
README.md - Bayesian training → Optuna search: searches parameters
src/bayesian_optimization_and_training.py - Bayesian training → PINN training engine: calls train_model
README.md - PINN training engine → PINN model: builds and trains
src/network_and_train_step.py - Engineer → Curve shape checks: runs checks
README.md - Engineer → Population accuracy: runs benchmark
README.md - Engineer → Dynamic simulation: runs simulation
README.md - Curve shape checks → Data preparation: loads panel database
simulation/Test_A/panel_shape_validation.py - Population accuracy → Data preparation: loads panel database
simulation/Test_B/panel_accuracy_validation.py - Dynamic simulation → Data preparation: loads panel database
simulation/Test_C/panel_simulation.py - Curve shape checks → Trained weights: loads weights
simulation/Test_A/panel_shape_validation.py - Population accuracy → Trained weights: loads weights
simulation/Test_B/panel_accuracy_validation.py - Dynamic simulation → Trained weights: loads weights
simulation/Test_C/panel_simulation.py - Curve shape checks → PINN model: predicts curves
simulation/Test_A/panel_shape_validation.py - Population accuracy → PINN model: predicts energy
simulation/Test_B/panel_accuracy_validation.py - Dynamic simulation → PINN model: predicts power
simulation/Test_C/panel_simulation.py - Engineer → Cell-count analysis: runs analysis
src/eda_cell_count.py - Engineer → Materials analysis: runs analysis
src/eda_panel_materials.py - CEC database → Cell-count analysis: provides modules
src/eda_cell_count.py - CEC database → Materials analysis: provides modules
src/eda_panel_materials.py