SCOREC core
Parallel unstructured mesh tools
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
crvQuality.h
Go to the documentation of this file.
1 /*
2  * Copyright 2015 Scientific Computation Research Center
3  *
4  * This work is open source software, licensed under the terms of the
5  * BSD license as described in the LICENSE file in the top-level directory.
6  */
7 
8 #ifndef CRVQUALITY_H
9 #define CRVQUALITY_H
10 
11 #include "crv.h"
12 #include <apf.h>
13 #include <pcu_util.h>
14 
18 namespace crv {
19 
22 void subdivideBezierEntityJacobianDet(int P, int type,
23  apf::NewArray<double>& c, apf::NewArray<double>& nodes,
24  apf::NewArray<double> *subNodes);
28  apf::NewArray<double>& c);
29 
31 typedef void (*SubdivisionFunction)(int P,
32  apf::NewArray<double>& nodes,
33  apf::NewArray<double> *subNodes);
36 
38 void elevateBezierJacobianDet(int type, int P, int r,
39  apf::NewArray<double>& nodes,
40  apf::NewArray<double>& elevatedNodes);
41 }
42 
43 #endif
The APF Field interface.
placeholder to set array sizes
Definition: apfMesh.h:166
void getBezierJacobianDetSubdivisionCoefficients(int P, int type, apf::NewArray< double > &c)
get matrices used for uniform subdivision, 2^dim matrices, unrolled into a double ...
const SubdivisionFunction subdivideBezierJacobianDet[apf::Mesh::TYPES]
table of jacobian det subdivision functions
void(* SubdivisionFunction)(int P, apf::NewArray< double > &nodes, apf::NewArray< double > *subNodes)
typedef for table of jacobian det subdivision functions
Definition: crvQuality.h:31
void subdivideBezierEntityJacobianDet(int P, int type, apf::NewArray< double > &c, apf::NewArray< double > &nodes, apf::NewArray< double > *subNodes)
subdivide jacobian det using subdivision matrices
void elevateBezierJacobianDet(int type, int P, int r, apf::NewArray< double > &nodes, apf::NewArray< double > &elevatedNodes)
elevate jacobian det to higher order, used in getQuality
main file for curved element support