![]() |
Block-Structured AMR Software Framework
|
Flexible tagging rule that supports gradients, thresholds, boxes, and user functors. More...
#include <AMReX_ErrorList.H>
Classes | |
| struct | UserFunc |
Public Types | |
| enum | TEST { GRAD =0 , RELGRAD , LESS , GREATER , VORT , BOX , USER , PARSER } |
Public Member Functions | |
| AMRErrorTag (const AMRErrorTagInfo &info=AMRErrorTagInfo()) noexcept | |
| Construct a tag with default BOX test and the supplied metadata. | |
| AMRErrorTag (amrex::Real value, AMRErrorTag::TEST test, std::string field, const AMRErrorTagInfo &info=AMRErrorTagInfo()) noexcept | |
| Construct a tag using a scalar threshold across all levels. | |
| AMRErrorTag (amrex::Vector< amrex::Real > value, AMRErrorTag::TEST test, std::string field, const AMRErrorTagInfo &info=AMRErrorTagInfo()) noexcept | |
| Construct a tag with per-level threshold values. | |
| AMRErrorTag (AMRErrorTag::UserFunc *userfunc, std::string field, int ngrow, const AMRErrorTagInfo &info=AMRErrorTagInfo()) noexcept | |
| Construct a tag that delegates to a user functor. | |
| AMRErrorTag (Parser parser, const AMRErrorTagInfo &info=AMRErrorTagInfo()) | |
| void | operator() (amrex::TagBoxArray &tb, const amrex::MultiFab *mf, char clearval, char tagval, amrex::Real time, int level, const amrex::Geometry &geom) const noexcept |
| Apply the tagging rule to a TagBoxArray/MultiFab pair. | |
| int | NGrow () const noexcept |
| const std::string & | Field () const noexcept |
| AMRErrorTagInfo & | GetInfo () noexcept |
| AMRErrorTagInfo const & | GetInfo () const noexcept |
| void | SetInfo (AMRErrorTagInfo const &info) noexcept |
Protected Member Functions | |
| int | SetNGrow () const noexcept |
Protected Attributes | |
| Vector< Real > | m_value |
| TEST | m_test {BOX} |
| UserFunc * | m_userfunc = nullptr |
| std::unique_ptr< Parser > | m_parser |
| ParserExecutor< 4 > | m_parser_exe |
| std::string | m_field |
| AMRErrorTagInfo | m_info |
| int | m_ngrow = 0 |
Flexible tagging rule that supports gradients, thresholds, boxes, and user functors.
|
inlineexplicitnoexcept |
Construct a tag with default BOX test and the supplied metadata.
|
inlinenoexcept |
Construct a tag using a scalar threshold across all levels.
| value | Threshold (or reference) value. |
| test | Test mode (e.g., GREATER, LESS). |
| field | MultiFab component name to examine. |
| info | Optional metadata describing min/max time, level limits, etc. |
|
inlinenoexcept |
|
inlinenoexcept |
Construct a tag that delegates to a user functor.
| userfunc | User-defined functor (ownership retained by caller). |
| field | MultiFab component name to examine. |
| ngrow | Number of grow cells the functor requires. |
| info | Optional metadata. |
|
explicit |
Construct AMRErrorTag from a Parser that returns Real for given (x,y,z,t). This class's operator() can then be used to tag regions where the Parser's return value is greater than 0.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
noexcept |
Apply the tagging rule to a TagBoxArray/MultiFab pair.
| tb | Destination TagBoxArray to update. |
| mf | Optional pointer to the MultiFab whose data drive the tagging (can be nullptr for USER mode). |
| clearval | Value indicating an untagged cell. |
| tagval | Value indicating a tagged cell. |
| time | Simulation time. |
| level | AMR level index. |
| geom | Geometry describing the level (for coordinate-dependent tests). |
|
inlinenoexcept |
|
protectednoexcept |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |