Files
Atomizer/atomizer-field/atomizer_field_config.yaml
Antoine d5ffba099e feat: Merge Atomizer-Field neural network module into main repository
Permanently integrates the Atomizer-Field GNN surrogate system:
- neural_models/: Graph Neural Network for FEA field prediction
- batch_parser.py: Parse training data from FEA exports
- train.py: Neural network training pipeline
- predict.py: Inference engine for fast predictions

This enables 600x-2200x speedup over traditional FEA by replacing
expensive simulations with millisecond neural network predictions.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 15:31:33 -05:00

240 lines
6.1 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# AtomizerField Configuration
# Long-term vision configuration for neural field learning
# ============================================================================
# Model Architecture
# ============================================================================
model:
type: "graph_neural_network"
architecture: "message_passing"
# Foundation model settings (for transfer learning)
foundation:
enabled: false # Set to true when foundation model available
path: "models/physics_foundation_v1.pt"
freeze: true # Freeze foundation layers during fine-tuning
# Adaptation layers (for fine-tuning on new component types)
adaptation:
layers: 2
neurons: 128
dropout: 0.1
# Core GNN parameters
gnn:
node_feature_dim: 12 # [x,y,z, BC(6), loads(3)]
edge_feature_dim: 5 # [E, nu, rho, G, alpha]
hidden_dim: 128
num_layers: 6
dropout: 0.1
# Output decoders
decoders:
displacement:
enabled: true
output_dim: 6 # [ux, uy, uz, rx, ry, rz]
stress:
enabled: true
output_dim: 6 # [sxx, syy, szz, txy, tyz, txz]
# ============================================================================
# Training Configuration
# ============================================================================
training:
# Progressive training (coarse to fine meshes)
progressive:
enabled: false # Enable for multi-resolution training
stages:
- resolution: "coarse"
max_nodes: 5000
epochs: 20
lr: 0.001
- resolution: "medium"
max_nodes: 20000
epochs: 10
lr: 0.0005
- resolution: "fine"
max_nodes: 100000
epochs: 5
lr: 0.0001
# Online learning (during optimization)
online:
enabled: false # Enable to learn from FEA during optimization
update_frequency: 10 # Update model every N FEA runs
quick_update_steps: 10
learning_rate: 0.0001
# Physics-informed loss weights
loss:
type: "physics" # Options: mse, relative, physics, max
weights:
data: 1.0 # Match FEA results
equilibrium: 0.1 # ∇·σ + f = 0
constitutive: 0.1 # σ = C:ε
boundary: 1.0 # u = 0 at fixed nodes
# Standard training parameters
hyperparameters:
epochs: 100
batch_size: 4
learning_rate: 0.001
weight_decay: 0.00001
# Optimization
optimizer:
type: "AdamW"
betas: [0.9, 0.999]
scheduler:
type: "ReduceLROnPlateau"
factor: 0.5
patience: 10
# Early stopping
early_stopping:
enabled: true
patience: 50
min_delta: 0.0001
# ============================================================================
# Data Pipeline
# ============================================================================
data:
# Data normalization
normalization:
enabled: true
method: "standard" # Options: standard, minmax
# Data augmentation
augmentation:
enabled: false # Enable for data augmentation
techniques:
- rotation # Rotate mesh randomly
- scaling # Scale loads
- noise # Add small noise to inputs
# Multi-resolution support
multi_resolution:
enabled: false
resolutions: ["coarse", "medium", "fine"]
# Caching
cache:
in_memory: false # Cache dataset in RAM (faster but memory-intensive)
disk_cache: true # Cache preprocessed graphs to disk
# ============================================================================
# Optimization Interface
# ============================================================================
optimization:
# Gradient-based optimization
use_gradients: true
# Uncertainty quantification
uncertainty:
enabled: false # Enable ensemble for uncertainty
ensemble_size: 5
threshold: 0.1 # Recommend FEA if uncertainty > threshold
# FEA fallback
fallback_to_fea:
enabled: true
conditions:
- high_uncertainty # Uncertainty > threshold
- extrapolation # Outside training distribution
- critical_design # Final validation
# Batch evaluation
batch_size: 100 # Evaluate designs in batches for speed
# ============================================================================
# Model Versioning & Deployment
# ============================================================================
deployment:
# Model versioning
versioning:
enabled: true
format: "semantic" # v1.0.0, v1.1.0, etc.
# Model registry
registry:
path: "models/"
naming: "{component_type}_v{version}.pt"
# Metadata tracking
metadata:
track_training_data: true
track_performance: true
track_hyperparameters: true
# Production settings
production:
device: "cuda" # cuda or cpu
batch_inference: true
max_batch_size: 100
# ============================================================================
# Integration with Atomizer
# ============================================================================
atomizer_integration:
# Dashboard integration
dashboard:
enabled: false # Future: Show field visualizations in dashboard
# Database integration
database:
enabled: false # Future: Store predictions in Atomizer DB
# API endpoints
api:
enabled: false # Future: REST API for predictions
port: 8000
# ============================================================================
# Monitoring & Logging
# ============================================================================
monitoring:
# TensorBoard
tensorboard:
enabled: true
log_dir: "runs/tensorboard"
# Weights & Biases (optional)
wandb:
enabled: false
project: "atomizerfield"
entity: "your_team"
# Logging level
logging:
level: "INFO" # DEBUG, INFO, WARNING, ERROR
file: "logs/atomizerfield.log"
# ============================================================================
# Experimental Features
# ============================================================================
experimental:
# Nonlinear analysis
nonlinear:
enabled: false
# Contact analysis
contact:
enabled: false
# Composite materials
composites:
enabled: false
# Modal analysis
modal:
enabled: false
# Topology optimization
topology:
enabled: false