BoundaryPreservedMarker

Description

This is the same as ErrorFractionMarker, which marks elements for refinement or coarsening based on the fraction of the min/max error from the supplied indicator while preserving the given boundary.

The motivation is to preserve the boundary geometry during the mesh coarsening. Any elements that connect with the boundary will be maintained during coarsening. These elements might be coarsened later if the boundary moves to a different location.

Example Input File Syntax

[Adaptivity]
  steps = 1
  marker = marker
  initial_marker = marker
  max_h_level = 1
  [Markers]
    [efm]
      type = ErrorFractionMarker
      indicator = indicator
      coarsen = 0.2
      refine = 0.5
    []
    [marker]
      type = BoundaryPreservedMarker
      preserved_boundary = moving_boundary
      marker = 'efm'
    []
  []
  [Indicators/indicator]
    [Indicators/indicator]
      [Indicators/indicator]
        [Indicators/indicator]
          type = GradientJumpIndicator
          variable = phi
        []
      []
    []
  []
[]

Input Parameters

  • markerThe marker name to decide whether to carsen or refine elements.

    C++ Type:MarkerName

    Controllable:No

    Description:The marker name to decide whether to carsen or refine elements.

  • preserved_boundaryThe name of the boundary to be preserved. Will try to preserve the boundary during AMR

    C++ Type:BoundaryName

    Controllable:No

    Description:The name of the boundary to be preserved. Will try to preserve the boundary during AMR

Required Parameters

  • blockThe list of blocks (ids or names) that this object will be applied

    C++ Type:std::vector<SubdomainName>

    Controllable:No

    Description:The list of blocks (ids or names) that this object will be applied

Optional Parameters

  • control_tagsAdds user-defined labels for accessing object parameters via control logic.

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:Adds user-defined labels for accessing object parameters via control logic.

  • enableTrueSet the enabled status of the MooseObject.

    Default:True

    C++ Type:bool

    Controllable:No

    Description:Set the enabled status of the MooseObject.

  • outputsVector of output names where you would like to restrict the output of variables(s) associated with this object

    C++ Type:std::vector<OutputName>

    Controllable:No

    Description:Vector of output names where you would like to restrict the output of variables(s) associated with this object

Advanced Parameters