libigl v2.5.0
Loading...
Searching...
No Matches
min_quad_with_fixed.h File Reference
#include "igl_inline.h"
#include <Eigen/Core>
#include <Eigen/Dense>
#include <Eigen/Sparse>
#include <iostream>
#include <unsupported/Eigen/SparseExtra>
#include "min_quad_with_fixed.impl.h"

Go to the source code of this file.

Classes

struct  igl::min_quad_with_fixed_data< T >
 Parameters and precomputed values for min_quad_with_fixed. More...

Namespaces

namespace  igl

Macros

#define EIGEN_YES_I_KNOW_SPARSE_MODULE_IS_NOT_STABLE_YET

Functions

template<typename T, typename Derivedknown>
bool igl::min_quad_with_fixed_precompute (const Eigen::SparseMatrix< T > &A, const Eigen::MatrixBase< Derivedknown > &known, const Eigen::SparseMatrix< T > &Aeq, const bool pd, min_quad_with_fixed_data< T > &data)
 Minimize a convex quadratic energy subject to fixed value and linear equality constraints.
template<typename T, typename DerivedB, typename DerivedY, typename DerivedBeq, typename DerivedZ, typename Derivedsol>
bool igl::min_quad_with_fixed_solve (const min_quad_with_fixed_data< T > &data, const Eigen::MatrixBase< DerivedB > &B, const Eigen::MatrixBase< DerivedY > &Y, const Eigen::MatrixBase< DerivedBeq > &Beq, Eigen::PlainObjectBase< DerivedZ > &Z, Eigen::PlainObjectBase< Derivedsol > &sol)
 Solves a system previously factored using min_quad_with_fixed_precompute.
template<typename T, typename DerivedB, typename DerivedY, typename DerivedBeq, typename DerivedZ>
bool igl::min_quad_with_fixed_solve (const min_quad_with_fixed_data< T > &data, const Eigen::MatrixBase< DerivedB > &B, const Eigen::MatrixBase< DerivedY > &Y, const Eigen::MatrixBase< DerivedBeq > &Beq, Eigen::PlainObjectBase< DerivedZ > &Z)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
template<typename T, typename Derivedknown, typename DerivedB, typename DerivedY, typename DerivedBeq, typename DerivedZ>
bool igl::min_quad_with_fixed (const Eigen::SparseMatrix< T > &A, const Eigen::MatrixBase< DerivedB > &B, const Eigen::MatrixBase< Derivedknown > &known, const Eigen::MatrixBase< DerivedY > &Y, const Eigen::SparseMatrix< T > &Aeq, const Eigen::MatrixBase< DerivedBeq > &Beq, const bool pd, Eigen::PlainObjectBase< DerivedZ > &Z)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
template<typename Scalar, int n, int m, bool Hpd = true>
Eigen::Matrix< Scalar, n, 1 > igl::min_quad_with_fixed (const Eigen::Matrix< Scalar, n, n > &H, const Eigen::Matrix< Scalar, n, 1 > &f, const Eigen::Array< bool, n, 1 > &k, const Eigen::Matrix< Scalar, n, 1 > &bc, const Eigen::Matrix< Scalar, m, n > &A, const Eigen::Matrix< Scalar, m, 1 > &b)
 Dense version optimized for very small, known at compile time sizes.
template<typename Scalar, int n, bool Hpd = true>
Eigen::Matrix< Scalar, n, 1 > igl::min_quad_with_fixed (const Eigen::Matrix< Scalar, n, n > &H, const Eigen::Matrix< Scalar, n, 1 > &f, const Eigen::Array< bool, n, 1 > &k, const Eigen::Matrix< Scalar, n, 1 > &bc)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
template<typename Scalar, int n, int kcount, bool Hpd>
Eigen::Matrix< Scalar, n, 1 > igl::min_quad_with_fixed (const Eigen::Matrix< Scalar, n, n > &H, const Eigen::Matrix< Scalar, n, 1 > &f, const Eigen::Array< bool, n, 1 > &k, const Eigen::Matrix< Scalar, n, 1 > &bc)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Macro Definition Documentation

◆ EIGEN_YES_I_KNOW_SPARSE_MODULE_IS_NOT_STABLE_YET

#define EIGEN_YES_I_KNOW_SPARSE_MODULE_IS_NOT_STABLE_YET