chombo-discharge
Loading...
Searching...
No Matches
CD_EBHelmholtzRobinDomainBCFactory.H
1/*
2 * SPDX-FileCopyrightText: 2021-2026 SINTEF Energy Research
3 *
4 * SPDX-License-Identifier: GPL-3.0-or-later
5 */
6
7/*
8 @file CD_EBHelmholtzRobinDomainBCFactory.H
9 @brief Declaration of a factory class for making Robin domain boundary conditions with EBHelmholtzOp
10 @author Robert Marskar
11*/
12
13#ifndef CD_EBHELMHOLTZROBINDOMAINBCFACTORY_H
14#define CD_EBHELMHOLTZROBINDOMAINBCFACTORY_H
15
16// Std includes
17#include <functional>
18
19// Our includes
20#include <CD_EBHelmholtzDomainBCFactory.H>
21#include <CD_NamespaceHeader.H>
22
30{
31public:
36
44
52 const std::function<Real(const RealVect& a_pos)>& a_B,
53 const std::function<Real(const RealVect& a_pos)>& a_C);
54
59
66 void
67 setCoefficients(const Real a_A, const Real a_B, const Real a_C);
68
75 void
77 const std::function<Real(const RealVect& a_pos)>& a_B,
78 const std::function<Real(const RealVect& a_pos)>& a_C);
79
85 create() const override;
86
87protected:
88 /*
89 @brief Use constant for BC
90 */
93
98
103
108
113
118
123
128};
129
130#include <CD_NamespaceFooter.H>
131
132#endif
Base class for passing domain boundary conditions into EBHelmholtzOp.
Definition CD_EBHelmholtzDomainBCFactory.H:28
Base class for making Robin domain boundary conditions with EBHelmholtzOp.
Definition CD_EBHelmholtzRobinDomainBCFactory.H:30
virtual ~EBHelmholtzRobinDomainBCFactory()
Destructor.
Real m_constantA
Constant A-coefficient.
Definition CD_EBHelmholtzRobinDomainBCFactory.H:102
std::function< Real(const RealVect &a_pos)> m_functionA
Function-based A-coefficient.
Definition CD_EBHelmholtzRobinDomainBCFactory.H:117
bool m_useFunction
Use function for BC value.
Definition CD_EBHelmholtzRobinDomainBCFactory.H:97
EBHelmholtzRobinDomainBCFactory()
Constructor.
Definition CD_EBHelmholtzRobinDomainBCFactory.cpp:21
bool m_useConstant
Use constant.
Definition CD_EBHelmholtzRobinDomainBCFactory.H:92
std::function< Real(const RealVect &a_pos)> m_functionC
Function-based C-coefficient.
Definition CD_EBHelmholtzRobinDomainBCFactory.H:127
Real m_constantB
Constant B-coefficient.
Definition CD_EBHelmholtzRobinDomainBCFactory.H:107
void setCoefficients(const Real a_A, const Real a_B, const Real a_C)
Set constant coefficients.
Definition CD_EBHelmholtzRobinDomainBCFactory.cpp:45
virtual RefCountedPtr< EBHelmholtzDomainBC > create() const override
Factory method.
Definition CD_EBHelmholtzRobinDomainBCFactory.cpp:73
std::function< Real(const RealVect &a_pos)> m_functionB
Function-based B-coefficient.
Definition CD_EBHelmholtzRobinDomainBCFactory.H:122
Real m_constantC
Constant C-coefficient.
Definition CD_EBHelmholtzRobinDomainBCFactory.H:112
Base class for a tracer particle solver. This solver can advance particles in a pre-defined velocity ...
Definition CD_TracerParticleSolver.H:38
TracerParticleSolver()
Default constructor.
Definition CD_TracerParticleSolverImplem.H:26