CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   CFX (https://www.cfd-online.com/Forums/cfx/)
-   -   Free Fall CEL Definition (https://www.cfd-online.com/Forums/cfx/197703-free-fall-cel-definition.html)

kanaha January 14, 2018 07:47

Free Fall CEL Definition
 
Hello All;

I'm new member of this forum but I've figured many problems out with your posts before looking as a guest member. Firstly, I would like to thank all of you. And first time I can't find answer of my question in forum :/

I'm trying to setup a free fall object simulation on CFX. Object will be free at 800 meters until reach 300 m. Free fall rule says my final speed will be around 100 m/s but I should keep it under 50 m/s and it depends on my design. But how can I test my design? I m very confused about boundary conditions. I setup transient analysis and I've written CEL function at Inlet of enclosure as ' g*t ' . With this CEL, I can't verify my design whether vertical speed is under 50 m/s because it's increasing independent with my design.
And I changed CEL function at inlet as
' (9.81 [m/s^2] + areaAve(Force Y)@object) / 0.5 [kg] ) * t '
But this time CFX doesnt accept this CEL because of Force Y is doesnt exist in CFX setup.

Do you have any idea about my problem?

Thank you all.

Opaque January 14, 2018 13:00

It seems you need

force_y()@object

kanaha January 14, 2018 13:06

It doesnt work:( I also tried;
' Force Y(areaAve)@Object '
But result is same... Error message is that;
'Bad expression value 'AirVelocity' detected in parameter 'Normal Speed' in object '/FLOW:Flow Analysis 1/DOMAIN:FlowVolume/BOUNDARY:Inlet/BOUNDARY CONDITIONS/MASS AND MOMENTUM'.
CEL error:
The following unrecognised name was referenced: Force Y (on 'object').'

ghorrocks January 14, 2018 16:59

areaAve() is an integrating function. force_y(), as suggested by Opaque is also an integrating function. You can't use an integrating function on an integrating function.

force_y() just gives you the force on a surface exerted by the fluid. It is just a single scalar number.

kanaha January 16, 2018 09:43

But still I can't determine force_y() in setup stage. How can I test my object that I should keep its vertical speed under 50 m/s during free fall? Do you know any methodolgy to analyze this situation?

My Idea was that I can determine negative force as negative acceleration (F/m=a) against to gravitational acc for each time step. But this method doesnt work... :/

kanaha January 16, 2018 10:19

Ok, I figured my problem out. I determined expression like that;

expression for the current time step acceleration;

Current Acc = g - (P*A/m)
' g - (areaAve(Pressure)@object * (object area) / (objectmass) ) '

But this time I need expression for the velocity such as;

Current Velocity = Previous timestep Velocity + Current Acc * timestep

Anybody knows that Is there any expression command in CEL language to get previous timestep velocity in order to use it current timestep expression ?

ghorrocks January 16, 2018 16:44

CEL cannot access previous time step data.

Are you trying to set the inlet velocity to be the equivalent of freefall? This is not the normal way of modelling this. The recommended way is to do a series of steady state simulations covering the speed range of interest, determining a drag versus speed curve, and then doing a simple ODE solver to predict the object's speed versus time. The ODE solver is in matlab, python, excel or whatever you do for mathematics.

Another comment: Why use areaAve(Pressure)@object*object area to get the force? Why not just use force_y()@object? This will include both the pressure and viscous forces so will be more accurate as your approach ignores the viscous component.

Final comment: There is actually an undocumented feature to access previous time step data. Be warned that it is not intuitive and results are hit and miss, so it might not work for you. Do a search on the forum for TRANS_LOOP and you will find some discussion about how to do it.

kanaha January 16, 2018 16:54

Thank you for your reply Glenn

I used pressure because CFX-Setup doesnt let me use force_y() directly. I guess it is only available in the post-process stage or I did something wrong.

And thank you for your advice. I'll check the ODE solver and TRANS-LOOP.

have a nice day


All times are GMT -4. The time now is 17:40.