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

Merging changes from dev to master #131

Merged
merged 47 commits into from
Aug 22, 2022
Merged

Merging changes from dev to master #131

merged 47 commits into from
Aug 22, 2022

Conversation

ayush9pandey
Copy link
Collaborator

Multiple people have contributed to dev over the last couple years. Let's make sure that all of these commits look good and then we can merge. Requesting @sclamons @WilliamIX to review.

ayush9pandey and others added 30 commits November 3, 2020 11:02
* 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>
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

Co-authored-by: William Poole <wpoole@caltech.edu>
This PR creates a single setup.py file which automatically compiles Bioscrape's cython code.
…93)

* add priors, and custom prior

* py_inference wrapper added

* merge master

* add beta and gamma prior

* add custom prior documenting notebook

* all notebooks work

* typo bug fix

* minor update to inference notebooks

* gaussian prior fix

* bug fixes for log uniform prior and pdf computation bound checks

* add checks to rate law math ast
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


Co-authored-by: William Poole <wpoole@caltech.edu>
* index bounds checking for Lineage.py_get_schnitz

* Fixed perfect partitioning rounding error

Co-authored-by: William Poole <wpoole@caltech.edu>
* 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
* add empty line at end of test_inference
WilliamIX and others added 13 commits June 25, 2021 12:25
* 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

Co-authored-by: William Poole <wpoole@caltech.edu>
Co-authored-by: ayush9pandey <ayush.9.pandey@gmail.com>
* add priors, add beta and gamma prior, and custom prior, documentation to the notebook

* py_inference wrapper added

* option to set initial parameter seed. print convergence diagnostics

* Added LMFit support for least squares type parameter id. and added inference example notebooks.

* delay support for inference

* add tests for sensitivity analysis

* apply rules in sensitivity analysis
* 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

Co-authored-by: William Poole <wpoole@caltech.edu>
…ith 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 analyss 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

Co-authored-by: William Poole <wpoole@caltech.edu>
* Improved infinite loop fixes.
* Delete test_printing.py

Co-authored-by: Sclamons
@ayush9pandey ayush9pandey added enhancement New feature or request Bioscrape Core Issues pertaining to core bioscrape functionality Lineages Issues pertaining to bioscrape lineages Inference Issues Pertaining to Bioscrape Inference, Parameter Identificaiton, and System Identification Analysis Features Helper functions for analyzing circuits (e.g. Sensitivity analysis) labels Jul 22, 2022
@ayush9pandey ayush9pandey self-assigned this Jul 22, 2022
@ayush9pandey
Copy link
Collaborator Author

@WilliamIX could you review this PR so we can merge? This is just dev to master - so I believe this code has been vetted once when we merged to dev? I want to send in a couple PRs after this.

bioscrape/inference.pyx Outdated Show resolved Hide resolved
@WilliamIX WilliamIX self-requested a review August 22, 2022 16:44
@ayush9pandey ayush9pandey merged commit 40cfb91 into master Aug 22, 2022
@ayush9pandey
Copy link
Collaborator Author

Thanks! Merging.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Analysis Features Helper functions for analyzing circuits (e.g. Sensitivity analysis) Bioscrape Core Issues pertaining to core bioscrape functionality enhancement New feature or request Inference Issues Pertaining to Bioscrape Inference, Parameter Identificaiton, and System Identification Lineages Issues pertaining to bioscrape lineages
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants