MFEM v4.7.0
Finite element discretization library
Loading...
Searching...
No Matches
elasticity_gradient_operator.hpp
Go to the documentation of this file.
1// Copyright (c) 2010-2024, Lawrence Livermore National Security, LLC. Produced
2// at the Lawrence Livermore National Laboratory. All Rights reserved. See files
3// LICENSE and NOTICE for details. LLNL-CODE-806117.
4//
5// This file is part of the MFEM library. For more information and source code
6// availability visit https://mfem.org.
7//
8// MFEM is free software; you can redistribute it and/or modify it under the
9// terms of the BSD-3 license. We welcome feedback and contributions, see file
10// CONTRIBUTING.md for details.
11
12#ifndef MFEM_ELASTICITY_GRADIENT_OP_HPP
13#define MFEM_ELASTICITY_GRADIENT_OP_HPP
14
16#include "../materials/gradient_type.hpp"
17
18namespace mfem
19{
20/**
21 * @brief ElasticityGradientOperator is a wrapper class to pass
22 * ElasticityOperator::AssembleGradientDiagonal and
23 * ElasticityOperator::GradientMult as a separate object through NewtonSolver.
24 */
26{
27public:
29
30 void AssembleGradientDiagonal(Vector &Ke_diag, Vector &K_diag_local,
31 Vector &K_diag) const;
32
33 void Mult(const Vector &x, Vector &y) const override;
34
36};
37
38} // namespace mfem
39
40#endif
ElasticityGradientOperator is a wrapper class to pass ElasticityOperator::AssembleGradientDiagonal an...
void AssembleGradientDiagonal(Vector &Ke_diag, Vector &K_diag_local, Vector &K_diag) const
void Mult(const Vector &x, Vector &y) const override
Operator application: y=A(x).
Abstract operator.
Definition: operator.hpp:25
Vector data type.
Definition: vector.hpp:80