Smith  0.1
Smith is an implicit thermal structural mechanics simulation code.
Classes | Namespaces | Functions
shape_aware_functional.hpp File Reference

Wrapper of smith::Functional for evaluating integrals and derivatives of quantities with shape displacement fields. More...

#include "smith/infrastructure/accelerator.hpp"
#include "smith/numerics/functional/functional.hpp"
Include dependency graph for shape_aware_functional.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  smith::detail::ShapeCorrection< dim, shape_type >
 A helper struct that contains the appropriate parent-to-physical and physical-to-parent transformations for an applied shape field. More...
 
class  smith::ShapeAwareFunctional< shape, test(trials...), exec >
 This is a small wrapper around smith::Functional for shape-displaced domains of integration. More...
 
struct  smith::ShapeAwareFunctional< shape, test(trials...), exec >::ShapeAwareIntegrandWrapper< Integrand, dim, args >
 Functor representing a shape-aware integrand. Used instead of an extended generic lambda for compatibility with NVCC. More...
 
struct  smith::ShapeAwareFunctional< shape, test(trials...), exec >::ShapeAwareIntegrandWrapperWithState< Integrand, dim, args >
 Functor representing a shape-aware integrand with state. Used instead of an extended generic lambda for compatibility with NVCC. More...
 
struct  smith::ShapeAwareFunctional< shape, test(trials...), exec >::ShapeAwareInteriorBoundaryIntegrandWrapper< test_type, Integrand, dim, args >
 Functor representing a shape-aware integrand. Used instead of an extended generic lambda for compatibility with NVCC. More...
 
struct  smith::ShapeAwareFunctional< shape, test(trials...), exec >::ShapeAwareInteriorBoundaryIntegrandWrapper< double, Integrand, dim, args... >
 Functor representing a shape-aware integrand. Used instead of an extended generic lambda for compatibility with NVCC. More...
 
struct  smith::ShapeAwareFunctional< shape, test(trials...), exec >::ShapeAwareBoundaryIntegrandWrapper< Integrand, dim, args >
 Functor representing a shape-aware integrand. Used instead of an extended generic lambda for compatibility with NVCC. More...
 

Namespaces

 smith
 Accelerator functionality.
 
 smith::detail
 Internal solid mechanics builder after coupling fields are assembled.
 

Functions

template<typename position_type , typename shape_type >
SMITH_HOST_DEVICE auto smith::detail::compute_boundary_area_correction (const position_type &X, const shape_type &shape)
 Compute the boundary area correction term for boundary integrals with a shape displacement field. More...
 
template<typename lambda , typename coord_type , typename shape_type , typename space_types , typename trial_types , typename correction_type , int... i>
SMITH_HOST_DEVICE auto smith::detail::apply_shape_aware_qf_helper (const lambda &qf, double t, const coord_type &position, const shape_type &shape, const space_types &space_tuple, const trial_types &arg_tuple, const correction_type &correction, std::integer_sequence< int, i... >)
 A helper function to modify all of the trial function input derivatives according to the given shape displacement for integrands without state variables. More...
 
template<typename lambda , typename coord_type , typename state_type , typename shape_type , typename space_types , typename trial_types , typename correction_type , int... i>
SMITH_HOST_DEVICE auto smith::detail::apply_shape_aware_qf_helper_with_state (const lambda &qf, double t, const coord_type &position, state_type &state, const shape_type &shape, const space_types &space_tuple, const trial_types &arg_tuple, const correction_type &correction, std::integer_sequence< int, i... >)
 A helper function to modify all of the trial function input derivatives according to the given shape displacement for integrands without state variables. More...
 

Detailed Description

Wrapper of smith::Functional for evaluating integrals and derivatives of quantities with shape displacement fields.

Definition in file shape_aware_functional.hpp.