AddPeriodicBCAction

Action that adds periodic boundary conditions

Periodic boundary conditions are specified as an object inside the [Periodic] sub-block of the [BCs] block. This action adds them to the Problem.

More information about periodic boundary conditions and their parameters can be found on the periodic boundary condition syntax documentation.

Example syntax

In this example, periodic boundary conditions are set on variable u in the X and Y axis directions. The boundaries that are matched on all sides of the system are automatically detected, due to using the "auto_direction" parameter.

[BCs]
  [./Periodic]
    [./all]
      variable = u
      auto_direction = 'x y'
    [../]
  [../]
[]
(moose/test/tests/bcs/periodic/auto_periodic_bc_test.i)

Input Parameters

  • active__all__ If specified only the blocks named will be visited and made active

    Default:__all__

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

    Controllable:No

    Description:If specified only the blocks named will be visited and made active

  • auto_directionIf using a generated mesh, you can specifiy just the dimension(s) you want to mark as periodic

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

    Controllable:No

    Description:If using a generated mesh, you can specifiy just the dimension(s) you want to mark as periodic

  • inactiveIf specified blocks matching these identifiers will be skipped.

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

    Controllable:No

    Description:If specified blocks matching these identifiers will be skipped.

  • inv_transform_funcFunctions that specify the inverse transformation

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

    Controllable:No

    Description:Functions that specify the inverse transformation

  • primaryBoundary ID associated with the primary boundary.

    C++ Type:BoundaryName

    Controllable:No

    Description:Boundary ID associated with the primary boundary.

  • secondaryBoundary ID associated with the secondary boundary.

    C++ Type:BoundaryName

    Controllable:No

    Description:Boundary ID associated with the secondary boundary.

  • transform_funcFunctions that specify the transformation

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

    Controllable:No

    Description:Functions that specify the transformation

  • translationVector that translates coordinates on the primary boundary to coordinates on the secondary boundary.

    C++ Type:libMesh::VectorValue<double>

    Controllable:No

    Description:Vector that translates coordinates on the primary boundary to coordinates on the secondary boundary.

  • variableVariable for the periodic boundary

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

    Controllable:No

    Description:Variable for the periodic boundary

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.

Advanced Parameters