# Biological Circuit Design

- 0. Configuring your computer to use Python for scientific computing
- 1. Introduction to biological circuit design
- 2. Design principles governing the rate of gene expression
- 3. Sticky switches: bistability through positive feedback
- 4. Analysis of feedforward loops
- 5. Incoherent feed-forward loops serve as dosage compensators
- 6. Exact adaptation in the chemotaxis pathway
- 7. Amplification of extracellular signals
- 8. Kinetic proofreading: Multi-step processes reduce error rates in molecular recognition
- 9. Blinking bacteria: The repressilator enables self-sustaining oscillations
- 10. Uses, simplifications, and elaborations of negative feedback oscillators
- 11. Time-based regulation in cells
- 12. Molecular titration generates ultrasensitive responses in biological circuits
- 13. Promiscuous receptor-ligand interactions increase the bandwidth and specificity of cell-cell communication systems
- 14. MultiFate enables expandable and controllable multistability
- 15. The noisy, noisy nature of gene expression: How stochastic fluctuations create variation
- 16. Bursty gene expression
- 17. Cellular bet-hedging
- 18. Excitability enables probabilistic, transient differentiation
- 20. Lateral Inhibition: Spontaneous symmetry breaking to form a spatial pattern of cells
- 21. Turing patterns
- 22. Scaling reaction-diffusion patterns

- 2a. Approximate solutions to autorepressive dynamics
- 2b. Numerical solutions to ODEs with SciPy
- 2c. Interactive plotting with Bokeh
- 3a. Nondimensionalization
- 4a. Numerical solution of FFLs
- 9a. Fixed points and composite functions
- 9b. Linear stability analysis
- 9c. Numerical one-dimensional bounded root finding
- 10a. Stability diagrams by numerical computation of eigenvalues
- 10b. The Greshgorin circle theorem
- 10c. Numerical solution of delay differential equations
- 10d. Linear stability analysis of delay differential equations
- 16a. Stochastic (Gillespie) simulation
- 16b. Profiling code for speed and an application of the Gillespie algorithm