This page lists resources that are potentially useful for further learning immunology and modeling.
Apart from the books, most materials described below are (should be) freely available online. For better or for worse, a lot of the resources are dynamic and ever changing. That means occasionally links might not work, sites go offline, chapters in online books get re-arranged, etc. If any link does not work and you can’t access the materials for some reason, or you got some other good resources that we don’t list, please let us know.
There isn’t really a textbook that teaches simulation modeling which is both comprehensive and suitable for beginners. The following books cover some aspects of within-host modeling and might be suitable for some learners.
The types of simulation models we discuss here are common in other areas of science. The study of infectious diseases on the population level (i.e. epidemiology/ecology/evolution) has a long history of using these kinds of models. There are a number of good resources dedicated to models on the population level. Most of the ideas and concepts apply directly to the within-host level. For a list of resources with a focus on population-level infectious diseases and modeling, check out the Resources sections of the online course Infectious Disease Epidemiology - A model-based approach (IDEMA).
Dynamical Systems Approach to Immune Response Modeling (DSAIRM). This is an R package we wrote to teach within-host modeling through hands-on explorations of models. No coding is required.
modelbuilder. This is another R package we are working on. It allows you to build and analyze your own models without having to write code. Note that the package is work in progress, and while it should work, it might be buggy.
SIMMUNE. This is a freely available software package which allows building and analysis of fairly complex models.
COPASI. Another freely available software tool that can be used for within-host modeling.
Many other general software tools (some commercial, some free) can be used to build and run models of the type discussed on this page. Examples are Matlab, Berkeley Madonna, STELLA, Phython, Julia, and any other general purpose programming language. Those require different levels of coding abilities.