chombo-discharge
Loading...
Searching...
No Matches
CD_MFHelmholtzElectrostaticEBBC.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_MFHELMHOLTZELECTROSTATICEBBC_H
14#define CD_MFHELMHOLTZELECTROSTATICEBBC_H
15
16// Our includes
17#include <CD_MFHelmholtzEBBC.H>
19#include <CD_NamespaceHeader.H>
20
28{
29public:
37 const ElectrostaticEbBc& a_electrostaticBCs,
38 const RefCountedPtr<MFHelmholtzJumpBC>& a_jumpBC);
39
44
50
56
61
67 operator=(const MFHelmholtzElectrostaticEBBC& a_other) = delete;
68
74 operator=(const MFHelmholtzElectrostaticEBBC&& a_other) = delete;
75
84 void
85 setOrder(int a_order);
86
93 void
94 setWeight(int a_weight);
95
100 void
101 setDomainDropOrder(int a_domainSize);
102
107 void
108 setCoarseGridDropOrder(bool a_dropOrder);
109
110protected:
115
120
125
130
135
139 virtual void
140 defineSinglePhase() override;
141
154 virtual void
155 applyEBFluxSinglePhase(VoFIterator& a_singlePhaseVofs,
156 EBCellFAB& a_Lphi,
157 const EBCellFAB& a_phi,
158 const BaseIVFAB<Real>& a_Bcoef,
159 const DataIndex& a_dit,
160 const Real& a_beta,
161 const bool& a_homogeneousPhysBC) const override;
162
168 inline Real
169 getElectrodePotential(const RealVect& a_pos) const;
170};
171
172#include <CD_NamespaceFooter.H>
173
175
176#endif
Data holder for holding the voltage at electrodes.
Declaration of an EB boundary condition class for MFHelmholtzOp.
Implementation of CD_MFHelmholtzElectrostaticEBBC.H.
Class which maps boundary condition types to a side and direction.
Definition CD_ElectrostaticEbBc.H:34
Class for making boundary conditions on the EB in a multifluid context.
Definition CD_MFHelmholtzEBBC.H:28
Class for making Electrostatic boundary conditions on the EB in a multifluid context.
Definition CD_MFHelmholtzElectrostaticEBBC.H:28
void setOrder(int a_order)
Set stencil order.
Definition CD_MFHelmholtzElectrostaticEBBC.cpp:36
MFHelmholtzElectrostaticEBBC & operator=(const MFHelmholtzElectrostaticEBBC &a_other)=delete
No copy assignment.
int m_order
Stencil order.
Definition CD_MFHelmholtzElectrostaticEBBC.H:114
MFHelmholtzElectrostaticEBBC & operator=(const MFHelmholtzElectrostaticEBBC &&a_other)=delete
No move assignment.
virtual void defineSinglePhase() override
User define function.
Definition CD_MFHelmholtzElectrostaticEBBC.cpp:70
virtual void applyEBFluxSinglePhase(VoFIterator &a_singlePhaseVofs, EBCellFAB &a_Lphi, const EBCellFAB &a_phi, const BaseIVFAB< Real > &a_Bcoef, const DataIndex &a_dit, const Real &a_beta, const bool &a_homogeneousPhysBC) const override
Apply flux single phase.
Definition CD_MFHelmholtzElectrostaticEBBC.cpp:198
void setCoarseGridDropOrder(bool a_dropOrder)
Signal that it should drop the stencil order if the cell is a coarsened cell.
Definition CD_MFHelmholtzElectrostaticEBBC.cpp:64
int m_weight
Stencil weight.
Definition CD_MFHelmholtzElectrostaticEBBC.H:119
Real getElectrodePotential(const RealVect &a_pos) const
Get electrode potential.
Definition CD_MFHelmholtzElectrostaticEBBCImplem.H:24
int m_domainDropOrder
Special flag for dropping stencil order when domains become coarser than this.
Definition CD_MFHelmholtzElectrostaticEBBC.H:124
MFHelmholtzElectrostaticEBBC()=delete
No weak construction.
~MFHelmholtzElectrostaticEBBC() override
Default constructor (does nothing).
Definition CD_MFHelmholtzElectrostaticEBBC.cpp:30
void setDomainDropOrder(int a_domainSize)
Drop BC order if domain size is equal or below this.
Definition CD_MFHelmholtzElectrostaticEBBC.cpp:56
MFHelmholtzElectrostaticEBBC(const MFHelmholtzElectrostaticEBBC &&a_other)=delete
No move construction.
void setWeight(int a_weight)
Set stencil weight.
Definition CD_MFHelmholtzElectrostaticEBBC.cpp:46
MFHelmholtzElectrostaticEBBC(const MFHelmholtzElectrostaticEBBC &a_other)=delete
No copy construction.
bool m_dropOrder
Special flag for dropping stencil order if the cell is a coarsened cell.
Definition CD_MFHelmholtzElectrostaticEBBC.H:129
ElectrostaticEbBc m_electrostaticBCs
Electrostatic boundary conditions.
Definition CD_MFHelmholtzElectrostaticEBBC.H:134