CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   CFX (https://www.cfd-online.com/Forums/cfx/)
-   -   Discontinuity in contours over periodic interfaces (https://www.cfd-online.com/Forums/cfx/253855-discontinuity-contours-over-periodic-interfaces.html)

jinzzasol January 4, 2024 12:28

Discontinuity in contours over periodic interfaces
 
4 Attachment(s)
Hello,

I recently ran two different CFDs for a single-stage compressor, single domain and full annular rotor case. I created a mesh for the rotor domain using ICEM CFD, and for the stator I used TurboGrid.

In CFD-Post, I found a discontinuity between the periodic interface in the rotor domain when I drew contour plots of vorticity, pressure, etc. Raw properties like pressure, temperature look better than other variables like vorticity.

The periodic interface method was GGI, and I thought changing this method to 'Automatic' or '1:1' would make a difference. However, when I set it as 'Automatic' then the solver chose to use 'GGI' (it sort of makes sense, because it is automatic); when I set it as '1:1', it showed an error message while saving a def file and use 'GGI'.

When I created the mesh in ICEM CFD, I also set the periodic interface but it seems not to affect the result.

I used to generate a mesh using TurboGrid and this is very new to me.

Is it an inherited issue in CFX, or is there any other way to resolve it?
Below You can find the rotor mesh and the contours with discontinuity.

Thank you

Opaque January 4, 2024 13:21

Good that you already tried the Automatic, and 1:1.

The fact you cannot write the definition file with 1:1 means you have a non-conformal mesh; therefore, your expectations of periodicity enforcement must be adjusted.

For GGI discretization, the periodicity treatment is flux-based, i.e. the fluxes are periodic; however, the nodal values cannot be enforced to be periodic since they do not match on either side.

In addition, are you looking at "conservative" or "hybrid" values when creating your plots? For conservative values, the periodicity should be exact for 1:1, but approximate for GGI. For hybrids, it depends on the software settings for each variable and the discretization type.

ghorrocks January 4, 2024 17:15

In addition to what Opaque said, the post-processing of periodic interfaces is problematic as the contour generation function processes only up to the interface and does not use points beyond the interface (even though the periodic assumption means it could). This will result in discontinuities in contour lines at periodic interfaces - and at any type of interface.

This effect is unavoidable in CFD-Post, and I do not know of any other post processing package which can draw continuous contours over periodic interfaces.

The only thing I can recommend is to refine your mesh as this minimises the effect. A finer mesh means the discontinuity will be smaller.

jinzzasol January 4, 2024 21:05

Quote:

Originally Posted by ghorrocks (Post 862611)
In addition to what Opaque said, the post-processing of periodic interfaces is problematic as the contour generation function processes only up to the interface and does not use points beyond the interface (even though the periodic assumption means it could). This will result in discontinuities in contour lines at periodic interfaces - and at any type of interface.

This effect is unavoidable in CFD-Post, and I do not know of any other post processing package which can draw continuous contours over periodic interfaces.

The only thing I can recommend is to refine your mesh as this minimises the effect. A finer mesh means the discontinuity will be smaller.


Thank you to both of you.

However, I am still not sure that this was caused by coarse mesh. Because I have been using TurboGrid for turbomachinery CFD for many years, and have not seen this level of discontinuity in CFD-Post. Besides, in the same analysis, a stator domain mesh was generated by TurboGrid, at almost the same quality and number of elements (rotor 1.2M, stator 1.1M) and there is no discontinuity. That's why I double-checked the periodic interface methods in CFX.

This might be unavoidable in CFD-Post (which I would like to believe it), yet I have not found strong evidence to support it.

I may try increasing the number of elements, so it will minimise discontinuity. This is also challenging because of a full annular rotor setup in the model. Currently, the total number of elements is over 40M. So, if I increase it, it will be a very heavy model.

I'm also thinking of checking the interface setup in ICEM CFD. I checked it when I was generating a mesh though.

If you have any further ideas, please let me know.

Thank you for the comments, again

jinzzasol January 4, 2024 21:09

Quote:

Originally Posted by Opaque (Post 862604)
Good that you already tried the Automatic, and 1:1.

The fact you cannot write the definition file with 1:1 means you have a non-conformal mesh; therefore, your expectations of periodicity enforcement must be adjusted.

For GGI discretization, the periodicity treatment is flux-based, i.e. the fluxes are periodic; however, the nodal values cannot be enforced to be periodic since they do not match on either side.

In addition, are you looking at "conservative" or "hybrid" values when creating your plots? For conservative values, the periodicity should be exact for 1:1, but approximate for GGI. For hybrids, it depends on the software settings for each variable and the discretization type.

Yes, I found "conservative" properties look better than "hybrid" ones, but not perfect. And most of all, I have user-defined expressions and variables to draw contours. There is no option to choose for these parameters.

Opaque January 5, 2024 12:34

Quote:

Originally Posted by jinzzasol (Post 862615)
Thank you to both of you.

However, I am still not sure that this was caused by coarse mesh. Because I have been using TurboGrid for turbomachinery CFD for many years, and have not seen this level of discontinuity in CFD-Post. Besides, in the same analysis, a stator domain mesh was generated by TurboGrid, at almost the same quality and number of elements (rotor 1.2M, stator 1.1M) and there is no discontinuity. That's why I double-checked the periodic interface methods in CFX.

This might be unavoidable in CFD-Post (which I would like to believe it), yet I have not found strong evidence to support it.

I may try increasing the number of elements, so it will minimise discontinuity. This is also challenging because of a full annular rotor setup in the model. Currently, the total number of elements is over 40M. So, if I increase it, it will be a very heavy model.

I'm also thinking of checking the interface setup in ICEM CFD. I checked it when I was generating a mesh though.

If you have any further ideas, please let me know.

Thank you for the comments, again

Since you are using Ansys TurboGrid, I would be certain the periodic are conformal. Then, select 1:1 and we go from there. I do not recall TurboGrid creating non-conformal periodic, at least is not a common occurrence

Also, for user-defined variables, the only option is Conservative since Hybrid is only computed by the solver.

jinzzasol January 5, 2024 14:17

I think I have made you confused. Rotor mesh was generated by ICEM CFD. Stator mesh was generated by TurboGrid. There is no discontinuity in the Stator domain. There is a discontinuity in the Rotor domain.

Hope this makes it clear.

Opaque January 5, 2024 20:38

Quote:

Originally Posted by jinzzasol (Post 862649)
I think I have made you confused. Rotor mesh was generated by ICEM CFD. Stator mesh was generated by TurboGrid. There is no discontinuity in the Stator domain. There is a discontinuity in the Rotor domain.

Hope this makes it clear.

How come you did not mesh the rotor in TurboGrid? What kind of limitation did you encounter?

Were you not able to enforce conformal periodic mesh with ICEM CFD?

jinzzasol January 6, 2024 19:58

Quote:

Originally Posted by Opaque (Post 862657)
How come you did not mesh the rotor in TurboGrid? What kind of limitation did you encounter?

Were you not able to enforce conformal periodic mesh with ICEM CFD?

In fact, I used two different rotor airfoils in the same rotor row. Technically, they are the same airfoils, but slight differences in chord length. Because of that, TurboGrid did not generate the same periodic surface, and there was a mismatch between the two rotors at the periodic surface. So, I used CAD modelling to create a fluid domain and ICEM CFD to generate a mesh for the rotors. In this way, I was able to match the shape of the periodic surfaces of two different rotors.

To remind you, the rotor row was a full annulus.

Opaque January 8, 2024 13:45

A bit confused, but if the model is full annulus and the "periodic surfaces" are conformal, you should not need any domain interface between passages in the rotor.

By creating a domain interface, and allowing it to switch to GGI discretization you have created a discontinuity in the discretization, and it would be reflected in the solution.

Are you computing the vorticity manually in CFD-Post, or you request it as an Output List Variable in CFX-Pre. Those are different calculations and may be sensitive to mesh dependency.

jinzzasol January 8, 2024 14:06

Quote:

Originally Posted by Opaque (Post 862770)
A bit confused, but if the model is full annulus and the "periodic surfaces" are conformal, you should not need any domain interface between passages in the rotor.

By creating a domain interface, and allowing it to switch to GGI discretization you have created a discontinuity in the discretization, and it would be reflected in the solution.

Are you computing the vorticity manually in CFD-Post, or you request it as an Output List Variable in CFX-Pre. Those are different calculations and may be sensitive to mesh dependency.


So, It is a periodic interfaces with general connection. I thought those surfaces still need to be interfaced, like tip clearance surfaces. (If you created rotor domain using TurboGrid, there is a tip clearance surface interfaced using general connection.) So what you said was that they don't need any interface set up. Is this correct?


It is an Output List Variable.

Opaque January 8, 2024 14:11

Quote:

Originally Posted by jinzzasol (Post 862771)
So, It is a periodic interfaces with general connection. I thought those surfaces still need to be interfaced, like tip clearance surfaces. (If you created rotor domain using TurboGrid, there is a tip clearance surface interfaced using general connection.) So what you said was that they don't need any interface set up. Is this correct?


It is an Output List Variable.

If the meshes are conformal, I am surprised you need it. If you still need it, and the mesh is conformal, you can force to be 1:1.

If it cannot write the definition file means it is not conformal and that is a fact.

jinzzasol January 8, 2024 14:35

Quote:

Originally Posted by Opaque (Post 862772)
If the meshes are conformal, I am surprised you need it. If you still need it, and the mesh is conformal, you can force to be 1:1.

If it cannot write the definition file means it is not conformal and that is a fact.


Let me try both of them: (1) no interface, (2) 1:1. I am going to run the analyses and will come back in a few days.


Thank you

jinzzasol January 18, 2024 11:33

Quote:

Originally Posted by Opaque (Post 862772)
If the meshes are conformal, I am surprised you need it. If you still need it, and the mesh is conformal, you can force to be 1:1.

If it cannot write the definition file means it is not conformal and that is a fact.

Hello,

As I mentioned in the previous thread, I tested two methods by running two separate cases, no interface and 1:1, and there was no discontinuity with them. Every contour was smooth and clean no matter what variables were chosen.

Thank you very much

jinzzasol January 26, 2024 21:20

1 Attachment(s)
Quote:

Originally Posted by Opaque (Post 862772)
If the meshes are conformal, I am surprised you need it. If you still need it, and the mesh is conformal, you can force to be 1:1.

If it cannot write the definition file means it is not conformal and that is a fact.


Updates: It worked when I only used a single type of meshes. With two different domain, it didn't work. Now I've been trying to match every single node on both periodic surfaces; I was able to do this for the nodes on edges, but not for the nodes on periodic surfaces. There is a mismatch and I cannot control every node on surface.

Opaque January 29, 2024 07:51

Quote:

Originally Posted by jinzzasol (Post 863837)
Updates: It worked when I only used a single type of meshes. With two different domain, it didn't work. Now I've been trying to match every single node on both periodic surfaces; I was able to do this for the nodes on edges, but not for the nodes on periodic surfaces. There is a mismatch and I cannot control every node on surface.

Would you mind sharing the "Domain Interface: <name>" diagnostics from the output file?

jinzzasol January 29, 2024 08:36

Quote:

Originally Posted by Opaque (Post 863908)
Would you mind sharing the "Domain Interface: <name>" diagnostics from the output file?

Code:

DOMAIN INTERFACE: Rotor Periodic
    Boundary List1 = Rotor Periodic Side 1
    Boundary List2 = Rotor Periodic Side 2
    Interface Type = Fluid Fluid
    INTERFACE MODELS:
      Option = General Connection
      FRAME CHANGE:
        Option = None
      END
      MASS AND MOMENTUM:
        Option = Conservative Interface Flux
        MOMENTUM INTERFACE MODEL:
          Option = None
        END
      END
      PITCH CHANGE:
        Option = None
      END
    END
    MESH CONNECTION:
      Option = GGI
    END
  END


Opaque January 29, 2024 13:07

that is the setup. What do you get for the diagnostics?

jinzzasol January 29, 2024 13:11

Quote:

Originally Posted by Opaque (Post 863931)
that is the setup. What do you get for the diagnostics?

Not sure where I can find "Diagnostics" that you are referring to. Are you looking for the lines below?

Code:

Domain Interface Name : Rotor Periodic
    Discretization type                                  =        GGI
    Intersection type                                    =      Direct
    Non-overlap area fraction on side 1                  =    6.66E-04
    Non-overlap area fraction on side 2                  =    6.66E-04

Code:

Domain Interface Name : Rotor Periodic
    Discretization type                                  =        GGI
    Intersection type                                    = Partitioner
    Non-overlap area fraction on side 1                  =    6.66E-04
    Non-overlap area fraction on side 2                  =    6.66E-04


Opaque January 29, 2024 15:08

and, you are using Turbogrid to mesh the Rotor?

What is special about this rotor that Turbogrid cannot get conformal meshes on the periodic surfaces?


All times are GMT -4. The time now is 21:52.