<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-8360054526498859387</atom:id><lastBuildDate>Sat, 07 Feb 2026 23:20:38 +0000</lastBuildDate><title>TinkerCell Updates</title><description>TinkerCell is a Computer-Aided Design software tool for Synthetic Biology that promotes collaboration through its plugin interface. This blog is used to keep notes on updates to the project.</description><link>http://tinker-cell.blogspot.com/</link><managingEditor>noreply@blogger.com (Deepak)</managingEditor><generator>Blogger</generator><openSearch:totalResults>124</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-859801562249689848</guid><pubDate>Thu, 31 May 2012 02:28:00 +0000</pubDate><atom:updated>2012-05-30T19:29:27.171-07:00</atom:updated><title>Graphs of the Nodes Tree and Connections Tree ontologies</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjucoZnIPGcSRsxghLr7jBcwPlIFfQhXxQ2xouTnpjHIA8qeCa02aoXV9mrhJpFfW5HQG8-T_poFf0DS3ApoNsggOg8EYi2JwZX8_HhSSgwXSam9Gccv-bAy7ZwI7qxOTMfgdDtqM1-AcVz/s1600/ConnectionsTree.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;24&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjucoZnIPGcSRsxghLr7jBcwPlIFfQhXxQ2xouTnpjHIA8qeCa02aoXV9mrhJpFfW5HQG8-T_poFf0DS3ApoNsggOg8EYi2JwZX8_HhSSgwXSam9Gccv-bAy7ZwI7qxOTMfgdDtqM1-AcVz/s320/ConnectionsTree.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYgjOfGU9P_KRBZVjqXbxyAFrNV5-7oJ8H6lFW9UMfdljuJuU9QFwrRh5s8ZoDY3Gre0etNpFa7yvOPmU_UK8LRAhZfNYlw2XOm8L7VCwJDbkQQBuqGexjb_msMzI2dYWrYCjy6jiEZOma/s1600/NodesTree.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;53&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYgjOfGU9P_KRBZVjqXbxyAFrNV5-7oJ8H6lFW9UMfdljuJuU9QFwrRh5s8ZoDY3Gre0etNpFa7yvOPmU_UK8LRAhZfNYlw2XOm8L7VCwJDbkQQBuqGexjb_msMzI2dYWrYCjy6jiEZOma/s320/NodesTree.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;</description><link>http://tinker-cell.blogspot.com/2012/05/graphs-of-nodes-tree-and-connections.html</link><author>noreply@blogger.com (Deepak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjucoZnIPGcSRsxghLr7jBcwPlIFfQhXxQ2xouTnpjHIA8qeCa02aoXV9mrhJpFfW5HQG8-T_poFf0DS3ApoNsggOg8EYi2JwZX8_HhSSgwXSam9Gccv-bAy7ZwI7qxOTMfgdDtqM1-AcVz/s72-c/ConnectionsTree.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-5147820571395047251</guid><pubDate>Thu, 08 Dec 2011 21:54:00 +0000</pubDate><atom:updated>2012-09-27T05:54:46.718-07:00</atom:updated><title>Running TinkerCell from USB</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #0b5394;&quot;&gt;To store all the settings in a USB drive, do this:&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;Use Settings -&amp;gt;&amp;nbsp;&quot;Export current settings&quot; to export &quot;settings.ini&quot;&lt;/li&gt;
&lt;li&gt;Copy the &quot;settings.ini&quot; file to the same location as TinkerCell (on the Mac, this will be TinkerCell.app/Contents/MacOS)&lt;/li&gt;
&lt;li&gt;Now the TinkerCell application folder is self-contained. Copy it on a USB drive. That&#39;s all.&lt;/li&gt;
&lt;/ol&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #0b5394;&quot;&gt;What exactly is this doing?&lt;/span&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
The &quot;settings.ini&quot; stores settings such as window position and sizes, catalog items to display, plot line colors, and so on. Usually, these settings are stored on the computer where TinkerCell runs, but the export option described above can be used to save and load the settings from a file. TinkerCell will first check if there is a &quot;settings.ini&quot; file; if not, then it will load settings from the local machine. So, if you distribute TinkerCell on a USB with the &quot;settings.ini&quot; file, then everyone who copied TinkerCell from that USB drive will have the same settings.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: red;&quot;&gt;Careful when using dual-monitor&lt;/span&gt;: The settings file also includes window positions, so if you use a dual-monitor setup, be sure that the TinkerCell window is on the first monitor. Otherwise, it will load outside the screen when you load it in another computer without a second monitor.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjURKCh40AyEkZ-Sj4GId0R2V-MkH5zHV3fYECyj3p9IcSqdS17M7tvf2kLXXwz-DscyeiNg4Mae2_ArsB776k3R6AO5OjAZAD3r1tLtoccGjdsBZmIhOf9Fv6rd-EyLyFC6HDbSEZQx_pg/s1600/Menu_029.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjURKCh40AyEkZ-Sj4GId0R2V-MkH5zHV3fYECyj3p9IcSqdS17M7tvf2kLXXwz-DscyeiNg4Mae2_ArsB776k3R6AO5OjAZAD3r1tLtoccGjdsBZmIhOf9Fv6rd-EyLyFC6HDbSEZQx_pg/s1600/Menu_029.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
</description><link>http://tinker-cell.blogspot.com/2011/12/export-local-settings-to-run-tinkercell.html</link><author>noreply@blogger.com (Deepak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjURKCh40AyEkZ-Sj4GId0R2V-MkH5zHV3fYECyj3p9IcSqdS17M7tvf2kLXXwz-DscyeiNg4Mae2_ArsB776k3R6AO5OjAZAD3r1tLtoccGjdsBZmIhOf9Fv6rd-EyLyFC6HDbSEZQx_pg/s72-c/Menu_029.png" height="72" width="72"/><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-4368276936905918953</guid><pubDate>Sat, 26 Nov 2011 01:44:00 +0000</pubDate><atom:updated>2011-11-25T17:50:06.988-08:00</atom:updated><title>Simple animation based on simulated result</title><description>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigfeq6ur4RyJhHPxGmSvyThTd5TeQ7Smb2e_EIICHZlofs-GS8YyIfPiIC0kFO2Ng-OODE8JH5fNYPmhpJnZFj4UQiHmhcYwS0je6KUJVF2Nhg5rGOiFewO9C7NDlvAiWjec40pzoTsju9/s1600/Selection_021.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;br /&gt;&lt;/a&gt;&lt;/div&gt;
The tc_setAlpha function allows C, Python, Octave plugins to change the transparency of items on the screen. This &quot;Shade after Simulation&quot; python plugin uses this function to perform a simple animation based on simulated data (or any other data that has been plotted). See the end of the &lt;a href=&quot;https://docs.google.com/a/tinkercell.com/View?id=dcx9fkfb_234gf8st9hc&quot; target=&quot;_blank&quot;&gt;plugins documentation&lt;/a&gt; for the code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPomk6B61BNsKYPDU2ahlNspvITdp7dlX1e4y_cN6eaBinRdmhI2ul5Im7LGpTeMCpDun89BtcWcMO6gUIhweJMfXbWOtRVM3PqgarlIWcxGAZ5cRIlUy-5cudVCxe_QdcOGI97x6FVytT/s1600/Selection_025.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;275&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPomk6B61BNsKYPDU2ahlNspvITdp7dlX1e4y_cN6eaBinRdmhI2ul5Im7LGpTeMCpDun89BtcWcMO6gUIhweJMfXbWOtRVM3PqgarlIWcxGAZ5cRIlUy-5cudVCxe_QdcOGI97x6FVytT/s400/Selection_025.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;</description><link>http://tinker-cell.blogspot.com/2011/11/simple-animation-based-on-simulated.html</link><author>noreply@blogger.com (Deepak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPomk6B61BNsKYPDU2ahlNspvITdp7dlX1e4y_cN6eaBinRdmhI2ul5Im7LGpTeMCpDun89BtcWcMO6gUIhweJMfXbWOtRVM3PqgarlIWcxGAZ5cRIlUy-5cudVCxe_QdcOGI97x6FVytT/s72-c/Selection_025.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-6114140525733197917</guid><pubDate>Thu, 10 Nov 2011 17:33:00 +0000</pubDate><atom:updated>2011-11-10T09:34:47.381-08:00</atom:updated><title>New Tutorials</title><description>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;object width=&quot;320&quot; height=&quot;266&quot; class=&quot;BLOGGER-youtube-video&quot; classid=&quot;clsid:D27CDB6E-AE6D-11cf-96B8-444553540000&quot; codebase=&quot;http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0&quot; data-thumbnail-src=&quot;http://0.gvt0.com/vi/d1AZe_43Qyw/0.jpg&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/d1AZe_43Qyw&amp;fs=1&amp;source=uds&quot; /&gt;
&lt;param name=&quot;bgcolor&quot; value=&quot;#FFFFFF&quot; /&gt;
&lt;embed width=&quot;320&quot; height=&quot;266&quot;  src=&quot;http://www.youtube.com/v/d1AZe_43Qyw&amp;fs=1&amp;source=uds&quot; type=&quot;application/x-shockwave-flash&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;iframe allowfullscreen=&#39;allowfullscreen&#39; webkitallowfullscreen=&#39;webkitallowfullscreen&#39; mozallowfullscreen=&#39;mozallowfullscreen&#39; width=&#39;320&#39; height=&#39;266&#39; src=&#39;https://www.youtube.com/embed/HCOnt4Poijs?feature=player_embedded&#39; frameborder=&#39;0&#39;&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;br /&gt;</description><link>http://tinker-cell.blogspot.com/2011/11/new-tutorials.html</link><author>noreply@blogger.com (Deepak)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-4705695580817858911</guid><pubDate>Tue, 13 Sep 2011 23:36:00 +0000</pubDate><atom:updated>2011-09-13T16:36:52.439-07:00</atom:updated><title>SBML and Antimony as modules</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
The modular framework in TinkerCell is designed to support practically any format that can be loaded into TinkerCell. As a consequence, Antimony and SBML files can be used as modules. In the schreenshot below, a TinkerCell oscillator module is modeled using an Antimony script. The modular framework maps variables in the Antimony script to variables in the conceptual model.&lt;br /&gt;
 &lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgK5MuwxekfyfSddDAJsIwfRTtm9UOLWN8pPFImwIRaqw82k3a1nBR_FP4_4bhX9Kj3nul8is95TRdYpT4QpasgebNyY8k8s9IzEb1itideYJ1IVFuSeMwwCWKqHkNgQH4ml-VdBbjsvGtm/s1600/antimonymodule.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;203&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgK5MuwxekfyfSddDAJsIwfRTtm9UOLWN8pPFImwIRaqw82k3a1nBR_FP4_4bhX9Kj3nul8is95TRdYpT4QpasgebNyY8k8s9IzEb1itideYJ1IVFuSeMwwCWKqHkNgQH4ml-VdBbjsvGtm/s320/antimonymodule.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://tinker-cell.blogspot.com/2011/09/sbml-and-antimony-as-modules.html</link><author>noreply@blogger.com (Deepak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgK5MuwxekfyfSddDAJsIwfRTtm9UOLWN8pPFImwIRaqw82k3a1nBR_FP4_4bhX9Kj3nul8is95TRdYpT4QpasgebNyY8k8s9IzEb1itideYJ1IVFuSeMwwCWKqHkNgQH4ml-VdBbjsvGtm/s72-c/antimonymodule.png" height="72" width="72"/><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-4573276990978383925</guid><pubDate>Sat, 03 Sep 2011 04:09:00 +0000</pubDate><atom:updated>2011-10-22T01:25:59.935-07:00</atom:updated><title>Same network, different behaviors</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
