NeoN
WIP Prototype of a modern OpenFOAM core
Loading...
Searching...
No Matches
include
NeoN
finiteVolume
cellCentred
boundary
surface
calculated.hpp
Go to the documentation of this file.
1
// SPDX-License-Identifier: MIT
2
// SPDX-FileCopyrightText: 2023 NeoN authors
3
4
#pragma once
5
6
#include <Kokkos_Core.hpp>
7
8
#include "
NeoN/finiteVolume/cellCentred/boundary/surfaceBoundaryFactory.hpp
"
9
#include "
NeoN/mesh/unstructured/unstructuredMesh.hpp
"
10
11
namespace
NeoN::finiteVolume::cellCentred::surfaceBoundary
12
{
13
14
template
<
typename
ValueType>
15
class
Calculated
:
16
public
SurfaceBoundaryFactory
<ValueType>::template
Register
<Calculated<ValueType>>
17
{
18
using
Base =
SurfaceBoundaryFactory<ValueType>::template
Register<Calculated<ValueType>
>;
19
20
public
:
21
22
using
CalculatedType
=
Calculated<ValueType>
;
23
24
Calculated
(
const
UnstructuredMesh
& mesh,
const
Dictionary
& dict,
localIdx
patchID)
25
: Base(mesh, dict, patchID)
26
{}
27
28
virtual
void
correctBoundaryCondition
([[maybe_unused]]
Field<ValueType>
& domainVector)
override
29
{}
30
31
static
std::string
name
() {
return
"calculated"
; }
32
33
static
std::string
doc
() {
return
"TBD"
; }
34
35
static
std::string
schema
() {
return
"none"
; }
36
37
virtual
std::unique_ptr<SurfaceBoundaryFactory<ValueType>>
clone
()
const override
38
{
39
return
std::make_unique<Calculated>(*
this
);
40
}
41
};
42
}
NeoN::Dictionary
A class representing a dictionary that stores key-value pairs.
Definition
dictionary.hpp:33
NeoN::Field
Represents the domain fields for a computational domain.
Definition
field.hpp:34
NeoN::UnstructuredMesh
Represents an unstructured mesh in NeoN.
Definition
unstructuredMesh.hpp:29
NeoN::finiteVolume::cellCentred::SurfaceBoundaryFactory
Definition
surfaceBoundaryFactory.hpp:22
NeoN::finiteVolume::cellCentred::surfaceBoundary::Calculated
Definition
calculated.hpp:17
NeoN::finiteVolume::cellCentred::surfaceBoundary::Calculated::correctBoundaryCondition
virtual void correctBoundaryCondition(Field< ValueType > &domainVector) override
Definition
calculated.hpp:28
NeoN::finiteVolume::cellCentred::surfaceBoundary::Calculated::clone
virtual std::unique_ptr< SurfaceBoundaryFactory< ValueType > > clone() const override
Definition
calculated.hpp:37
NeoN::finiteVolume::cellCentred::surfaceBoundary::Calculated::name
static std::string name()
Definition
calculated.hpp:31
NeoN::finiteVolume::cellCentred::surfaceBoundary::Calculated::doc
static std::string doc()
Definition
calculated.hpp:33
NeoN::finiteVolume::cellCentred::surfaceBoundary::Calculated::schema
static std::string schema()
Definition
calculated.hpp:35
NeoN::finiteVolume::cellCentred::surfaceBoundary::Calculated::Calculated
Calculated(const UnstructuredMesh &mesh, const Dictionary &dict, localIdx patchID)
Definition
calculated.hpp:24
Register
A template class for registering derived classes with a base class.
NeoN::finiteVolume::cellCentred::surfaceBoundary
Definition
calculated.hpp:12
NeoN::localIdx
int32_t localIdx
Definition
label.hpp:30
surfaceBoundaryFactory.hpp
unstructuredMesh.hpp
Generated by
1.9.8