chombo-discharge
Loading...
Searching...
No Matches
CD_Dielectric.H
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2021-2026 SINTEF Energy Research
3 *
4 * SPDX-License-Identifier: GPL-3.0-or-later
5 */
6
13#ifndef CD_DIELECTRIC_H
14#define CD_DIELECTRIC_H
15
16// Std includes
17#include <functional>
18
19// Chombo includes
20#include <BaseIF.H>
21#include <RefCountedPtr.H>
22
23// Our includes
24#include <CD_NamespaceHeader.H>
25
30{
31public:
35 Dielectric();
36
43 Dielectric(const RefCountedPtr<BaseIF>& a_baseIF, const Real a_permittivity);
44
51 Dielectric(const RefCountedPtr<BaseIF>& a_baseIF, const std::function<Real(const RealVect a_pos)>& a_permittivity);
52
56 virtual ~Dielectric();
57
63 virtual void
64 define(const RefCountedPtr<BaseIF>& a_baseIF, const Real a_permittivity);
65
71 virtual void
72 define(const RefCountedPtr<BaseIF>& a_baseIF, const std::function<Real(const RealVect a_pos)>& a_permittivity);
73
78 virtual const RefCountedPtr<BaseIF>&
79 getImplicitFunction() const;
80
86 virtual Real
87 getPermittivity(const RealVect& a_pos) const;
88
89protected:
93 RefCountedPtr<BaseIF> m_baseIF;
94
99
103 std::function<Real(const RealVect a_pos)> m_variablePermittivity;
104
109
114};
115
116#include <CD_NamespaceFooter.H>
117
118#endif
dielectric class. Simple tuple.
Definition CD_Dielectric.H:30
virtual const RefCountedPtr< BaseIF > & getImplicitFunction() const
Get level-set function.
Definition CD_Dielectric.cpp:73
RefCountedPtr< BaseIF > m_baseIF
Implicit function.
Definition CD_Dielectric.H:93
bool m_useConstant
Use constant permittivity or not.
Definition CD_Dielectric.H:108
virtual void define(const RefCountedPtr< BaseIF > &a_baseIF, const Real a_permittivity)
Define function.
Definition CD_Dielectric.cpp:46
virtual ~Dielectric()
Destructor (does nothing).
virtual Real getPermittivity(const RealVect &a_pos) const
Get permittivity.
Definition CD_Dielectric.cpp:83
Dielectric()
Weak constructor, must subsequently call one of the define methods.
Definition CD_Dielectric.cpp:18
Real m_constantPermittivity
Constant permittivity.
Definition CD_Dielectric.H:98
bool m_isDefined
Is defined or not.
Definition CD_Dielectric.H:113
std::function< Real(const RealVect a_pos)> m_variablePermittivity
Variable permittivity.
Definition CD_Dielectric.H:103