4.17. IO Region

The Input_Output Region (IO Region) lets you use data from a previously-generated Exodus dataset (e.g. output from some other simulation code) in your simulation (as a initial condition, boundary condition, etc…).

It uses transfer and solution control to map the variables from the mesh they are saved on to the current problem’s mesh.

Note

Just like other Sierra Regions the Input_Output Region must have its own Finite Element model command block defined. A full description of the syntax can be found in the command references

As an example, let us assume that an input mesh for an Input_Output Region contains a nodal variable ConvCoeff that we wish to use in another Region. In this case an outline for one-way transfer of ConvCoeff to a Region, second_region, in a steady-state problem would be:

Begin Sierra
  Begin Finite Element Model input_transfer
    ...
  End

  Begin Transfer my_first_transfer
    transfer commands for input_output_region to second_region
    SEND field hNd state none TO ConvCoeff state none
    ...
  End

  Begin Procedure My_Procedure
    Begin Solution Control Description
      Use System Main
      Begin System Main
        Begin Sequential MySolveBlock
          Advance io_region
          transfer my_first_transfer
          Advance second_Region
        End
      End
    End

    Begin Input_Output io_region
      USE FINITE ELEMENT MODEL my_input_transfer
    End

    Begin Fuego Region second_region
      use Finite Element Model input_transfer
      USER FIELD REAL NODE SCALAR ConvCoeff on surface_1
      ...
    End
    ...
  End
  ...
End Sierra

4.17.1. Controlling Time

The Input_Output Region can also be used with transient data. When the IO region contains transient data, there are several options for controlling which time value to transfer to the solution region. The IO region will interpolate linearly between its time steps when sending data to the solution region.

  • Fixed Time: If you specify a fixed time in the IO region block, all transfers will use that time from the IO region data set. If the time you specify is larger than the last time in the IO region data set, the last time step will be used.

  • Offset Time: This is a constant offset added to the simulation time. For example, if an offset of 10 is provided, at simulation time 0 the IO region will send its data at 10 seconds. The offset is added to the simulation time regardless of whether periodicity is active or not.

  • Start Time: The start time should be provided along with periodicity time. If the start time is given as 25 and the periodicity as 10 then the simulation will use the time values between 25 and 35 from the IO region repeatedly once the simulation reaches 25. The default start time is 0.

  • Periodicity Time: This controls how long of a time period to repeat. The default periodicity is 0 (not enabled).

The syntax for these commands are described in the command reference section.

When fixed time is not specified, the IO Region time is selected using the following logic:

if simulation_time > start_time and periodicity > 0
   io_region_time = start_time + (simulation_time - start_time) % periodicity + offset
else
   io_region_time = simulation_time + offset

When fixed time was specified, io_region_time = fixed_time