Skip to content

Commit fbb3bc0

Browse files
committed
[v0.0.7] 2025-09-04
- Updated Helios native C++ library to v1.3.47 - Finished radiation model integration with PyHelios - Implemented radiation band management, source configuration, and simulation execution - Added camera-based radiation modeling with flux data retrieval - Enhanced with graceful degradation when radiation plugin unavailable - Updated radiation plugin documentation with API reference and usage examples - Added troubleshooting guide for OptiX and GPU requirements
1 parent 0ee305f commit fbb3bc0

14 files changed

Lines changed: 2123 additions & 99 deletions

README.md

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,9 +115,30 @@ print(f"Created patch: {patch_uuid}")
115115
- **Plant modeling**: WeberPennTree procedural generation
116116
- **GPU acceleration**: OptiX-powered radiation simulation
117117
- **3D visualization**: OpenGL-based real-time rendering
118-
- **Flexible plugins**: Currently 4 plug-ins implemented
118+
- **Flexible plugins**: Currently 5 plug-ins implemented
119119
- **Development mode**: Mock mode for development without native libraries
120120

121+
## Updating PyHelios
122+
123+
To update your PyHelios installation with the latest changes:
124+
125+
```bash
126+
# Update main repository and submodules recursively
127+
git pull --recurse-submodules
128+
129+
# Alternative: Update main repo first, then submodules
130+
git pull
131+
git submodule update --init --recursive
132+
133+
# Rebuild native libraries after updates (recommended)
134+
./build_scripts/build_helios --clean
135+
136+
# Reinstall PyHelios
137+
pip install -e .
138+
```
139+
140+
**Important**: Always use `--recurse-submodules` or manually update submodules when pulling updates, as PyHelios depends on the `helios-core` submodule for C++ functionality.
141+
121142
## Quick Commands
122143

123144
```bash

docs/CHANGELOG.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,19 @@
11
# Changelog
22

3+
# [v0.0.7] 2025-09-04
4+
5+
- Updated Helios native C++ library to v1.3.47
6+
7+
## Radiation Model
8+
- Finished radiation model integration with PyHelios
9+
- Implemented radiation band management, source configuration, and simulation execution
10+
- Added camera-based radiation modeling with flux data retrieval
11+
- Enhanced with graceful degradation when radiation plugin unavailable
12+
13+
## Documentation
14+
- Updated radiation plugin documentation with API reference and usage examples
15+
- Added troubleshooting guide for OptiX and GPU requirements
16+
317
# [v0.0.6] 2025-08-27
418

519
🚨++ New Plug-in Integrated ++ 🚨

docs/plugin_integration_guide.md

Lines changed: 12 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -28,32 +28,24 @@ PyHelios uses a sophisticated plugin architecture that enables seamless integrat
2828
┌─────────────────────────────────────────────────────────────┐
2929
│ PyHelios Plugin Architecture │
3030
├─────────────────────────────────────────────────────────────┤
31-
│ Python High-Level API (YourPlugin.py) │
32-
│ ├── Context managers and error handling │
33-
│ └── User-friendly methods with type hints │
31+
│ Python High-Level API (YourPlugin.py)
32+
│ ├── Context managers and error handling
33+
│ └── User-friendly methods with type hints
3434
├─────────────────────────────────────────────────────────────┤
35-
│ ctypes Wrappers (UYourPluginWrapper.py) │
36-
│ ├── Function prototypes and availability detection │
37-
│ └── Python-to-C type conversion │
35+
│ ctypes Wrappers (UYourPluginWrapper.py)
36+
│ ├── Function prototypes and availability detection
37+
│ └── Python-to-C type conversion
3838
├─────────────────────────────────────────────────────────────┤
39-
│ C++ Interface (pyhelios_interface.cpp) │
40-
│ ├── C-compatible wrapper functions │
41-
│ └── Exception handling and parameter validation │
39+
│ C++ Interface (pyhelios_interface.cpp)
40+
│ ├── C-compatible wrapper functions
41+
│ └── Exception handling and parameter validation
4242
├─────────────────────────────────────────────────────────────┤
43-
│ Native Plugin (helios-core/plugins/yourplugin/) │
44-
│ ├── C++ plugin implementation │
45-
│ └── Runtime assets (shaders, textures, configs) │
43+
│ Native Plugin (helios-core/plugins/yourplugin/)
44+
│ ├── C++ plugin implementation
45+
│ └── Runtime assets (shaders, textures, configs)
4646
└─────────────────────────────────────────────────────────────┘
4747
```
4848

49-
### Integration Complexity
50-
51-
Plugin integration complexity varies by type:
52-
53-
- **Simple plugins** (data processing): ~4-6 hours
54-
- **Moderate plugins** (physics modeling): ~1-2 days
55-
- **Complex plugins** (GPU-accelerated, visualization): ~3-5 days
56-
5749
## Prerequisites
5850

5951
Before starting plugin integration, ensure you have:
@@ -64,20 +56,6 @@ Before starting plugin integration, ensure you have:
6456
4. **Understanding of plugin dependencies** (CUDA, OpenGL, etc.)
6557
5. **Test data** or examples for validation
6658

67-
### Required Tools
68-
69-
```bash
70-
# Development dependencies
71-
pip install -e .[dev]
72-
73-
# Build tools
74-
cmake --version # 3.18+
75-
# Platform-specific compiler (MSVC, clang, gcc)
76-
77-
# Optional: GPU dependencies
78-
nvidia-smi # For CUDA plugins
79-
```
80-
8159
## Phase 1: Plugin Metadata Registration
8260

8361
### 1.1 Define Plugin Metadata

0 commit comments

Comments
 (0)