NeoN
WIP Prototype of a modern OpenFOAM core
Loading...
Searching...
No Matches
include
NeoN
finiteVolume
cellCentred
boundary
volume
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/volumeBoundaryFactory.hpp
"
9
#include "
NeoN/mesh/unstructured/unstructuredMesh.hpp
"
10
11
namespace
NeoN::finiteVolume::cellCentred::volumeBoundary
12
{
13
14
template
<
typename
ValueType>
15
class
Calculated
:
public
VolumeBoundaryFactory
<ValueType>::template
Register
<Calculated<ValueType>>
16
{
17
using
Base =
VolumeBoundaryFactory<ValueType>::template
Register<Calculated<ValueType>
>;
18
19
public
:
20
21
using
CalculatedType
=
Calculated<ValueType>
;
22
23
Calculated
(
const
UnstructuredMesh
& mesh,
const
Dictionary
& dict,
localIdx
patchID)
24
: Base(mesh, dict, patchID)
25
{}
26
27
virtual
void
correctBoundaryCondition
([[maybe_unused]]
Field<ValueType>
& domainVector)
final
{}
28
29
static
std::string
name
() {
return
"calculated"
; }
30
31
static
std::string
doc
() {
return
"TBD"
; }
32
33
static
std::string
schema
() {
return
"none"
; }
34
35
virtual
std::unique_ptr<VolumeBoundaryFactory<ValueType>>
clone
() const final
36
{
37
return
std::make_unique<Calculated>(*
this
);
38
}
39
};
40
}
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::VolumeBoundaryFactory
Definition
volumeBoundaryFactory.hpp:22
NeoN::finiteVolume::cellCentred::volumeBoundary::Calculated
Definition
calculated.hpp:16
NeoN::finiteVolume::cellCentred::volumeBoundary::Calculated::schema
static std::string schema()
Definition
calculated.hpp:33
NeoN::finiteVolume::cellCentred::volumeBoundary::Calculated::clone
virtual std::unique_ptr< VolumeBoundaryFactory< ValueType > > clone() const final
Definition
calculated.hpp:35
NeoN::finiteVolume::cellCentred::volumeBoundary::Calculated::correctBoundaryCondition
virtual void correctBoundaryCondition(Field< ValueType > &domainVector) final
Definition
calculated.hpp:27
NeoN::finiteVolume::cellCentred::volumeBoundary::Calculated::doc
static std::string doc()
Definition
calculated.hpp:31
NeoN::finiteVolume::cellCentred::volumeBoundary::Calculated::Calculated
Calculated(const UnstructuredMesh &mesh, const Dictionary &dict, localIdx patchID)
Definition
calculated.hpp:23
NeoN::finiteVolume::cellCentred::volumeBoundary::Calculated::name
static std::string name()
Definition
calculated.hpp:29
Register
A template class for registering derived classes with a base class.
NeoN::finiteVolume::cellCentred::volumeBoundary
Definition
calculated.hpp:12
NeoN::localIdx
int32_t localIdx
Definition
label.hpp:30
unstructuredMesh.hpp
volumeBoundaryFactory.hpp
Generated by
1.9.8