-
Notifications
You must be signed in to change notification settings - Fork 121
Description
OrdinaryDiffEq.jl is now a meta-package that pulls in a bunch of smaller packages, like OrdinaryDiffEqCore, OrdinaryDiffEqLowOrderRK. This splitting was done so that users of OrdinaryDiffEq can pick and choose what they need, avoiding precompilation overhead for unused code.
We could take advantage of this is QuantumOptics.jl, but currently we depend on StochasticDiffEq, which is not split up and pulls in all of OrdinaryDiffEq.
How about we split QuantumOptics.jl and make it a meta-package that pulls in new component packages QuantumOpticsTimeEvolution, QuantumOpticsStochastic, and QuantumOpticsSteadyState?
QuantumOpticsTimeEvolution could have its dependencies trimmed to only pull in the OrdinaryDiffEqCore and OrdinaryDiffEqLowOrderRK components of OrdinaryDiffEq.
This way users who e.g. only want to do Schrödinger and Master evolution can have a much lighter precompile load.
Thoughts? @Krastanov @david-pl @apkille