chombo-discharge
Loading...
Searching...
No Matches
CD_ElectrostaticEbBc.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_ELECTROSTATICEBBC_H
14#define CD_ELECTROSTATICEBBC_H
15
16// Std includes
17#include <functional>
18#include <vector>
19
20// Chombo includes
21#include <RealVect.H>
22
23// Our includes
24#include <CD_Electrode.H>
25#include <CD_NamespaceHeader.H>
26
34{
35public:
40
45
49 virtual ~ElectrostaticEbBc();
50
54 void
55 clear();
56
64 void
66
72 void
73 setEbBc(const int a_electrode, const BcFunction& a_bcFunction);
74
81 getBc(const int a_electrode);
82
88 const BcFunction&
89 getBc(const int a_electrode) const;
90
96 getBcs();
97
103 getBcs() const;
104
105protected:
110};
111
112#include <CD_NamespaceFooter.H>
113
114#endif
Declaration of an electrode class.
Electrode class for encapsulating the concept of an electrical conductor.
Definition CD_Electrode.H:27
Class which maps boundary condition types to a side and direction.
Definition CD_ElectrostaticEbBc.H:34
std::function< Real(const RealVect a_position, const Real a_time)> BcFunction
Function which maps f(R^3,t) : R. Used for setting the potential at an electrode.
Definition CD_ElectrostaticEbBc.H:39
void setEbBc(const int a_electrode, const BcFunction &a_bcFunction)
Set the potential for a_electrode to be given by a_bcFunction.
Definition CD_ElectrostaticEbBc.cpp:44
void addEbBc(const Electrode &a_electrode, const BcFunction &a_bcFunction)
Add a boundary condition.
Definition CD_ElectrostaticEbBc.cpp:36
ElectrostaticEbBc()
Initializing constructor (does nothing)
Definition CD_ElectrostaticEbBc.cpp:17
virtual ~ElectrostaticEbBc()
Destructor (does nothing)
Definition CD_ElectrostaticEbBc.cpp:22
std::vector< std::pair< Electrode, BcFunction > > m_bcFunctions
Data structure which holds electrode and associated potential functions.
Definition CD_ElectrostaticEbBc.H:109
BcFunction & getBc(const int a_electrode)
Return boundary condition associated with a particular electrode.
Definition CD_ElectrostaticEbBc.cpp:56
std::vector< std::pair< Electrode, BcFunction > > & getBcs()
Get all boundary conditions.
Definition CD_ElectrostaticEbBc.cpp:80
void clear()
Clears the object.
Definition CD_ElectrostaticEbBc.cpp:28
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