SharmaLlama / ticktack

An open-source carbon box model implementation built on JAX.
https://sharmallama.github.io/ticktack
MIT License
11 stars 3 forks source link

ticktack 2.0: equinox edition #27

Open benjaminpope opened 2 years ago

benjaminpope commented 2 years ago

I have been thinking a little about refactoring ticktack for version 2.0 using equinox to make it Jaxier and allow inference about the CBM.

We could have eqx modules for:

This will then integrate easily with diffrax (which is based on equinox) and allow inference about more parameters (including the CBM and tree) by exposing them to gradients. It will also allow it to be more modular - like dLux we can plug and play with stacks of different layers.

Jordan-Dennis commented 2 years ago

I was actually curious about trying this and had already forked the repository with this in mind. As always though it was just finding time and it didn't go anywhere. I still haven't worked out a good routine for the semester yet, but I would like to do this after substituting in diffrax. The fork isn't suitable for merging back in because I condensed all of the branches into one meaning there would be a huge amount of merge conflicts ect. If we are going to implement this here for 2.0 I will delete the fork,

benjaminpope commented 2 years ago

Yeah - I don't think this is urgent and is good for 2.0. I don't know if it is worth forking at this stage before we do stuff like merging diffrax for 1.0. I think if we use equinox we will get a huge improvement in flexibility for inferring carbon box model parameters, which will be great for various Honours theses; but I don't think it will help the science for Paper 1 or our users in Groningen for their paper, so I think it is lower priority than the dLux work.