Time-averaging Surface Output#

Time-averaging Surface Output in Flow360 allows you to collect statistical data for unsteady simulations, providing time-averaged values of flow field variables on geometry surfaces. This is essential for analyzing periodic or turbulent flows where instantaneous values may fluctuate significantly.

Note: Time-averaging outputs are only available when using unsteady time stepping methods.


Available Options#

Option

Description

Output fields

Flow variables to time-average

Output format

File format for the output files

Start step

Time step at which to begin averaging

Write single file

Option to write all surfaces to a single file

Save interval

When to save outputs

Frequency

How often to save the time-averaged output

Frequency offset

Time step at which to begin saving output

Assigned boundaries

Geometry surfaces to apply time-averaging to


Global Time Stepping in Child Cases#

When working with child cases (cases forked from a parent simulation), it’s important to understand that the Frequency, Frequency offset, and Start step parameters refer to the global time step, which is transferred from the parent case.

Example: If the parent case finished at time_step=174, the child case will start from time_step=175. If Frequency=100 is set in the child case, the output will be saved at global time steps 200 (25 time steps into the child simulation), 300 (125 time steps into the child simulation), etc. Frequency offset also refers to the global time step, meaning that if in the previously mentioned child case, Frequency offset=50 was set (with Frequency=100), the output would be saved at global time steps 250 (75 time steps into the child simulation), 350 (175 time steps into the child simulation), etc.


Detailed Descriptions#

Output fields#

The flow variables that will be time-averaged in the output files.

  • Example: Cp, velocity, pressure

Note:

  • See detailed field descriptions in the Surface Output page.

  • Time-averaging is applied to each selected field independently.

Output format#

Specifies the file format for the output files.

  • Default: paraview

  • Options:

    • paraview

    • tecplot

    • both

Notes:

  • Choose the format that best suits your post-processing workflow.

  • Select paraview for .vtu format, tecplot for .plt format, or both to save in both formats.

Start step#

Specifies the time step at which to begin the time-averaging process.

  • Default: -1 (at end of simulation)

  • Example: 5000 (start averaging at time step 5000)

Notes:

  • Set this to a time step after initial transients have settled for more meaningful statistics.

  • Important for child cases - this parameter refers to the global time step, which gets transferred from the parent case (see Global Time Stepping).

Write single file#

Controls whether all surface outputs are written to a single file instead of one file per surface.

  • Default: false

  • Options:

    • true

    • false

Note: This option currently only supports Tecplot output format.

Save interval#

Choose the points in the simulation where the results are saved.

  • Default: Save at end

  • Options:

    • Save at end

    • Custom

Notes:

  • Choose Save at end to save only the final results of the simulation.

  • Choose Custom to save the results in given intervals.

Frequency#

Controls how often the time-averaged output files are generated.

  • Default: -1 (only at end of simulation)

  • Example: 100 — saves output every 100 physical time steps.

    • Standalone case: If you start a simulation from time_step=0 with frequency=100, outputs are saved at time steps 100, 200, 300, etc.

    • Parent-child case: If the parent finished at time_step=174, the child starts from time_step=175. With frequency=100 in the child, outputs are saved at global time steps 200 (25 steps into child), 300 (125 steps into child), 400 (225 steps into child), etc.

Notes:

  • Setting to -1 will only produce output at the end of the simulation.

  • Important for child cases - this parameter refers to the global time step (see Global Time Stepping).

Frequency offset#

Specifies the time step at which to begin saving the time-averaged output.

  • Default: 0 (at beginning of simulation)

  • Example: 1000 — with frequency=100, outputs are saved at time steps 1000, 1100, 1200, etc.

    • Standalone case: If you start a simulation from time_step=0 with frequency=100 and frequency_offset=1000, outputs are saved at time steps 1000, 1100, 1200, etc.

    • Parent-child case: If the parent finished at time_step=174, the child starts from time_step=175. With frequency=100 and frequency_offset=200 in the child, outputs are saved at global time steps 200 (25 steps into child), 300 (125 steps into child), 400 (225 steps into child), etc.

Notes:

  • This setting works in conjunction with Frequency to control the time steps at which output is produced.

  • Important for child cases - this parameter refers to the global time step (see Global Time Stepping).

Assigned boundaries#

The geometry surfaces where time-averaging will be applied.

  • Example: wing, fuselage, all_walls

Note: You can specify individual surfaces or use pattern matching (e.g., "wall*") to select multiple surfaces.


💡 Tips

  • Averaging window: Ensure your simulation runs long enough after the Start Step to collect meaningful statistics

  • Transient effects: Set Start Step beyond the initial transient period

  • Periodic flows: For flows with known periodicity, average over multiple complete cycles

  • Flow stability: Monitor convergence of time-averaged quantities to ensure statistical stability

When visualizing time-averaged surface output, consider:

  • Comparing time-averaged and instantaneous fields to identify regions of high unsteadiness

  • Using time-averaged fields to calculate stable performance metrics

  • Examining the difference between time-averaged and steady-state solutions for similar conditions

  • Creating streamlines based on time-averaged velocity fields to reveal mean flow patterns


❓ Frequently Asked Questions

  • How is time-averaging calculated?

    Time-averaging is calculated using an average formula:

    avg_new = avg_old + (new_value - avg_old) / n
    

    Where:

    • avg_new is the updated time-average

    • avg_old is the previous time-average

    • new_value is the instantaneous value at the current time step

    • n is the number of samples since the start of averaging

  • What’s the difference between time-averaging and animation?

    • Animation: Captures instantaneous “snapshots” of the flow at specific time steps (controlled by Frequency)

    • Time-averaging: Produces statistical averages over many time steps, reducing noise and revealing mean flow patterns

  • When should I use time-averaging?

    Time-averaging is particularly useful for:

    • Turbulent flows where instantaneous values fluctuate significantly

    • Periodic flows where cycle-to-cycle statistics are of interest

    • Calculating mean aerodynamic performance metrics in unsteady simulations

    • Identifying quasi-steady flow features in dynamically changing simulations


🐍 Python Example Usage

# Example of setting up time-averaged surface output in Python
time_avg_output = fl.TimeAverageSurfaceOutput(
    name="Wing and Fuselage Time Avg",  # Descriptive name for this output
    output_format="paraview",
    output_fields=["primitiveVars", "Cp"],
    entities=[
        volume_mesh["wing"],
        volume_mesh["fuselage"],
    ],
    start_step=1000,  # Start averaging after time step 1000
    frequency=100,    # Output every 100 time steps
    frequency_offset=1500,  # Start outputting at time step 1500
)