MAST
Multidisciplinary-design Adaptation and Sensitivity Toolkit (MAST)
TEST Namespace Reference

Classes

class  TestMeshSingleElement
 Storage class for a mesh consisting of a single element used in testing. More...
 
class  TestStructuralSingleElement1D
 
class  TestStructuralSingleElement2D
 

Functions

void approximate_inertial_jacobian_with_finite_difference (MAST::StructuralElementBase &elem, const RealVectorX &initial_elem_solution, RealMatrixX &jacobian)
 Approximates the inertial jacobian using a 6th order accurate central finite difference scheme. More...
 
void approximate_internal_jacobian_with_finite_difference (MAST::StructuralElementBase &elem, const RealVectorX &initial_elem_solution, RealMatrixX &jacobian)
 Approximates the internal Jacobian of an element using a 6th order accurate central finite difference scheme. More...
 
void approximate_side_external_jacobian_with_finite_difference (MAST::StructuralElementBase &elem, MAST::PhysicsDisciplineBase &discipline, const RealVectorX &initial_elem_solution, RealMatrixX &jacobian)
 Approximates the side external jacobian using a 4th order accurate central finite difference scheme. More...
 
void approximate_thermal_jacobian_with_finite_difference (MAST::StructuralElementBase &elem, const RealVectorX &initial_elem_solution, RealMatrixX &jacobian, MAST::BoundaryConditionBase &thermal_bc)
 Approximates the thermal jacobian using a 6th order accurate central finite difference scheme. More...
 
void approximate_volume_external_jacobian_with_finite_difference (MAST::StructuralElementBase &elem, MAST::PhysicsDisciplineBase &discipline, const RealVectorX &initial_elem_solution, RealMatrixX &jacobian)
 Approximates the volume external jacobian using a 4th order accurate central finite difference scheme. More...
 
std::vector< double > eigen_matrix_to_std_vector (RealMatrixX M)
 Converts an Eigen Matrix object to a std::vector. More...
 
Real get_shoelace_area (RealMatrixX X)
 Calcualtes the area of a 2D polygon using the shoelace formula. More...
 
void transform_element (libMesh::MeshBase &mesh, const RealMatrixX X0, Real shift_x, Real shift_y, Real shift_z, Real scale_x, Real scale_y, Real rotation_x, Real rotation_y, Real rotation_z, Real shear_x=0, Real shear_y=0)
 Transform an element by applying any combination of: shifts, scales, rotations, and shears. More...
 

Function Documentation

◆ approximate_inertial_jacobian_with_finite_difference()

void TEST::approximate_inertial_jacobian_with_finite_difference ( MAST::StructuralElementBase elem,
const RealVectorX initial_elem_solution,
RealMatrixX jacobian 
)

Approximates the inertial jacobian using a 6th order accurate central finite difference scheme.

Definition at line 192 of file test_helpers.cpp.

◆ approximate_internal_jacobian_with_finite_difference()

void TEST::approximate_internal_jacobian_with_finite_difference ( MAST::StructuralElementBase elem,
const RealVectorX initial_elem_solution,
RealMatrixX jacobian 
)

Approximates the internal Jacobian of an element using a 6th order accurate central finite difference scheme.

Definition at line 53 of file test_helpers.cpp.

◆ approximate_side_external_jacobian_with_finite_difference()

void TEST::approximate_side_external_jacobian_with_finite_difference ( MAST::StructuralElementBase elem,
MAST::PhysicsDisciplineBase discipline,
const RealVectorX initial_elem_solution,
RealMatrixX jacobian 
)

Approximates the side external jacobian using a 4th order accurate central finite difference scheme.

Definition at line 108 of file test_helpers.cpp.

◆ approximate_thermal_jacobian_with_finite_difference()

void TEST::approximate_thermal_jacobian_with_finite_difference ( MAST::StructuralElementBase elem,
const RealVectorX initial_elem_solution,
RealMatrixX jacobian,
MAST::BoundaryConditionBase thermal_bc 
)

Approximates the thermal jacobian using a 6th order accurate central finite difference scheme.

Definition at line 247 of file test_helpers.cpp.

◆ approximate_volume_external_jacobian_with_finite_difference()

void TEST::approximate_volume_external_jacobian_with_finite_difference ( MAST::StructuralElementBase elem,
MAST::PhysicsDisciplineBase discipline,
const RealVectorX initial_elem_solution,
RealMatrixX jacobian 
)

Approximates the volume external jacobian using a 4th order accurate central finite difference scheme.

Definition at line 150 of file test_helpers.cpp.

◆ eigen_matrix_to_std_vector()

std::vector< double > TEST::eigen_matrix_to_std_vector ( RealMatrixX  M)

Converts an Eigen Matrix object to a std::vector.

Useful for performing elementwise comparisons in Catch2 tests.

Definition at line 33 of file test_helpers.cpp.

◆ get_shoelace_area()

Real TEST::get_shoelace_area ( RealMatrixX  X)

Calcualtes the area of a 2D polygon using the shoelace formula.

Definition at line 39 of file test_helpers.cpp.

◆ transform_element()

void TEST::transform_element ( libMesh::MeshBase &  mesh,
const RealMatrixX  X0,
Real  shift_x,
Real  shift_y,
Real  shift_z,
Real  scale_x,
Real  scale_y,
Real  rotation_x,
Real  rotation_y,
Real  rotation_z,
Real  shear_x = 0,
Real  shear_y = 0 
)

Transform an element by applying any combination of: shifts, scales, rotations, and shears.

Useful for testing elements of different geometries and in different orientations.

Definition at line 303 of file test_helpers.cpp.