swh:1:snp:f521c49ab17ef7db6ec70b2430e1ed203f50383f
Raw File
Tip revision: 086f90d82a89e7bf501316972c8111d253384fca authored by Lars Bilke on 07 July 2021, 07:34:39 UTC
Merge branch 'qt-via-aqt' into 'master'
Tip revision: 086f90d
DirichletBoundaryConditionAuxiliaryFunctions.h
/**
 * \file
 * \copyright
 * Copyright (c) 2012-2021, OpenGeoSys Community (http://www.opengeosys.org)
 *            Distributed under a Modified BSD License.
 *              See accompanying file LICENSE.txt or
 *              http://www.opengeosys.org/project/license
 *
 * \brief
 *  Defines functions that are shared by DirichletBoundaryCondition
 *  and DirichletBoundaryConditionWithinTimeInterval, which avoid the way of
 *  inheritance for reducing source code duplication.
 *
 * File:   DirichletBoundaryConditionAuxiliaryFunctions.h
 *
 * Created on November 28, 2018, 11:26 AM
 */
#pragma once

#include <vector>
#include "MathLib/LinAlg/GlobalMatrixVectorTypes.h"

namespace MeshLib
{
class Mesh;
class Node;
}

namespace NumLib
{
class LocalToGlobalIndexMap;
template <typename>
struct IndexValueVector;
}

namespace ParameterLib
{
template <typename T>
struct Parameter;
}

namespace ProcessLib
{
void checkParametersOfDirichletBoundaryCondition(
    MeshLib::Mesh const& bc_mesh,
    NumLib::LocalToGlobalIndexMap const& dof_table_bulk,
    int const variable_id,
    int const component_id);

void getEssentialBCValuesLocal(
    ParameterLib::Parameter<double> const& parameter,
    MeshLib::Mesh const& bc_mesh,
    std::vector<MeshLib::Node*> const& nodes_in_bc_mesh,
    NumLib::LocalToGlobalIndexMap const& dof_table_boundary,
    int const variable_id, int const component_id, const double t,
    GlobalVector const& x,
    NumLib::IndexValueVector<GlobalIndexType>& bc_values);
}  // namespace ProcessLib
back to top