34 template <
class TPrimalElement>
43 explicit ThisExtensions(
Element* pElement);
47 std::size_t Step)
override;
51 std::size_t Step)
override;
53 void GetAuxiliaryVector(std::size_t NodeId,
55 std::size_t Step)
override;
57 void GetFirstDerivativesVariables(std::vector<VariableData const*>& rVariables)
const override;
59 void GetSecondDerivativesVariables(std::vector<VariableData const*>& rVariables)
const override;
61 void GetAuxiliaryVariables(std::vector<VariableData const*>& rVariables)
const override;
79 GeometryType::Pointer pGeometry,
80 PropertiesType::Pointer pProperties);
88 PropertiesType::Pointer pProperties)
const override;
91 GeometryType::Pointer pGeom,
92 PropertiesType::Pointer pProperties)
const override;
116 const ProcessInfo& rCurrentProcessInfo)
const override;
134 TPrimalElement mPrimalElement;
145 void save(
Serializer& rSerializer)
const override
148 rSerializer.
save(
"mPrimalElement", mPrimalElement);
154 rSerializer.
load(
"mPrimalElement", mPrimalElement);
Interface extensions for adjoint elements and conditions.
Definition: adjoint_extensions.h:37
A template class for creating adjoint elements for solids.
Definition: adjoint_solid_element.h:37
AdjointSolidElement(IndexType NewId=0)
Definition: adjoint_solid_element.cpp:113
void Initialize(const ProcessInfo &rCurrentProcessInfo) override
Definition: adjoint_solid_element.cpp:151
void CalculateSecondDerivativesLHS(MatrixType &rLeftHandSideMatrix, const ProcessInfo &rCurrentProcessInfo) override
Definition: adjoint_solid_element.cpp:212
void GetValuesVector(Vector &rValues, int Step=0) const override
Definition: adjoint_solid_element.cpp:222
void CalculateSensitivityMatrix(const Variable< array_1d< double, 3 >> &rDesignVariable, Matrix &rOutput, const ProcessInfo &rCurrentProcessInfo) override
Definition: adjoint_solid_element.cpp:326
KRATOS_CLASS_INTRUSIVE_POINTER_DEFINITION(AdjointSolidElement)
void GetDofList(DofsVectorType &rElementalDofList, const ProcessInfo &rCurrentProcessInfo) const override
Definition: adjoint_solid_element.cpp:281
int Check(const ProcessInfo &rCurrentProcessInfo) const override
Definition: adjoint_solid_element.cpp:312
void FinalizeNonLinearIteration(const ProcessInfo &rCurrentProcessInfo) override
Definition: adjoint_solid_element.cpp:176
void FinalizeSolutionStep(const ProcessInfo &rCurrentProcessInfo) override
Definition: adjoint_solid_element.cpp:184
void EquationIdVector(EquationIdVectorType &rResult, const ProcessInfo &rCurrentProcessInfo) const override
Definition: adjoint_solid_element.cpp:242
void InitializeSolutionStep(const ProcessInfo &rCurrentProcessInfo) override
Definition: adjoint_solid_element.cpp:160
Element::Pointer Create(IndexType NewId, NodesArrayType const &ThisNodes, PropertiesType::Pointer pProperties) const override
It creates a new element pointer.
Definition: adjoint_solid_element.cpp:134
void CalculateLeftHandSide(MatrixType &rLeftHandSideMatrix, const ProcessInfo &rCurrentProcessInfo) override
Definition: adjoint_solid_element.cpp:192
void InitializeNonLinearIteration(const ProcessInfo &rCurrentProcessInfo) override
Definition: adjoint_solid_element.cpp:168
void CalculateFirstDerivativesLHS(MatrixType &rLeftHandSideMatrix, const ProcessInfo &rCurrentProcessInfo) override
Definition: adjoint_solid_element.cpp:202
Base class for all Elements.
Definition: element.h:60
virtual void GetFirstDerivativesVector(Vector &values, int Step=0) const
Definition: element.h:310
std::vector< DofType::Pointer > DofsVectorType
Definition: element.h:100
virtual void GetSecondDerivativesVector(Vector &values, int Step=0) const
Definition: element.h:320
std::vector< std::size_t > EquationIdVectorType
Definition: element.h:98
std::size_t IndexType
Definition: flags.h:74
Wrapper for a function which behaves like an arithmetic type.
Definition: indirect_scalar.h:45
PointerVector is a container like stl vector but using a vector to store pointers to its data.
Definition: pointer_vector.h:72
ProcessInfo holds the current value of different solution parameters.
Definition: process_info.h:59
The serialization consists in storing the state of an object into a storage format like data file or ...
Definition: serializer.h:123
void load(std::string const &rTag, TDataType &rObject)
Definition: serializer.h:207
void save(std::string const &rTag, std::array< TDataType, TDataSize > const &rObject)
Definition: serializer.h:545
Variable class contains all information needed to store and retrive data from a data container.
Definition: variable.h:63
#define KRATOS_SERIALIZE_SAVE_BASE_CLASS(Serializer, BaseType)
Definition: define.h:812
#define KRATOS_SERIALIZE_LOAD_BASE_CLASS(Serializer, BaseType)
Definition: define.h:815
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
def load(f)
Definition: ode_solve.py:307