Development ideas¶
Some ideas for future development of MDT.
- to discuss: add ‘scale_factor’ to the parameters as a simple scaling factor
- for use in MLE and FIM
- replacing ScaleTransform and scale_factor in numdiff_info
- perhaps add it to MCMC as well
- MPT (Microstructure Prototol Toolbox)
- Perhaps a different package using MDT and MOT for protocol optimization
- More optimization routines:
- L-BFGS-B
- BOBYQA or NEWUOA from Powell
- Particle Swarm
- See the book “Introduction to derivative free optimization” or similar books
- More sampling routines:
- emcee
- Automatic derivatives
- This is only doable with OpenCL 2.2
- Python 3.7:
- removed ordereddict
- use f-strings
- OpenCL 2.0:
- remove priors and merge with the constraints
- remove the JohnsonNoise model
- have the OffsetGaussian an separate input for the offset
- protocol options using a selection matrix.
- i.e. per protocol row a 0 or 1 if that protocol is supposed to be used
- Allows protocol options per voxel.
- remove mot_float_type, replace with either float or double depending on insight/tests
- move g to gx, gy, gz
- Move to using an OpenCL Context instead of the devices
- Add more model documentation, in particular what all the output maps are
- DynamicGlobal kernel data element
- as a substitute for Local where needed
- Add more documentation on how to change devices