Represents a integer valued variable for an individual.
This class is similar to CategoricalVariable
,
but can be used for variables with unbounded ranges, or other situations where part
of an individual's state is better represented by an integer, such as
household or age bin.
get_values()
Get the variable values.
index
optionally return a subset of the variable vector. If
NULL
, return all values; if passed a Bitset
or integer vector, return values of those individuals.
get_index_of()
Return a Bitset
for individuals with some subset of values.
Either search for indices corresponding to values in set
, or
for indices corresponding to values in range \([a,b]\). Either set
or a
and b
must be provided as arguments.
get_size_of()
Return the number of individuals with some subset of values.
Either search for indices corresponding to values in set
, or
for indices corresponding to values in range \([a,b]\). Either set
or a
and b
must be provided as arguments.
queue_update()
Queue an update for a variable. There are 4 types of variable update:
Subset update: The argument index
represents a subset of the variable to
update. The argument values
should be a vector whose length matches the size of index
,
which represents the new values for that subset.
Subset fill: The argument index
represents a subset of the variable to
update. The argument values
should be a single number, which fills the specified subset.
Variable reset: The index vector is set to NULL
and the argument values
replaces all of the current values in the simulation. values
should be a vector
whose length should match the size of the population, which fills all the variable values in
the population
Variable fill: The index vector is set to NULL
and the argument values
should be a single number, which fills all of the variable values in
the population.
values
a vector or scalar of values to assign at the index
index
is the index at which to apply the change, use NULL
for the
fill options. If using indices, this may be either a vector of integers or
a Bitset
.
restore_state()
restore the variable from a previously saved state.
timestep
the timestep at which simulation is resumed. This parameter's value is ignored, it only exists to conform to a uniform interface with events.
state
the previously saved state, as returned by the
save_state
method. NULL is passed when restoring from a saved
simulation in which this variable did not exist.