27 #ifndef CASADI_LINSOL_TRIDIAG_HPP
28 #define CASADI_LINSOL_TRIDIAG_HPP
40 #include "casadi/core/linsol_internal.hpp"
41 #include <casadi/solvers/casadi_linsol_tridiag_export.h>
46 std::vector<double>
c, ctr, d;
68 void init(
const Dict& opts)
override;
74 int init_mem(
void* mem)
const override;
80 int nfact(
void* mem,
const double* A)
const override;
83 int sfact(
void* mem,
const double* A)
const override;
86 int solve(
void* mem,
const double* A,
double* x, casadi_int nrhs,
bool tr)
const override;
89 void generate(
CodeGenerator& g,
const std::string& A,
const std::string& x,
90 casadi_int nrhs,
bool tr)
const override;
96 std::string
class_name()
const override {
return "LinsolTridiag";}
Helper class for C code generation.
'tridiag' plugin for Linsol
const char * plugin_name() const override
void * alloc_mem() const override
Create memory block.
static const std::string meta_doc
A documentation string.
static LinsolInternal * creator(const std::string &name, const Sparsity &sp)
Create a new LinsolInternal.
std::string class_name() const override
Readable name of the internal class.
void free_mem(void *mem) const override
Free memory block.
GenericType::Dict Dict
C++ equivalent of Python's dict or MATLAB's struct.