Catalyst.jl icon indicating copy to clipboard operation
Catalyst.jl copied to clipboard

Catalyast V16 with MTK10 planning

Open isaacsas opened this issue 5 months ago • 10 comments

It is going to be a major overhaul to update for MTK10. Let's use this issue to track things we need to be aware of

  • [ ] Switching to System from all the other system types. Here we probably want to replace all the convert(::AbstractSystem,...) calls and rely on physical_scales to decide at what level a reaction is modeled in the generated system. We could then have lightweight functions like make_ode_model, make_sde_model, make_jump_model that set the physical scale uniformly for every reaction, while make_hybrid_model requires a default be given for each reaction.
  • [ ] Field updates: we should probably add support for user-provided Brownians and jumps that get merged with any we generate from reactions during conversion. Along those lines we need to check how MTK handles mixing noise_eqs and Brownians, or if they are mutually exclusive options.
  • [ ] Allow users to select if they want a System with Brownians or noise_eqs when converting to SDE models.
  • [ ] Update compositional modeling dispatches to just work with ReactionSystems and general Systems.
  • [ ] Update tests for all the changes like the new merged u0 and p maps.
  • [ ] Update docs appropriately...
  • [ ] Use Pre in all callback related tests.
  • [ ] How to handle updating for extensions. Here we will either need to drop some extensions till they update for MTK10, or be blocked till they are updated.
  • [ ] Make sure to have a final review of the MTK changes before we release, so we don't miss anything like we did with MTK9 and parameter arrays.
  • [ ] Make sure ReactionSystem metadata works with the same API as MTK now uses.
  • [ ] Drop == for ReactionSystems per https://github.com/SciML/ModelingToolkit.jl/pull/3683

isaacsas avatar May 29 '25 14:05 isaacsas