Skip to content

Hekstra-Lab/integrator

Repository files navigation

Integrator

An amortized variational inference model to integrate diffraction data.

Prerequisites

The installation requires a python environment manager. I use micromamba, and the following instructions assume it. Another popular manager is conda, but I do not use it nor have experience with it.

Installation

The project depends on DIALS and laue-DIALS alongside PyTorch. DIALS (and dxtbx/cctbx) and PyTorch are installed from conda-forge. Pick the environment file that matches your machine:

File Env For
environment.yml integrator CPU runtime (local, non-CUDA)
environment-cuda.yml integrator-cuda CUDA / GPU runtime (cluster, linux-64)
environment-dev.yml integrator-dev CPU + test/lint/logging tooling (development)
environment-cuda-dev.yml integrator-cuda-dev CUDA / GPU + dev tooling (development on GPU)
# CPU runtime
micromamba env create -f environment.yml
micromamba activate integrator

# CUDA runtime (GPU machine)
micromamba env create -f environment-cuda.yml
micromamba activate integrator-cuda

# Development (tests, ruff, mypy)
micromamba env create -f environment-dev.yml
micromamba activate integrator-dev

# Development on a GPU machine
micromamba env create -f environment-cuda-dev.yml
micromamba activate integrator-cuda-dev

Each installs DIALS, laue-DIALS, PyTorch, the integrator package (editable), and the upstream reciprocalspaceship build required to read DIALS .refl files.

About

Proof of concept profile fitting and integration with neural nets

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages