Skip to content

Commit

Permalink
overhaul dynamo to make it more modular
Browse files Browse the repository at this point in the history
  • Loading branch information
Xiaojieqiu committed Aug 17, 2020
1 parent 0cab498 commit 3e4718f
Show file tree
Hide file tree
Showing 62 changed files with 873 additions and 1,950 deletions.
11 changes: 11 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
__test__
node_modules
.dockerignore
.gitignore
.github
babel.config.js
Dockerfile
LICENSE
package-lock.json
package.json
README.md
71 changes: 71 additions & 0 deletions .github/workflows/python-docker.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# This file wont do us much good in this location, make sure you change the path as directed to continue!

name: Docker

on:
push:
# Sequence of patterns matched against refs/tags
tags:
- 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10
# workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v1
- name: npm install and build webpack
run: |
npm install
npm run build
- uses: actions/upload-artifact@master
with:
name: webpack artifacts
path: public/
test:
runs-on: ubuntu-latest
needs: build
strategy:
matrix:
os: [ubuntu-lastest, windows-2016]
node-version: [12.x, 14.x]

steps:
- uses: actions/checkout@v1
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- uses: actions/download-artifact@master
with:
name: webpack artifacts
path: public
- name: npm install, and test
run: |
npm install
npm test
env:
CI: true

Build-and-Push-Docker-Image:
runs-on: ubuntu-latest
needs: test
name: Docker Build, Tag, Push

steps:
- name: Checkout
uses: actions/checkout@v1
- name: Download built artifact
uses: actions/download-artifact@master
with:
name: webpack artifacts
path: public
- name: Build container image
uses: docker/build-push-action@v1
with:
username: ${{github.actor}}
password: ${{secrets.GITHUB_TOKEN}}
registry: docker.pkg.github.com
repository: aristoteleo/dynamo-release
tag_with_sha: true
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ scripts/
benchmarking/
debug/
integral_seq/
env/

dynamo.egg-info/
dynamo_release.egg-info/
Expand Down Expand Up @@ -41,3 +42,8 @@ docs/source/dynamo*

.coverage
test.py

