CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   CFX (http://www.cfd-online.com/Forums/cfx/)
-   -   Is it possible to get value of a variable at given coordinates without a point? (http://www.cfd-online.com/Forums/cfx/74016-possible-get-value-variable-given-coordinates-without-point.html)

technocrat March 22, 2010 17:58

Is it possible to get value of a variable at given coordinates without a point?
 
Is it possible to get value of a variable at given coordinates without crating a point there?
Maybe it can be done via user fortran? How?
I want to implement my own boundary conditions (like d^2u/dx^2=0) that is why I need values of velocity like velocity and pressure at points with arbitrary coordinates inside domain.

ghorrocks March 23, 2010 06:37

You can create monitor points where ever you like. But keep in mind they just return the value of the element they are in, they do not interpolate between the nearby nodes.

But CFX has built in gradient functions for first order derivatives, not sure about second order derivatives. If available you should use those functions.

dvolkind March 23, 2010 14:19

Greetings!

What kind of boundary condition is that? As far as I understand, d^2u/dx^2=0 yields a flat speed profile. Probably if you could estimate du/dx somehow, it might be easier to specify the velocity as a linear function of coordinate via expression. I also doubt that second order derivative can be used as a boundary condition for it's neither first-type nor second-type.

technocrat March 23, 2010 16:20

Thank you for your answers.

Quote:

Originally Posted by ghorrocks (Post 251232)
... You can create monitor points where ever you like...

Monitor points can not be used as locations in expressions (to set up my BC in CFX-Pre I need an expression that will give u values). It is possible to use Source points as locations, but I'll have to create hundreds of them (one per each hexahedra in two layers, closest to boundary) to approximate 2-nd derivative. This is possible (with perl script), but creating so much points is too slow according to my experience.

Quote:

Originally Posted by ghorrocks (Post 251232)
...But CFX has built in gradient functions for first order derivatives...

I didn't find a way to use this in CFX-Pre. For example this expression
Code:

probe(Velocity u.Gradient)@Source Point 1
produces error
Code:

The function 'probe' referenced in parameter 'Expression Value' in object '/FLOW:Flow Analysis 1/OUTPUT CONTROL/MONITOR OBJECTS/MONITOR POINT:Monitor
 Point 1' has an invalid argument, 'Velocity u.Gradient'. The solver does not support operator-suffixed variables here.


technocrat March 23, 2010 16:42

Quote:

Originally Posted by dvolkind (Post 251311)
...
What kind of boundary condition is that? As far as I understand, d^2u/dx^2=0 yields a flat speed profile.

I think it doesn't. Normal vector to outlet boundary plane in my case is \{1,0,0\}. \frac{\partial^2}{\partial x^2}u=0 does'nt imply any relation between u values at different y coordinates (if you meant that). This condition just makes speed change smoother near outlet.

technocrat March 23, 2010 18:05

Maybe I can get what I want via user fortran?
I'm now trying to find appropriate data acquisition routin in manual, but hasn't succeed yet. Probably I'm looking at what I need and don't see it?



Quote:

The locale is always the locale for which the User CEL routine is called. It is not possible to call USER_GETVAR for non-local information (for example, using the face gradients on BOUNDARY:Inlet for the boundary condition specification of a variable on BOUNDARY:Outlet).
:(


All times are GMT -4. The time now is 22:28.