DiffEq - Modern C++ ODE Integration Library 1.0.0
High-performance C++ library for solving ODEs with async signal processing
|
SDE synchronization helper for coordinating noise processes. More...
#include <sde_synchronization.hpp>
Classes | |
struct | SyncStats |
Get synchronization statistics. More... | |
Public Member Functions | |
SDESynchronizer (SDESyncConfig config={}) | |
Construct SDE synchronizer. | |
NoiseData< T > | get_noise_increment (T current_time, T dt) |
Get noise increment for SDE integration. | |
void | submit_noise_data (const NoiseData< T > &noise_data) |
Submit noise data from external process. | |
template<typename IPCDecorator > | |
void | configure_with_ipc (IPCDecorator &ipc_decorator) |
Configure for use with InterprocessDecorator. | |
SyncStats | get_statistics () const |
void | reset_statistics () |
Reset statistics. | |
Static Public Member Functions | |
template<typename ProducerIntegrator , typename ConsumerIntegrator > | |
static std::pair< std::unique_ptr< AbstractIntegrator< S, T > >, std::unique_ptr< AbstractIntegrator< S, T > > > | create_synchronized_pair (std::unique_ptr< ProducerIntegrator > producer_integrator, std::unique_ptr< ConsumerIntegrator > consumer_integrator, InterprocessConfig ipc_config, SDESyncConfig sync_config={}) |
Create synchronized SDE integrator pair. | |
SDE synchronization helper for coordinating noise processes.
This class provides utilities for synchronizing SDE integrators that need to receive noise data from external processes. It handles:
Definition at line 163 of file sde_synchronization.hpp.
|
inlineexplicit |
Construct SDE synchronizer.
config | SDE synchronization configuration |
Definition at line 186 of file sde_synchronization.hpp.
|
inline |
Configure for use with InterprocessDecorator.
ipc_decorator | Interprocess decorator to coordinate with |
Definition at line 246 of file sde_synchronization.hpp.
|
inlinestatic |
Create synchronized SDE integrator pair.
producer_integrator | Integrator that generates noise |
consumer_integrator | Integrator that receives noise |
ipc_config | IPC configuration |
Definition at line 268 of file sde_synchronization.hpp.
|
inline |
Get noise increment for SDE integration.
current_time | Current integration time |
dt | Time step |
std::runtime_error | if noise cannot be obtained within timeout |
Definition at line 200 of file sde_synchronization.hpp.
|
inline |
Definition at line 305 of file sde_synchronization.hpp.
|
inline |
Reset statistics.
Definition at line 312 of file sde_synchronization.hpp.
|
inline |
Submit noise data from external process.
noise_data | Noise data received |
Definition at line 221 of file sde_synchronization.hpp.