OGS
ThermoRichardsFlow/LocalAssemblerInterface.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) OpenGeoSys Community (opengeosys.org)
2// SPDX-License-Identifier: BSD-3-Clause
3
4#pragma once
5
6#include <vector>
7
10
11namespace ProcessLib
12{
13namespace ThermoRichardsFlow
14{
17{
18 virtual std::size_t setIPDataInitialConditions(
19 std::string_view const name, double const* values,
20 int const integration_order) = 0;
21
22 virtual std::vector<double> const& getIntPtDarcyVelocity(
23 const double t,
24 std::vector<GlobalVector*> const& x,
25 std::vector<NumLib::LocalToGlobalIndexMap const*> const& dof_table,
26 std::vector<double>& cache) const = 0;
27
28 virtual std::vector<double> getSaturation() const = 0;
29 virtual std::vector<double> const& getIntPtSaturation(
30 const double t,
31 std::vector<GlobalVector*> const& x,
32 std::vector<NumLib::LocalToGlobalIndexMap const*> const& dof_table,
33 std::vector<double>& cache) const = 0;
34
35 virtual std::vector<double> getPorosity() const = 0;
36 virtual std::vector<double> const& getIntPtPorosity(
37 const double t,
38 std::vector<GlobalVector*> const& x,
39 std::vector<NumLib::LocalToGlobalIndexMap const*> const& dof_table,
40 std::vector<double>& cache) const = 0;
41
42 virtual std::vector<double> const& getIntPtDryDensitySolid(
43 const double t,
44 std::vector<GlobalVector*> const& x,
45 std::vector<NumLib::LocalToGlobalIndexMap const*> const& dof_table,
46 std::vector<double>& cache) const = 0;
47
48 // TODO move to NumLib::ExtrapolatableElement
49 virtual unsigned getNumberOfIntegrationPoints() const = 0;
50};
51} // namespace ThermoRichardsFlow
52} // namespace ProcessLib
virtual std::vector< double > const & getIntPtSaturation(const double t, std::vector< GlobalVector * > const &x, std::vector< NumLib::LocalToGlobalIndexMap const * > const &dof_table, std::vector< double > &cache) const =0
virtual std::size_t setIPDataInitialConditions(std::string_view const name, double const *values, int const integration_order)=0
virtual std::vector< double > const & getIntPtDarcyVelocity(const double t, std::vector< GlobalVector * > const &x, std::vector< NumLib::LocalToGlobalIndexMap const * > const &dof_table, std::vector< double > &cache) const =0
virtual std::vector< double > const & getIntPtDryDensitySolid(const double t, std::vector< GlobalVector * > const &x, std::vector< NumLib::LocalToGlobalIndexMap const * > const &dof_table, std::vector< double > &cache) const =0
virtual std::vector< double > getSaturation() const =0
virtual std::vector< double > getPorosity() const =0
virtual std::vector< double > const & getIntPtPorosity(const double t, std::vector< GlobalVector * > const &x, std::vector< NumLib::LocalToGlobalIndexMap const * > const &dof_table, std::vector< double > &cache) const =0