Skip to content

Commit

Permalink
pytest-runner requirement removed for conda build
Browse files Browse the repository at this point in the history
  • Loading branch information
francoislaurent committed Jan 19, 2021
1 parent 64ed3c0 commit 37dc4d8
Show file tree
Hide file tree
Showing 4 changed files with 68 additions and 16 deletions.
23 changes: 10 additions & 13 deletions doc/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,10 @@
TRamWAy
=======

|tramway| is a tool to analyse single molecule dynamics from their locations or trajectories.
|tramway| is a tool to analyse single molecule dynamics using their locations or trajectories.
Parameters of single molecule dynamics such as diffusivity, drift, force and potential energy are resolved in space and time.

Parameters of single molecule dynamics such as diffusivity, drift, force and potential energy can be estimated across space and time.
Maps of these parameters are thus generated and additional tools such as curl calculation for force maps may extract further information about the dynamics.

|tramway| has been designed as a modular Python library that may accomodate additional plugins for the main processing steps, namely the tessellation and inference steps.
|tramway| has been designed as a modular Python library that may accomodate additional plugins to sample the localization microscopy data and infer model parameters in microdomains.

The full code is distributed under :ref:`CeCILL license <license>` and is available at `github`_.

Expand All @@ -19,19 +17,19 @@ Features

.. * :ref:`deconvolution <deconvolution>` of stacks of images
* tracking of localization data
* tracking of localization microscopy data
* spatial :ref:`tessellation <tessellation>` and temporal segmentation
* :ref:`inference <inference>` of diffusivity, drift, force and potential energy
* :ref:`inference <inference>` of diffusivity, drift, force, potential energy, etc.
* analyses of the estimated force, such as curl calculation and :ref:`Bayes factor <inference_bayes_factor>` calculation to distinguish between interactions and spurious forces
* and more: generation of random-walk trajectories, plotting utilities, etc
* and more: generation of random walk trajectories, plotting utilities, etc



-------------
Quick example
-------------

Maps of diffusivity and potential energy estimates can be generated from molecule trajectories with as few as three commands:
Maps of diffusivity and effective potential estimates can be generated from molecule trajectories with as few as three commands:

.. code-block:: shell
:linenos:
Expand All @@ -43,9 +41,9 @@ Maps of diffusivity and potential energy estimates can be generated from molecul
* Single molecule locations and/or trajectories are usually stored in text files.
In the above example, such an input file is named *trajectories.txt*.
* The first step (``1``) consists of importing these location data and tessellating the space into cells of adequate size.
The *GWR* method grows a graph that fits closely the molecule density.
* All the analyses derivating from a same dataset are stored in a single *.rwa* file.
* The second step (``2``) consists of infering parameters of the molecule dynamics,
The *GWR* method grows a graph that fits molecule density.
* All the analysis results derived from a same dataset are stored in a single *.rwa* file.
* The second step (``2``) consists of inferring parameters of the molecule dynamics,
for example local diffusivities and potential energies (*DV* mode).
This may take a while and recruit most of the processing units of the host.
* The estimated values can now be visualized as 2D maps (``3``).
Expand All @@ -71,7 +69,6 @@ The equivalent Python code is:
map_plot('my_analyses.rwa')
--------------
Where to start
--------------
Expand Down
54 changes: 54 additions & 0 deletions meta.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@

{% set name = "tramway" %}
{% set version = "0.5rc4" %}

package:
name: {{ name }}
version: {{ version }}

source:
#url: https://pypi.io/packages/source/{{ name[0] }}/{{ name }}/{{ name }}-{{ version }}.tar.gz
#sha256: 80226d3949c210f1c9b22ecb884080f34869a033c3491f40c540cec094bfae7f
git_url: https://github.com/decbaycomp/tramway.git

build:
noarch: python
number: 0
script: "{{ PYTHON }} -m pip install .[roi,animate] -vv"

requirements:
#build:
# - pytest-runner
host:
- pip
- python >=3.6
run:
- hdf5
- python >=3.6
- rwa-python

test:
imports:
- tramway
requires:
- pytest
commands:
- pytest tests/test_core.py
- pytest tests/test_analyzer.py
- pytest tests/test_analyzer_pipeline.py::test_LocalHost
source_files:
- tests/test_core.py
- tests/test_analyzer.py
- tests/test_analyzer_pipeline.py

about:
home: https://github.com/DecBayComp/TRamWAy
license: CECILL-2.1
license_family: GPL
license_file: LICENSE
summary: 'The RAndom Walk AnalYzer: analysis toolbox for localization microscopy data'
doc_url: https://tramway.readthedocs.io/

extra:
recipe-maintainers:
- DecBayComp
2 changes: 0 additions & 2 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@
'animate': ['opencv-python', 'scikit-image', 'tqdm'],
'roi': ['polytope', 'cvxopt', 'tqdm'],
'webui': ['bokeh>=2.0.2', 'selenium']}
setup_requires = ['pytest-runner']
tests_require = ['pytest']


Expand All @@ -32,7 +31,6 @@
classifiers = [
'Intended Audience :: Science/Research',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
Expand Down
5 changes: 4 additions & 1 deletion tramway/analyzer/env/environments.py
Original file line number Diff line number Diff line change
Expand Up @@ -1585,7 +1585,10 @@ def scratch(cls, username):
raise NotImplementedError
def __init__(self, **kwargs):
SlurmOverSSH.__init__(self, **kwargs)
self.interpreter = 'singularity exec -H $HOME -B /pasteur tramway-hpc-210114.sif python3.6 -s'
if os.path.isdir('/pasteur'):
self.interpreter = 'singularity exec -H $HOME -B /pasteur tramway-hpc-210114.sif python3.6 -s'
else:
self.interpreter = 'singularity exec -H $HOME tramway-hpc-210114.sif python3.6 -s'
self.ssh.host = self.hostname()
@property
def username(self):
Expand Down

0 comments on commit 37dc4d8

Please sign in to comment.