API Reference#
For users simply looking to analyze their datasets with tomoDRGN, we recommend just using the CLI commands. Should you wish to dive deeper into tomoDRGN’s source code, this section details the Python API of each tomoDRGN core module and command script.
TomoDRGN core#
Functions for analysis of particle metadata: index, pose, ctf, latent embedding, label, tomogram spatial context, etc. |
|
Classes and functions to facilitate sampling beta values per minibatch when training a VAE. |
|
Functions to create, edit, and view tomoDRGN config.pkl files |
|
Functions to aid estimation of model training convergence. |
|
Functions for Contrast Transfer Function calculation, correction, and display |
|
Classes and functions for interfacing with particle image data and associated starfile metadata. |
|
Functions to model transmission electron microscopy signal degradation as a function of cumulative electron dose and stage tilt |
|
Fourier and Hartley transform functions for numpy arrays and pytorch tensors |
|
Classes and functions for interfacing with 2-D voxel grids representing a lattice of voxel coordinates. |
|
Tools for dealing with SO(3) group and algebra Adapted from pimdh/lie-vae All functions are pytorch-ified |
|
Classes and functions for handling model loss calculations |
|
Classes for creating, loading, training, and evaluating pytorch models. |
|
Classes and functions for loading and writing .mrc(s) headers and data. |
|
Classes and functions to retrieve and optionally update image poses (defined as rotations and translations) via neural networks backpropogation. |
|
Set transformer classes adapted from juho-lee/set_transformer under MIT license |
|
Implementation of Yershova et al. "Generating uniform incremental grids on SO(3) using the Hopf fribration" See source code implementation: https://lavalle.pl/software/so3/so3.html. |
|
Lightweight parsers for starfiles |
|
Common utility functions pertaining to both data processing and script execution |
TomoDRGN commands#
Visualize latent space and generate volumes |
|
Analyze a volume ensemble in real space using a combination of masking, PCA, UMAP, and k-means clustering. |
|
Backproject 2-D images to form 3-D reconstruction with optional filtering and weighting |
|
Clean an analyzed train_vae output directory of various types of outputs. |
|
Assess convergence of a decoder-only network relative to an external volume by FSC |
|
Assess convergence and training dynamics of a heterogeneous VAE network |
|
Downsample an image stack or volume by Fourier cropping |
|
Evaluate a trained TiltSeriesHetOnlyVAE model to embed particle images in the learned latent space |
|
Evaluate a trained FTPositionalDecoder model, optionally conditioned on values of latent embedding z. |
|
Filter a .star file by selected particle or image indices, optionally per-tomogram |
|
Sample latent embeddings along the shortest path through the latent space nearest neighbor graph which connects specified anchor points. |
|
Sample latent embeddings along latent space principal components at specified points. |
|
Create a ChimeraX command script (.cxc) to map particles back to their source positions within a tomogram. |
|
Train a FTPositionalDecoder neural network to reconstruct a 3D density map given 2D images from a tilt series with known pose and CTF parameters |
|
Train a VAE for heterogeneous reconstruction with known pose for tomography data |
|
Display config information of a tomoDRGN job |