G+Smo  24.08.0
Geometry + Simulation Modules
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
gsModelingUtils.hpp File Reference

Utility functions required by gsModeling classes. More...

+ Include dependency graph for gsModelingUtils.hpp:

Go to the source code of this file.

Namespaces

 gismo
 The G+Smo namespace, containing all definitions for the library.
 

Functions

template<class T >
void addConstraints (gsMatrix< T > const &C1, gsMatrix< T > const &d1, gsMatrix< T > const &C2, gsMatrix< T > const &d2, gsMatrix< T > &C, gsMatrix< T > &d)
 addConstraints
 
template<class T >
conditionedAngle (gsVector3d< T > vec1, gsVector3d< T > vec2)
 Angle between two vector: 0 <= angle <= pi.
 
template<class T >
conditionedAngle (gsVector3d< T > vec1, gsVector3d< T > vec2, gsVector3d< T > normal)
 
template<class T >
gsMatrix< T > convert2Zero (gsMatrix< T > const &mat)
 convert a with abs(a) < eps=2.220446049250313e-16 into 0
 
template<class T >
gsVector< T > criticalPointOfQuadratic (gsMatrix< T > &A, gsMatrix< T > &C, gsVector< T > &d)
 
template<class T >
gsMatrix< T > criticalPointOfQuadratic (gsMatrix< T > const &A, gsMatrix< T > const &b, gsMatrix< T > const &C, gsMatrix< T > const &d)
 
template<class T >
gsMatrix< T > criticalPointOfQuadratic (gsMatrix< T > const &A, gsMatrix< T > const &C, gsMatrix< T > const &d)
 
template<class T >
gsMatrix< T > crossNorm2Mat (gsMatrix< T > const &mat1, gsMatrix< T > const &mat2)
 
template<class T >
gsMatrix< T > flipLR (const gsMatrix< T > &mat)
 Flip columes from left to right and vice versa.
 
template<class T >
gsBSpline< T > gsInterpolate (gsKnotVector< T > &kv, const gsMatrix< T > &preImage, const gsMatrix< T > &image, const gsMatrix< T > &preNormal, const gsMatrix< T > &normal, const gsMatrix< T > &preImageApp, const gsMatrix< T > &imageApp, T const &w_reg, T const &w_app, gsMatrix< T > &outPointResiduals, gsMatrix< T > &outNormalResiduals)
 
template<class T >
gsTensorBSpline< 2, T >::Ptr gsInterpolateSurface (const gsMatrix< T > &exactPoints, const gsMatrix< T > &exactValues, const gsMatrix< T > &appxPointsEdges, const gsMatrix< T > &appxValuesEdges, const gsMatrix< T > &appxPointsInt, const gsMatrix< T > &appxValuesInt, const gsMatrix< T > &appxNormalPoints, const gsMatrix< T > &appxNormals, T wEdge, T wInt, T wNormal, T wReg, const gsKnotVector< T > &kv1, const gsKnotVector< T > &kv2, bool force_normal)
 
template<class T >
gsMatrix< T > optQuadratic (gsMatrix< T > const &A, gsMatrix< T > const &b, gsMatrix< T > const &C, gsMatrix< T > const &d)
 Find X which solves: min (AX-b)^T (AX-b), s.t. CX=d.
 
template<class T >
gsMatrix< T > optQuadratic (gsMatrix< T > const &A1, gsMatrix< T > const &b1, T const &w1, gsMatrix< T > const &A2, gsMatrix< T > const &b2, T const &w2, gsMatrix< T > const &C, gsMatrix< T > const &d)
 Find X which solves: min w_1 (A_1 X-b_1)^T (A_1 X-b_1) + w_2 (A_2 X-b_2)^T (A_2 X-b_2), s.t. CX=d.
 
template<class T >
gsMatrix< T > optQuadratic (gsMatrix< T > const &A1, gsMatrix< T > const &b1, T const &w1, gsMatrix< T > const &A2, gsMatrix< T > const &b2, T const &w2, gsMatrix< T > const &C, gsMatrix< T > const &d, T const &w3, gsMatrix< T > const &Q)
 
template<class T >
void removeCol (gsMatrix< T > &mat, int const &removeEnds, int const &nPoints)
 remove columes 0, nPoints, 2*nPoints,.. of a given matrix
 
template<class T >
gsVector< T > vectorIntersect (gsVector< T > const &tangent1, gsVector< T > const &tangent2, gsMatrix< T > const &Vert1, gsMatrix< T > const &Vert2)
 intersection of two vectors
 

Detailed Description

Utility functions required by gsModeling classes.

This file is part of the G+Smo library.

This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.

Author(s): A. Mantzaflaris, D.-M. Nguyen, M. Pauley