Line data Source code
1 : /**********************************************************************/ 2 : /* DO NOT MODIFY THIS HEADER */ 3 : /* Swift, a Fourier spectral solver for MOOSE */ 4 : /* */ 5 : /* Copyright 2024 Battelle Energy Alliance, LLC */ 6 : /* ALL RIGHTS RESERVED */ 7 : /**********************************************************************/ 8 : 9 : #include "AddLBMBCAction.h" 10 : #include "LatticeBoltzmannProblem.h" 11 : 12 : registerMooseAction("SwiftApp", AddLBMBCAction, "add_tensor_bc"); 13 : 14 : InputParameters 15 0 : AddLBMBCAction::validParams() 16 : { 17 0 : InputParameters params = MooseObjectAction::validParams(); 18 0 : params.addClassDescription("Add LBM boundary condition object."); 19 0 : return params; 20 0 : } 21 : 22 0 : AddLBMBCAction::AddLBMBCAction(const InputParameters & parameters) : MooseObjectAction(parameters) 23 : { 24 0 : } 25 : 26 : void 27 0 : AddLBMBCAction::act() 28 : { 29 0 : auto lb_problem = std::dynamic_pointer_cast<LatticeBoltzmannProblem>(_problem); 30 0 : if (!lb_problem) 31 0 : mooseError( 32 : "LBM BCs are only supported if the problem class is set to `LatticeBoltzmannProblem`"); 33 : 34 0 : if (_current_task == "add_tensor_bc") 35 0 : lb_problem->addTensorBoundaryCondition(_type, _name, _moose_object_pars); 36 0 : }