How graealex/wavedudenext works
WaveDude Next is a Windows 2D optics wave simulator. Users build or open a project, configure sources and optical parts, run the simulation, inspect field and intensity frames and probe graphs, then export frames, video, or probe data. The graph separates the project/model, run and engine, inspection/rendering, and export stages, with workspace capabilities alongside them. Relationships are limited to README statements and references visible in the supplied source index; unsampled implementation details are not inferred.
Main entry points: Project.cs Project document · SimulationRun.cs Simulation run · PreviewPane.xaml.cs Frame preview · MainWindow.xaml.cs Project editing
Components 25
Workspace and editing
- Desktop workspace
WaveDudeNext.WPF/App.xaml.cs - Project editing
WaveDudeNext.WPF/MainWindow.xaml.cs - Live preview
WaveDudeNext.UI/LivePreview.cs - Built-in manual
WaveDudeNext.WPF/Help/ManualWindow.xaml.cs
Project and scene
- Project document
WaveDudeNext/Model/Project.cs - Scene canvas
WaveDudeNext/Model/Scene.cs - Sources
WaveDudeNext/Model/Source.cs - Optical parts
WaveDudeNext/Model/OpticalPart.cs - Simulation settings
WaveDudeNext/Model/Simulation.cs - Display and probes
WaveDudeNext/Model/Display.cs
Simulation and runs
- Scene composition
WaveDudeNext.UI/SceneComposer.cs - Run coordination
WaveDudeNext.UI/RunHost.cs - Simulation run
WaveDudeNext/Runs/SimulationRun.cs - Engine selection
WaveDudeNext/Engine/WaveEngineFactory.cs - CPU engine
WaveDudeNext/Engine/WaveSimulator.cs - GPU engine
WaveDudeNext/Engine/GpuWaveSimulator.cs - Frame cache
WaveDudeNext/Runs/FrameCache.cs
Display and inspection
- Frame preview
WaveDudeNext.WPF/Panes/PreviewPane.xaml.cs - Frame rendering
WaveDudeNext/Rendering/FrameRenderer.cs - Probe sampling and graphs
WaveDudeNext/Probes/ProbeSampler.cs
Export and settings
- Export jobs and formats
WaveDudeNext/Export/ExportJob.cs - Color schemes
WaveDudeNext.UI/Rendering/ColorSchemeCatalog.cs - Application settings
WaveDudeNext.UI/Settings.cs
Other components
- User
- Project and image files
Connections 29
- User → Desktop workspace: uses
README.md - Desktop workspace → Project editing: opens workspace
README.md - Project editing → Project document: edits
- Project and image files → Project document: opens and saves
README.md - Project document → Scene canvas: defines
WaveDudeNext/Model/Project.cs - Project document → Sources: holds
WaveDudeNext/Model/Project.cs - Project document → Optical parts: holds
WaveDudeNext/Model/Project.cs - Project document → Simulation settings: holds
WaveDudeNext/Model/Project.cs - Project document → Display and probes: holds
WaveDudeNext/Model/Project.cs - Project editing → Live preview: requests updates
- Live preview → Scene composition: composes scene
WaveDudeNext.UI/LivePreview.cs - Live preview → Run coordination: coordinates runs
WaveDudeNext.UI/LivePreview.cs - Scene composition → Scene canvas: reads scene
- Run coordination → Simulation run: starts run
- Simulation run → Engine selection: creates engine
WaveDudeNext/Engine/WaveEngineFactory.cs - Engine selection → GPU engine: tries GPU
WaveDudeNext/Engine/WaveEngineFactory.cs - Engine selection → CPU engine: falls back
WaveDudeNext/Engine/WaveEngineFactory.cs - Simulation run → Frame cache: stores frames
- Simulation run → Probe sampling and graphs: samples probes
WaveDudeNext/Runs/SimulationRun.cs - Frame preview → Simulation run: reads run state
WaveDudeNext.WPF/Panes/PreviewPane.xaml.cs - Frame preview → Frame rendering: renders frames
- Frame preview → Color schemes: uses schemes
WaveDudeNext.WPF/Panes/PreviewPane.xaml.cs - User → Frame preview: inspects results
README.md - User → Probe sampling and graphs: configures probes
README.md - User → Export jobs and formats: exports results
README.md - Export jobs and formats → Frame cache: reads frames
- Export jobs and formats → Probe sampling and graphs: exports CSV
README.md - Application settings → Color schemes: configures schemes
- User → Built-in manual: opens manual
README.md