Program Listing for File standaloneSimulator.h¶
↰ Return to documentation for file (include/parpeamici/standaloneSimulator.h
)
#ifndef STANDALONESIMULATOR_H
#define STANDALONESIMULATOR_H
#include <parpeamici/multiConditionProblem.h>
#include <parpecommon/parpeConfig.h>
#include <amici/amici.h>
namespace parpe {
class StandaloneSimulator
{
public:
explicit StandaloneSimulator(MultiConditionDataProvider* dp);
int run(const std::string& resultFile,
const std::string& resultPath,
std::map<std::string, double> &optimizationParameters,
LoadBalancerMaster* loadBalancer,
const H5::H5File& conditionFile,
std::string conditionFilePath, bool computeInnerParameters);
void messageHandler(std::vector<char>& buffer, int jobId);
private:
AmiciSimulationRunner::AmiciResultPackageSimple
runSimulation(int conditionIdx, amici::Solver& solver, amici::Model& model);
MultiConditionDataProvider* dataProvider = nullptr;
int maxSimulationsPerPackage = 8;
};
// enum class SimulatorOpType {finalParameters};
std::pair<int, double>
getFunctionEvaluationWithMinimalCost(std::string const& datasetPath,
H5::H5File const& file);
std::vector<double>
getFinalParameters(const std::string& startIndex, const H5::H5File& file);
std::vector<std::vector<double>>
getParameterTrajectory(const std::string& startIndex, H5::H5File const& file);
int
getNumStarts(const H5::H5File& file, const std::string& rootPath = "/");
int
runFinalParameters(parpe::StandaloneSimulator& sim,
const std::string& conditionFileName,
const std::string&,
const std::string& parameterFileName,
const std::string& parameterFilePath,
const std::string& resultFileName,
const std::string& resultPath,
parpe::LoadBalancerMaster* loadBalancer,
bool computeInnerParameters);
int
runAlongTrajectory(parpe::StandaloneSimulator& sim,
const std::string& conditionFileName,
const std::string& conditionFilePath,
const std::string& parameterFileName,
const std::string& parameterFilePath,
std::string const& resultFileName,
std::string const& resultPath,
parpe::LoadBalancerMaster* loadBalancer,
bool computeInnerParameters);
int
runSimulator(MultiConditionDataProvider& dp,
std::string const& simulationMode,
const std::string& conditionFileName,
const std::string& conditionFilePath,
const std::string& parameterFileName,
const std::string& parameterFilePath,
std::string const& resultFileName,
std::string const& resultPath,
bool computeInnerParameters);
} // namespace parpe
#endif // STANDALONESIMULATOR_H