User Guide
wrapper.cpp File Reference
#include "wrapper.hpp"
#include "codegen/codegen_naming.hpp"
#include "pybind/pyembed.hpp"
#include <fmt/format.h>
#include <optional>
#include <pybind11/embed.h>
#include <pybind11/stl.h>
#include <set>
#include <vector>
#include "ode_py.hpp"

Go to the source code of this file.

Namespaces

 nmodl
 encapsulates code generation backend implementations
 
 nmodl::pybind_wrappers
 

Functions

std::tuple< std::vector< std::string >, std::vector< std::string >, std::string > nmodl::pybind_wrappers::call_solve_linear_system (const std::vector< std::string > &eq_system, const std::vector< std::string > &state_vars, const std::set< std::string > &vars, bool small_system, bool elimination, const std::string &tmp_unique_prefix, const std::set< std::string > &function_calls)
 
std::tuple< std::vector< std::string >, std::string > nmodl::pybind_wrappers::call_solve_nonlinear_system (const std::vector< std::string > &eq_system, const std::vector< std::string > &state_vars, const std::set< std::string > &vars, const std::set< std::string > &function_calls)
 
std::tuple< std::string, std::string > nmodl::pybind_wrappers::call_diffeq_solver (const std::string &node_as_nmodl, const std::string &dt_var, const std::set< std::string > &vars, bool use_pade_approx, const std::set< std::string > &function_calls, const std::string &method)
 
std::tuple< std::string, std::string > nmodl::pybind_wrappers::call_analytic_diff (const std::vector< std::string > &expressions, const std::set< std::string > &used_names_in_block)
 
std::tuple< std::string, std::string > nmodl::pybind_wrappers::call_diff2c (const std::string &expression, const std::pair< std::string, std::optional< int >> &variable, const std::unordered_set< std::string > &indexed_vars={})
 Differentiates an expression with respect to a variable. More...
 
void nmodl::pybind_wrappers::initialize_interpreter_func ()
 
void nmodl::pybind_wrappers::finalize_interpreter_func ()
 
NMODL_EXPORT pybind_wrap_api nmodl::pybind_wrappers::nmodl_init_pybind_wrapper_api () noexcept