Models

Interface

The interface that has to be implemented for a model to be usable is defined in src/models/interface.jl.

ComputableDAGs.graphFunction
graph(problem_instance)

Generate the DAG for the given problem_instance. Every entry node (see get_entry_nodes) to the graph must have a name set. Implement input_expr to return a valid expression for each of those names.

For more details on the problem_instance, please refer to the documentation.

source
ComputableDAGs.input_exprFunction
input_expr(problem_instance, name::String, input_symbol::Symbol)

For the given problem_instance, the entry node name, and the symbol of the problem input (where a variable of type input_type(...) will exist), return an Expr that gets that specific input value from the input symbol.

For more details on the problem_instance, please refer to the documentation.

source
ComputableDAGs.input_typeFunction
input_type(problem_instance)

Return the input type for a specific problem_instance. This can be a specific type or a supertype for which all child types are expected to be implemented.

For more details on the problem_instance, please refer to the documentation.

source