Peano
Loading...
Searching...
No Matches
coupling.actionsets.SpreadLimiterStatus.SpreadLimiterStatus Class Reference
Inheritance diagram for coupling.actionsets.SpreadLimiterStatus.SpreadLimiterStatus:
Collaboration diagram for coupling.actionsets.SpreadLimiterStatus.SpreadLimiterStatus:

Public Member Functions

 __init__ (self, solver, guard)
 get_body_of_operation (self, operation_name)
 get_action_set_name (self)
 You should replicate this function in each subclass, so you get meaningful action set names (otherwise, it will be AbstractFVActionSet0,1,2,...).
Public Member Functions inherited from coupling.actionsets.AbstractLimiterActionSet.AbstractLimiterActionSet
 __init__ (self, solver)
 solver: Ader-DG Reference to creating class
 user_should_modify_template (self)
 get_includes (self)

Data Fields

 guard = guard

Static Public Attributes

str TemplateSpreadLimiterStatus

Additional Inherited Members

Protected Attributes inherited from coupling.actionsets.AbstractLimiterActionSet.AbstractLimiterActionSet
 _solver = solver

Detailed Description

Definition at line 8 of file SpreadLimiterStatus.py.

Constructor & Destructor Documentation

◆ __init__()

coupling.actionsets.SpreadLimiterStatus.SpreadLimiterStatus.__init__ ( self,
solver,
guard )

Definition at line 31 of file SpreadLimiterStatus.py.

References __init__().

Referenced by __init__().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Function Documentation

◆ get_action_set_name()

coupling.actionsets.SpreadLimiterStatus.SpreadLimiterStatus.get_action_set_name ( self)

You should replicate this function in each subclass, so you get meaningful action set names (otherwise, it will be AbstractFVActionSet0,1,2,...).

Reimplemented from coupling.actionsets.AbstractLimiterActionSet.AbstractLimiterActionSet.

Definition at line 46 of file SpreadLimiterStatus.py.

◆ get_body_of_operation()

coupling.actionsets.SpreadLimiterStatus.SpreadLimiterStatus.get_body_of_operation ( self,
operation_name )

Field Documentation

◆ guard

coupling.actionsets.SpreadLimiterStatus.SpreadLimiterStatus.guard = guard

◆ TemplateSpreadLimiterStatus

str coupling.actionsets.SpreadLimiterStatus.SpreadLimiterStatus.TemplateSpreadLimiterStatus
static
Initial value:
= """
if ( {{PREDICATE}} ) {
if(fineGridCell{{SOLVER_NAME}}CellLabel.getTroubled_Marker()==celldata::{{SOLVER_NAME}}CellLabel::Troubled_Marker::TROUBLED) return;
bool hasTroubledNeighbour = false;
for(int d=0; d<2*DIMENSIONS; d++){
hasTroubledNeighbour |= fineGridFaces{{SOLVER_NAME}}FaceLabel(d).getTroubled_Marker()==facedata::{{SOLVER_NAME}}FaceLabel::Troubled_Marker::TROUBLED;
}
if(hasTroubledNeighbour){
fineGridCell{{SOLVER_NAME}}CellLabel.setTroubled_Marker(celldata::{{SOLVER_NAME}}CellLabel::Troubled_Marker::LIMITER_TO_REGULAR);
for(int d=0; d<2*DIMENSIONS; d++){
fineGridFaces{{SOLVER_NAME}}FaceLabel(d).setTroubled_Marker(
std::max(fineGridFaces{{SOLVER_NAME}}FaceLabel(d).getTroubled_Marker(),
facedata::{{SOLVER_NAME}}FaceLabel::Troubled_Marker::LIMITER_TO_REGULAR
)
);
}
}
}
"""

Definition at line 9 of file SpreadLimiterStatus.py.

Referenced by get_body_of_operation().


The documentation for this class was generated from the following file: