Stan

Model export to Stan.

API

The standard exporting API is provided:

myokit.formats.stan.exporters()

Returns a dict of all exporters available in this module.

class myokit.formats.stan.StanExporter

This:class:Exporter <myokit.formats.Exporter> generates a Stan implementation of a Myokit model.

Only the model definition is exported. An interpolating pacing input method is added. No post-processing is included.

The following inputs are provided:

time

The current simulation time

pace

The current value of the pacing system, implemented using a very simple pacing mechanism.

runnable(path, model, protocol=None, parameters=None, output=None)

Exports a:class:myokit.Model to a Stan model with a parameter estimation file.

Arguments:

path

A string representing the directory to store the output in.

model

A Myokit model to export

protocol

Not implemented!

parameters

A list of variables or variable names, specifying the model variables to be estimated by stan.

output

A single variable to be used as the model output (for example an ion current).

myokit.formats.stan.ewriters()

Returns a dict of all expression writers available in this module.

class myokit.formats.stan.StanExpressionWriter

This:class:ExpressionWriter <myokit.formats.ExpressionWriter> translates Myokit:class:expressions <myokit.Expression> to a Stan syntax.

eq(q)

Converts an equation to a string

ex(e)

Converts an Expression to a string.

set_condition_function(func=None)

Sets a function name to use for if statements

By setting func to None you can revert back to the default behavior

(the ternary operator). Any other value will be interpreted as the name of a function taking arguments (condition, value_if_true, value_if_false).

set_lhs_function(f)
Sets a naming function, will be called to get the variable name from a

myokit.LhsExpression object.

The argument f should be a function that takes an LhsExpression as input and returns a string.