OGS
SurfaceFluxData.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 <memory>
7
#include <string>
8
#include <vector>
9
10
#include "
BaseLib/ConfigTree-fwd.h
"
11
#include "
MathLib/LinAlg/GlobalMatrixVectorTypes.h
"
12
13
namespace
MeshLib
14
{
15
class
Mesh
;
16
}
// namespace MeshLib
17
18
namespace
ProcessLib
19
{
20
class
Process
;
21
22
struct
SurfaceFluxData
final
23
{
24
SurfaceFluxData
(
MeshLib::Mesh
& surfaceflux_mesh,
25
std::string&& surfaceflux_property_vector_name);
26
27
static
std::unique_ptr<ProcessLib::SurfaceFluxData>
createSurfaceFluxData
(
28
BaseLib::ConfigTree
const
& calculatesurfaceflux_config,
29
std::vector<std::unique_ptr<MeshLib::Mesh>>
const
& meshes);
30
31
void
integrate
(std::vector<GlobalVector*>
const
& x,
double
const
t,
32
Process
const
& p,
int
const
process_id,
33
int
const
integration_order,
MeshLib::Mesh
const
& bulk_mesh,
34
std::vector<std::size_t>
const
& active_element_ids);
35
36
private
:
37
MeshLib::Mesh
&
surface_mesh
;
38
std::string
const
property_vector_name
;
39
};
40
}
// namespace ProcessLib
ConfigTree-fwd.h
GlobalMatrixVectorTypes.h
BaseLib::ConfigTree
Definition
ConfigTree.h:101
MeshLib::Mesh
Definition
Mesh.h:34
ProcessLib::Process
Definition
Process.h:38
MeshLib
Definition
ProjectData.h:30
ProcessLib
Definition
ProjectData.h:40
ProcessLib::SurfaceFluxData::property_vector_name
std::string const property_vector_name
Definition
SurfaceFluxData.h:38
ProcessLib::SurfaceFluxData::SurfaceFluxData
SurfaceFluxData(MeshLib::Mesh &surfaceflux_mesh, std::string &&surfaceflux_property_vector_name)
Definition
SurfaceFluxData.cpp:14
ProcessLib::SurfaceFluxData::integrate
void integrate(std::vector< GlobalVector * > const &x, double const t, Process const &p, int const process_id, int const integration_order, MeshLib::Mesh const &bulk_mesh, std::vector< std::size_t > const &active_element_ids)
Definition
SurfaceFluxData.cpp:54
ProcessLib::SurfaceFluxData::surface_mesh
MeshLib::Mesh & surface_mesh
Definition
SurfaceFluxData.h:37
ProcessLib::SurfaceFluxData::createSurfaceFluxData
static std::unique_ptr< ProcessLib::SurfaceFluxData > createSurfaceFluxData(BaseLib::ConfigTree const &calculatesurfaceflux_config, std::vector< std::unique_ptr< MeshLib::Mesh > > const &meshes)
Definition
SurfaceFluxData.cpp:27
ProcessLib
SurfaceFlux
SurfaceFluxData.h
Generated by
1.14.0