NeoN
A framework for CFD software
Loading...
Searching...
No Matches
calculated.hpp
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2023 - 2026 NeoN authors
2//
3// SPDX-License-Identifier: MIT
4
5#pragma once
6
7#include <Kokkos_Core.hpp>
8
11
13{
14
15template<typename ValueType>
16class Calculated : public VolumeBoundaryFactory<ValueType>::template Register<Calculated<ValueType>>
17{
19
20public:
21
22 using Base::correctBoundaryCondition;
23
25
26 Calculated(const UnstructuredMesh& mesh, const Dictionary& dict, localIdx patchID)
27 : Base(mesh, dict, patchID, {.assignable = true, .fixesValue = false})
28 {}
29
30 virtual void correctBoundaryCondition([[maybe_unused]] Field<ValueType>& domainVector) final {}
31
32 static std::string name() { return "calculated"; }
33
34 std::string getName() const override { return name(); }
35
36 static std::string doc() { return "TBD"; }
37
38 static std::string schema() { return "none"; }
39
40 virtual std::unique_ptr<VolumeBoundaryFactory<ValueType>> clone() const final
41 {
42 return std::make_unique<Calculated>(*this);
43 }
44};
45}
A class representing a dictionary that stores key-value pairs.
Represents the domain fields for a computational domain.
Definition field.hpp:34
Represents an unstructured mesh in NeoN.
virtual std::unique_ptr< VolumeBoundaryFactory< ValueType > > clone() const final
virtual void correctBoundaryCondition(Field< ValueType > &domainVector) final
Calculated(const UnstructuredMesh &mesh, const Dictionary &dict, localIdx patchID)
A template class for registering derived classes with a base class.
int32_t localIdx
Definition label.hpp:50