hops
|
[Deprectated] Use PolyRound (https://gitlab.com/csb.ethz/PolyRound) for effective and efficient rounding. More...
#include <MaximumVolumeEllipsoid.hpp>
Public Member Functions | |
MaximumVolumeEllipsoid (const MaximumVolumeEllipsoid &)=default | |
MaximumVolumeEllipsoid (MaximumVolumeEllipsoid &&) noexcept=default | |
MaximumVolumeEllipsoid & | operator= (const MaximumVolumeEllipsoid &)=default |
Eigen::Matrix< RealType, Eigen::Dynamic, 1 > | applyRoundingTransformation (Eigen::Matrix< RealType, Eigen::Dynamic, 1 > &x) |
Transforms vector x to the rounded space. More... | |
RealType | computeVolume () const |
const Eigen::Matrix< RealType, Eigen::Dynamic, Eigen::Dynamic > & | getRoundingTransformation () const |
const Eigen::Matrix< RealType, Eigen::Dynamic, 1 > & | getCenter () const |
Eigen::Matrix< RealType, Eigen::Dynamic, Eigen::Dynamic > | getEllipsoid () const |
bool | hasConverged () const |
size_t | getNumberOfIterations () const |
RealType | getCurrentError () const |
RealType | getTolerance () const |
Static Public Member Functions | |
static MaximumVolumeEllipsoid | construct (const Eigen::Matrix< RealType, Eigen::Dynamic, Eigen::Dynamic > &A, const Eigen::Matrix< RealType, Eigen::Dynamic, 1 > &b, size_t maximumNumberOfIterationsToRun, const Eigen::Matrix< RealType, Eigen::Dynamic, 1 > &startingPoint, RealType tolerance=1e-6) |
static MaximumVolumeEllipsoid | construct (const Eigen::Matrix< RealType, Eigen::Dynamic, Eigen::Dynamic > &A, const Eigen::Matrix< RealType, Eigen::Dynamic, 1 > &b, size_t maximumNumberOfIterationsToRun, RealType tolerance=1e-6) |
Friends | |
template<typename Derived > | |
std::ostream & | operator<< (std::ostream &out, const MaximumVolumeEllipsoid< Derived > &maximumVolumeEllipsoid) |
template<typename Derived > | |
void | swap (MaximumVolumeEllipsoid< Derived > &first, MaximumVolumeEllipsoid< Derived > &second) |
[Deprectated] Use PolyRound (https://gitlab.com/csb.ethz/PolyRound) for effective and efficient rounding.
Reference: Zhang, Y., & Gao, L. (2003): On Numerical Solution of the Maximum Volume Ellipsoid Problem. SIAM Journal on Optimization, 14(1), 53–76. doi:10.1137/S1052623401397230
Implementation initially ported from Matlab to C++ by Samuel Leweke (2013).
|
default |
|
defaultnoexcept |
Eigen::Matrix< RealType, Eigen::Dynamic, 1 > hops::MaximumVolumeEllipsoid< RealType >::applyRoundingTransformation | ( | Eigen::Matrix< RealType, Eigen::Dynamic, 1 > & | x | ) |
Transforms vector x to the rounded space.
x |
RealType hops::MaximumVolumeEllipsoid< RealType >::computeVolume |
|
static |
|
static |
const Eigen::Matrix< RealType, Eigen::Dynamic, 1 > & hops::MaximumVolumeEllipsoid< RealType >::getCenter |
RealType hops::MaximumVolumeEllipsoid< RealType >::getCurrentError |
Eigen::Matrix< RealType, Eigen::Dynamic, Eigen::Dynamic > hops::MaximumVolumeEllipsoid< RealType >::getEllipsoid |
size_t hops::MaximumVolumeEllipsoid< RealType >::getNumberOfIterations |
const Eigen::Matrix< RealType, Eigen::Dynamic, Eigen::Dynamic > & hops::MaximumVolumeEllipsoid< RealType >::getRoundingTransformation |
RealType hops::MaximumVolumeEllipsoid< RealType >::getTolerance |
bool hops::MaximumVolumeEllipsoid< RealType >::hasConverged |
|
default |
|
friend |
|
friend |