Class ExpData

Inheritance Relationships

Base Type

Class Documentation

class amici::ExpData : public amici::SimulationParameters

ExpData carries all information about experimental or condition-specific data.

Public Functions

ExpData() = default

default constructor

ExpData(const ExpData&) = default

Copy constructor, needs to be declared to be generated in swig.

ExpData(int nytrue, int nztrue, int nmaxevent)

constructor that only initializes dimensions

Parameters
  • nytrue: Number of observables

  • nztrue: Number of event outputs

  • nmaxevent: Maximal number of events to track

ExpData(int nytrue, int nztrue, int nmaxevent, std::vector<realtype> ts)

constructor that initializes timepoints from vectors

Parameters
  • nytrue: Number of observables

  • nztrue: Number of event outputs

  • nmaxevent: Maximal number of events to track

  • ts: Timepoints (dimension: nt)

ExpData(int nytrue, int nztrue, int nmaxevent, std::vector<realtype> ts, std::vector<realtype> fixedParameters)

constructor that initializes timepoints and fixed parameters from vectors

Parameters
  • nytrue: Number of observables

  • nztrue: Number of event outputs

  • nmaxevent: Maximal number of events to track

  • ts: Timepoints (dimension: nt)

  • fixedParameters: Model constants (dimension: nk)

ExpData(int nytrue, int nztrue, int nmaxevent, std::vector<realtype> ts, std::vector<realtype> const &observedData, std::vector<realtype> const &observedDataStdDev, std::vector<realtype> const &observedEvents, std::vector<realtype> const &observedEventsStdDev)

constructor that initializes timepoints and data from vectors

Parameters
  • nytrue: Number of observables

  • nztrue: Number of event outputs

  • nmaxevent: Maximal number of events to track

  • ts: Timepoints (dimension: nt)

  • observedData: observed data (dimension: nt x nytrue, row-major)

  • observedDataStdDev: standard deviation of observed data (dimension: nt x nytrue, row-major)

  • observedEvents: observed events (dimension: nmaxevents x nztrue, row-major)

  • observedEventsStdDev: standard deviation of observed events/roots (dimension: nmaxevents x nztrue, row-major)

ExpData(const Model &model)

constructor that initializes with Model

Parameters
  • model: pointer to model specification object

ExpData(const ReturnData &rdata, realtype sigma_y, realtype sigma_z)

constructor that initializes with returnData, adds noise according to specified sigmas

Parameters
  • rdata: return data pointer with stored simulation results

  • sigma_y: scalar standard deviations for all observables

  • sigma_z: scalar standard deviations for all event observables

ExpData(const ReturnData &rdata, std::vector<realtype> sigma_y, std::vector<realtype> sigma_z)

constructor that initializes with returnData, adds noise according to specified sigmas

Parameters
  • rdata: return data pointer with stored simulation results

  • sigma_y: vector of standard deviations for observables (dimension: nytrue or nt x nytrue, row-major)

  • sigma_z: vector of standard deviations for event observables (dimension: nztrue or nmaxevent x nztrue, row-major)

~ExpData() = default
int nytrue() const

number of observables of the non-augmented model

Return

number of observables of the non-augmented model

int nztrue() const

number of event observables of the non-augmented model

Return

number of event observables of the non-augmented model

int nmaxevent() const

maximal number of events to track

Return

maximal number of events to track

int nt() const

number of timepoints

Return

number of timepoints

void setTimepoints(const std::vector<realtype> &ts)

Set function that copies data from input to ExpData::ts.

Parameters
  • ts: timepoints

std::vector<realtype> const &getTimepoints() const

get function that copies data from ExpData::ts to output

Return

ExpData::ts

realtype getTimepoint(int it) const

get function that returns timepoint at index

Return

timepoint timepoint at index

Parameters
  • it: timepoint index

void setObservedData(const std::vector<realtype> &observedData)

set function that copies data from input to ExpData::my

Parameters
  • observedData: observed data (dimension: nt x nytrue, row-major)

void setObservedData(const std::vector<realtype> &observedData, int iy)

set function that copies observed data for specific observable

Parameters
  • observedData: observed data (dimension: nt)

  • iy: observed data index

bool isSetObservedData(int it, int iy) const

get function that checks whether data at specified indices has been set

Return

boolean specifying if data was set

Parameters
  • it: time index

  • iy: observable index

std::vector<realtype> const &getObservedData() const

get function that copies data from ExpData::observedData to output

Return

observed data (dimension: nt x nytrue, row-major)

const realtype *getObservedDataPtr(int it) const

get function that returns a pointer to observed data at index

Return

pointer to observed data at index (dimension: nytrue)

Parameters
  • it: timepoint index

void setObservedDataStdDev(const std::vector<realtype> &observedDataStdDev)

set function that copies data from input to ExpData::observedDataStdDev

Parameters
  • observedDataStdDev: standard deviation of observed data (dimension: nt x nytrue, row-major)

void setObservedDataStdDev(realtype stdDev)

