Implements file I/O operations for IndSimpSet. More...
#include "IndSimpSetIncAdj.h"
#include "accessors.h"
#include "geometry.h"
#include "PointsOnManifold.h"
#include "../simplex/ComplexWithFreeVertexOnManifold.h"
#include "../simplex/SimplexModMeanRatio.h"
#include "../simplex/SimplexModCondNum.h"
#include "../../kernel/ParametrizedLine.h"
#include "../../kernel/ParametrizedPlane.h"
#include "../../../ads/functor/Identity.h"
#include "../defs.h"
#include <functional>
#include "../../../ads/iterator/IntIterator.h"
#include "Opt.h"
#include "../../ads/tensor/SquareMatrix.h"
#include "../../geom/kernel/Point.h"
#include <cmath>
#include "QuasiNewton.ipp"
#include "QuasiNewton.h"
#include "FunctionWithQuadraticPenalty.h"
#include "PenaltyQuasiNewton.ipp"
#include "../../geom/mesh/simplex/Simplex.h"
#include "Simplex.ipp"
Go to the source code of this file.
Functions | |
template<template< int, typename > class QF, int N, bool A, typename T , typename V , typename IS > | |
void | geometricOptimizeInterior (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, int numSweeps=1) |
Optimize the position of the interior vertices. | |
template<template< int, typename > class QF, int N, bool A, typename T , typename V , typename IS , typename IntForIter > | |
void | geometricOptimizeInterior (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, IntForIter begin, IntForIter end, int numSweeps=1) |
Make numSweeps optimization sweeps over the given interior vertices with the quality function given as a template parameter. | |
template<int N, bool A, typename T , typename V , typename IS > | |
void | geometricOptimizeInteriorUsingMeanRatio (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, const int numSweeps=1) |
Optimize the position of the interior vertices. | |
template<int N, bool A, typename T , typename V , typename IS > | |
void | geometricOptimizeInteriorUsingConditionNumber (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, const int numSweeps=1) |
Optimize the position of the interior vertices. | |
template<template< int, typename > class QF, int N, bool A, typename T , typename V , typename IS , int SD> | |
void | geometricOptimizeBoundary (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, PointsOnManifold< N, N-1, SD, T > *boundaryManifold, int numSweeps=1) |
Optimize the position of all boundary vertices. | |
template<template< int, typename > class QF, bool A, typename T , typename V , typename IS , typename IntForIter , int SD> | |
void | geometricOptimizeBoundary (IndSimpSetIncAdj< 2, 2, A, T, V, IS > *mesh, IntForIter begin, IntForIter end, PointsOnManifold< 2, 1, SD, T > *boundaryManifold, int numSweeps=1) |
Make numSweeps optimization sweeps over the given boundary vertices with the quality function given as a template parameter. | |
template<int N, bool A, typename T , typename V , typename IS , int SD> | |
void | geometricOptimizeBoundaryUsingMeanRatio (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, PointsOnManifold< N, N-1, SD, T > *boundaryManifold, const int numSweeps=1) |
Optimize the position of all boundary vertices. | |
template<int N, bool A, typename T , typename V , typename IS , int SD> | |
void | geometricOptimizeBoundaryUsingConditionNumber (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, PointsOnManifold< N, N-1, SD, T > *boundaryManifold, const int numSweeps=1) |
Optimize the position of all boundary vertices. | |
template<template< int, typename > class QF, int N, bool A, typename T , typename V , typename IS , int SD> | |
void | geometricOptimize (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, PointsOnManifold< N, N-1, SD, T > *boundaryManifold, int numSweeps=1) |
Optimize the position of all vertices. | |
template<int N, bool A, typename T , typename V , typename IS , int SD> | |
void | geometricOptimizeUsingMeanRatio (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, PointsOnManifold< N, N-1, SD, T > *boundaryManifold, const int numSweeps=1) |
Optimize the position of all vertices. | |
template<int N, bool A, typename T , typename V , typename IS , int SD> | |
void | geometricOptimizeUsingConditionNumber (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, PointsOnManifold< N, N-1, SD, T > *boundaryManifold, const int numSweeps=1) |
Optimize the position of all vertices. | |
template<template< int, typename > class QF, int N, bool A, typename T , typename V , typename IS , int SD> | |
void | geometricOptimizeWithBoundaryCondition (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, PointsOnManifold< N, N-1, SD, T > *boundaryManifold, int numSweeps=1) |
Optimize the position of all vertices. | |
template<int N, bool A, typename T , typename V , typename IS , int SD> | |
void | geometricOptimizeWithBoundaryConditionUsingMeanRatio (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, PointsOnManifold< N, N-1, SD, T > *boundaryManifold, const int numSweeps=1) |
Optimize the position of all vertices. | |
template<int N, bool A, typename T , typename V , typename IS , int SD> | |
void | geometricOptimizeWithBoundaryConditionUsingConditionNumber (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, PointsOnManifold< N, N-1, SD, T > *boundaryManifold, const int numSweeps=1) |
Optimize the position of all vertices. | |
template<template< int, typename > class QF, int N, bool A, typename T , typename V , typename IS , class BoundaryCondition > | |
void | geometricOptimizeWithCondition (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, const BoundaryCondition &condition, int numSweeps=1) |
Optimize the position of all vertices. | |
template<int N, bool A, typename T , typename V , typename IS , class BoundaryCondition > | |
void | geometricOptimizeWithConditionUsingMeanRatio (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, const BoundaryCondition &condition, const int numSweeps=1) |
Optimize the position of all vertices. | |
template<int N, bool A, typename T , typename V , typename IS , class BoundaryCondition > | |
void | geometricOptimizeWithConditionUsingConditionNumber (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, const BoundaryCondition &condition, const int numSweeps=1) |
Optimize the position of all vertices. | |
template<template< int, typename > class QF, int N, bool A, typename T , typename V , typename IS > | |
void | geometricOptimize (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, const int numSweeps=1) |
Optimize the position of all vertices. | |
template<int N, bool A, typename T , typename V , typename IS > | |
void | geometricOptimizeUsingMeanRatio (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, const int numSweeps=1) |
Optimize the position of all vertices. | |
template<int N, bool A, typename T , typename V , typename IS > | |
void | geometricOptimizeUsingConditionNumber (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, const int numSweeps=1) |
Optimize the position of all vertices. | |
template<template< int, typename > class QF, int N, bool A, typename T , typename V , typename IS , typename IntForIter , int SD> | |
void | geometricOptimizeWithBoundaryCondition (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, IntForIter begin, IntForIter end, PointsOnManifold< N, N-1, SD, T > *boundaryManifold, int numSweeps=1) |
Make numSweeps optimization sweeps over the given vertices with the quality function given as a template parameter. | |
template<int N, bool A, typename T , typename V , typename IS , typename IntForIter , int SD> | |
void | geometricOptimizeWithBoundaryConditionUsingMeanRatio (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, IntForIter begin, IntForIter end, PointsOnManifold< N, N-1, SD, T > *boundaryManifold, const int numSweeps=1) |
Optimize the position of a set of vertices. | |
template<int N, bool A, typename T , typename V , typename IS , typename IntForIter , int SD> | |
void | geometricOptimizeWithBoundaryConditionUsingConditionNumber (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, IntForIter begin, IntForIter end, PointsOnManifold< N, N-1, SD, T > *boundaryManifold, const int numSweeps=1) |
Optimize the position of a set of vertices. | |
template<template< int, typename > class QF, int N, bool A, typename T , typename V , typename IS , typename IntForIter , class BoundaryCondition > | |
void | geometricOptimizeWithCondition (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, IntForIter begin, IntForIter end, const BoundaryCondition &condition, int numSweeps=1) |
Make numSweeps optimization sweeps over the given vertices with the quality function given as a template parameter. | |
template<int N, bool A, typename T , typename V , typename IS , typename IntForIter , class BoundaryCondition > | |
void | geometricOptimizeWithConditionUsingMeanRatio (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, IntForIter begin, IntForIter end, const BoundaryCondition &condition, int numSweeps=1) |
Optimize the position of a set of vertices. | |
template<int N, bool A, typename T , typename V , typename IS , typename IntForIter , class BoundaryCondition > | |
void | geometricOptimizeWithConditionUsingConditionNumber (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, IntForIter begin, IntForIter end, const BoundaryCondition &condition, const int numSweeps=1) |
Optimize the position of a set of vertices. | |
template<template< int, typename > class QF, int N, bool A, typename T , typename V , typename IS , typename IntForIter > | |
void | geometricOptimize (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, IntForIter begin, IntForIter end, const int numSweeps=1) |
Make numSweeps optimization sweeps over the given vertices with the quality function given as a template parameter. | |
template<int N, bool A, typename T , typename V , typename IS , typename IntForIter > | |
void | geometricOptimizeUsingMeanRatio (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, IntForIter begin, IntForIter end, const int numSweeps=1) |
Optimize the position of a set of vertices. | |
template<int N, bool A, typename T , typename V , typename IS , typename IntForIter > | |
void | geometricOptimizeUsingConditionNumber (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, IntForIter begin, IntForIter end, const int numSweeps=1) |
Optimize the position of a set of vertices. | |
template<template< int, typename > class QF, int N, bool A, typename T , typename V , typename IS , typename IntForIter , class BoundaryCondition > | |
void | geometricOptimizeWithConditionConstrained (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, IntForIter begin, IntForIter end, const BoundaryCondition &condition, const T maxConstraintError, int numSweeps=1) |
Make numSweeps constrained optimization sweeps over the given vertices with the quality function given as a template parameter. | |
template<int N, bool A, typename T , typename V , typename IS , typename IntForIter , class BoundaryCondition > | |
void | geometricOptimizeWithConditionConstrainedUsingMeanRatio (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, IntForIter begin, IntForIter end, const BoundaryCondition &condition, const T maxConstraintError, int numSweeps=1) |
Optimize the position of a set of vertices subject to a constant content constraint. | |
template<int N, bool A, typename T , typename V , typename IS , typename IntForIter , class BoundaryCondition > | |
void | geometricOptimizeWithConditionConstrainedUsingConditionNumber (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, IntForIter begin, IntForIter end, const BoundaryCondition &condition, const T maxConstraintError, const int numSweeps=1) |
Optimize the position of a set of vertices subject to a constant content constraint. | |
template<template< int, typename > class QF, int N, bool A, typename T , typename V , typename IS , typename IntForIter > | |
void | geometricOptimizeConstrained (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, IntForIter begin, IntForIter end, const T maxConstraintError, const int numSweeps=1) |
Make numSweeps constrained optimization sweeps over the given vertices with the quality function given as a template parameter. | |
template<int N, bool A, typename T , typename V , typename IS , typename IntForIter > | |
void | geometricOptimizeConstrainedUsingMeanRatio (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, IntForIter begin, IntForIter end, const T maxConstraintError, const int numSweeps=1) |
Optimize the position of a set of vertices subject to a constant content constraint. | |
template<int N, bool A, typename T , typename V , typename IS , typename IntForIter > | |
void | geometricOptimizeConstrainedUsingConditionNumber (IndSimpSetIncAdj< N, N, A, T, V, IS > *mesh, IntForIter begin, IntForIter end, const T maxConstraintError, const int numSweeps=1) |
Optimize the position of a set of vertices subject to a constant content constraint. |
Implements file I/O operations for IndSimpSet.