www.mooseframework.org
LevelSetProblem.C
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #include "LevelSetProblem.h"
11 #include "LevelSetTypes.h"
12 
13 #include "MultiAppTransfer.h"
14 
15 registerMooseObject("LevelSetApp", LevelSetProblem);
16 
17 template <>
18 InputParameters
20 {
21  InputParameters params = validParams<FEProblem>();
22  params.addClassDescription("A specilized problem class that adds a custom call to "
23  "MultiAppTransfer execution to transfer adaptivity for the level set "
24  "reinitialization.");
25  return params;
26 }
27 
28 LevelSetProblem::LevelSetProblem(const InputParameters & parameters) : FEProblem(parameters) {}
29 
30 void
32 {
33  FEProblem::computeMarkers();
34  setCurrentExecuteOnFlag(LevelSet::EXEC_COMPUTE_MARKERS);
35  execMultiAppTransfers(LevelSet::EXEC_COMPUTE_MARKERS, MultiAppTransfer::TO_MULTIAPP);
36  setCurrentExecuteOnFlag(EXEC_NONE);
37 }
38 
39 bool
41 {
42  bool adapt = FEProblem::adaptMesh();
43  setCurrentExecuteOnFlag(LevelSet::EXEC_ADAPT_MESH);
44  execMultiAppTransfers(LevelSet::EXEC_ADAPT_MESH, MultiAppTransfer::TO_MULTIAPP);
45  setCurrentExecuteOnFlag(EXEC_NONE);
46  return adapt;
47 }
LevelSet::EXEC_COMPUTE_MARKERS
const ExecFlagType EXEC_COMPUTE_MARKERS
LevelSet::EXEC_ADAPT_MESH
const ExecFlagType EXEC_ADAPT_MESH
LevelSetProblem.h
LevelSetProblem::LevelSetProblem
LevelSetProblem(const InputParameters &parameters)
Definition: LevelSetProblem.C:28
LevelSetTypes.h
LevelSetProblem
Problem that defines a custom call to MultiAppTransfers to allow for adaptivity to be transferred fro...
Definition: LevelSetProblem.h:23
LevelSetProblem::computeMarkers
virtual void computeMarkers() override
Definition: LevelSetProblem.C:31
validParams< LevelSetProblem >
InputParameters validParams< LevelSetProblem >()
Definition: LevelSetProblem.C:19
registerMooseObject
registerMooseObject("LevelSetApp", LevelSetProblem)
LevelSetProblem::adaptMesh
virtual bool adaptMesh() override
Definition: LevelSetProblem.C:40