Description Details Fields Methods See Also

This class implements a natural aging model on a group of people
represented as a `study_group`

of `Person`

class
objects.

The main aim of this Class is to act as a framework for building more
complex models through extension of this class. The simple natural
aging model implemented in `updateSubject`

acts as an
example and place holder for subclasses to override with a more
complex implementation of the function

`study_results`

A two dimensional matrix containing summary of model state at each year of the study. Each column describes a particular property or tally of the study population's state. Results for females and males of the population are recorded separately in odd and even numbered row respectively. So the number of rows is 2x the number of iterations (years).

`doIteration()`

Performs one model iteration over all subjects in the study_group

Performs one model iteration over all subjects in the model's study_group, sums the iteration results of all subjects into separate aggregated results for females and males, returns the aggregated results.

@return A two row matrix the same width as the model's study_result matrix. The first row contains aggregated iteration results for females, the second, for males.

@callGraph

@author Luke Domanski luke.domanski@@csiro.au

`getModelResultSize()`

Returns the number of columns in the model's study result matrix

@author Luke Domanski luke.domanski@@csiro.au

`initialize(study_group = list(), iterations = 0, iteration_resolution = 1, num_subjects = 0, base_seed = NA, commencement_age = 1, study_results = NA, ...)`

Create and initialize a new instance of a GenericModel

This function creates and initializes a new instance of the GenericModel class. Parameters relating to the length of the modelled study and the number of subjects in the study group are passed to this function. See

`run`

to run the created model.@section Model details:

The GenericModel classes present a framework or set of base classes on which to build more complex models. As a place holder the GenericModel implements a simple natural aging model, and and records the number of non-deceased subjects remaining at each iteration.

@param study_group list containing objects of a class derived from

`Person`

. Used to specify an existing group you wish to run/continue the model on@param iterations the number of iterations the model should run to

@param iteration_resolution how many iterations are modelled in one call to the subject model step function

`updateSubject`

@param num_subjects integer indicating number of subjects in the study group. If

`study_group`

is not specified, a new random`study_group`

of size`sum_subjects`

, containing objects of class`Person`

, is created. Otherwise, it is taken as the size of the specified`study_group`

and may result in`study_group`

being truncated@param base_seed integer RNG seed used for model

@param commencement_age integer indicating age at which to start running the model of subjects of the

`study_group`

@param study_results an integer matrix with

`iterations*2`

rows and enough columns to fit the model's iteration results. Used to specify existing results when an existing`study_group`

is specified.@param ... additional model values/parameters

@return a new object of type GenericModel with specified configuration

@seealso

`run`

to run the model@family model_initializers

@callGraph

@author Luke Domanski luke.domanski@@csiro.au

@aliases GenericModel$new

`run()`

Runs the model

Runs the model for the number of iterations specified at model initialization, defined as

`num_iterations-commencement_age`

, and sets the male and female result rows for each iteration in the model's study_results matrix.The start iteration is

`commencement_age`

, rows of the`study_result`

matrix prior to`study_result[commencement_age]`

are unchanged.@callGraph @author Luke Domanski luke.domanski@@csiro.au

`updateSubject(subject)`

Applies a model step to an individual subject

This function applies a model step to an individual subject updating the subject's state. It implements the main, overall, structure and flow of the model.

@param subject an object of class Person on which to apply a model step

@return an integer vector of length equal to the width of the model's study_result matrix, containing the iteration results for the subject

@callGraph

@author Luke Domanski luke.domanski@@csiro.au

Other GenericModel_classes: `ClinicalHistory`

,
`ClinicalHistory-class`

;
`Person`

, `Person-class`

;
`Test`

, `Test-class`

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.