Since TinkerCell decouples the notion of a &quot;biological network&quot;, or system, from the actual mathematical model, it is possible to generate multiple models of the same system. The screenshot below is of an enzyme with two states, enz1 and enz2. Both states are auto-catalytic. Because of this dual positive feedback, one would guess that the system would become bistable. However, this system is bistable only for certain model implementations. If steady state assumptions are used in the model, then the system is bistable. If mass-action kinetics is used, we see that the intermediate states of the enzyme catalysis process are not really in steady state, and in such models, the bistability also disappears.&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhr_JA6YekQzzNr8erHt-4hQ7nGTmzYbHpmTM6QItAxhsA8fdJm-JF1Tg-sLcZ6Z0pMBBCulyJBJPlvtJdRhuRCvw3n_rWJWJgCBKyM1uSw2irKgf-OY6dS34VAp6jBYMwmzRQvvXHjpMEQ/s1600/Selection_015.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;203&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhr_JA6YekQzzNr8erHt-4hQ7nGTmzYbHpmTM6QItAxhsA8fdJm-JF1Tg-sLcZ6Z0pMBBCulyJBJPlvtJdRhuRCvw3n_rWJWJgCBKyM1uSw2irKgf-OY6dS34VAp6jBYMwmzRQvvXHjpMEQ/s320/Selection_015.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;</description><link>http://tinker-cell.blogspot.com/2011/10/same-network-different-behaviors.html</link><author>noreply@blogger.com (Deepak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhr_JA6YekQzzNr8erHt-4hQ7nGTmzYbHpmTM6QItAxhsA8fdJm-JF1Tg-sLcZ6Z0pMBBCulyJBJPlvtJdRhuRCvw3n_rWJWJgCBKyM1uSw2irKgf-OY6dS34VAp6jBYMwmzRQvvXHjpMEQ/s72-c/Selection_015.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-5555020123694023250</guid><pubDate>Fri, 02 Sep 2011 22:48:00 +0000</pubDate><atom:updated>2011-09-02T15:48:55.524-07:00</atom:updated><title>New video of ring oscillator model</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;iframe allowfullscreen=&#39;allowfullscreen&#39; webkitallowfullscreen=&#39;webkitallowfullscreen&#39; mozallowfullscreen=&#39;mozallowfullscreen&#39; width=&#39;320&#39; height=&#39;266&#39; src=&#39;https://www.youtube.com/embed/23NTnICU0qw?feature=player_embedded&#39; frameborder=&#39;0&#39;&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
</description><link>http://tinker-cell.blogspot.com/2011/09/new-video-of-ring-oscillator-model.html</link><author>noreply@blogger.com (Deepak)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-18766919893331329</guid><pubDate>Fri, 02 Sep 2011 16:27:00 +0000</pubDate><atom:updated>2011-09-02T09:32:25.566-07:00</atom:updated><title>Coupled oscillator modules</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
TinkerCell&#39;s modular framework allows users to perform experiments such as the one shown below. Here, two oscillators are connected to each other. Each oscillator *can* take multiple models. This is the benefit of using modular design -- the internal details can be swapped without affecting the conceptual overall design, i.e. two coupled oscillators. One of the TinkerCell Python plugins allows users to test all possible oscillator combinations. Currently, only two oscillator designs are available (you can add more and submit to the repository if you want!). So, the total number of combinations are 4, which are the 4 graphs shown below. Notice that in one of the designs (top left), one oscillator somewhat controls the frequency of the other. By tuning parameters further, this design can actually be used to create an oscillator where the frequency is also oscillating.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;img border=&quot;0&quot; height=&quot;207&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjFquyRXRPS3ztTi9xVJ01wKoSqleEZWHnS-kAdMBR7Fah1PkEMh3dy5P6AIS6vdLfeTu7mIFiiGyncmr3D_48o8p0jKDIbizYaevVEnzwsiLw6xfF7NQCXJjEtbv5XqV1lhRGy0fvi2d8u/s320/coupled_oscillation_network.png&quot; width=&quot;320&quot; /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcHh4vmMvTVMz5ulYOkBWLUCIWLE-vOsvIYeJRp_zpdlmSsAfFi7X6z07fsdMwpV1d7V02kRyChI_mt-UJIEkdcL7hKvVMtQkLAkGDn7eIamCtxA5oQXX6JcbvT97Zb91J4zPB7WZXl3mD/s1600/coupled_oscillation_graphs.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;212&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcHh4vmMvTVMz5ulYOkBWLUCIWLE-vOsvIYeJRp_zpdlmSsAfFi7X6z07fsdMwpV1d7V02kRyChI_mt-UJIEkdcL7hKvVMtQkLAkGDn7eIamCtxA5oQXX6JcbvT97Zb91J4zPB7WZXl3mD/s320/coupled_oscillation_graphs.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
</description><link>http://tinker-cell.blogspot.com/2011/09/coupled-oscillator-modules.html</link><author>noreply@blogger.com (Deepak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjFquyRXRPS3ztTi9xVJ01wKoSqleEZWHnS-kAdMBR7Fah1PkEMh3dy5P6AIS6vdLfeTu7mIFiiGyncmr3D_48o8p0jKDIbizYaevVEnzwsiLw6xfF7NQCXJjEtbv5XqV1lhRGy0fvi2d8u/s72-c/coupled_oscillation_network.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-4974787923818629304</guid><pubDate>Thu, 21 Jul 2011 22:51:00 +0000</pubDate><atom:updated>2011-07-21T15:51:31.342-07:00</atom:updated><title>More visual cues for showing contents of equations</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;When hovering over components with a function, TinkerCell used to show a function tool-tip indicating how the function is defined for that component. Now, TinkerCell also highlights all the other components that are involved in that function. For example, if the activity of a gene is describes as plasmid.copy * operator1 * operator2, then TinkerCell will circle the plasmid and both operators when the mouse hovers over the gene component. See screenshots below.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmPLnIPqK6LoX9u-8p6146BaLBHb5nASadF7AmTAIjH4Q5AEOXtZNA2-4oPOcvqn6ecHyh9R7iOS_V7o937MKGVPnSCd2CO34qj63bNrWGKPxa1M2wHnY1gCRPyNG3t2BinzE-MAGd6Dn5/s1600/Untitled.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;243&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmPLnIPqK6LoX9u-8p6146BaLBHb5nASadF7AmTAIjH4Q5AEOXtZNA2-4oPOcvqn6ecHyh9R7iOS_V7o937MKGVPnSCd2CO34qj63bNrWGKPxa1M2wHnY1gCRPyNG3t2BinzE-MAGd6Dn5/s320/Untitled.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBvygkt9zZt40byMjgZtCzrsurPOuonEQ3bLZGDixx0L1p7WtDxRo_gsy2Jj_q04VY39fAIkb6833t3J0W0uGNhV4It98DzeILax1jWaw67Z9dGNdT6zlJXMrPTugOdNVvgWbthFcMX4wG/s1600/Untitled.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;243&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBvygkt9zZt40byMjgZtCzrsurPOuonEQ3bLZGDixx0L1p7WtDxRo_gsy2Jj_q04VY39fAIkb6833t3J0W0uGNhV4It98DzeILax1jWaw67Z9dGNdT6zlJXMrPTugOdNVvgWbthFcMX4wG/s320/Untitled.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;/div&gt;</description><link>http://tinker-cell.blogspot.com/2011/07/more-visual-cues-for-showing-contents.html</link><author>noreply@blogger.com (Deepak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmPLnIPqK6LoX9u-8p6146BaLBHb5nASadF7AmTAIjH4Q5AEOXtZNA2-4oPOcvqn6ecHyh9R7iOS_V7o937MKGVPnSCd2CO34qj63bNrWGKPxa1M2wHnY1gCRPyNG3t2BinzE-MAGd6Dn5/s72-c/Untitled.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-8025683193946954430</guid><pubDate>Thu, 07 Jul 2011 16:34:00 +0000</pubDate><atom:updated>2011-07-07T09:34:27.273-07:00</atom:updated><title>Sequence annotation widget</title><description>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;It was always possible to add any type of annotation to any component, including sequence annotations, in TinkerCell, but this had to be done programmatically, i.e a couple of lines of python or octave code. For sequence annotation, now the sequence-viewer plug-in also provides a simple widget for adding position and description to the selected part. The table will be saved as &quot;sequence annotation&quot;, i.e it can be accessed via a python or octave program using:&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;p = tc_find(&quot;cod2&quot;); &amp;nbsp; #get the part&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;sa = tc_getTextDataTable(x, &quot;sequence annotation&quot;); #get sequence annotation&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;tc_getTableValue( sa, 0, 0)&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzpE9N_ftlSY60SnZ7gsfON4Tq41uRK8czh5jPdIyP9J3vMEPVEMVOa9zjFWOrof1C95m3Efip2S4Bw2-k0R_LnN5z0wnPUSy4BPjsmHozLigOxoy0R7XWrrT6PfPqCgLfpfy8kCNJDBkN/s1600/Selection_002.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;285&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzpE9N_ftlSY60SnZ7gsfON4Tq41uRK8czh5jPdIyP9J3vMEPVEMVOa9zjFWOrof1C95m3Efip2S4Bw2-k0R_LnN5z0wnPUSy4BPjsmHozLigOxoy0R7XWrrT6PfPqCgLfpfy8kCNJDBkN/s320/Selection_002.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;</description><link>http://tinker-cell.blogspot.com/2011/07/sequence-annotation-widget.html</link><author>noreply@blogger.com (Deepak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzpE9N_ftlSY60SnZ7gsfON4Tq41uRK8czh5jPdIyP9J3vMEPVEMVOa9zjFWOrof1C95m3Efip2S4Bw2-k0R_LnN5z0wnPUSy4BPjsmHozLigOxoy0R7XWrrT6PfPqCgLfpfy8kCNJDBkN/s72-c/Selection_002.png" height="72" width="72"/><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-1752672543208077736</guid><pubDate>Thu, 30 Jun 2011 17:18:00 +0000</pubDate><atom:updated>2011-06-30T11:47:46.986-07:00</atom:updated><title>Automatically test Design Variations</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div class=&quot;&quot; style=&quot;clear: both; text-align: left;&quot;&gt;By using the tc_substituteEmptyModel and tc_substituteOriginalModel, it is possible to systematically remove each regulation from a design and check the results. The python plugin that does just that produces the following result. The code is given below.&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjih766_nI4asQSHQ3IBmM6fvdMNHgP4CmTLszO6-z0jA6zu2n_xElBKVsv79EhrqG2H90ThdgmN1rv_I5h7n-sOmgCBJna9-1WBu4GXv-N1BCDKui501XIWMtB5jqhZhB6errN_w55QAJ7/s1600/Untitled.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;186&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjih766_nI4asQSHQ3IBmM6fvdMNHgP4CmTLszO6-z0jA6zu2n_xElBKVsv79EhrqG2H90ThdgmN1rv_I5h7n-sOmgCBJna9-1WBu4GXv-N1BCDKui501XIWMtB5jqhZhB6errN_w55QAJ7/s320/Untitled.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
In the example below the input-output relationship is tested as different regulations in a feed-forward network are pruned.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpvLXXs4xOB-U0fQoko6DPdmWHMv3n4cU8tvfqNms72tj_QLg38eU4hYmc_of3eZhcx_ln8nXbMLKTUuDuVloOE57z-09znVbkc2vVadKY3lxh0liy8t9HnSZLut9tqci6P7bGR6zjLJGa/s1600/Selection_018.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;173&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpvLXXs4xOB-U0fQoko6DPdmWHMv3n4cU8tvfqNms72tj_QLg38eU4hYmc_of3eZhcx_ln8nXbMLKTUuDuVloOE57z-09znVbkc2vVadKY3lxh0liy8t9HnSZLut9tqci6P7bGR6zjLJGa/s320/Selection_018.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;blockquote&gt;&lt;blockquote&gt;&quot;&quot;&quot;&lt;/blockquote&gt;&lt;blockquote&gt;category: Model Variations&lt;/blockquote&gt;&lt;blockquote&gt;name: Try Different Designs Automatically&lt;/blockquote&gt;&lt;blockquote&gt;descr: Try removing each individual regulation one at a time and see how that affects the model&lt;/blockquote&gt;&lt;blockquote&gt;menu: yes&lt;/blockquote&gt;&lt;blockquote&gt;icon: module.png&lt;/blockquote&gt;&lt;blockquote&gt;tool: no&lt;/blockquote&gt;&lt;blockquote&gt;&quot;&quot;&quot;&lt;/blockquote&gt;&lt;blockquote&gt;from tinkercell import *&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;
&lt;/blockquote&gt;&lt;blockquote&gt;def runAll(indep, start, end, nclusters=0):&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; items = tc_allItems()&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; listOfModules = []&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; moduleNames = []&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; for i in range(0, items.length):&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; item = tc_getItem(items, i)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if tc_getParent(item) == 0:&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; submodels = tc_listOfPossibleModels(item)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if submodels.length &amp;gt; 0:&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; listOfModules.append(item)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; moduleNames.append(tc_getUniqueName(item))&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; n = len(listOfModules)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; if n &amp;gt; 0:&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; tc_multiplot(2, int(1+n/2))&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; tc_showProgress(&quot;Explore design variations&quot;, 0)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; for i in range(0,n):&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; tc_substituteEmptyModel(listOfModules[i])&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if indep.lower() == &quot;time&quot;:&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; m = tc_simulateDeterministic(start,end,100)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; tc_plot(m, moduleNames[i] + &quot; removed&quot;)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; else:&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; m = tc_steadyStateScan(indep, start,end,10)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; tc_plot(m, moduleNames[i] + &quot; removed&quot;)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; tc_substituteOriginalModel(listOfModules[i])&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; tc_showProgress(&quot;Explore design variations&quot;, int(100*(i+1)/n))&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;
&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; tc_showProgress(&quot;Explore design variations&quot;, 100)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if nclusters &amp;gt; 1:&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; m = tc_clusterPlots(nclusters)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; fout = open(&quot;designs.txt&quot;,&quot;w&quot;)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; for i in range(0, nclusters):&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; s = &quot;========\nCluster &quot; + str(i+1) + &quot;\n========\n&quot;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; for j in range(0, n):&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if tc_getMatrixValue(m, j, 0) == i+1:&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; s += &quot; , &amp;nbsp;&quot; + moduleNames[j]&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; s += &quot;\n&quot;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; s += &quot;\n&quot;&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; fout.write(s)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; fout.close()&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; tc_openUrl(&quot;designs.txt&quot;)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; else:&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if indep.lower() == &quot;time&quot;:&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; m = tc_simulateDeterministic(start,end,100)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; tc_plot(m, &quot;steady state scan&quot;)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; else:&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; m = tc_steadyStateScan(indep, start,end,10)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; tc_plot(m, &quot;simulation&quot;)&lt;/blockquote&gt;&lt;blockquote&gt;&amp;nbsp; &amp;nbsp; return&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;
&lt;/blockquote&gt;&lt;blockquote&gt;params = tc_getParametersAndFixedVariables(tc_allItems())&lt;/blockquote&gt;&lt;blockquote&gt;list = fromTC(params.rownames)&lt;/blockquote&gt;&lt;blockquote&gt;list.insert(0,&quot;Time&quot;)&lt;/blockquote&gt;&lt;blockquote&gt;inputWindow = tc_createMatrix(3, 1)&lt;/blockquote&gt;&lt;blockquote&gt;tc_setMatrixValue(inputWindow, 0, 0, 0)&lt;/blockquote&gt;&lt;blockquote&gt;tc_setMatrixValue(inputWindow, 1, 0, 0.0)&lt;/blockquote&gt;&lt;blockquote&gt;tc_setMatrixValue(inputWindow, 2, 0, 200.0)&lt;/blockquote&gt;&lt;blockquote&gt;tc_setMatrixValue(inputWindow, 3, 0, 4)&lt;/blockquote&gt;&lt;blockquote&gt;tc_setRowName(inputWindow, 0, &quot;Independent variable&quot;)&lt;/blockquote&gt;&lt;blockquote&gt;tc_setRowName(inputWindow, 1, &quot;Start&quot;)&lt;/blockquote&gt;&lt;blockquote&gt;tc_setRowName(inputWindow, 2, &quot;Stop&quot;)&lt;/blockquote&gt;&lt;blockquote&gt;tc_setRowName(inputWindow, 3, &quot;Clusters&quot;)&lt;/blockquote&gt;&lt;blockquote&gt;tc_createInputWindowForScript(inputWindow, &quot;Explore design variations&quot;, &quot;runAll&quot;)&lt;/blockquote&gt;&lt;blockquote&gt;tc_addInputWindowOptions(&quot;Explore design variations&quot;, 0, 0, toTC(list))&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;
&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/div&gt;</description><link>http://tinker-cell.blogspot.com/2011/06/automatically-test-design-variations.html</link><author>noreply@blogger.com (Deepak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjih766_nI4asQSHQ3IBmM6fvdMNHgP4CmTLszO6-z0jA6zu2n_xElBKVsv79EhrqG2H90ThdgmN1rv_I5h7n-sOmgCBJna9-1WBu4GXv-N1BCDKui501XIWMtB5jqhZhB6errN_w55QAJ7/s72-c/Untitled.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-508374699889534317</guid><pubDate>Fri, 24 Jun 2011 07:20:00 +0000</pubDate><atom:updated>2011-06-24T00:21:00.331-07:00</atom:updated><title>Optimize any Python Function using Particle Swarm</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Verdana; font-size: 16px; line-height: 24px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;direction: inherit; margin-bottom: 0px; margin-top: 0px;&quot;&gt;The code given below was used to generate parameter set for making a non-monotonic input-output steady state plot. The code uses Particle Swarm optimization algorithm. It allows multiple runs of the algorithm for finding multiple minima.&lt;/div&gt;&lt;div style=&quot;direction: inherit; margin-bottom: 0px; margin-top: 0px;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCFLTCgvwf6UgUsnyUE_iQnM8OvQXWvmvh5X9r736GhT17m05L5UG-aXi5DSeDOjpeEtp5ZsAAGPXtlfzuw13SLMu9CH0mFPWLxbcNab6wx3OWX8c_cWf8hvx8h_hgcEH-bRo_5-zSD4J1/s1600/TinkerCell_013.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;209&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCFLTCgvwf6UgUsnyUE_iQnM8OvQXWvmvh5X9r736GhT17m05L5UG-aXi5DSeDOjpeEtp5ZsAAGPXtlfzuw13SLMu9CH0mFPWLxbcNab6wx3OWX8c_cWf8hvx8h_hgcEH-bRo_5-zSD4J1/s320/TinkerCell_013.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;direction: inherit; margin-bottom: 0px; margin-top: 0px;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;direction: inherit; margin-bottom: 0px; margin-top: 0px;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;direction: inherit; margin-bottom: 0px; margin-top: 0px;&quot;&gt;&lt;blockquote&gt;from tinkercell import *&lt;br /&gt;
from tc2py import *&lt;br /&gt;
from numpy import *&lt;br /&gt;
from PSO import * &amp;nbsp;#particle swarm optimization (included with TinkerCell)&lt;br /&gt;
nameOfInput =&quot;INPUT&quot; #name of input variable in the model&lt;br /&gt;
nameOfOutput =&quot;OUTPUT&quot; #name of output variable in the model&lt;br /&gt;
params = tc_createMatrix(1,1)&lt;br /&gt;
tc_setRowName(params,0,nameOfInput)&lt;br /&gt;
def Objective():&lt;br /&gt;
&amp;nbsp; &amp;nbsp; tc_setMatrixValue(params, 0, 0, 0.1)&lt;br /&gt;
&amp;nbsp; &amp;nbsp; tc_updateParameters(params)&lt;br /&gt;
&amp;nbsp; &amp;nbsp; ss = tc_getSteadyState()&lt;br /&gt;
&amp;nbsp; &amp;nbsp; i = tc_getRowIndex(ss, nameOfOutput)&lt;br /&gt;
&amp;nbsp; &amp;nbsp; x1 = tc_getMatrixValue(ss, i, 0)&lt;br /&gt;
&amp;nbsp; &amp;nbsp; tc_setMatrixValue(params, 0, 0, 2)&lt;br /&gt;
&amp;nbsp; &amp;nbsp; tc_updateParameters(params)&lt;br /&gt;
&amp;nbsp; &amp;nbsp; ss = tc_getSteadyState()&lt;br /&gt;
&amp;nbsp; &amp;nbsp; x2 = tc_getMatrixValue(ss, i, 0)&lt;br /&gt;
&amp;nbsp; &amp;nbsp; tc_setMatrixValue(params, 0, 0, 5)&lt;br /&gt;
&amp;nbsp; &amp;nbsp; tc_updateParameters(params)&lt;br /&gt;
&amp;nbsp; &amp;nbsp; ss = tc_getSteadyState()&lt;br /&gt;
&amp;nbsp; &amp;nbsp; x3 = tc_getMatrixValue(ss, i, 0)&lt;br /&gt;
&amp;nbsp; &amp;nbsp; if x3 &amp;gt; x1: x1 = x3&lt;br /&gt;
&amp;nbsp; &amp;nbsp; return (x2 - x1)&lt;br /&gt;
optimizer = ParticleSwarm()&lt;br /&gt;
#minimize or maximize?&lt;br /&gt;
optimizer.numpoints = 50&lt;br /&gt;
optimizer.maxiter = 10&lt;br /&gt;
optimizer.minimize = False&lt;br /&gt;
optimizer.title = &quot;Nonmonotic test&quot;&lt;br /&gt;
g = optimizer.run(Objective,10) #multiple runs&lt;/blockquote&gt;&lt;/div&gt;&lt;/div&gt;</description><link>http://tinker-cell.blogspot.com/2011/06/optimize-any-python-function-using.html</link><author>noreply@blogger.com (Deepak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCFLTCgvwf6UgUsnyUE_iQnM8OvQXWvmvh5X9r736GhT17m05L5UG-aXi5DSeDOjpeEtp5ZsAAGPXtlfzuw13SLMu9CH0mFPWLxbcNab6wx3OWX8c_cWf8hvx8h_hgcEH-bRo_5-zSD4J1/s72-c/TinkerCell_013.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-2008761101843525326</guid><pubDate>Sat, 18 Jun 2011 20:40:00 +0000</pubDate><atom:updated>2011-07-08T17:25:06.318-07:00</atom:updated><title>Automatically test Model Variations</title><description>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;The TryModelVariants.py is a new python plugin that tries all the different models for the same &quot;diagram&quot;. For example, in the diagram below two enzymes catalyze the conversion to themselves, i.e. both are autocatalytic. One might suspect that such a system will become bistable, somewhat like the genetic toggle-swtich. However, this system is only bistable when modeled using steady state assumptions (i.e. Michaelis-Menten) and monostable when modeled using simple mass-action reactions. This python plugin can be used to varify such model-dependent behavior. This shows how models should be double-checked before trying to use them to make conclusions about the real system.&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzeyKN360YS5EFDsog2zrhieoL-3Co7Z-wGkXQpdfcTLio_TKEbo1E5F0clFJek064y-4TvBm-JE2yzXWVJgJxvh88IUlDvmWG7XTWVJV-3IGzFzyJXFOI_KTMsjShqeJlp06V8Xqhyphenhyphen9OJ/s1600/Untitled.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;207&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzeyKN360YS5EFDsog2zrhieoL-3Co7Z-wGkXQpdfcTLio_TKEbo1E5F0clFJek064y-4TvBm-JE2yzXWVJgJxvh88IUlDvmWG7XTWVJV-3IGzFzyJXFOI_KTMsjShqeJlp06V8Xqhyphenhyphen9OJ/s320/Untitled.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;</description><link>http://tinker-cell.blogspot.com/2011/06/automatically-test-model-variations.html</link><author>noreply@blogger.com (Deepak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzeyKN360YS5EFDsog2zrhieoL-3Co7Z-wGkXQpdfcTLio_TKEbo1E5F0clFJek064y-4TvBm-JE2yzXWVJgJxvh88IUlDvmWG7XTWVJV-3IGzFzyJXFOI_KTMsjShqeJlp06V8Xqhyphenhyphen9OJ/s72-c/Untitled.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-2768784846093615619</guid><pubDate>Sat, 18 Jun 2011 20:36:00 +0000</pubDate><atom:updated>2011-06-18T13:36:22.356-07:00</atom:updated><title>Improved Clustering Function</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;The tc_clusterPlots function now returns the results of the clustering. Earlier, it was just plotting the clusters. Now, plugins can use the returned values to identify which plot each of the inputs belong in. For example, the TryModelVariants.py plugin uses this information to identify sub-models (e.g. whether or not to include mRNA, how to model transcription regulation) that are responsible for creating different behaviors. The plugin outputs the cluster plots and outputs the sub-models in each cluster in a file.&lt;br /&gt;
&lt;br /&gt;
Cluster plots&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiodkIY06hU3RCCwt8PVycSK13vsznk5qnKO0h9McWZ0J1LoPWRJ184pmskKjSYqDyReX-Rk43fPjbNCO3PIVvcOGFP2xxPm99FikQxg8t9thyphenhyphen9zr7vWnhjXGmK2MbEjBBLUMuCjqC_tOYu/s1600/Workspace+1_010.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;180&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiodkIY06hU3RCCwt8PVycSK13vsznk5qnKO0h9McWZ0J1LoPWRJ184pmskKjSYqDyReX-Rk43fPjbNCO3PIVvcOGFP2xxPm99FikQxg8t9thyphenhyphen9zr7vWnhjXGmK2MbEjBBLUMuCjqC_tOYu/s320/Workspace+1_010.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
and the sub-models for each cluster&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJ4FUBu0BTauAPDG8hoJz_Prg1DtrYqG2Ky5E5gmchleHER4hWVi6fUPlVnn8rHwS9zfIECikPL1f6dfUHhqaZw0S0AHL-pFIhAYnO3v2K0SXTU6lWuLIxoTz_bqNP7U6RInRZlVL5JX4P/s1600/Selection_012.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;146&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJ4FUBu0BTauAPDG8hoJz_Prg1DtrYqG2Ky5E5gmchleHER4hWVi6fUPlVnn8rHwS9zfIECikPL1f6dfUHhqaZw0S0AHL-pFIhAYnO3v2K0SXTU6lWuLIxoTz_bqNP7U6RInRZlVL5JX4P/s320/Selection_012.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiknY4ItZba4IkrI4BV79XnkJHd-Y-c7lI47v6cOSUDm0AE9K5vwkkIV-z8yLtPgoHzv_9txmXv6Pqu9ZGV04iL0oKAFc1JOsNvrpbtM7LxXNHpshhL4yoJG379iqQyrkV6f6gzxM1US6RW/s1600/Selection_011.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;154&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiknY4ItZba4IkrI4BV79XnkJHd-Y-c7lI47v6cOSUDm0AE9K5vwkkIV-z8yLtPgoHzv_9txmXv6Pqu9ZGV04iL0oKAFc1JOsNvrpbtM7LxXNHpshhL4yoJG379iqQyrkV6f6gzxM1US6RW/s320/Selection_011.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;...the file contains all the clusters, but those are not shown here.&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;</description><link>http://tinker-cell.blogspot.com/2011/06/improved-clustering-function.html</link><author>noreply@blogger.com (Deepak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiodkIY06hU3RCCwt8PVycSK13vsznk5qnKO0h9McWZ0J1LoPWRJ184pmskKjSYqDyReX-Rk43fPjbNCO3PIVvcOGFP2xxPm99FikQxg8t9thyphenhyphen9zr7vWnhjXGmK2MbEjBBLUMuCjqC_tOYu/s72-c/Workspace+1_010.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-9007272384350622069</guid><pubDate>Fri, 17 Jun 2011 06:00:00 +0000</pubDate><atom:updated>2011-06-16T23:00:22.488-07:00</atom:updated><title>Composite Parts</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;Composite parts were present in TinkerCell for some time, but they did not behave nicely. Now they do. Composite parts are basically containers with other parts. They can be snapped together.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUX2vfcrWASQrZ9bPeJT7En6nH_JZSM4V1F1xGhDKf0KLn2svmGQtiR_CUw0lg4SgBWOD969zfM3gNQ2THD6XSRYFrwsPUmhfoBaTA4WcbK0CJ1vNGi7mo90TVcqYV-3IVv-oNEoOyWhPy/s1600/TinkerCell_008.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;185&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUX2vfcrWASQrZ9bPeJT7En6nH_JZSM4V1F1xGhDKf0KLn2svmGQtiR_CUw0lg4SgBWOD969zfM3gNQ2THD6XSRYFrwsPUmhfoBaTA4WcbK0CJ1vNGi7mo90TVcqYV-3IVv-oNEoOyWhPy/s320/TinkerCell_008.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/div&gt;</description><link>http://tinker-cell.blogspot.com/2011/06/composite-parts.html</link><author>noreply@blogger.com (Deepak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUX2vfcrWASQrZ9bPeJT7En6nH_JZSM4V1F1xGhDKf0KLn2svmGQtiR_CUw0lg4SgBWOD969zfM3gNQ2THD6XSRYFrwsPUmhfoBaTA4WcbK0CJ1vNGi7mo90TVcqYV-3IVv-oNEoOyWhPy/s72-c/TinkerCell_008.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-2941403574945343784</guid><pubDate>Tue, 07 Jun 2011 23:27:00 +0000</pubDate><atom:updated>2011-06-07T16:27:41.992-07:00</atom:updated><title>An architecture for incorporating experiments</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMbRSGbmSm1xApMXhxX_KPYSFqXljTCypDsa-ioNz1jiGNexRP_C5od1FQr9p4bX0LmY_8nNH_AakaRHS0FP2dCvUVTKaWkD7zFM9Zgaa_pVKqQpIzq39qcGliNTVFwvr-wrovnC48epp-/s1600/BioToData.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMbRSGbmSm1xApMXhxX_KPYSFqXljTCypDsa-ioNz1jiGNexRP_C5od1FQr9p4bX0LmY_8nNH_AakaRHS0FP2dCvUVTKaWkD7zFM9Zgaa_pVKqQpIzq39qcGliNTVFwvr-wrovnC48epp-/s320/BioToData.png&quot; width=&quot;280&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
The above diagram represents a general data-representation TinkerCell is assuming. TinkerCell represents the &quot;biology&quot; (not the mathematical model). There are methods such as numerical analysis or wet-lab experiments that take the biology and generate data. The middle area (i.e. experiments and simulations) should connect the biology to the data -- probably the main challenge.&lt;/div&gt;</description><link>http://tinker-cell.blogspot.com/2011/06/architecture-for-incorporating.html</link><author>noreply@blogger.com (Deepak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMbRSGbmSm1xApMXhxX_KPYSFqXljTCypDsa-ioNz1jiGNexRP_C5od1FQr9p4bX0LmY_8nNH_AakaRHS0FP2dCvUVTKaWkD7zFM9Zgaa_pVKqQpIzq39qcGliNTVFwvr-wrovnC48epp-/s72-c/BioToData.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-2338087022424397727</guid><pubDate>Tue, 07 Jun 2011 05:36:00 +0000</pubDate><atom:updated>2011-06-07T16:30:49.392-07:00</atom:updated><title>Load GenBank &amp; Data from BioFAB.org</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcALGVGH4Bnm5d-t4NuSU_oX9WkHi45JabgEshPtjBBIoYfqNGjY1qOoLdD3VeXFC2OOf_6aakfqmc4MUmEh-Qth8ffAQWlTnjxYJbQM0rzgTi7athRebUESUya6wf093bDGMR5rssKKFa/s1600/Screenshot-Untitled+Window-3.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;262&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcALGVGH4Bnm5d-t4NuSU_oX9WkHi45JabgEshPtjBBIoYfqNGjY1qOoLdD3VeXFC2OOf_6aakfqmc4MUmEh-Qth8ffAQWlTnjxYJbQM0rzgTi7athRebUESUya6wf093bDGMR5rssKKFa/s320/Screenshot-Untitled+Window-3.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9K61M7H9A27Xwrt7u7b8RywzWG95R_L4TlGg9jMlmniTXr_NU_iBG7TlmGYePHilS2qlwhgsAkG6F2m7mwXke9AgSN2IFvnDi91Zs3gEtXPeu-o9XagKhnQ2OB58ZI2ozGgJav39DzqMc/s1600/Screenshot-TinkerCell-2.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;225&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9K61M7H9A27Xwrt7u7b8RywzWG95R_L4TlGg9jMlmniTXr_NU_iBG7TlmGYePHilS2qlwhgsAkG6F2m7mwXke9AgSN2IFvnDi91Zs3gEtXPeu-o9XagKhnQ2OB58ZI2ozGgJav39DzqMc/s400/Screenshot-TinkerCell-2.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
The above screenshots are from a python plugin that gets BioFAB (biofab.org) parts and automatically places the parts on the screen. It also plots the experimental data available at BioFAB.&lt;br /&gt;
&lt;br /&gt;
The next step is to automatically generate the model and perform basic parameter estimation. &lt;/div&gt;</description><link>http://tinker-cell.blogspot.com/2011/06/load-genbank-data-from-biofaborg.html</link><author>noreply@blogger.com (Deepak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcALGVGH4Bnm5d-t4NuSU_oX9WkHi45JabgEshPtjBBIoYfqNGjY1qOoLdD3VeXFC2OOf_6aakfqmc4MUmEh-Qth8ffAQWlTnjxYJbQM0rzgTi7athRebUESUya6wf093bDGMR5rssKKFa/s72-c/Screenshot-Untitled+Window-3.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-8068628235804995760</guid><pubDate>Tue, 07 Jun 2011 05:34:00 +0000</pubDate><atom:updated>2011-06-06T22:37:12.016-07:00</atom:updated><title>&quot;Dim&quot; certain regions of the model</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP7dBlXgE6Dsh7_NB2A49QZaGRhZOcyjHqTTekZ5WxLbxgffixaH9BqN7px8j8ryhmh9Dopx8G39K5oBQFUksxNpMnKF1V45_J1giTD75n68NzDGZ_bUpB4hZT45DHqYUL614IjOrUXo5E/s1600/Screenshot-TinkerCell-3.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;225&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP7dBlXgE6Dsh7_NB2A49QZaGRhZOcyjHqTTekZ5WxLbxgffixaH9BqN7px8j8ryhmh9Dopx8G39K5oBQFUksxNpMnKF1V45_J1giTD75n68NzDGZ_bUpB4hZT45DHqYUL614IjOrUXo5E/s400/Screenshot-TinkerCell-3.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
The &quot;sun&quot; icon next to the zoom icons in the top toolbar allows users to adjust the transparency of selected regions on the screen. &lt;/div&gt;</description><link>http://tinker-cell.blogspot.com/2011/06/dim-certain-regions-of-model.html</link><author>noreply@blogger.com (Deepak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP7dBlXgE6Dsh7_NB2A49QZaGRhZOcyjHqTTekZ5WxLbxgffixaH9BqN7px8j8ryhmh9Dopx8G39K5oBQFUksxNpMnKF1V45_J1giTD75n68NzDGZ_bUpB4hZT45DHqYUL614IjOrUXo5E/s72-c/Screenshot-TinkerCell-3.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-8455828574824665865</guid><pubDate>Wed, 25 May 2011 18:39:00 +0000</pubDate><atom:updated>2011-07-06T13:47:53.771-07:00</atom:updated><title>Steps toward wet-lab integration</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;Some plans ahead include integrating wet-lab data. The diagram will be generated using semantics in order to make the integration more structured. Currently, users can draw &quot;experiment&quot; connections and &quot;data&quot; nodes. The RDF files in the TinkerCell home folder /Lab store the ontology for each. The idea is that python plugins will be used to fill in details about the experiment and the data. The long term goal is to make diagrams like these part of exchange and maybe lab automation. TinkerCell&#39;s ability to explicitly identify cells, plasmids, fluorescent proteins, and other relevant components can serve as the link between predicted results from models and experimental results.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPQ_HgXbZRxFui2n07brs45DGtyd7JrWDkhMYy_SSYQ4NTbUBj4HYpW86T_wF8EB3FQDiGqeTLhLhWJwQzSr6T4rIL8yFQPh2AOB0GsEsbez-xTeutIkMNX2YiH0QpkrplhKy3Fd4MIzOv/s1600/Untitled.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;241&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPQ_HgXbZRxFui2n07brs45DGtyd7JrWDkhMYy_SSYQ4NTbUBj4HYpW86T_wF8EB3FQDiGqeTLhLhWJwQzSr6T4rIL8yFQPh2AOB0GsEsbez-xTeutIkMNX2YiH0QpkrplhKy3Fd4MIzOv/s400/Untitled.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/div&gt;</description><link>http://tinker-cell.blogspot.com/2011/05/steps-toward-wet-lab-integration.html</link><author>noreply@blogger.com (Deepak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPQ_HgXbZRxFui2n07brs45DGtyd7JrWDkhMYy_SSYQ4NTbUBj4HYpW86T_wF8EB3FQDiGqeTLhLhWJwQzSr6T4rIL8yFQPh2AOB0GsEsbez-xTeutIkMNX2YiH0QpkrplhKy3Fd4MIzOv/s72-c/Untitled.png" height="72" width="72"/><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-6830582645484457552</guid><pubDate>Wed, 25 May 2011 18:33:00 +0000</pubDate><atom:updated>2011-05-25T11:39:33.621-07:00</atom:updated><title>Simple perturbation python plug-in</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghCRXtTTGwGP3MrgKLsFBYFVl-eswvc7YntZ8-UpQPx-fMOQWbintl-WEURBmTNtDGTUYC94oPAwvPX5vVhQBuGFnGS5fpqzFRxJcKNhcrDv6cEEI-bUmosPqnMHaSXkrrv6EDJj2fsBPz/s1600/Selection_002.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;285&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghCRXtTTGwGP3MrgKLsFBYFVl-eswvc7YntZ8-UpQPx-fMOQWbintl-WEURBmTNtDGTUYC94oPAwvPX5vVhQBuGFnGS5fpqzFRxJcKNhcrDv6cEEI-bUmosPqnMHaSXkrrv6EDJj2fsBPz/s400/Selection_002.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;The plugin removes each promoter one by one and performs a simulation to see the consequence of the removal. The plugin also allows the user to perturb RBS strength and mRNA degradation by a given amount. The entire plugin is written in python and the source is available in the TinkerCell home folder.&lt;/div&gt;&lt;br /&gt;
&lt;/div&gt;</description><link>http://tinker-cell.blogspot.com/2011/05/simple-perturbation-python-plug-in.html</link><author>noreply@blogger.com (Deepak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghCRXtTTGwGP3MrgKLsFBYFVl-eswvc7YntZ8-UpQPx-fMOQWbintl-WEURBmTNtDGTUYC94oPAwvPX5vVhQBuGFnGS5fpqzFRxJcKNhcrDv6cEEI-bUmosPqnMHaSXkrrv6EDJj2fsBPz/s72-c/Selection_002.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-4797129107934556131</guid><pubDate>Mon, 09 May 2011 06:24:00 +0000</pubDate><atom:updated>2011-06-29T23:22:09.908-07:00</atom:updated><title>Ruby scripts</title><description>&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipnbBsGghjHui-812ZK4fJ6KMCrN-dXbrv5fZ-mUpJc9sgGeCeqe5lfkUvzQBgZ0TrXnSn2K_m2MyZ32Il_3q6OxVeEmK-rfVJzT2w3CqqiTSuj45nSTqfoqgapJqXgkUouOq3b1YHGljP/s1600/Untitled.png&quot; onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 241px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipnbBsGghjHui-812ZK4fJ6KMCrN-dXbrv5fZ-mUpJc9sgGeCeqe5lfkUvzQBgZ0TrXnSn2K_m2MyZ32Il_3q6OxVeEmK-rfVJzT2w3CqqiTSuj45nSTqfoqgapJqXgkUouOq3b1YHGljP/s400/Untitled.png&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5604598911725394306&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Users can now write Ruby scripts in TinkerCell. Unfortunately, this feature is only working properly in Linux at present. Hopefully, I will be able to fix it in Windows and Mac.&lt;br /&gt;&lt;/div&gt;</description><link>http://tinker-cell.blogspot.com/2011/05/ruby-scripts.html</link><author>noreply@blogger.com (Deepak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipnbBsGghjHui-812ZK4fJ6KMCrN-dXbrv5fZ-mUpJc9sgGeCeqe5lfkUvzQBgZ0TrXnSn2K_m2MyZ32Il_3q6OxVeEmK-rfVJzT2w3CqqiTSuj45nSTqfoqgapJqXgkUouOq3b1YHGljP/s72-c/Untitled.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-8478358184856640422</guid><pubDate>Sun, 08 May 2011 07:12:00 +0000</pubDate><atom:updated>2011-05-08T00:13:08.474-07:00</atom:updated><title>Sample Octave code for testing nonmonotonicity</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;blockquote&gt;&lt;br /&gt;
&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;target = [0 0.3 1 0.3 0]&#39;;&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;inputs = [0 0.1 0.3 0.5 1]&#39;;&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;outputs = zeros(5,1);&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;ic = tinkercell.tc_getInitialValues(tinkercell.tc_allItems());&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;k = tinkercell.tc_getRowIndex(ic, &quot;INPUT&quot;);&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;for i = 1:5&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; x = inputs(i);&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; tinkercell.tc_setMatrixValue(ic, k, 0, x);&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; tinkercell.tc_updateParameters(ic);&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ss = tinkercell.tc_getSteadyState();&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; j = tinkercell.tc_getRowIndex(ss, &quot;OUTPUT&quot;);&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (j &amp;gt; -1)&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; outputs(i) = tinkercell.tc_getMatrixValue(ss, j, 0);&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;end&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;m = [ inputs outputs ];&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;m2 = toTC(m);&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;tinkercell.tc_plot(m2, &quot;input-output&quot;);&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;score = corrcoef( target, outputs )&lt;/div&gt;&lt;div style=&quot;margin: 0px; text-indent: 0px;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/blockquote&gt;&lt;/div&gt;</description><link>http://tinker-cell.blogspot.com/2011/05/sample-octave-code-for-testing-for.html</link><author>noreply@blogger.com (Deepak)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-6391025403465585339</guid><pubDate>Sat, 07 May 2011 06:12:00 +0000</pubDate><atom:updated>2011-05-06T23:12:18.412-07:00</atom:updated><title>Dialogs with Octave or Python callback functions</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
&lt;/style&gt; &lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;#callback function&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&lt;!--StartFragment--&gt;def myFunc(w,h,output):&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;    print &quot;width = &quot; + str(w) + &quot;  height = &quot; + str(h) + &quot;  output = &quot; + output&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;#create the input window with 3 rows and 1 column&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-paragraph-type: empty; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;inputWindow = tc_createMatrix( 3, 1 )&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;tc_setMatrixValue(inputWindow, 0, 0, 0)&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;tc_setMatrixValue(inputWindow, 1, 0, 0.0)&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;tc_setMatrixValue(inputWindow, 2, 0, 0.0)&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;#given row names to display&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;tc_setRowName(inputWindow, 0, &quot;Width&quot;)&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;tc_setRowName(inputWindow, 1, &quot;Height&quot;)&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;tc_setRowName(inputWindow, 2, &quot;Output&quot;)&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;tc_createInputWindowForScript(inputWindow, &quot;Screenshot&quot;, &quot;myFunc&quot;)&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-paragraph-type: empty; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;#make the last row a set of options&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;list = [&quot;Wiki code&quot;,&quot;HTML code&quot;]&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;tc_addInputWindowOptions(&quot;Screenshot&quot;, 2, 0, toTC(list))&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;Here is the screenshot. When the user clicks the ok button, the callback function is called with the arguments 55, 12, &quot;Wiki code&quot;&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYv84STLjhI2mHB8W3e7FAUpIT4_7PHixnwv64SGcBeb1vgxSsUqZCE1jmNUmrtftDX8S4WCmYw_6A09D5f2KE8YI8prTJ9_DrIGdrAWVIY6tdH8Fa0pDSorogfCgRD3xfr0wz_wP9zs7o/s1600/screenshot1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYv84STLjhI2mHB8W3e7FAUpIT4_7PHixnwv64SGcBeb1vgxSsUqZCE1jmNUmrtftDX8S4WCmYw_6A09D5f2KE8YI8prTJ9_DrIGdrAWVIY6tdH8Fa0pDSorogfCgRD3xfr0wz_wP9zs7o/s1600/screenshot1.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-paragraph-type: empty; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-paragraph-type: empty; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&lt;!--EndFragment--&gt;&lt;/div&gt;&lt;/div&gt;</description><link>http://tinker-cell.blogspot.com/2011/05/dialogs-with-octave-or-python-callback.html</link><author>noreply@blogger.com (Deepak)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYv84STLjhI2mHB8W3e7FAUpIT4_7PHixnwv64SGcBeb1vgxSsUqZCE1jmNUmrtftDX8S4WCmYw_6A09D5f2KE8YI8prTJ9_DrIGdrAWVIY6tdH8Fa0pDSorogfCgRD3xfr0wz_wP9zs7o/s72-c/screenshot1.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-3673368459592426883</guid><pubDate>Sat, 07 May 2011 00:35:00 +0000</pubDate><atom:updated>2011-05-06T17:35:43.724-07:00</atom:updated><title>Sample python script for doing perturbation experiments</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;blockquote&gt;# we are just going to change all the parameters that begin with the phrase &#39;synthconst&#39;&lt;br /&gt;
&lt;br /&gt;
items = tc_allItems() &lt;br /&gt;
&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;params = tc_getParameters(items)&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;p = &quot;&quot;&amp;nbsp;&amp;nbsp; #parameter name&lt;/div&gt;&lt;div style=&quot;margin: 0px; text-indent: 0px;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;margin: 0px; text-indent: 0px;&quot;&gt;#just count how many there are&lt;/div&gt;&lt;br /&gt;
&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;total = 0&amp;nbsp;&amp;nbsp; &lt;/div&gt;&lt;div style=&quot;margin: 0px; text-indent: 0px;&quot;&gt;for i in range(0,params.rows):&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p = tc_getRowName(params, i)&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if p.count(&#39;synthconst&#39;) &amp;gt; 0: &lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; total += 1&lt;/div&gt;&lt;div style=&quot;margin: 0px; text-indent: 0px;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;margin: 0px; text-indent: 0px;&quot;&gt;#for each parameter &lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;j = 0&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;for i in range(0,params.rows):&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p = tc_getRowName(params, i)&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if p.count(&#39;synthconst&#39;) &amp;gt; 0:&amp;nbsp;&amp;nbsp; #check parameter name&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tc_showProgress(&quot;DREAM automation&quot;, int((100.0 * j)/total))&amp;nbsp; #progress meter&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; j += 1&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #perturb&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s = &quot;&quot;&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FILE = open(p + &#39;.perturb.txt&#39;,&#39;w+&#39;)&amp;nbsp; #save to file&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; p0 = tc_getMatrixValue(params, i, 0)&amp;nbsp; #original parameter value&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for q in [100, 10, 2, 1]:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;  #perturbations&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tc_setMatrixValue(params, i, 0, p0/q)&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tc_setParameters(params,0)&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m = tc_getSteadyState()  #steady state&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s += str(p0/q)&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for i in range(0,m.rows):&amp;nbsp; #for each output value&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if tc_getRowName(m,i).count(&#39;m&#39;) &amp;gt; 0: #if name starts with m&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s += &quot;\t&quot;&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s += str(tc_getMatrixValue(m, i, 0))                    &lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s += &quot;\n&quot;&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FILE.write(s)&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FILE.close()&lt;/div&gt;&lt;div style=&quot;-qt-block-indent: 0; -qt-user-state: 0; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-indent: 0px;&quot;&gt;#done &lt;/div&gt;&lt;div style=&quot;margin: 0px; text-indent: 0px;&quot;&gt;tc_showProgress(&quot;DREAM automation&quot;, 100)&amp;nbsp; #close progress meter&lt;/div&gt;&lt;br /&gt;
&lt;/blockquote&gt;&lt;/div&gt;</description><link>http://tinker-cell.blogspot.com/2011/05/sample-python-script-for-doing.html</link><author>noreply@blogger.com (Deepak)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8360054526498859387.post-1060287246755167012</guid><pubDate>Thu, 21 Apr 2011 17:00:00 +0000</pubDate><atom:updated>2011-04-21T10:17:32.268-07:00</atom:updated><title>New book on computational biology</title><description>&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;span style=&quot;font-weight: bold; color: rgb(102, 102, 102);&quot;&gt;Enzyme Kinetics for Systems Biology&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;by Herbert M Sauro&lt;br /&gt;published at &lt;a href=&quot;http://www.analogmachine.org/Books/books.html&quot;&gt;analogmachine.org&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;------------------------------------------------------------------------&lt;br /&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;&lt;br /&gt;Book summary:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(51, 51, 51);&quot;&gt;318 pages, 94 illustrations and 75 exercises&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;color: rgb(51, 51, 51);&quot;&gt; This new monograph introduces students to basic reaction kinetics,  including enzyme kinetics, cooperativity, allostery and gene regulatory  kinetics. The text introduces a number of modern concepts such as  generalized rate laws, elasticities and systems biology thermodynamic  quantities. The text is suitable for junior undergraduate level in the  US and 2nd year undergraduates in the UK. The text can also be used as a  reference text for graduates and other researchers. Click &lt;/span&gt;&lt;a style=&quot;color: rgb(51, 51, 51);&quot; href=&quot;http://www.google.com/search?q=sauro+kietics&amp;amp;btnG=Search+Books&amp;amp;tbm=bks&amp;amp;tbo=1#hl=en&amp;amp;tbo=1&amp;amp;tbm=bks&amp;amp;sa=X&amp;amp;ei=rwqhTZKkF8bOiALG8-T4Ag&amp;amp;ved=0CC4QvwUoAQ&amp;amp;q=sauro+systems+biology&amp;amp;spell=1&amp;amp;bav=on.2,or.r_gc.r_pw.&amp;amp;fp=d8adc9e2b250eaf&quot;&gt;here for the Google books preview&lt;/a&gt;&lt;span style=&quot;color: rgb(51, 51, 51);&quot;&gt;.&lt;/span&gt;</description><link>http://tinker-cell.blogspot.com/2011/04/new-book-on-computational-biology.html</link><author>noreply@blogger.com (Deepak)</author></item></channel></rss>