CFD Online Discussion Forums

CFD Online Discussion Forums (
-   CFX (
-   -   mesh compressing (

natalie October 14, 2012 12:11

mesh compressing
Hello everyone!

I'm trying to simulate the compression of domain using ANSYS CFX.

Mesh deforms with time/ But very soon the elements penetrate in each other and solution crashes.
I've found an example of such kind of simulation:

And the author of simulation uses there InterpolationLocation user-function. And this function seems to be the thing that makes the solution work correctly. But i can't exactly understand, what it does.

Has anyone the experience in such kinds of simulations?

Any help would be a great support for me.

Thanks in advance

ghorrocks October 14, 2012 18:08

The CFX moving mesh uses laplacian smoothing to convert a boundary motion to motion of the entire mesh. When the boundaries compress the mesh this can lead to mesh elements turning inside out.

There have been zillions of posts on this on the forum over the years. Have a search for them.

But the issue is very problem dependant - there are many different approaches to help and which is best depends on what you are modelling. Can you post an image and a description of what you are modelling?

natalie October 15, 2012 01:15

in fact, i just want to compress the cylindrical tube alond radius with time. The speed of compression depends on flow properties and is not known beforehand. It should decrease in volume almost 5 times.

i've read posts. and i haven't found the proper answer for my situation.

thanks a lot for your help

ghorrocks October 15, 2012 05:19

This might work with the existing mesh smoothing but it is always risky compressing the mesh down. If you cannot get it to work then prescribe the mesh motion with a fortran subroutine and then you should be able to define the mesh to scale with the motion and it will not fold. But I would only do the fortran approach when you are certain the built in smoothing will not work for you.

natalie October 15, 2012 07:30

thanks a lot for your answer.
But, as i've understood, fortran routines are available only for predefined mesh compression. Mine is not known beforehand. Is it possible to describe this type of motion with fortran subroutines?

ghorrocks October 15, 2012 17:25

No, fortran routines can be made to define any mesh motion. The example is a simple one where it just reads in a pre-defined mesh and uses that. But you can adapt that so that it radially scales the mesh under the control of some parameter.

natalie October 16, 2012 01:52

Thanks a lot for your answer, Glenn.
Is there anywhere an example of using fortran routines not for pre-defined mesh motion. And some other examples of using fortran routines except those ones from tutorials?

ghorrocks October 16, 2012 06:31

CFX support probably has some examples. But the concept is simple - rather than reading in a new mesh and writing it to the solver, you read the existing mesh, transform it and write it back to the solver. However getting the function calls to get the current mesh might take some digging (I do not know it, I do not know CFX fortran very well as it is rarely required).

natalie October 16, 2012 07:05

Thank you very much for all your help, Glenn!

All times are GMT -4. The time now is 15:14.