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