Revision 2189c193605fd58d277e5d07efb04c0e1c0882b5 authored by Lars Bilke on 11 April 2023, 11:46:45 UTC, committed by Lars Bilke on 11 April 2023, 11:46:45 UTC
Added generic numerical differentiation algorithm

See merge request ogs/ogs!4522
2 parent s 91cb9ac + 0f755a1
Raw File
IntegrationPointData.h
/**
 * \file
 * \copyright
 * Copyright (c) 2012-2023, OpenGeoSys Community (http://www.opengeosys.org)
 *            Distributed under a Modified BSD License.
 *              See accompanying file LICENSE.txt or
 *              http://www.opengeosys.org/project/license
 *
 */

#pragma once

#include <limits>
#include <memory>

#include "MaterialLib/MPL/VariableType.h"
#include "MaterialLib/SolidModels/LinearElasticIsotropic.h"
#include "MathLib/KelvinVector.h"
#include "MathLib/LinAlg/Eigen/EigenMapTools.h"

namespace ProcessLib
{
namespace ThermoRichardsMechanics
{
template <typename ShapeMatrixTypeDisplacement,
          typename ShapeMatricesTypePressure, int DisplacementDim, int NPoints>
struct IntegrationPointData final
{
    typename ShapeMatrixTypeDisplacement::NodalRowVectorType N_u;
    typename ShapeMatrixTypeDisplacement::GlobalDimNodalMatrixType dNdx_u;

    typename ShapeMatricesTypePressure::NodalRowVectorType N_p;
    typename ShapeMatricesTypePressure::GlobalDimNodalMatrixType dNdx_p;

    double integration_weight = std::numeric_limits<double>::quiet_NaN();
};

}  // namespace ThermoRichardsMechanics
}  // namespace ProcessLib
back to top