Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
64 commits
Select commit Hold shift + click to select a range
5fdbf58
first draft of the MCMC toolbox
Aug 28, 2017
1be7848
temp commit before I delete the sysID stuff
Nov 20, 2017
7947202
deleted sys ID
Nov 20, 2017
8fd0e41
changed the ATP deg parameter setup, and named the NTP consumption bi…
Nov 22, 2017
8d4fcc9
added the globalize params function
Nov 22, 2017
1598100
modified the txtl_init files
Nov 22, 2017
299d40c
fixed globalize params
Nov 23, 2017
ba04d29
parameter globalization and rule creation in txtl_transcription and t…
Nov 27, 2017
02bd910
added the mcmc config file
Nov 27, 2017
2c120b2
an mcmc toolbox for simbiology and in particular the txtl modeling to…
Nov 27, 2017
0bbd120
added a gitignore file for the projects directory
Nov 27, 2017
7907f8a
changed the readme file
Nov 28, 2017
1bb7850
changed sbiointegrable to only tolerate 50% non integrability - down …
Nov 28, 2017
ba1f5b1
Massive developments to the MCMC toolbox
Feb 21, 2018
b022ac8
added a file on VNPRL2011, and lots of stubs for the calibration corr…
Feb 26, 2018
f624382
getting ready to run vnprl on nessa and lambda
Feb 26, 2018
d734c39
added a bunch of project and mcmc_info files for artificial data MCMC
Apr 1, 2018
7eabd3b
updates constgfp3ii mcmc info file for running on linux, 200 walkers,…
Apr 1, 2018
c5b9376
updates constgfp3ii apr 1 7 pm PST for running on nessa and lambda
Apr 2, 2018
dbec6dc
updates constgfp3ii mcmc_info smaller step size and number of simulat…
Apr 2, 2018
b09557d
turned proj_protein_constgfp3ii_linux into a function so one does not…
Apr 2, 2018
380fbb3
optional ability to add a previous run as a starting point
Apr 2, 2018
a8360e9
changes to linux file
Apr 3, 2018
2e19d82
changes to file again
Apr 3, 2018
e2fe0f8
added standard deviation tot he linux file
Apr 3, 2018
5a3a379
bugfix in transcription and translation file, some setup of the covar…
Apr 16, 2018
4c4613c
an attempt at the new AGTP regenration system
Apr 18, 2018
c7c5d33
ommit log
Apr 20, 2018
bcda0d7
fixed a bug in the mcmc_info file. zzz
Apr 22, 2018
7371e2b
first set of nessa and lambda runs done. Now extended the parameter r…
Apr 25, 2018
0e6532f
made come changed to the explore regen A file
Apr 25, 2018
70981c0
new gitignore
Apr 25, 2018
9b40709
gitignore fix
Apr 25, 2018
7e3209e
commit of untracked files, getting ready for setting up a minimal wor…
Jul 20, 2018
7a2f40e
deleted a lot of the files that were a work in progress, so that we c…
Jul 28, 2018
7ff29d0
deleted a lot of the files that were a work in progress, so that we c…
Jul 28, 2018
b08fbd7
Merge branch 'minimal_mcmc_simbio' of https://github.com/vipulsinghal…
Jul 28, 2018
372b0f3
Added a readme file in markdown format. Not complete yet; Still need …
Jul 29, 2018
f52b109
Added a readme file in markdown format. Not complete yet; Still need …
Jul 29, 2018
7bb1954
try again with the readme file
Jul 29, 2018
bd45b75
tutorial files for mcmc_simbio in MATLAB markup
Jul 30, 2018
ef868d2
A lot of write up to the mcmc_info.m helpfile. Will point to this fil…
Jul 31, 2018
ab4d313
added tutorials I-III, an mcmc_info help file, a data_info help file,…
Aug 3, 2018
50e2c27
updated the readme file, and deleted some image files
Aug 3, 2018
ad7a070
added support functions needed for this toolbox to function (there we…
Aug 3, 2018
e96e073
changes to the source code to add weighting to trajectories, and the …
Jan 1, 2019
6dea480
modified gitignore to include data tiles, png, tiff, graphclick files
Jan 1, 2019
bbc8d35
testing on aws, first commit
Jan 29, 2019
0819b32
some changes to source files. refacter i next commit. this is from th…
Jan 29, 2019
c8a8d05
modifications to proj_acs_dsg2014_regen_A.m
Jan 30, 2019
fb8a708
changed non integrability limit to 80%
Jan 30, 2019
9800a3c
changed back to 67%
Jan 30, 2019
0e451eb
sorry this is the one
Jan 30, 2019
4cefbc8
added display msg to integrableLHS.m
Jan 30, 2019
b72a4de
more displays
Jan 30, 2019
96713fb
moving to debugging locally, AWS capability is present now. We can do…
Jan 30, 2019
98ce095
changes to tutorialII, and ran it on the cluster
Jan 31, 2019
6d08e9e
not sure what happened here... why was a conflict generated in the gi…
Jan 31, 2019
d23ca58
really screwing up the pushing here. I think I am mixing up the pulli…
Jan 31, 2019
a74a173
added the ability to start from a previous run's endpoint.
Jan 31, 2019
008ed32
bugfix
Jan 31, 2019
f613993
bugfix1
Jan 31, 2019
6cfcc1a
fixed gen residuals
Jan 31, 2019
39c0afb
tutorial II made to start from previous run
Jan 31, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
66 changes: 66 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -26,3 +26,69 @@ octave-workspace

# .DS_store files
.DS_Store

*.sublime-project
*.sublime-workspace

*.txt
*.todo

# Image files
*.png
*.tiff
*.eps
*.jpg
*.svg
*.fig
# data files
*.gc
*.xlsx
*.csv

# movie files
*.mp4

youngha_data_conversion/
html/

# Compiled source #
###################
*.com
*.class
*.dll
*.exe
*.o
*.so

# Packages #
############
# it's better to unpack these files and commit the raw source
# git has its own built in compression methods
*.7z
*.dmg
*.gz
*.iso
*.jar
*.rar
*.tar
*.zip

# Logs and databases #
######################
*.log
*.sql
*.sqlite

# OS generated files #
######################
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db

# MATLAB Crash Dumps #
######################
Crash_logs_*/
23 changes: 0 additions & 23 deletions README

This file was deleted.

45 changes: 45 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# Introduction

This package contains two related toolboxes that work with MATALB Simbiology models: txtlsim and mcmc_simbio.

The first toolbox is called txtlsim (ref), and can be used to simulate the chemical reations that occur in the Transcription-Translation (TX-TL) cell-free gene expression system developed at the University of Minnesota (Vincent Noireaux) and Caltech (Richard Murray) (refs). The main features of this toolbox are its ability to track the loading of enzymatic machinery, the consumption of resources, the ease of setting up models, the automatic accounting of retroactivity effects, and the extensibility the reaction networks generated.

The second toolbox is called mcmc_simbio. This is a concurrent Bayesian parameter inference toolbox for MATLAB Simbiology models. The Bayesian parameter inference is performed using a modification of Aslak Grinsted's MATLAB implementation of the affine invariant ensemble Metropolis-Hastings MCMC sampler (ref). We have added support for what we call 'concurrent' parameter inference, which refers to the capability to estimate a common set of parameters that get used simultaneously and in arbitrary combinations in multiple experiments/models. More information can be found below.

# The Toolboxes

## Getting the toolbox and running some simple examples

Clone the repository using

```
git clone https://github.com/BuildACell/txtlsim.git
```

into a directory you wish to put the toolbox in. Alternatively, if you do not plan to version control the toolbox, you can simply download it as a zip file using the green button on the [main page](https://github.com/BuildACell/txtlsim).

Lets call the directory where you cloned or downloaded the repository `trunk`, i.e., this is where directories like `core`, `components`, `examples` and `mcmc_simbio` are. Open MATLAB, and set the current working directory to `trunk`. Type in `txtl_init` and `mcmc_init` into the MATLAB command line. This initializes the txtlsim and mcmc_simbio toolboxes.

Check if both the toolboxes are installed properly by running the follwoing examples:

### txtlsim examples
Start with typing in `geneexpr` into the command window. This should run a constitutive gene expression example in the toolbox, and you should see a plot with three subplots (protein; mRNA and DNA; and resource usage) appear. There should not be any error messages in the command window.

Next, run the `negautoreg` example in the command line. Again, you should see a plot of the species in the system, and no errors. This example simulates the negative autoregulation circuit.

Type in `edit TXTL_tutorial` into the command line to open the tutorial file. You can also use the MATLAB publisher button to publish this file, and look at it in the MATLAB help file markup. We recommend running through the examples in this file, and exploring the reactions, species, etc set up in this file. Familiarity with the MATLAB Simbiology command line is helpful here. To learn more about Simbiology, go to the [Getting Started Using the Simbiology Command Line](https://www.mathworks.com/help/simbio/gs/simbiology-command-line-tutorial.html) page.

### mcmc_simbio examples

Next, open and explore the mcmc_simbio estimation examples given in the files `proj_mcmc_tutorial`, `proj_mcmc_tutorial_II`, and `proj_mcmc_tutorial_III` in the `trunk\mcmc_simbio\proj\` directory. We strongly recommend you skim through the `mcmc_info.m` and `data_info` files (`trunk\mcmc_simbio\models_and_supporting_files\` or type `help mcmc_info` and `help data_info` into the MATLAB command line) to gain an understanding of some of the key functionalities of the parameter inference toolbox. Along with the three tutorial files, the `mcmc_info.m` and the `data_info.m` files provide an initial idea of the capabilities of the toolbox.

## References

More information can be found in the following references:

Z. A. Tuza, V. Singhal, J. Kim and R. M. Murray, "An in silico modeling toolbox for rapid prototyping of circuits in a biomolecular “breadboard” system," 52nd IEEE Conference on Decision and Control, Firenze, 2013, pp. 1404-1410.
doi: 10.1109/CDC.2013.6760079


Vipul Singhal, 2018
California Institute of Technology
45 changes: 45 additions & 0 deletions auxiliary/boundedline/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# MATLAB #
##########
# Editor autosave files
*~
*.asv
# Compiled MEX binaries (all platforms)
*.mex*

# Compiled source #
###################
*.com
*.class
*.dll
*.exe
*.o
*.so

# Packages #
############
# it's better to unpack these files and commit the raw source
# git has its own built in compression methods
*.7z
*.dmg
*.gz
*.iso
*.jar
*.rar
*.tar
*.zip

# Logs and databases #
######################
*.log
*.sql
*.sqlite

# OS generated files #
######################
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db
37 changes: 37 additions & 0 deletions auxiliary/boundedline/Inpaint_nans/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# Compiled source #
###################
*.com
*.class
*.dll
*.exe
*.o
*.so

# Packages #
############
# it's better to unpack these files and commit the raw source
# git has its own built in compression methods
*.7z
*.dmg
*.gz
*.iso
*.jar
*.rar
*.tar
*.zip

# Logs and databases #
######################
*.log
*.sql
*.sqlite

# OS generated files #
######################
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db
161 changes: 161 additions & 0 deletions auxiliary/boundedline/Inpaint_nans/demo/html/inpaint_nans_demo.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,161 @@
<html xmlns:mwsh="http://www.mathworks.com/namespace/mcode/v1/syntaxhighlight.dtd">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<!--
This HTML is auto-generated from an M-file.
To make changes, update the M-file and republish this document.
-->
<title>inpaint_nans_demo</title>
<meta name="generator" content="MATLAB 7.0.1">
<meta name="date" content="2006-06-28">
<meta name="m-file" content="inpaint_nans_demo"><style>
body {
background-color: white;
margin:10px;
}
h1 {
color: #990000;
font-size: x-large;
}
h2 {
color: #990000;
font-size: medium;
}
p.footer {
text-align: right;
font-size: xx-small;
font-weight: lighter;
font-style: italic;
color: gray;
}

pre.codeinput {
margin-left: 30px;
}

span.keyword {color: #0000FF}
span.comment {color: #228B22}
span.string {color: #A020F0}
span.untermstring {color: #B20000}
span.syscmd {color: #B28C00}

pre.showbuttons {
margin-left: 30px;
border: solid black 2px;
padding: 4px;
background: #EBEFF3;
}

pre.codeoutput {
color: gray;
font-style: italic;
}
pre.error {
color: red;
}

/* Make the text shrink to fit narrow windows, but not stretch too far in
wide windows. On Gecko-based browsers, the shrink-to-fit doesn't work. */
p,h1,h2,div {
/* for MATLAB's browser */
width: 600px;
/* for Mozilla, but the "width" tag overrides it anyway */
max-width: 600px;
/* for IE */
width:expression(document.body.clientWidth > 620 ? "600px": "auto" );
}

</style></head>
<body><pre class="codeinput"><span class="comment">% Surface fit artifact removal</span>
[x,y] = meshgrid(0:.01:1);
z0 = exp(x+y);

znan = z0;
znan(20:50,40:70) = NaN;
znan(30:90,5:10) = NaN;
znan(70:75,40:90) = NaN;

z = inpaint_nans(znan,3);

<span class="comment">% Comparison to griddata</span>
k = isnan(znan);
zk = griddata(x(~k),y(~k),z(~k),x(k),y(k));
zg = znan;
zg(k) = zk;

close <span class="string">all</span>
figure
surf(z0)
title <span class="string">'Original surface'</span>

figure
surf(znan)
title <span class="string">'Artifacts (large holes) in surface'</span>

figure
surf(zg)
title([<span class="string">'Griddata inpainting ('</span>,num2str(sum(isnan(zg(:)))),<span class="string">' NaNs remain)'</span>])

figure
surf(z)
title <span class="string">'Inpainted surface'</span>

figure
surf(zg-z0)
title <span class="string">'Griddata error surface'</span>

figure
surf(z-z0)
title <span class="string">'Inpainting error surface (Note z-axis scale)'</span>
</pre><img vspace="5" hspace="5" src="inpaint_nans_demo_01.png"> <img vspace="5" hspace="5" src="inpaint_nans_demo_02.png"> <img vspace="5" hspace="5" src="inpaint_nans_demo_03.png"> <img vspace="5" hspace="5" src="inpaint_nans_demo_04.png"> <img vspace="5" hspace="5" src="inpaint_nans_demo_05.png"> <img vspace="5" hspace="5" src="inpaint_nans_demo_06.png"> <p class="footer"><br>
Published with MATLAB&reg; 7.0.1<br></p>
<!--
##### SOURCE BEGIN #####
% Surface fit artifact removal
[x,y] = meshgrid(0:.01:1);
z0 = exp(x+y);

znan = z0;
znan(20:50,40:70) = NaN;
znan(30:90,5:10) = NaN;
znan(70:75,40:90) = NaN;

z = inpaint_nans(znan,3);

% Comparison to griddata
k = isnan(znan);
zk = griddata(x(~k),y(~k),z(~k),x(k),y(k));
zg = znan;
zg(k) = zk;

close all
figure
surf(z0)
title 'Original surface'

figure
surf(znan)
title 'Artifacts (large holes) in surface'

figure
surf(zg)
title(['Griddata inpainting (',num2str(sum(isnan(zg(:)))),' NaNs remain)'])

figure
surf(z)
title 'Inpainted surface'

figure
surf(zg-z0)
title 'Griddata error surface'

figure
surf(z-z0)
title 'Inpainting error surface (Note z-axis scale)'


##### SOURCE END #####
-->
</body>
</html>
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading