Class MultiConditionDataProvider

Inheritance Relationships

Derived Types

Class Documentation

class MultiConditionDataProvider

The MultiConditionDataProvider interface.

Subclassed by parpe::MultiConditionDataProviderDefault, parpe::MultiConditionDataProviderHDF5

Public Functions

virtual ~MultiConditionDataProvider() = default
virtual int getNumberOfSimulationConditions() const = 0

Provides the number of conditions for which data is available and simulations need to be run.

Returns:

Number of conditions

virtual std::vector<int> getSimulationToOptimizationParameterMapping(int conditionIdx) const = 0

Get mapping vector simulation_parameter_idx -> optimization_parameter_idx for the given condition index.

Parameters:

conditionIdx

Returns:

Mapping vector

virtual void mapSimulationToOptimizationGradientAddMultiply(int conditionIdx, gsl::span<double const> simulation, gsl::span<double> optimization, gsl::span<const double> parameters, double coefficient = 1.0) const = 0
virtual void mapAndSetOptimizationToSimulationVariables(int conditionIdx, gsl::span<double const> optimization, gsl::span<double> simulation, gsl::span<amici::ParameterScaling> optimizationScale, gsl::span<amici::ParameterScaling> simulationScale) const = 0
virtual amici::ParameterScaling getParameterScaleOpt(int parameterIdx) const = 0

Get the parameter scale for the given optimization parameter.

Parameters:

simulationIdx

Returns:

Parameter scale

virtual std::vector<amici::ParameterScaling> getParameterScaleOpt() const = 0
virtual std::vector<amici::ParameterScaling> getParameterScaleSim(int simulationIdx) const = 0

Get the parameter scale vector for the given simulation.

Parameters:

simulationIdx

Returns:

virtual amici::ParameterScaling getParameterScaleSim(int simulationIdx, int modelParameterIdx) const = 0

Get the parameter scale for the given parameter and simulation.

Parameters:

simulationIdx

Returns:

virtual void updateSimulationParametersAndScale(int conditionIndex, gsl::span<double const> optimizationParams, amici::Model &model) const = 0
virtual std::unique_ptr<amici::ExpData> getExperimentalDataForCondition(int conditionIdx) const = 0
virtual std::vector<std::vector<double>> getAllMeasurements() const = 0
virtual std::vector<std::vector<double>> getAllSigmas() const = 0
virtual int getNumOptimizationParameters() const = 0

Returns the number of optimization parameters of this problem.

Returns:

Number of parameters

virtual std::vector<std::string> getProblemParameterIds() const = 0
virtual std::unique_ptr<amici::Model> getModel() const = 0

Returns a pointer to the underlying AMICI model.

Returns:

The model

virtual std::unique_ptr<amici::Solver> getSolver() const = 0