set function that sets all ExpData::observedDataStdDev to the input value

Parameters
  • stdDev: standard deviation (dimension: scalar)

void setObservedDataStdDev(const std::vector<realtype> &observedDataStdDev, int iy)

set function that copies standard deviation of observed data for specific observable

Parameters
  • observedDataStdDev: standard deviation of observed data (dimension: nt)

  • iy: observed data index

void setObservedDataStdDev(realtype stdDev, int iy)

set function that sets all standard deviation of a specific observable to the input value

Parameters
  • stdDev: standard deviation (dimension: scalar)

  • iy: observed data index

bool isSetObservedDataStdDev(int it, int iy) const

get function that checks whether standard deviation of data at specified indices has been set

Return

boolean specifying if standard deviation of data was set

Parameters
  • it: time index

  • iy: observable index

std::vector<realtype> const &getObservedDataStdDev() const

get function that copies data from ExpData::observedDataStdDev to output

Return

standard deviation of observed data

const realtype *getObservedDataStdDevPtr(int it) const

get function that returns a pointer to standard deviation of observed data at index

Return

pointer to standard deviation of observed data at index

Parameters
  • it: timepoint index

void setObservedEvents(const std::vector<realtype> &observedEvents)

set function that copies observed event data from input to ExpData::observedEvents

Parameters
  • observedEvents: observed data (dimension: nmaxevent x nztrue, row-major)

void setObservedEvents(const std::vector<realtype> &observedEvents, int iz)

set function that copies observed event data for specific event observable

Parameters
  • observedEvents: observed data (dimension: nmaxevent)

  • iz: observed event data index

bool isSetObservedEvents(int ie, int iz) const

get function that checks whether event data at specified indices has been set

Return

boolean specifying if data was set

Parameters
  • ie: event index

  • iz: event observable index

std::vector<realtype> const &getObservedEvents() const

get function that copies data from ExpData::mz to output

Return

observed event data

const realtype *getObservedEventsPtr(int ie) const

get function that returns a pointer to observed data at ieth occurrence

Return

pointer to observed event data at ieth occurrence

Parameters
  • ie: event occurrence

void setObservedEventsStdDev(const std::vector<realtype> &observedEventsStdDev)

set function that copies data from input to ExpData::observedEventsStdDev

Parameters
  • observedEventsStdDev: standard deviation of observed event data

void setObservedEventsStdDev(realtype stdDev)

set function that sets all ExpData::observedDataStdDev to the input value

Parameters
  • stdDev: standard deviation (dimension: scalar)

void setObservedEventsStdDev(const std::vector<realtype> &observedEventsStdDev, int iz)

set function that copies standard deviation of observed data for specific observable

Parameters
  • observedEventsStdDev: standard deviation of observed data (dimension: nmaxevent)

  • iz: observed data index

void setObservedEventsStdDev(realtype stdDev, int iz)

set function that sets all standard deviation of a specific observable to the input value

Parameters
  • stdDev: standard deviation (dimension: scalar)

  • iz: observed data index

bool isSetObservedEventsStdDev(int ie, int iz) const

get function that checks whether standard deviation of even data at specified indices has been set

Return

boolean specifying if standard deviation of event data was set

Parameters
  • ie: event index

  • iz: event observable index

std::vector<realtype> const &getObservedEventsStdDev() const

get function that copies data from ExpData::observedEventsStdDev to output

Return

standard deviation of observed event data

const realtype *getObservedEventsStdDevPtr(int ie) const

get function that returns a pointer to standard deviation of observed event data at ie-th occurrence

Return

pointer to standard deviation of observed event data at ie-th occurrence

Parameters
  • ie: event occurrence

Protected Functions

void applyDimensions()

resizes observedData, observedDataStdDev, observedEvents and observedEventsStdDev

void applyDataDimension()

resizes observedData and observedDataStdDev

void applyEventDimension()

resizes observedEvents and observedEventsStdDev

void checkDataDimension(std::vector<realtype> const &input, const char *fieldname) const

checker for dimensions of input observedData or observedDataStdDev

Parameters
  • input: vector input to be checked

  • fieldname: name of the input

void checkEventsDimension(std::vector<realtype> const &input, const char *fieldname) const

checker for dimensions of input observedEvents or observedEventsStdDev

Parameters
  • input: vector input to be checked

  • fieldname: name of the input

Protected Attributes

int nytrue_ = {0}

number of observables

int nztrue_ = {0}

number of event observables

int nmaxevent_ = {0}

maximal number of event occurrences

std::vector<realtype> observed_data_

observed data (dimension: nt x nytrue, row-major)

std::vector<realtype> observed_data_std_dev_

standard deviation of observed data (dimension: nt x nytrue, row-major)

std::vector<realtype> observed_events_

observed events (dimension: nmaxevents x nztrue, row-major)

std::vector<realtype> observed_events_std_dev_

standard deviation of observed events/roots (dimension: nmaxevents x nztrue, row-major)