Skip to content

Overview¤

CryoJAX is a cryo-EM image simulation library for building downstream data analysis applications that leverage the scientific computing resources of JAX. The scope of what is in cryoJAX is 1) Its framework for simulating cryo-EM images and 2) Utilities for building data analysis applications. These are organized into a handful of submodules.

TL;DR - a full breakdown of cryoJAX¤

Submodule Description
cryojax.simulator Image simulation models and algorithms
cryojax.io Basic I/O for cryo-EM file formats
cryojax.ndimage Image and volume manipulation
cryojax.dataset Read/write cryo-EM datasets (e.g. RELION)
cryojax.jax_util Functions improving JAX/Equinox user experience
cryojax.atom_util Operate on atoms and their coordinates
cryojax.rotations Backend for coordinate rotations
cryojax.constants Handle physical constants

cryojax.simulator¤

This contains algorithms and models for cryo-EM image simulation, as well as a framework for implementing new models and algorithms. See the simulate an image tutorial to get started.

cryojax.io¤

For example, read/write MRC files and PDB/PDBx files.

cryojax.ndimage¤

This includes cropping / padding, masks / filters, and downsampling.

cryojax.dataset¤

A framework for convenient reading/writing STAR files over entire cryo-EM datasets, and easy integration with dataloaders used in machine learning.