Dependencies#

To develop scdiffeq, we built several supporting libraries. Many of these libraries contain functions that are not necessarily directly relevant to scdiffeq and we found that abstracting them into their own package was not only useful for the development of other projects, but helped to clean up scdiffeq.

That said, developers interested in working with and building upon scdiffeq may find utility in documentation of these supporting libraries. Several of them are linked below.

neural-diffeqs#

neural-diffeqs is a PyTorch-based library for the instantiation of neural differential equations, largely inspired by and compatible with Patrick Kidger’s torchsde library.

torch-adata#

torch-adata is a framework for bridging data held in AnnData - the most popular single-cell python-based data structure and companion to scanpy - to the PyTorch Dataset class. torch-adata is meant to be structured but flexible within the rules of both of these data structures while also being easy to use.

torch-nets#

adata-query#

ABCParse#

autodevice#

Other, external libraries on which scDiffEq depends:

  • Lightning

  • torch

  • torchsde

Project Structure Overview:

project
├── demo.py
├── LICENCE.txt
├── processes
│   ├── area.py
│   └── bboxinout.py
├── pywps.cfg
├── requirements.txt
├── server.py
├── setup.py
├── static
├── templates
└── tests
cwd/
└── project_name/
    ├── version_0/
    ├── checkpoints/
    │   └── epoch.step.ckpt
    ├── hparams.yaml
    └── metrics.csv
working_directory/
│
├── project_name/
│   ├── version_0/
│   │   ├── checkpoints/
│   │   │   └── epoch.step.ckpt
│   │   ├── hparams.yaml
│   │   ├── metrics.csv
│   └── file2.ext
└── subdirectory2/
    └── file3.ext