rsvs3D
0.0.0
Codes for the c++ implementation of the 3D RSVS
|
Provides internal tools for RSVS calc. More...
#include <Eigen>
#include <vector>
#include "arraystructures.hpp"
#include "mesh.hpp"
#include "vectorarray.hpp"
Go to the source code of this file.
Functions | |
grid::coordlist | TrianglePointerCoordinates (const triangle &triIn, const triangulation &triRSVS) |
Get all the coordinates needed to define a triangle. More... | |
HashedVector< int, int > | TriangleActiveDesignVariables (const triangle &triIn, const triangulation &triRSVS, const HashedVector< int, int > &objDvMap, bool useSurfCentreDeriv=true) |
Get the active design variables defined by a triangle object. More... | |
void | TrianglePositionDerivatives (const triangle &triIn, const triangulation &triRSVS, const HashedVector< int, int > &dvListMap, Eigen::MatrixXd &dPos, Eigen::MatrixXd &HPos, bool useSurfCentreDeriv=true, bool useSurfCentreHessian=false) |
Calculate the positional derivatives of a triangle object. More... | |
void | AssignConstraintDerivativesFullMath (RSVScalc &calc, const triangle &triIn, const HashedVector< int, int > &dvListMap, const Eigen::MatrixXd &dConstrPart, const Eigen::MatrixXd &HConstrPart, int constrPos, int cellTarg) |
void | AssignConstraintDerivativesSparseMath (RSVScalc &calc, const triangle &triIn, const HashedVector< int, int > &dvListMap, const Eigen::MatrixXd &dConstrPart, const Eigen::MatrixXd &HConstrPart, int constrPos, int cellTarg) |
Provides internal tools for RSVS calc.
Definition in file RSVScalctools.hpp.
HashedVector<int, int> TriangleActiveDesignVariables | ( | const triangle & | triIn, |
const triangulation & | triRSVS, | ||
const HashedVector< int, int > & | objDvMap, | ||
bool | useSurfCentreDeriv = true |
||
) |
Get the active design variables defined by a triangle object.
[in] | triIn | The triangle object. |
[in] | triRSVS | The triangulation containing the triangle. |
[in] | objDvMap | The calculation (RSVScalc) object's design variable map. |
[in] | useSurfCentreDeriv | The Use the surface centroid derivative in the calculation of dPos and HPos. |
Definition at line 43 of file RSVScalctools.cpp.
grid::coordlist TrianglePointerCoordinates | ( | const triangle & | triIn, |
const triangulation & | triRSVS | ||
) |
Get all the coordinates needed to define a triangle.
[in] | triIn | The triangle object to be analysed. |
[in] | triRSVS | The triangulation object containing the triangle. |
Definition at line 18 of file RSVScalctools.cpp.
void TrianglePositionDerivatives | ( | const triangle & | triIn, |
const triangulation & | triRSVS, | ||
const HashedVector< int, int > & | dvListMap, | ||
Eigen::MatrixXd & | dPos, | ||
Eigen::MatrixXd & | HPos, | ||
bool | useSurfCentreDeriv = true , |
||
bool | useSurfCentreHessian = false |
||
) |
Calculate the positional derivatives of a triangle object.
This computes the partial derivatives $\frac{\partial coord}{\partial d}$ derivatives of snaxels and pseudo-centroids.
[in] | triIn | The triangle for which the quantities need to be computed. |
[in] | triRSVS | The triangulation object from which this object is part. |
[in] | dvListMap | A hashed vector containing a list of active design variables in the otriangle object as defined by function TriangeActiveDesignVariables(). |
dPos | The jacobian of the position derivatives. | |
HPos | The Hessian of the position derivatives. | |
[in] | useSurfCentreDeriv | The Use the surface centroid derivative in the calculation of dPos and HPos. |