public abstract class Community
extends java.lang.Object
implements java.io.Serializable
Modifier and Type | Field and Description |
---|---|
QReal |
currentTime
Текущее модельное время.
|
static QReal |
MAX_TIME
Максимальное время.
|
Rnd |
rnd
Датчик случайных чисел.
|
Constructor and Description |
---|
Community()
Сконструировать пустое сообщество.
|
Modifier and Type | Method and Description |
---|---|
void |
addEvent(QReal time,
Event event)
Добавить событие.
|
void |
addInteraction(Interaction interaction)
Добавить взаимодействие.
|
void |
addObserver(Observer observer)
Добавить наблюдателя.
|
void |
addVariable(java.lang.String name,
Variable variable)
Добавить переменную.
|
Variable |
getVariable(java.lang.String name) |
protected void |
initialize()
Инициализировать сообщество перед очередной итерацией.
|
public static final QReal MAX_TIME
public Rnd rnd
public QReal currentTime
public Community()
iter
— номер текущей итерации;currentTime
— текущий момент времени;numEvents
— количество событий в очереди.public final void addVariable(java.lang.String name, Variable variable) throws PmException
name
- имя переменной.variable
- класс-функция, вычисляющая значение переменной.PmException
- если переменная с данным именем уже добавлена в популяцию.public final Variable getVariable(java.lang.String name) throws PmException
name
- имя переменной.PmException
- если переменная с данным именем не зарегистрирована в сообществе.public final void addInteraction(Interaction interaction)
interaction
- взаимодействие.public final void addObserver(Observer observer) throws PmException
observer
- наблюдатель.PmException
- если данный наблюдатель не согласуется с этим сообществом.
Например, в сообществе не зарегистрированы необходимые наблюдателю объекты:
переменные, популяции, взаимодействия.protected void initialize() throws PmException
PmException
- если нарушены ограничения модели.public final void addEvent(QReal time, Event event) throws PmException
time
- момент возникновения события.event
- событие.PmException
- если данное событие запланировано на момент времени предшествующий или совпадающий с текущим.