# Docker related:
node_modules/
package-lock.json
public/*.js
11 changes: 11 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
FROM python:3.6-alpine as base
FROM base as builder
RUN mkdir /install
WORKDIR /install
COPY requirements.txt /requirements.txt
RUN pip install --install-option="--prefix=/install" -r /requirements.txt
FROM base
COPY --from=builder /install /usr/local
COPY src /app
WORKDIR /app
CMD ["dynamo"]
186 changes: 172 additions & 14 deletions docs/source/API.rst
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ Preprocessing (pp)
:toctree: .

pp.recipe_monocle
pp.cell_cycle_scores
pp.pca

Tools (tl)
~~~~~~~~~~
Expand All @@ -23,100 +25,256 @@ Tools (tl)
:maxdepth: 2
:toctree: .

tl.neighbors
tl.mnn
tl.moments
tl.calc_1nd_moment
tl.calc_2nd_moment
tl.dynamics

tl.cell_velocities
tl.reduceDimension

tl.gene_wise_confidence
tl.hdbscan
tl.cluster_field

tl.cell_velocities,
tl.confident_cell_velocities,

tl.cell_wise_confidence
tl.gene_wise_confidence

tl.generalized_diffusion_map,
tl.stationary_distribution,
tl.diffusion,
tl.expected_return_time,

tl.markov_combination
tl.compute_markov_trans_prob
tl.compute_kernel_trans_prob
tl.compute_drift_kernel
tl.compute_drift_local_kernel
tl.compute_density_kernel
tl.makeTransitionMatrix
tl.compute_tau
tl.MarkovChain
tl.KernelMarkovChain
tl.DiscreteTimeMarkovChain
tl.ContinuousTimeMarkovChain

tl.moran_i
tl.find_group_markers
tl.two_groups_degs
tl.top_n_markers
tl.glm_degs

tl.TRNET
tl.trn
tl.sample_by_velocity
tl.lhsclassic
tl.sample

tl.converter

tl.cal_ncenter
tl.DDRTree
tl.psl

Estimation (est)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Conventional scRNA-seq (csc)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. autosummary::
:toctree: .

est.csc.sol_u
est.csc.sol_s
est.csc.sol_p
est.csc.fit_linreg
est.csc.fit_first_order_deg_lsq
est.csc.solve_first_order_deg
est.csc.fit_gamma_lsq
est.csc.fit_alpha_synthesis
est.csc.fit_alpha_degradation
est.csc.velocity
est.csc.ss_estimation

Time-resolved metabolic labeling based scRNA-seq (tsc)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. autosummary::
:toctree: .

est.tsc.kinetic_estimation,
est.tsc.Estimation_MomentDeg,
est.tsc.Estimation_MomentDegNosp,
est.tsc.Estimation_MomentKin,
est.tsc.Estimation_MomentKinNosp,
est.tsc.Estimation_DeterministicDeg,
est.tsc.Estimation_DeterministicDegNosp,
est.tsc.Estimation_DeterministicKinNosp,
est.tsc.Estimation_DeterministicKin,
est.tsc.GoodnessOfFit,

est.tsc.LinearODE,
est.tsc.Moments,
est.tsc.Moments_Nosplicing,
est.tsc.Moments_NoSwitching,
est.tsc.Moments_NoSwitchingNoSplicing,
est.tsc.Deterministic,
est.tsc.Deterministic_NoSplicing,

Vector field (vf)
~~~~~~~~~~~~~~~~~

.. autosummary::
:toctree: .

vf.reconstruction
vf.SparseVFC
vf.graphize_vecfld
vf.vector_field_function
vf.VectorField

vf.FixedPoints
vf.VectorField2D
vf.topography

vf.cell_accelerations

vf.speed
vf.divergence
vf.curl
vf.speed
vf.acceleration
vf.curvature
vf.torsion
vf.Potential

vf.rank_speed_genes
vf.rank_divergence_genes
vf.rank_acceleration_genes
vf.rank_curvature_genes

vf.search_fixed_points
vf.gen_fixed_points
vf.gen_gradient
vf.IntGrad
vf.DiffusionMatrix
vf.action
vf.Potential

vf.path_integral
vf.alignment
vf.Wang_action
vf.Wang_LAP
vf.transition_rate
vf.MFPT
vf.Ao_pot_map
vf.solveQ

vf.diffusionMatrix

vf.vfGraph

Prediction (pd)
~~~~~~~~~~~~~~~

.. autosummary::
:toctree: .

pd.fate

pd.fate_bias

pd.state_graph

Plotting (pl)
~~~~~~~~~~~~~

.. autosummary::
:toctree: .

pl.basic_stats
pl.show_fraction
pl.feature_genes
pl.ariance_explained
pl.exp_by_groups

pl.cell_cycle_scores

pl.scatters
pl.phase_portraits
pl.dynamics
pl.umap

pl.kinetic_curves
pl.kinetic_heatmap
pl.jacobian_kinetics

pl.pca
pl.tsne
pl.umap
pl.trimap

pl.nneighbors
pl.state_graph

pl.cell_wise_vectors
pl.grid_vectors
pl.streamline_plot
pl.line_integral_conv
pl.plot_energy

pl.plot_flow_field,
pl.plot_fixed_points,
pl.plot_nullclines,
pl.plot_separatrix,
pl.plot_traj,
pl.topography,

pl.speed
pl.divergence
pl.curl
pl.topography
pl.curvature
pl.jacobian
pl.nneighbors
pl.kinetic_curves
pl.kinetic_heatmap
pl.jacobian_heatmap

pl.show_landscape

pl.fate_bias

pl.save_fig

Moive (mv)
~~~~~~~~~~~~~

.. autosummary::
:toctree: .

mv.fates

mv.StreamFuncAnim,
mv.animate_fates

Simulation (sim)
~~~~~~~~~~~~~~~~

.. autosummary::
:toctree: .

sim.two_genes_motif
sim.neurogenesis
sim.toggle
sim.Ying_model

sim.Gillespie
sim.Simulator

sim.state_space_sampler
sim.evaluate

External (ext)
~~~~~~~~~~~~~~

.. autosummary::
:toctree: .

ext.ddhodge
ext.scribe
ext.scifate
ext.mutual_inform
ext.scifate_glmnet
Loading

0 comments on commit 3e4718f

Please sign in to comment.