In my experience, statistical model code always consists of pretty much the same:
objects that hold observations, constants, etc.
functions that define the model
functions that plot results
With this package, I am attempting to establish a few patterns in my code, so that it becomes easier to read, debug, and modify. I have created the following virtual reference classes:
The Daemon class. Also known as the Puppeteer, this is the class that controls all others. Ideally, lay users of this package should only have to learn how to interact with objects of this class.
The Strategy class. This is the class that defines the strategy to fit a particular statistical model. Strategy objects should mostly contain methods (i.e., functions), not data (i.e., fields).
The Parameters class. This is the class that holds and controls data sets and model parameters. Objects of this class should be accessed through Daemon and Strategy objects. The class contains methods that set and get data. Data modification methods should be placed in Strategy classes.
The Factory class. Sometimes, it is necessary to pre-process data before the model can be run. This task is performed once, by a Factory object, controlled by the Daemon.
The Printer class. To visualize model input and output, the Daemon controls an object of the Printer class.
The Random class. Some Parameters may be random variables or vectors, meaning that an efficient, parallelizable pseudo-random number generator is needed.
The Basic class. If there are fields or methods that all classes should have, they ought to be placed here. This is the archetypal class, meaning that all others inherit from this one.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.