Pakman
protocols.h File Reference
#include <string>
#include <vector>
#include "interface/types.h"
Include dependency graph for protocols.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

std::string format_simulator_input (const Epsilon &epsilon, const Parameter &parameter)
 
bool parse_simulator_output (const std::string &simulator_output)
 
Parameter parse_prior_sampler_output (const std::string &prior_sampler_output)
 
std::string format_perturber_input (int t, const Parameter &source_parameter)
 
Parameter parse_perturber_output (const std::string &perturber_output)
 
std::string format_prior_pdf_input (const Parameter &parameter)
 
double parse_prior_pdf_output (const std::string &prior_pdf_output)
 
std::string format_perturbation_pdf_input (int t, const Parameter &perturbed_parameter, const std::vector< Parameter > &parameter_population)
 
std::vector< double > parse_perturbation_pdf_output (const std::string &perturbation_pdf_output)
 
std::vector< Parameterparse_generator_output (const std::string &generator_output)
 
Parameter sample_from_prior (const Command &prior_sampler)
 
Parameter perturb_parameter (const Command &perturber, int t, Parameter source_parameter)
 
double get_prior_pdf (const Command &prior_pdf, Parameter parameter)
 
std::vector< double > get_perturbation_pdf (const Command &perturbation_pdf, int t, const Parameter &perturbed_parameter, const std::vector< Parameter > &parameter_population)
 

Detailed Description

This file defines functions to format input to user executables and parse output from user executables according to the Pakman user executable API.

In addition, this file contains convenience functions that combine formatting and parsing.

Definition in file protocols.h.

Function Documentation

◆ format_perturbation_pdf_input()

std::string format_perturbation_pdf_input ( int  t,
const Parameter perturbed_parameter,
const std::vector< Parameter > &  parameter_population 
)

Format input to perturbation_pdf.

Parameters
tcurrent generation.
perturbed_parameterperturbed parameter.
parameter_populationparameter population.
Returns
input string to perturbation_pdf.

Definition at line 182 of file protocols.cc.

◆ format_perturber_input()

std::string format_perturber_input ( int  t,
const Parameter source_parameter 
)

Format input to perturber.

Parameters
tcurrent generation.
source_parametersource parameter to be perturbed.
Returns
input string to perturber.

Definition at line 99 of file protocols.cc.

◆ format_prior_pdf_input()

std::string format_prior_pdf_input ( const Parameter parameter)

Format input to prior_pdf.

Parameters
parameterparameter to evaluate.
Returns
input string to prior_pdf.

Definition at line 128 of file protocols.cc.

◆ format_simulator_input()

std::string format_simulator_input ( const Epsilon epsilon,
const Parameter parameter 
)

Format input to simulator.

Parameters
epsilondistance tolerance.
parameterparameter to simulate.
Returns
input string to simulator.

Definition at line 11 of file protocols.cc.

◆ get_perturbation_pdf()

std::vector<double> get_perturbation_pdf ( const Command perturbation_pdf,
int  t,
const Parameter perturbed_parameter,
const std::vector< Parameter > &  parameter_population 
)

Get perturbation probability density function.

Parameters
perturbation_pdfcommand to get perturbation pdf.
tcurrent generation.
perturbed_parameterperturbed parameter.
parameter_populationparameter population.
Returns
perturbation kernel probability densities for perturbed parameter and parameter population.

Definition at line 319 of file protocols.cc.

◆ get_prior_pdf()

double get_prior_pdf ( const Command prior_pdf,
Parameter  parameter 
)

Get prior probability density function.

Parameters
prior_pdfcommand to get prior pdf.
parameterparameter to evaluate.
Returns
prior probability density of parameter.

Definition at line 311 of file protocols.cc.

◆ parse_generator_output()

std::vector<Parameter> parse_generator_output ( const std::string &  generator_output)

Parse output from generator.

Parameters
generator_outputoutput string from generator.
Returns
list of parameters to simulate.

Definition at line 253 of file protocols.cc.

◆ parse_perturbation_pdf_output()

std::vector<double> parse_perturbation_pdf_output ( const std::string &  perturbation_pdf_output)

Parse output from perturbation_pdf.

Parameters
perturbation_pdf_outputoutput string from perturbation_pdf.
Returns
perturbation kernel probability densities for perturbed parameter and parameter population.

Definition at line 202 of file protocols.cc.

◆ parse_perturber_output()

Parameter parse_perturber_output ( const std::string &  perturber_output)

Parse output from perturber.

Parameters
perturber_outputoutput string from perturber.
Returns
perturbed parameter.

Definition at line 110 of file protocols.cc.

◆ parse_prior_pdf_output()

double parse_prior_pdf_output ( const std::string &  prior_pdf_output)

Parse output from prior_pdf.

Parameters
prior_pdf_outputoutput string from prior_pdf.
Returns
prior probability density of parameter.

Definition at line 137 of file protocols.cc.

◆ parse_prior_sampler_output()

Parameter parse_prior_sampler_output ( const std::string &  prior_sampler_output)

Parse output from prior_sampler.

Parameters
prior_sampler_outputoutput string from prior_sampler.
Returns
parameter sampled from prior.

Definition at line 65 of file protocols.cc.

◆ parse_simulator_output()

bool parse_simulator_output ( const std::string &  simulator_output)

Parse output from simulator.

Parameters
simulator_outputoutput string from simulator.
Returns
whether parameter was accepted.

Definition at line 24 of file protocols.cc.

◆ perturb_parameter()

Parameter perturb_parameter ( const Command perturber,
int  t,
Parameter  source_parameter 
)

Perturb parameter.

Parameters
perturbercommand to perturb parameter.
tcurrent generation.
source_parametersource parameter to be perturbed.
Returns
perturbed parameter.

Definition at line 301 of file protocols.cc.

◆ sample_from_prior()

Parameter sample_from_prior ( const Command prior_sampler)

Sample from prior.

Parameters
prior_samplercommand to sample from prior.
Returns
parameter sampled from prior.

Definition at line 294 of file protocols.cc.