www.mooseframework.org
Transfer.h
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 #pragma once
11 
12 // Moose
13 #include "MooseObject.h"
14 #include "MooseTypes.h"
15 #include "SetupInterface.h"
16 #include "Restartable.h"
17 
18 // Forward declarations
19 class Transfer;
20 class SubProblem;
21 class FEProblemBase;
22 class FEProblem;
23 class SystemBase;
24 
25 namespace libMesh
26 {
27 class System;
28 class EquationSystems;
29 }
30 
31 template <>
33 
40 class Transfer : public MooseObject, public SetupInterface, public Restartable
41 {
42 public:
44  virtual ~Transfer() = default;
45 
49  virtual void execute() = 0;
50 
55  virtual void initialSetup() {}
56 
65  static System * find_sys(EquationSystems & es, const std::string & var_name);
66 
67 protected:
71 
73 
74 public:
75  const static Number OutOfMeshValue;
76 };
77 
A class for creating restricted objects.
Definition: Restartable.h:29
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
Definition: FEProblem.h:24
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
FEProblemBase & _fe_problem
Definition: Transfer.h:69
The following methods are specializations for using the libMesh::Parallel::packed_range_* routines fo...
Base class for a system (of equations)
Definition: SystemBase.h:92
virtual void execute()=0
Execute the transfer.
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
InputParameters validParams< Transfer >()
Definition: Transfer.C:26
SystemBase & _sys
Definition: Transfer.h:70
Every object that can be built by the factory should be derived from this class.
Definition: MooseObject.h:42
const InputParameters & parameters() const
Get the parameters of the object.
Definition: MooseObject.h:65
virtual ~Transfer()=default
virtual void initialSetup()
Method called at the beginning of the simulation for checking integrity or doing one-time setup...
Definition: Transfer.h:55
Transfer(const InputParameters &parameters)
Definition: Transfer.C:48
static const Number OutOfMeshValue
Definition: Transfer.h:75
THREAD_ID _tid
Definition: Transfer.h:72
SubProblem & _subproblem
Definition: Transfer.h:68
Generic class for solving transient nonlinear problems.
Definition: SubProblem.h:59
static System * find_sys(EquationSystems &es, const std::string &var_name)
Small helper function for finding the system containing the variable.
Definition: Transfer.C:65
unsigned int THREAD_ID
Definition: MooseTypes.h:161
Base class for all Transfer objects.
Definition: Transfer.h:40