Skip to content
Snippets Groups Projects
Commit c2f99284 authored by Sebastien Blaise's avatar Sebastien Blaise
Browse files

condNumBasis: fix for pyramidal elements: condNumBasis for MSH_PYR_5 uses more than one node

parent 1f4df0c2
No related branches found
No related tags found
No related merge requests found
...@@ -316,17 +316,16 @@ CondNumBasis::CondNumBasis(int tag, int cnOrder) : ...@@ -316,17 +316,16 @@ CondNumBasis::CondNumBasis(int tag, int cnOrder) :
_condNumOrder(cnOrder >= 0 ? cnOrder : condNumOrder(tag)) _condNumOrder(cnOrder >= 0 ? cnOrder : condNumOrder(tag))
{ {
const bool serendip = false; const bool serendip = false;
FuncSpaceData data(true, tag, _condNumOrder, &serendip);
FuncSpaceData data = ( ElementType::ParentTypeFromTag(tag) == TYPE_PYR )? FuncSpaceData(true, tag, true, _condNumOrder+2, _condNumOrder, &serendip) : FuncSpaceData(true, tag, _condNumOrder, &serendip);
_gradBasis = BasisFactory::getGradientBasis(data); _gradBasis = BasisFactory::getGradientBasis(data);
fullMatrix<double> lagPoints; // Sampling points fullMatrix<double> lagPoints; // Sampling points
gmshGeneratePoints(data, lagPoints); gmshGeneratePoints(data, lagPoints);
_nCondNumNodes = lagPoints.size1(); _nCondNumNodes = lagPoints.size1();
_nMapNodes = BasisFactory::getNodalBasis(tag)->getNumShapeFunctions(); _nMapNodes = BasisFactory::getNodalBasis(tag)->getNumShapeFunctions();
// Store shape function gradients of mapping at condition number nodes // Store shape function gradients of mapping at condition number nodes
_gradBasis = BasisFactory::getGradientBasis(tag, _condNumOrder); _gradBasis = BasisFactory::getGradientBasis(data);
// Compute shape function gradients of primary mapping at barycenter, // Compute shape function gradients of primary mapping at barycenter,
// in order to compute normal to straight element // in order to compute normal to straight element
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment