Cardinal
include
transfers
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
24
class
NekMeshDeformation
:
public
FieldTransferBase
25
{
26
public
:
27
static
InputParameters
validParams
();
28
29
NekMeshDeformation
(
const
InputParameters & parameters);
30
31
~NekMeshDeformation
();
32
33
virtual
void
sendDataToNek
()
override
;
34
35
protected
:
37
void
sendBoundaryDeformationToNek
();
38
40
void
sendVolumeDeformationToNek
();
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
};
NekMeshDeformation::_mesh_velocity_elem
double * _mesh_velocity_elem
mesh velocity for a given element, used internally for calculating mesh velocity over one element
Definition:
NekMeshDeformation.h:60
NekMeshDeformation::sendVolumeDeformationToNek
void sendVolumeDeformationToNek()
Send volume mesh deformation flux to nekRS.
field::NekWriteEnum
NekWriteEnum
Enumeration of possible fields to write in nekRS.
Definition:
CardinalEnums.h:117
NekMeshDeformation::NekMeshDeformation
NekMeshDeformation(const InputParameters ¶meters)
NekMeshDeformation::calculateMeshVelocity
void calculateMeshVelocity(int e, const field::NekWriteEnum &field)
field
Definition:
CardinalEnums.h:92
NekMeshDeformation
Couples NekRS and MOOSE through mesh displacements.
Definition:
NekMeshDeformation.h:24
CardinalEnums.h
NekMeshDeformation::_displacement_x
double * _displacement_x
displacement in x for all nodes from MOOSE, for moving mesh problems
Definition:
NekMeshDeformation.h:51
NekMeshDeformation::sendDataToNek
virtual void sendDataToNek() override
Send data to Nek.
NekMeshDeformation::sendBoundaryDeformationToNek
void sendBoundaryDeformationToNek()
Send boundary deformation to nekRS.
NekMeshDeformation::_displacement_y
double * _displacement_y
displacement in y for all nodes from MOOSE, for moving mesh problems
Definition:
NekMeshDeformation.h:54
NekMeshDeformation::~NekMeshDeformation
~NekMeshDeformation()
FieldTransferBase
Definition:
FieldTransferBase.h:28
NekMeshDeformation::_displacement_z
double * _displacement_z
displacement in z for all nodes from MOOSE, for moving mesh problems
Definition:
NekMeshDeformation.h:57
NekMeshDeformation::validParams
static InputParameters validParams()
Generated on Fri May 15 2026 12:57:15 for Cardinal by
1.8.16