Cardinal
NekTransferBase.h
Go to the documentation of this file.
1 /********************************************************************/
2 /* SOFTWARE COPYRIGHT NOTIFICATION */
3 /* Cardinal */
4 /* */
5 /* (c) 2021 UChicago Argonne, LLC */
6 /* ALL RIGHTS RESERVED */
7 /* */
8 /* Prepared by UChicago Argonne, LLC */
9 /* Under Contract No. DE-AC02-06CH11357 */
10 /* With the U. S. Department of Energy */
11 /* */
12 /* Prepared by Battelle Energy Alliance, LLC */
13 /* Under Contract No. DE-AC07-05ID14517 */
14 /* With the U. S. Department of Energy */
15 /* */
16 /* See LICENSE for full restrictions */
17 /********************************************************************/
18 
19 #pragma once
20 
21 #include "MooseObject.h"
22 #include "PostprocessorInterface.h"
23 
24 class NekRSProblem;
25 class NekRSMesh;
26 
31 class NekTransferBase : public MooseObject, public PostprocessorInterface
32 {
33 public:
34  static InputParameters validParams();
35 
36  NekTransferBase(const InputParameters & parameters);
37 
39  virtual void sendDataToNek() {}
40 
42  virtual void readDataFromNek() {}
43 
45  const MooseEnum & direction() const { return _direction; }
46 
47 protected:
53  void addExternalPostprocessor(const std::string name, const Real initial);
54 
59  void checkAllocatedUsrwrkSlot(const unsigned int & u) const;
60 
63 
66 
68  const MooseEnum & _direction;
69 };
static InputParameters validParams()
const MooseEnum & _direction
Direction of the transfer.
Definition: NekTransferBase.h:68
Definition: NekRSMesh.h:50
Definition: NekTransferBase.h:31
void addExternalPostprocessor(const std::string name, const Real initial)
NekRSProblem & _nek_problem
The NekRSProblem using the field transfer interface.
Definition: NekTransferBase.h:62
virtual void readDataFromNek()
Read data from Nek.
Definition: NekTransferBase.h:42
Solve nekRS wrapped as a MOOSE app.
Definition: NekRSProblem.h:36
const MooseEnum & direction() const
Get the direction of the transfer.
Definition: NekTransferBase.h:45
void checkAllocatedUsrwrkSlot(const unsigned int &u) const
NekRSMesh * _nek_mesh
The underlying NekRSMesh mirror.
Definition: NekTransferBase.h:65
virtual void sendDataToNek()
Send data to Nek.
Definition: NekTransferBase.h:39
NekTransferBase(const InputParameters &parameters)