Abstract base class for geometries.
More...
#include <CD_ComputationalGeometry.H>
|
| void | buildGasGeometry (GeometryService *&a_geoserver, const ProblemDomain &a_finestDomain, const RealVect &a_probLo, const Real a_finestDx) |
| | Set up the geometry generation tool for the gas phase.
|
| |
| void | buildSolidGeometry (GeometryService *&a_geoserver, const ProblemDomain &a_finestDomain, const RealVect &a_probLo, const Real a_finestDx) |
| | Set up the geometry generation tool for the solid phase, i.e. the part inside the dielectrics.
|
| |
|
|
RefCountedPtr< MultiFluidIndexSpace > | m_multifluidIndexSpace |
| | Multifluid index spaces.
|
| |
|
Real | m_eps0 |
| | Background permittivity.
|
| |
|
bool | m_useScanShop |
| | True if we use the chombo-discharge geometry generation utility.
|
| |
|
ProblemDomain | m_scanDomain |
| | Grid level where we begin using ScanShop.
|
| |
|
int | m_maxGhostEB |
| | Maximum number of ghost cells that we will ever need.
|
| |
|
Vector< Dielectric > | m_dielectrics |
| | List of dielectrics.
|
| |
|
Vector< Electrode > | m_electrodes |
| | List of electrodes.
|
| |
|
RefCountedPtr< BaseIF > | m_implicitFunctionGas |
| | The gas-phase implicit function (i.e. outside electrodes and dielectrics).
|
| |
|
RefCountedPtr< BaseIF > | m_implicitFunctionSolid |
| | The solid-phase implicit function (i.e. the inside of the dielectrics).
|
| |
|
|
static constexpr Real | s_thresh = 1.E-15 |
| | Threshold for Vof computation.
|
| |
Abstract base class for geometries.
This class encapsulates computational geometries in chombo-discharge. If you construct this object as-is, you will get a blank geometry. To include EBs one must set the electrodes and dielectrics. This is not a pure function, so you can set those objects directly from a ComputationalGeometry object. However, in almost all cases one will want to derive from ComputationalGeometry and create a parametrized geometry (that is what $DISCHARGE_HOME/Geometries is for!).
◆ buildGasGeometry()
| void ComputationalGeometry::buildGasGeometry |
( |
GeometryService *& |
a_geoserver, |
|
|
const ProblemDomain & |
a_finestDomain, |
|
|
const RealVect & |
a_probLo, |
|
|
const Real |
a_finestDx |
|
) |
| |
|
protected |
Set up the geometry generation tool for the gas phase.
- Parameters
-
| [in,out] | a_geoserver | Geometry service object which is later used for making build the EB information. |
| [in] | a_finestDomain | Finest domain which will be used |
| [in] | a_probLo | Lower-left corner of simulation domain. |
| [in] | a_finestDx | Finest resolution which will be used. |
◆ buildGeometries()
| void ComputationalGeometry::buildGeometries |
( |
const ProblemDomain & |
a_finestDomain, |
|
|
const RealVect & |
a_probLo, |
|
|
const Real |
a_finestDx, |
|
|
const int |
a_nCellMax, |
|
|
const int |
a_maxGhostEB, |
|
|
const int |
a_maxCoarsen = -1 |
|
) |
| |
|
virtual |
Build geometries and the MFIndexSpace.
- Parameters
-
| [in] | a_finestDomain | Finest domain |
| [in] | a_probLo | Lower-left corner |
| [in] | a_finestDx | Finest grid resolution |
| [in] | a_nCellMax | Patch size |
| [in] | a_maxGhostEB | Maximum number of EB ghosts that will be encountered. |
| [in] | a_maxCoarsen | Max coarsenings to run. If = -1 then coarsen all the way down. |
This will build the gas and solid phase domain. The input is the finest-level stuff and you can control the division into boxes as well as the maximum number of coarsenings. The computed domain is (a_probLo, a_probLo + a_box*a_dx)
◆ buildSolidGeometry()
| void ComputationalGeometry::buildSolidGeometry |
( |
GeometryService *& |
a_geoserver, |
|
|
const ProblemDomain & |
a_finestDomain, |
|
|
const RealVect & |
a_probLo, |
|
|
const Real |
a_finestDx |
|
) |
| |
|
protected |
Set up the geometry generation tool for the solid phase, i.e. the part inside the dielectrics.
- Parameters
-
| [in,out] | a_geoserver | Geometry service object which is later used for making build the EB information. |
| [in] | a_finestDomain | Finest domain which will be used |
| [in] | a_probLo | Lower-left corner of simulation domain. |
| [in] | a_finestDx | Finest resolution which will be used. |
◆ getDielectrics()
| const Vector< Dielectric > & ComputationalGeometry::getDielectrics |
( |
| ) |
const |
Get dielectrics.
- Returns
- Dielectrics (m_dielectrics)
◆ getElectrodes()
| const Vector< Electrode > & ComputationalGeometry::getElectrodes |
( |
| ) |
const |
Get electrodes.
- Returns
- Electrodes (m_electrodes)
◆ getGasImplicitFunction()
| const RefCountedPtr< BaseIF > & ComputationalGeometry::getGasImplicitFunction |
( |
| ) |
const |
Get the implicit function used to generate the gas-phase EBIS.
- Returns
- Gas-phase implicit function.
◆ getGasPermittivity()
| Real ComputationalGeometry::getGasPermittivity |
( |
| ) |
const |
Get the background gas permittivity.
- Returns
- Background gas permittivity
◆ getImplicitFunction()
| const RefCountedPtr< BaseIF > & ComputationalGeometry::getImplicitFunction |
( |
const phase::which_phase |
a_phase | ) |
const |
Get implicit function for the specified phase.
- Parameters
-
| [in] | a_phase | Phase identifier. |
- Returns
- Implicit function for the requested phase.
◆ getMfIndexSpace()
Get the multifluid index space.
- Returns
- m_multiFluidIndexSpace
◆ getSolidImplicitFunction()
| const RefCountedPtr< BaseIF > & ComputationalGeometry::getSolidImplicitFunction |
( |
| ) |
const |
Get the implicit function used to generate the solid-phase EBIS.
- Returns
- Solid-phase implicit function.
◆ setDielectrics()
| void ComputationalGeometry::setDielectrics |
( |
const Vector< Dielectric > & |
a_dielectrics | ) |
|
Set dielectrics.
- Parameters
-
| [in] | a_dielectrics | Dielectris |
◆ setElectrodes()
| void ComputationalGeometry::setElectrodes |
( |
const Vector< Electrode > & |
a_electrodes | ) |
|
Set electrodes.
- Parameters
-
| [in] | a_electrodes | Electrodes |
◆ setGasPermittivity()
| void ComputationalGeometry::setGasPermittivity |
( |
const Real |
a_eps0 | ) |
|
Set the background permittivity.
- Parameters
-
| [in] | a_eps0 | Gas permittivity |
◆ useScanShop()
| void ComputationalGeometry::useScanShop |
( |
const ProblemDomain & |
a_beginDomain | ) |
|
Calls for ComputationalGeometry to use ScanShop rather than Chombo's default geometry generation tool.
- Parameters
-
| [in] | a_beginDomain | Coarse domain where ScanShop begins the load balancing recursion process. |
The documentation for this class was generated from the following files: