Modeling Tiger Stripes
Undergraduate STEM majors will have an opportunity to manipulate MATLAB code to address a driving question. They will engage with a simplified model to develop comfort editing code and analyzing the results of those edits. They will then work with complex code to manipulate code seeking insight related to the original driving question.
MATLAB code will be used to model the reaction and diffusion of pigments in a system. The concentrations of the pigments will produce striping patterns, analogous to what we see in nature from tigers, zebras, or leopards. Tiger stripes will be the focus of the models, which are produced by the pigments eumelanin and pheomelanin.
(Foundational) Instructional Objective
Students will use robust modeling techniques to produce evidence to justify claims about stripe patterns found in nature.
Students will manipulate code to produce useful model results.
Students will identify portions of code that are appropriate for editing.
Students will edit code to pursue evidence they have identified as appropriate for answering a driving question.
Students will use evidence to justify claims about stripe patterns.
Students will relate model results to authentic examples of relevant striping patterns found in nature.
Students will use model results to predict characteristics of the natural system.
Example: “A reduction in reaction rate leads to a loss of stripes. That means a loss of function (LOF) mutation in this gene should produce a mutant phenotype without stripes. Does that exist?”
Eumelanin, as a three-monomer oligomer.
Students struggling to access the lesson material will be able to predict the effect of simple manipulations in the code.
Students will accumulate experience manipulating variables that is sufficient to predict the effects of new manipulations.
This experience should lead to comfort in predicting the effects of code changes in unfamiliar code, which leads to access to the foundational objective.
Students unchallenged by the lesson material will be able to create/edit code to produce a new behavior in the model.
Students will identify a current limitation of the model, and attempt to create new code that overcomes that limitation.
This experience is more generative, and should lead to students becoming more comfortable creating novel code behavior, which can apply to new examples.
- Each script was written for use in MATLAB, from MathWorks
- Each script has been adapted to run in Octave, a freely available alternative to MATLAB.
- model1 - First script, for use on day 1 and day 2
- model1 Octave - Adapted script
- TigerStrips1 - Second script, for use on day 3
- TigerStrips1 Octave - Adapted script
- Reaction-Diffusion Tutorial - explanatory graphics from Karl Sims
- Barbara Han on Meet the Microbiologist - discussing modeling disease vectors
- Stochastic Turing patterns in a synthetic bacterial population - Karig, Martini, Lu, Delateur, Goldenfeld, and Weiss PNAS 2018
- These lesson materials were developed by Michael Ralph and Abdalkadur al-Sabawy through the Center for STEM Learning at the University of Kansas.
- Code for "model1" was implemented from Yayoi Teramoto Kimura's "The Mathematics of Patterns The modeling and analysis of reaction-diffusion equations"
- Code for "TigerStrips1" was implemented from Mike Garrity's "How the Tiger got its Stripes"
- We are grateful for the support of Dr. Helen Alexander of the University of Kansas Department of Ecology & Evolutionary Biology and her collaboration as a co-instructor of the Research Methods course.
- Support for developing these materials was provided by the Center for Teaching Excellence at the University of Kansas through a Spring 2019 Course Transformation Minigrant.
- We are grateful in particular for the support of Jeffery Ross and his direct support throughout the duration of the project.