Skip to content

Releases: mjo22/cryojax

cryojax v0.1.2

26 Aug 06:49
28cc450
Compare
Choose a tag to compare

cryojax v0.1.1

23 Aug 19:20
Compare
Choose a tag to compare

What's changed

  • Image projections using the fourier slice theorem is functioning using the ScatteringConfig called FourierSliceScattering and the Specimen called ElectronGrid. This means that Image models now support jit compilation with jax.jit and functional transformations that require this, like jax.vmap.
  • Speedups that remove all unecessary operations on 3D voxel grids. For example, now all Poses compute translations in the same way, with phase shifts. Specimens no longer compute translations.
  • Fourier conventions are now such that the zero frequency component is on the edge of the box, rather than the center.
  • Rotation conventions are matched to cisTEM, along with how voxel grids initially sit in the box.

Full Changelog: v0.1.0...v0.1.1

Initial release

15 Aug 22:32
c6e45e8
Compare
Choose a tag to compare

This is the first experimental release of cryojax. Changes from the pre-release v0.1.0-alpha include

  • Unit testing against and matched conventions with cisTEM
  • Support for Detector and Ice models. Each are currently treated as gaussian noise (the Ice has the CTF applied to it), but they also have more general base classes to anticipate more flexibility. Detector models treat pixel size as a model parameter.
  • Cloud has been changed to ElectronCloud, which is a base class of a Specimen. Specimen should be general enough to add future support for imaging from atomic coordinates. Specimen can have parameters that can be evaluated in Image models, which anticipates support for models with conformational heterogeneity. They are also now JSON serializable when using the Specimen.from_file autoloader.
  • CryojaxObject is the base class for cryojax serializable dataclasses. They have a CryojaxObject.update routine that searches over data fields to update them only from a dictionary. This makes loss function APIs very simple to use with JAX---after configuring a model, simply add any parameters in an Image model's Specimen or PipelineState to a dictionary, and evaluate Images at this dictionary (or apply JAX functional transformations to them).

Currently there is no documentation generated for cryojax---future releases should add this as well as more thorough unit testing!

initial release

02 Aug 21:50
Compare
Choose a tag to compare
initial release Pre-release
Pre-release
v0.1.0-alpha

bug fix in masking experimental data.. tensorflow-nufft is now default.