|
chombo-discharge
|
Class for tagging grid cells using the Ito-KMC-Poisson module. Note that S is the time integrator type that is used. More...
#include <CD_ItoKMCTagger.H>


Public Member Functions | |
| ItoKMCTagger () | |
| Weak constructor. User MUST subsequently call the define function. | |
| ItoKMCTagger (const RefCountedPtr< ItoKMCPhysics > &a_physics, const RefCountedPtr< S > &a_timeStepper, const RefCountedPtr< AmrMesh > &a_amr) noexcept | |
| Full constructor. | |
| virtual | ~ItoKMCTagger () noexcept |
| Destructor. | |
| virtual void | define (const RefCountedPtr< ItoKMCPhysics > &a_physics, const RefCountedPtr< S > &a_timeStepper, const RefCountedPtr< AmrMesh > &a_amr) noexcept |
| Define function. | |
| virtual int | getNumberOfPlotVariables () const noexcept override |
| Get number of plot variables that will be written to file (by Driver). | |
| virtual Vector< std::string > | getPlotVariableNames () const noexcept override |
| Get plot variable names. | |
| virtual void | writePlotData (LevelData< EBCellFAB > &a_output, int &a_icomp, const std::string a_outputRealm, const int a_level) const noexcept override |
| Write plot data. | |
| virtual void | computeTagFields () const noexcept=0 |
| Compute tagging fields. | |
| virtual void | parseOptions () override=0 |
| Parse class options. | |
| virtual void | parseRuntimeOptions () override=0 |
| Parse run-time configurable class options. | |
| virtual void | regrid () noexcept override |
| Regrid this class. Note that there is no preRegrid method. | |
| virtual bool | tagCells (EBAMRTags &a_tags) noexcept override |
| Tag cells for refinement and coarsening. | |
| virtual void | setPhase (const phase::which_phase a_phase) noexcept |
| Set the phase where we do the tagging. | |
| virtual Vector< EBAMRCellData > & | getTagFields () noexcept |
| Get tag fields. This is data that live on the primal realm and specified input phase. | |
Public Member Functions inherited from CellTagger | |
| CellTagger () | |
| Weak constructor (does nothing) | |
| virtual | ~CellTagger () |
| Destructor (does nothing). | |
| virtual void | preRegrid () noexcept |
| Pre-regrid function for cell-tagger. | |
| virtual void | prePlot () const noexcept |
| Perform pre-plotting operations (if necessary) | |
| virtual int | getBuffer () const |
| Get tag buffer. | |
Protected Attributes | |
| bool | m_isDefined |
| Defined or not. | |
| bool | m_plotData |
| Plot data or not. | |
| std::string | m_realm |
| Realm where data is allocated. | |
| phase::which_phase | m_phase |
| Phase where data is allocated. | |
| RefCountedPtr< ItoKMCPhysics > | m_physics |
| Physics implementation. | |
| RefCountedPtr< S > | m_timeStepper |
| Time stepper. | |
| RefCountedPtr< AmrMesh > | m_amr |
| AmrMesh. Needed for allocating memory and things like that. | |
| int | m_numTagFields |
| Number of tagging fields. | |
| Vector< EBAMRCellData > | m_tagFields |
| Tagging fields. | |
| Vector< EBAMRCellData > | m_gradTagFields |
| Gradient of tagging fields. | |
Protected Attributes inherited from CellTagger | |
| std::string | m_name |
| Cell tagger class name (default is CellTagger). | |
| int | m_verbosity |
| Class verbosity. | |
| int | m_buffer |
| Tag buffer. Grow tags by this amount (finest level only) | |
| Vector< RealBox > | m_tagBoxes |
| Boxes that can be used to restrict tagging. | |
| std::vector< std::pair< RealBox, int > > | m_refBoxes |
| Refinement boxes for adding manual refinement. | |
Class for tagging grid cells using the Ito-KMC-Poisson module. Note that S is the time integrator type that is used.
|
noexcept |
|
protectedpure virtualnoexcept |
Determine if a particular cell should be coarsened or not.
| [in] | a_pos | Physical position. |
| [in] | a_time | Current time |
| [in] | a_dx | Grid resolution |
| [in] | a_lvl | Grid level |
| [in] | a_tagFields | Cell tagging fields |
| [in] | a_gradTagFields | Gradient of cell tagging fields |
Implemented in Physics::ItoKMC::ItoKMCStreamerTagger< S >, and Physics::ItoKMC::ItoKMCFieldTagger< S >.
|
pure virtualnoexcept |
Compute tagging fields.
Implemented in Physics::ItoKMC::ItoKMCFieldTagger< S >.
|
virtualnoexcept |
Get number of plot variables that will be written to file (by Driver).
Reimplemented from CellTagger.
|
overridevirtualnoexcept |
Get plot variable names.
Reimplemented from CellTagger.
|
overridepure virtual |
Parse class options.
Implements CellTagger.
Implemented in Physics::ItoKMC::ItoKMCStreamerTagger< S >, and Physics::ItoKMC::ItoKMCFieldTagger< S >.
|
overridepure virtual |
Parse run-time configurable class options.
Reimplemented from CellTagger.
Implemented in Physics::ItoKMC::ItoKMCStreamerTagger< S >, and Physics::ItoKMC::ItoKMCFieldTagger< S >.
|
protectedpure virtualnoexcept |
Determine if a particular cell should be refined or not.
| [in] | a_pos | Physical position. |
| [in] | a_time | Current time |
| [in] | a_dx | Grid resolution |
| [in] | a_lvl | Grid level |
| [in] | a_tagFields | Cell tagging fields |
| [in] | a_gradTagFields | Gradient of cell tagging fields |
Implemented in Physics::ItoKMC::ItoKMCStreamerTagger< S >, and Physics::ItoKMC::ItoKMCFieldTagger< S >.
Regrid this class. Note that there is no preRegrid method.
Implements CellTagger.
Set the phase where we do the tagging.
| [in] | a_phase | Phase |
Tag cells for refinement and coarsening.
| [in,out] | a_tags | Cell tags that become the new grids. |
Implements CellTagger.
|
protectedvirtualnoexcept |
Per-box refinement tagging routine.
| [out] | a_refinedCells | Cells to be refined |
| [out] | a_coarsenedCells | Cells to be coarsened |
| [in] | a_tagFields | Tagging fields |
| [in] | a_gradTagFields | Gradient of tagging fields |
| [in] | a_lvl | Grid level |
| [in] | a_dit | Grid index |
| [in] | a_box | Cell-centered box |
| [in] | a_ebisbox | EBIS box |
| [in] | a_time | Current time |
| [in] | a_dx | Grid resolution |
| [in] | a_probLo | Lower-left corner of physical domain |
|
overridevirtualnoexcept |
Write plot data.
| [in,out] | a_output | Output data holder |
| [in,out] | a_icomp | Starting variable in a_output where we begin appending data. |
| [in] | a_level | Grid level |
Reimplemented from CellTagger.