Skip to content

AlexanderSimWS/Y4_FYP

Repository files navigation

Analysis and Design of Lean Biomolecular Controllers Repo

Here you will find the supporting code for my Bioengineering Final Year Project which is my last written coursework ever. The original code is in the DSL_backend folder which contains the pure Julia files. I have formatted the background required and code in a readable way in the form of Jupyter notebooks for your viewing pleasure. I hope this code is helpful and that you might one day attain this level of happiness as well.

Overview

This project was about modelling and analysing genetic circuits with biomolecular controllers in the context of cellular resources. The main idea for this repo is to introduce you to the ideas behind the model and to be able to play around with it in Julia. We will be using Jupyter Notebooks that you can also run in your favourite IDE (I use Visual Studio Code).

3 main resources used in gene expression are analysed with mathematical and computational methods:

# Resource Stage of Gene Expression Analysis Method
1 RNA Polymerases (RNAP) Transcription Sensitivity Analysis
2 Ribosomes Translation Sensitivity Analysis
3 Phosphate bonds (~ATP) Both Numerical Quantification

Dose Response with/without Resource Conservation

Summary of results of framework:

Simplified framework with is able to reflect experimental results for the dose response of an activation cascade from the paper, Resource Competition Shapes the Response of Genetic Circuits by Qian. et al.

See 4_activation_cascade_simulation. It is important to note that the interest is in the underlying dynamics not the actual quantity.

Simulation with Resource Conservation Simulation without Resource Conservation

Illustration of resource use in central dogma:

          Transcription         Translation  
               (TX)                 (TL)  
+------------+       +------------+       +------------+  
|            |       |            |       |            |  
|  Gene, g   +--+--> |   mRNA, m  +--+--> | Protein, x |  
|            |  |    |            |  |    |            |  
+------------+  |    +------------+  |    +------------+  
                |                    |  
              RNAP, [p]            Ribosome, [r]  
              + [ATP]              + [ATP]  

Contents

  1. Mathematical Model Definition
  2. Node Visualisation in Matrix Form
  3. Domain Specific Language (DSL) Showcase
  4. Simulation of Activation Cascade (Original Julia File)
  5. Resource Quantification
  6. Sensitivity Analysis
  7. DSL_backend

Quick Start Guide

  1. Install Julia
  2. Open your command line
  3. Run the Julia REPL
user> julia
  1. Add Julia to Jupyter Notebook: Enter ] to enter Julia's package manager
julia> ]
(v1.7 pkg)> add IJulia
  1. Download the Anaconda Python distribution and open it to launch Jupyter Notebook from the Anaconda Navigator.
  2. Clone this repo or just download it.
  3. Navigate to the downloaded folder and open the files with Jupyter Notebook.

More info about Julia basics: https://sje30.github.io/catam-julia/intro/julia-manual.html

Repo cloning instructions:

  1. Install Git
  2. Open up the folder you want to download the files in.
  3. Open up command line
  4. Type cd then drag the folder into the command line and press enter. This will navigate to the folder you want to download the files in easily.
  5. Copy and paste the following into the command line
user> git clone https://github.com/AlexanderSimWS/Y4_FYP.git

Continue from point 7. in the Quick Start Guide.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published