This page describes how data is sent from MOOSE to NekRS with syncSolutions(TO_EXTERNAL_APP)
. These steps are summarized in Figure 1.

Figure 1: Data transfers that occur from the MOOSE-Wrapped Nek file into NekRS
Specifically, we read from AuxVariables
in the NekRS-wrapped input file (say, nek.i
) into NekRS's internal arrays - NOT necessarily that new information is being sent into NekRS from some coupled MOOSE application. A detailed breakdown of the steps is:
For conjugate heat transfer, send boundary heat flux from
avg_flux
variable into NekRS's internal arrays. This will print out something like:
For volumetric heating, send volumetric power density from
heat_source
variable into NekRS's internal arrays. This will print out something like:
Copy the scratch space to the device.
For mesh deformation coupling, send the boundary displacement from the
displacement_x
,displacement_y
, anddisplacement_z
variables into NekRS's internal arrays. This will print out something like the following, after which we call various functions in NekRS to update the geometric terms associated with the new mesh.
For mesh deformation coupling, copy the mesh deformation information from host to device.