Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lineage beta #71

Merged
merged 6 commits into from
Oct 2, 2020
Merged

Lineage beta #71

merged 6 commits into from
Oct 2, 2020

Conversation

WilliamIX
Copy link
Collaborator

Merging Lineage Beta into Master - this will let people use Lineage simulations (which are still in beta) without having to switch branches.

Note that Non-interacting lineages via the functions "py_simulate_lineage" and "py_propogate_cells" are quite stable. The interacting versions of these "py_simulate_interacting_lineage" and "py_propogate_interacting_cells" are still buggy.

William Poole added 6 commits June 11, 2020 13:51
wasn't checking cell death correctly
Fixed a bug where arrays of length 0 were being made.

Tried to find other places to debug this seg-fault problem. I believe it might now be an issue when running bioscrape inside jupyter notebooks??? When running on the prompt I can run tons of simulations no problem.
@ayush9pandey ayush9pandey merged commit baa3c37 into master Oct 2, 2020
@ayush9pandey ayush9pandey deleted the LineageBeta branch October 2, 2020 04:50
WilliamIX added a commit that referenced this pull request Nov 3, 2020
* Ode safe mode (#67) via Deterministic Safe Interface

* Interface Safemode unit tests

* Updated py_simulate_model to allow Safe Deterministic simulations

* Bioscrape annotations fix (#65): renamed local parameters extended to bioscrape propensity annotations

* Added Unit Tests for SBML reading and writing with and without annotations

* Model comparison removed from test_utils

* changing paths to work across platforms

* added pandas to requirements

* Remove underscore from parameter definition (#68)

* Fixed Bioscrape XML loading and added depricated warning for bioscrape XML

* Added tests to compare general propensities to bioscrape propensities

* C vector bug fix (#69): Clears c_vectors in model._create_vectors

* Adds a test to make sure running initialize twice isn't a problem.

* Lineage beta (#71): Fixed global volume distribution problem wasn't checking cell death correctly

* Added new lineage examples

* update readme travis tag (#75)

Co-authored-by: William Poole <wp_ix@hotmail.com>
Co-authored-by: William Poole <wpoole@caltech.edu>
ayush9pandey added a commit that referenced this pull request Nov 3, 2020
* Dev (#70)

* Ode safe mode (#67)

* Deterministic Safe Interface Code written

* Creating some tests

* Interface Safemode unit tests complete

* Updated py_simulate_model to allow Safe Deterministic simulations

* Bioscrape annotations fix (#65)

* renamed local parameters extended to bioscrape propensity annotations

* Added Unit Tests for SBML reading and writing with and without annotations

* Model comparison removed from test_utils

* changing paths to work across platforms

* added pandas to requirements

* Remove underscore from parameter definition (#68)

* Fixed Bioscrape XML loading and added depricated warning for bioscrape XML

* Added tests to compare general propensities to bioscrape propensities

* C vector bug fix (#69): Clears c_vectors in model._create_vectors

* Adds a test to make sure running initialize twice isn't a problem.

Co-authored-by: William Poole <wpoole@caltech.edu>

* Lineage beta (#71)

* Fixed global volume distribution problem

wasn't checking cell death correctly

* Minor changes to lineages

Fixed a bug where arrays of length 0 were being made.

Tried to find other places to debug this seg-fault problem. I believe it might now be an issue when running bioscrape inside jupyter notebooks??? When running on the prompt I can run tons of simulations no problem.

* Added new lineage examples

* forgot the sbml file!

Co-authored-by: William Poole <wpoole@caltech.edu>

* Dev to master (#74)

* Ode safe mode (#67)

* Deterministic Safe Interface Code written

* Creating some tests

* Interface Safemode unit tests complete

* Updated py_simulate_model to allow Safe Deterministic simulations

Co-authored-by: William Poole <wpoole@caltech.edu>

* Bioscrape annotations fix (#65)

* renamed local parameters extended to bioscrape propensity annotations

* Added Unit Tests for SBML reading and writing with and without annotations

* Model comparison removed from test_utils

* changing paths to work across platforms

* added pandas to requirements

Co-authored-by: William Poole <wpoole@caltech.edu>

* Remove underscore from parameter definition (#68)

* Fixed Bioscrape XML loading and added depricated warning for bioscrape XML

* Added tests to compare general propensities to bioscrape propensities

Co-authored-by: William Poole <wpoole@caltech.edu>

* C vector bug fix (#69)

* Clears c_vectors in model._create_vectors

* Adds a test to make sure running initialize twice isn't a problem.

Co-authored-by: William Poole <wpoole@caltech.edu>

Co-authored-by: William Poole <wpoole@caltech.edu>

* update readme travis tag (#75)

Co-authored-by: William Poole <wp_ix@hotmail.com>
Co-authored-by: William Poole <wpoole@caltech.edu>
ayush9pandey added a commit that referenced this pull request Aug 22, 2022
Safe mode (#67) changes:
      * Deterministic Safe Interface Code written
      * Creating some tests
      * Interface Safemode unit tests complete
      * Updated py_simulate_model to allow Safe Deterministic simulations
      * Added checks to safemode, timestep control to py_simulate_model, code reuse in massaction propensities
      * SafeLineageCSimInterface created: this interface is analogous to the SafeModelCSimInterface and does some basic checking (and warning messages) at the expense of speed.
     * lineage notebooks cleanup: added turbidostat example for lineages, lineage examples split into two notebooks
      * Lineage fixes: Fixed an indexing bug, py_SimulateTurbidostat returns dataframes, and Turbidostat example plotting, improved py_SimulateTurbidostat wrapper


SBML read/write changes:
      * Bioscrape annotations fix (#65)
      * renamed local parameters extended to bioscrape propensity annotations
      * Added Unit Tests for SBML reading and writing with and without annotations
      * Fix for SBML kinetic law formula when importing and writing SBML #89 (#93)
      * add checks to rate law math ast


* Testing and other packaging related changes:
      * Model comparison removed from test_utils
      * Adds a test to make sure running initialize twice isn't a problem.
      * changing paths to work across platforms
      * added pandas to requirements
      * Added tests to compare general propensities to bioscrape propensities
      * update readme travis tag (#75)
      * Switch to Github Actions (#84):  Switching from Travis CI to Github actions. Now tests on Mac OS, Linux, and Windows with python versions 3.6, 3.7, and 3.8
      * Making Bioscrape pip Installable (#86): This PR creates a single setup.py file which automatically compiles Bioscrape's cython code.
      * Manifest is ignored
      * Mid-debug version, trying to figure out why simulations produce NaNs in serialization testing
      * Fixes some bugs in serialization testing


Bug fixes:
      * C vector bug fix (#69): Clears c_vectors in model._create_vectors
      * Remove underscore from parameter definition (#68)
      * Fixed Bioscrape XML loading and added deprecated warning for bioscrape XML


Lineage changes:
      * Lineage beta (#71)
      * Fixed global volume distribution problem wasn't checking cell death correctly
      * Minor changes to lineages: Fixed a bug where arrays of length 0 were being made.
      * Tried to find other places to debug this seg-fault problem. I believe it might now be an issue when running bioscrape inside jupyter notebooks??? When running on the prompt I can run tons of simulations no problem.
      * Added new lineage examples
      * Makes Models and LineageModels picklable; Refactors test_propensities_via_annotations.py test.
      * Adds turbidostat capability to Lineages, along with unit tests for the priority queue used by turbidostat
      * Removes a few unused files
      * index bounds checking for Lineage.py_get_schnitz
      * Fixed perfect partitioning rounding error
      * Fixes np.object-related warning.
      * Fixes a warning in serialization tests
      * Fixed some bugs involving SimulateSingleCell with length 0 or 1 timepoints arrays.
      


Inference changes:
      * add priors, and custom prior
      * py_inference wrapper added
      * add beta and gamma prior
      * add custom prior documenting notebook
      * gaussian prior fix
      * bug fixes for log uniform prior and pdf computation bound checks
      * option to set initial parameter seed. print convergence diagnostics
      * first cut at lmfit support for inference
      * renaming inference files and functions to be agnostic to external parameter inference packages
      * 1. inference.pyx bug with multiple measurements fixed. 2. Added LMFit support for least squares type parameter id. 3. Refactor inference example notebooks. 4. Added inference example notebooks.
      * first cut at delay support for inference
      * change convergence_diagnostics error to warning
      * fix tests
      * refactor inference examples
      * add inference test
      * add emcee version requirement for progress bar update
      * add requirement for scipy>1.6.4 and add lmfit
      * testing suite for inference
      * allow lower scipy versions
      * Fixed deterministic safemode tests
      * raises errors in deterministic safe mode - errors do not stop integration
      * less parallelization so tests don't use up all the RAM
      * Slight change to how linege's SimulateSingleCell handles simulation with a single timepoint, to avoid infinite loops.
      * Add simulation control keywords rtol atol and hmax to inference and bioscrape deterministic simulation
      * fixed a bug which caused the CSimInterface to not update its parameters
      * more init_seed options, including guassian and normal priors + checking for positivity
      * filename option in py_inference
      * loguniform prior sampling initializaiton
      * parameters now can vary in log space
      * precision added to sensitivity analysis and Inference objects now save a list of params along with costs
      * ability to skip resetting up the cost function + optional file writing.
      * ability to reset PID default parameters programatically


Other core bioscrape changes:
      * Expands serialization tests to check deterministic simulations as well as stochastic ones.
      * minor fix to sympy_species_and_parameters
      * merged turbidostat and serialization
      * Merges serialization and turbidostat into dev, with minor fixes.
      * Cython Statistics for SSA Trajectories (#101): SSResult.emperical_distribution and py_empirical_distribution cythonize distribution and marginal distribution calculations. SSAresult.first_moment, second_moment, correlation, and standard_deviation cython methods now all exist. As well as python wrappers.
      * added max_counts_list to allow truncation of the empirical distribution
      * add doc strings
      * Fast statistics for SSA trajectories examples
      * Rules and simulator upgrade (#106)
      * DeterministicDilutionSimulator, SafeModeSSASimulator, TimeDependentSSASimulator, and Core Lineage/Propogate Simulators deleted
      * Major Rule Update:
            ** Rules fire consistently, even when there are no reactions.
            ** New Rule types and firing frequencies, including specific times, every timestep, and every update.
            ** Tests of these new rule features
      * Recomputed all the frozen sim results: Why? Previously, delay reactions firing if no reactions could fire. Propensities are now recomputed ever dt, so the old results also are no longer valid.      
      * version update to 1.0.3
      

Bioscrape XML deprecated now with the following commits:
      * Removing Bioscrape XML and adding SBML Functionality (#108)
      * Removed Bioscrape XML writing, bioscrape XML from the examples, and cell lineages from the advanced examples
      * remove propensity_annotation keyword, always write annotation to bioscrape exported SBML models
      * delay annotation working with propensity annotation
      * remove underscore shenanigans in rule writing
      * refactor import sbml
      * add rule annotation. add rule testing with annotation
      * fix ODE rule SBML writing and loading
      * remove all underscore-to-parameter code
      * check basic notebook - runs without problems
      * turn off input_printout in propensity test


New features: Sensitivity analysis (#111)
      * add tests for sensitivity analysis
      * apply rules in sensitivity analysis

Co-authored-by: William Poole <wpoole@caltech.edu>
Co-authored-by: Ayush Pandey <ayush.9.pandey@gmail.com>
Co-authored-by: Sam Clamons <sclamons@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants