Nalu
Nalu: a generalized unstructured massively parallel low Mach flow code designed to support a variety of energy applications of interest (most notably Wind ECP) built on the Sierra Toolkit and Trilinos solver Tpetra/Epetra stack. The open source BSD, clause 3 license model has been chosen for the code base. See LICENSE for more information. http://NaluCFD.org
Namespaces | Macros | Functions | Variables
UnitTestHOMasterElements.C File Reference
#include <gtest/gtest.h>
#include <limits>
#include <random>
#include <stdexcept>
#include <stk_util/parallel/Parallel.hpp>
#include <stk_mesh/base/MetaData.hpp>
#include <stk_mesh/base/BulkData.hpp>
#include <stk_mesh/base/Bucket.hpp>
#include <stk_mesh/base/GetEntities.hpp>
#include <stk_mesh/base/Field.hpp>
#include <stk_mesh/base/FieldBase.hpp>
#include <element_promotion/ElementDescription.h>
#include <master_element/MasterElementHO.h>
#include <element_promotion/QuadratureRule.h>
#include <element_promotion/LagrangeBasis.h>
#include <element_promotion/TensorProductQuadratureRule.h>
#include <element_promotion/QuadratureKernels.h>
#include "UnitTestUtils.h"

Namespaces

 anonymous_namespace{UnitTestHOMasterElements.C}
 

Macros

#define TEST_IPS(x, y, z)
 
#define TEST_POLY_SINGLE(x, y)
 

Functions

double anonymous_namespace{UnitTestHOMasterElements.C}::poly_val (std::vector< double > coeffs, double x)
 
double anonymous_namespace{UnitTestHOMasterElements.C}::poly_der (std::vector< double > coeffs, double x)
 
double anonymous_namespace{UnitTestHOMasterElements.C}::poly_int (std::vector< double > coeffs, double xlower, double xupper)
 
void anonymous_namespace{UnitTestHOMasterElements.C}::check_interpolation_quad (int polyOrder, int numIps, double tol)
 
void anonymous_namespace{UnitTestHOMasterElements.C}::check_interpolation_hex (int polyOrder, int numIps, double tol)
 
void anonymous_namespace{UnitTestHOMasterElements.C}::check_derivative_quad (int polyOrder, int numIps, double tol)
 
void anonymous_namespace{UnitTestHOMasterElements.C}::check_derivative_hex (int polyOrder, int numIps, double tol)
 
void anonymous_namespace{UnitTestHOMasterElements.C}::check_volume_quadrature_quad (int polyOrder, double tol)
 
void anonymous_namespace{UnitTestHOMasterElements.C}::check_volume_quadrature_hex (int polyOrder, double tol)
 
void anonymous_namespace{UnitTestHOMasterElements.C}::check_volume_quadrature_quad_SGL (int polyOrder, double tol)
 
void anonymous_namespace{UnitTestHOMasterElements.C}::check_volume_quadrature_hex_SGL (int polyOrder, double tol)
 
double anonymous_namespace{UnitTestHOMasterElements.C}::linear_scalar_value (int dim, double a, const double *b, const double *x)
 
void anonymous_namespace{UnitTestHOMasterElements.C}::check_is_in_element_hex (int poly_order, double tol)
 
void anonymous_namespace{UnitTestHOMasterElements.C}::check_is_not_in_element_hex (int poly_order, double tol)
 
void anonymous_namespace{UnitTestHOMasterElements.C}::check_point_interpolation_hex (int poly_order, double tol)
 
void anonymous_namespace{UnitTestHOMasterElements.C}::check_is_in_element_quad (int poly_order, double tol)
 
void anonymous_namespace{UnitTestHOMasterElements.C}::check_is_not_in_element_quad (int poly_order, double tol)
 
void anonymous_namespace{UnitTestHOMasterElements.C}::check_point_interpolation_quad (int poly_order, double tol)
 
 TEST_IPS (check_interpolation_quad, 10, 1.0e-10)
 
 TEST_IPS (check_interpolation_hex, 10, 1.0e-10)
 
 TEST_IPS (check_derivative_quad, 10, 1.0e-10)
 
 TEST_IPS (check_derivative_hex, 10, 1.0e-10)
 
 TEST_POLY_SINGLE (check_volume_quadrature_quad, 1.0e-10)
 
 TEST_POLY_SINGLE (check_volume_quadrature_hex, 1.0e-10)
 
 TEST_POLY_SINGLE (check_volume_quadrature_quad_SGL, 1.0e-10)
 
 TEST_POLY_SINGLE (check_volume_quadrature_hex_SGL, 1.0e-10)
 
 TEST_POLY_SINGLE (check_is_in_element_quad, 1.0e-10)
 
 TEST_POLY_SINGLE (check_is_in_element_hex, 1.0e-10)
 
 TEST_POLY_SINGLE (check_is_not_in_element_quad, 1.0e-10)
 
 TEST_POLY_SINGLE (check_is_not_in_element_hex, 1.0e-10)
 
 TEST_POLY_SINGLE (check_point_interpolation_quad, 1.0e-8)
 
 TEST_POLY_SINGLE (check_point_interpolation_hex, 1.0e-8)
 

Variables

constexpr int MAX_POLY_ORDER = 5
 

Macro Definition Documentation

#define TEST_IPS (   x,
  y,
 
)
Value:
TEST(HOMasterElements, x) \
{ \
for (int p = 1; p < MAX_POLY_ORDER + 1; ++p) { \
x(p, y, z); \
} \
}
constexpr int MAX_POLY_ORDER
Definition: UnitTestHOMasterElements.C:892
TEST(Basic, CheckCoords1Elem)
Definition: UnitTest1ElemCoordCheck.C:57
#define TEST_POLY_SINGLE (   x,
 
)
Value:
TEST(HOMasterElements, x) \
{ \
for (int p = 1; p < MAX_POLY_ORDER + 1; ++p) { \
x(p, y); \
} \
}
constexpr int MAX_POLY_ORDER
Definition: UnitTestHOMasterElements.C:892
TEST(Basic, CheckCoords1Elem)
Definition: UnitTest1ElemCoordCheck.C:57

Function Documentation

TEST_IPS ( check_interpolation_quad  ,
10  ,
1.0e-  10 
)
TEST_IPS ( check_interpolation_hex  ,
10  ,
1.0e-  10 
)
TEST_IPS ( check_derivative_quad  ,
10  ,
1.0e-  10 
)
TEST_IPS ( check_derivative_hex  ,
10  ,
1.0e-  10 
)
TEST_POLY_SINGLE ( check_volume_quadrature_quad  ,
1.0e-  10 
)
TEST_POLY_SINGLE ( check_volume_quadrature_hex  ,
1.0e-  10 
)
TEST_POLY_SINGLE ( check_volume_quadrature_quad_SGL  ,
1.0e-  10 
)
TEST_POLY_SINGLE ( check_volume_quadrature_hex_SGL  ,
1.0e-  10 
)
TEST_POLY_SINGLE ( check_is_in_element_quad  ,
1.0e-  10 
)
TEST_POLY_SINGLE ( check_is_in_element_hex  ,
1.0e-  10 
)
TEST_POLY_SINGLE ( check_is_not_in_element_quad  ,
1.0e-  10 
)
TEST_POLY_SINGLE ( check_is_not_in_element_hex  ,
1.0e-  10 
)
TEST_POLY_SINGLE ( check_point_interpolation_quad  ,
1.0e-  8 
)
TEST_POLY_SINGLE ( check_point_interpolation_hex  ,
1.0e-  8 
)

Variable Documentation

constexpr int MAX_POLY_ORDER = 5