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