28 class FiniteElementState;
29 class FiniteElementDual;
57 const std::vector<ConstFieldPtr>& fields,
58 const std::vector<ConstQuadratureFieldPtr>& quad_fields = {},
59 int block_row = 0)
const = 0;
75 const std::vector<ConstFieldPtr>& fields,
76 const std::vector<double>& field_argument_tangents,
77 const std::vector<ConstQuadratureFieldPtr>& quad_fields = {},
78 int block_row = 0)
const = 0;
93 virtual void jvp(
double time,
double dt,
ConstFieldPtr shape_disp,
const std::vector<ConstFieldPtr>& fields,
94 const std::vector<ConstQuadratureFieldPtr>& quad_fields,
ConstFieldPtr v_shape_disp,
95 const std::vector<ConstFieldPtr>& v_fields,
96 const std::vector<ConstQuadratureFieldPtr>& v_quad_fields,
97 const std::vector<DualFieldPtr>& jvp_reactions)
const = 0;
112 virtual void vjp(
double time,
double dt,
ConstFieldPtr shape_disp,
const std::vector<ConstFieldPtr>& fields,
113 const std::vector<ConstQuadratureFieldPtr>& quad_fields,
const std::vector<ConstFieldPtr>& v_fields,
114 DualFieldPtr vjp_shape_disp_sensitivity,
const std::vector<DualFieldPtr>& vjp_sensitivities,
115 const std::vector<QuadratureFieldPtr>& vjp_quadrature_sensivities)
const = 0;
118 std::string
name()
const {
return name_; }
Class for encapsulating the dual vector space of a finite element space (i.e. the space of linear for...
A file defining some enums and structs that are used by the different physics modules.
Defines common types and helper functions for using the residual and scalar_objective classes.
Accelerator functionality.
FiniteElementState const * ConstFieldPtr
using
double QuadratureField
This is a placeholder for quadrature fields.
double * QuadratureFieldPtr
This is a placeholder for quadrature field pointers.
const double * ConstQuadratureFieldPtr
This is a placeholder for quadrature field pointers.