NeoFOAM
WIP Prototype of a modern OpenFOAM core
Loading...
Searching...
No Matches
empty.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: MIT
2// SPDX-FileCopyrightText: 2023 NeoFOAM authors
3
4#pragma once
5
6#include <Kokkos_Core.hpp>
7
8#include "NeoFOAM/core.hpp"
11
13{
14
15template<typename ValueType>
16class Empty : public SurfaceBoundaryFactory<ValueType>::template Register<Empty<ValueType>>
17{
19
20public:
21
22 Empty(const UnstructuredMesh& mesh, const Dictionary& dict, std::size_t patchID)
23 : Base(mesh, dict, patchID)
24 {}
25
26 virtual void correctBoundaryCondition([[maybe_unused]] DomainField<ValueType>& domainField
27 ) override
28 {}
29
30 static std::string name() { return "empty"; }
31
32 static std::string doc() { return "Do nothing on the boundary."; }
33
34 static std::string schema() { return "none"; }
35
36 virtual std::unique_ptr<SurfaceBoundaryFactory<ValueType>> clone() const override
37 {
38 return std::make_unique<Empty>(*this);
39 }
40};
41
42}
A class representing a dictionary that stores key-value pairs.
Represents the domain fields for a computational domain.
Represents an unstructured mesh in NeoFOAM.
Empty(const UnstructuredMesh &mesh, const Dictionary &dict, std::size_t patchID)
Definition empty.hpp:22
virtual std::unique_ptr< SurfaceBoundaryFactory< ValueType > > clone() const override
Definition empty.hpp:36
virtual void correctBoundaryCondition(DomainField< ValueType > &domainField) override
Definition empty.hpp:26
A template class for registering derived classes with a base class.