We have an exciting announcement about badges coming in May 2025. Until then, we will temporarily stop issuing new badges for course completions and certifications. However, all completions will be recorded and fulfilled after May 2025.
Fluids

Fluids

Topics related to Fluent, CFX, Turbogrid and more.

Target Field Data for Turbulence Model Optimization

    • Andreas Türke
      Subscriber

      Hello everyone,

      I would like to perform a turbulence model optimization in Fluent 2024R1. Therefore I have high-fidelty results from a LES, which I would like to use as target field data. According to the manual (47.2.2.5. Defining Observables for Turbulence Model Optimization), I can write and read target field data with the following text commands:

      • /adjoint/utilities/interpolate/write-data
      • /adjoint/utilities/interpolate/read-data

      Unfortunately, there seem to some problems when writing and/or reading the data. To show this behavior, I am presenting the workflow with the data of a channel flow with main flow in z-direction.

      Writing Target Field Data:

      When I export the target field data, like the velocity in x-direction, with the "write-data" command, I get the following output:

      //adjoint/utilities/interpolate> write-data
      Export field of> z-velocity
      Interpolation file name [] vel-z
      Writing data to vel-z.ip ...
      x-coord
      y-coord
      z-coord
      pressure
      Done.

       

      At this point, the behavior already irritates me as the output says, that the "pressure" is exported, although i chose "z-velocity".

      Reading Target Field Data:

      In the next step, I would like to read the exported data back into same case into the user-defined memory (UDM). In this example, the target is UDM 0. Like before, according to the output, the interpolation data "pressure" is imported, although this should be "z-velocity".

      //adjoint/utilities/interpolate> read-data
      User define memory id [] 0
      Interpolation file name [] vel-z.ip
      Reading vel-z.ip...
      Reading IP data ...
          x-coord
          y-coord
          z-coord
          pressure
        Done.
        Initializing values...
      Done.

      Data Comparison

      When I compare the results of a contour plot of the z-velocity and the contant of UDM 0, I notice that both datasets, have a similar "shape", but the values are diffently scaled. The original data ranges from 7.2 to 20.4 m/s, whereas the UDM 0 values range from -0.003 to 13.2 m/s. So the exported data is neither the pressure field, as I might expected, nor the actual z-velocity field.

      Countour plot of z-velocityContour plot of UDM 0
      When I create an adjoint observable (target-volume-integral) with z-velocity and UDM0, the value does not evaluate to 0, although both fields should be equal. When I repeat the workflow but export/import the Static Pressure (field name: pressure) instead, everything seems wo work properly. I also tried this on another computer with Fluent 2024R2 and the same error occurs.

      Could you please tell me if I am doing something wrong with this workflow or if that is bug in Fluent? And is there a workaround I could use instead?

       

      Kind regards,

      Andreas

       

       

    • Murari Iyengar
      Ansys Employee

      Hi, you have to disable the node values in the contour plot. Else, there will be interpolation for display which can give you a different range.

Viewing 1 reply thread
  • You must be logged in to reply to this topic.