Cardinal
NekMeshDeformation.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 "CardinalEnums.h"
22 
25 {
26 public:
27  static InputParameters validParams();
28 
29  NekMeshDeformation(const InputParameters & parameters);
30 
32 
33  virtual void sendDataToNek() override;
34 
35 protected:
38 
41 
48  void calculateMeshVelocity(int e, const field::NekWriteEnum & field);
49 
51  double * _displacement_x = nullptr;
52 
54  double * _displacement_y = nullptr;
55 
57  double * _displacement_z = nullptr;
58 
60  double * _mesh_velocity_elem = nullptr;
61 };
double * _mesh_velocity_elem
mesh velocity for a given element, used internally for calculating mesh velocity over one element
Definition: NekMeshDeformation.h:60
void sendVolumeDeformationToNek()
Send volume mesh deformation flux to nekRS.
NekWriteEnum
Enumeration of possible fields to write in nekRS.
Definition: CardinalEnums.h:117
NekMeshDeformation(const InputParameters &parameters)
void calculateMeshVelocity(int e, const field::NekWriteEnum &field)
Definition: CardinalEnums.h:92
Couples NekRS and MOOSE through mesh displacements.
Definition: NekMeshDeformation.h:24
double * _displacement_x
displacement in x for all nodes from MOOSE, for moving mesh problems
Definition: NekMeshDeformation.h:51
virtual void sendDataToNek() override
Send data to Nek.
void sendBoundaryDeformationToNek()
Send boundary deformation to nekRS.
double * _displacement_y
displacement in y for all nodes from MOOSE, for moving mesh problems
Definition: NekMeshDeformation.h:54
Definition: FieldTransferBase.h:28
double * _displacement_z
displacement in z for all nodes from MOOSE, for moving mesh problems
Definition: NekMeshDeformation.h:57
static InputParameters validParams()