7#include <Eigen/SparseCore>
9#include "sleipnir/autodiff/jacobian.hpp"
10#include "sleipnir/autodiff/variable.hpp"
11#include "sleipnir/autodiff/variable_matrix.hpp"
12#include "sleipnir/util/concepts.hpp"
13#include "sleipnir/util/small_vector.hpp"
14#include "sleipnir/util/solve_profiler.hpp"
15#include "sleipnir/util/symbol_exports.hpp"
35 : m_jacobian{std::move(variable), std::move(wrt)} {}
45 : m_jacobian{
VariableMatrix{std::move(variable)}, std::move(wrt)} {}
62 const Eigen::SparseVector<double>&
value() {
63 m_g = m_jacobian.value();
62 const Eigen::SparseVector<double>&
value() {
…}
74 return m_jacobian.get_profilers();
78 Eigen::SparseVector<double> m_g;
Definition gradient.hpp:26
const Eigen::SparseVector< double > & value()
Definition gradient.hpp:62
VariableMatrix get() const
Definition gradient.hpp:55
const small_vector< SolveProfiler > & get_profilers() const
Definition gradient.hpp:73
Gradient(Variable variable, SleipnirMatrixLike auto wrt) noexcept
Definition gradient.hpp:44
Gradient(Variable variable, Variable wrt) noexcept
Definition gradient.hpp:34
Definition jacobian.hpp:27
Definition variable_matrix.hpp:29
VariableMatrix T() const
Definition variable_matrix.hpp:890
Definition variable.hpp:41
Definition concepts.hpp:23