CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   CFX (https://www.cfd-online.com/Forums/cfx/)
-   -   Relief Plots in CFX (https://www.cfd-online.com/Forums/cfx/22753-relief-plots-cfx.html)

Michael June 22, 2006 21:12

Relief Plots in CFX
 
I used relief plots in TASCflow for visualizing draft tubes. Unfortunately I have not found this capability in CFX, any suggestions?

thanks

Michael Bo Hansen June 23, 2006 05:56

Re: Relief Plots in CFX
 
maybe User Surface, Offset From Surface by Variable can be used for relief plots?

Michael June 23, 2006 06:38

Re: Relief Plots in CFX
 
that produced the effect, but it is not nearly as flexible to produce a visually appealing plot.

thanks for the suggestion.

Michael Bo Hansen June 23, 2006 06:42

Re: Relief Plots in CFX
 
Just out of curiosity , what kind of plot do you want to create? Mail me.


Michael June 23, 2006 10:16

Re: Relief Plots in CFX
 
Below is what I would like to do. Really easy in TASCflow, and as you can see it helps to visualize the velocity topology better than contours and vectors.

http://graf.clant2k.com/misc/dtube_relief.png

Bart Lammers June 26, 2006 08:23

Re: Relief Plots in CFX
 
I think that an offset user surface does not completely do what you want. As far as I can be see (but I could be wrong) CFX-Post creates a surface based on the offset (say speed), but if you want to colour it, it will do so based on the speed at the offset surface and not on the original location.

Michael Bo Hansen June 27, 2006 01:22

Re: Relief Plots in CFX
 
Maybe you can plot it by height (or offset) and scale the variable to fit to pressure, velocity or any other variable.

Michael Bo Hansen June 28, 2006 02:35

Re: Relief Plots in CFX
 
Somewhat like this:

http://i.pbase.com/g4/33/263333/3/62608376.R4dc8g44.jpg

Pressure distribution around a cylinder - Relief plot of a transient calculation.


Michael June 28, 2006 09:53

Re: Relief Plots in CFX
 
that look really good, but it seems you are offsetting a contour? could you please provide some additional details on how you did that. i would appreciate it.

Michael June 28, 2006 13:05

Re: Relief Plots in CFX
 
ok, learned a few things. Numerous ways to skin this cat.

Method: Offset from Surface Type: Normal Mode: Uniform Distance: 0.05 * Velocity

or Type can be Variable and in the field you can enter 0.05*Velocity. Now what I have not been able to do is make that NICE contour image you posted. any details on that would be appreciated.

Michael B June 29, 2006 04:12

Re: Relief Plots in CFX
 
Here's how i did the relief surface based on pressure:

I have created a "Quantative" variable called Offset which is defined as:

Offset = Pressure / 400 [Pa/m]

My original XY-Plane (at Z=0.005m) is then used as an offset from Surface:

User Surface / Offset from Surface / Plane 1 / Normal / Variable / Offset to give the relief surface. I've then created a new variable PressureZ to give the correct color of the pressure on the curvatured surface. Otherwise it will give you the pressure at the specified offset location:

PressureZ=Z*400[Pa/m]-2[Pa]

The "-2[Pa] comes from the original "Plane 1 * 400". Then it is easy to create a contour on the User Surface 1 with the variable PressureZ to give the correct colors and legend including correct Units!

I've also changed the colour map to "Rainbow 6" just to give it another look...

The value 400[Pa/m] is chosen arbitrary to give a smooth surface with sufficient amplitude.

Hope that helps.


Robin June 29, 2006 11:15

Re: Relief Plots in CFX
 
Interesting idea, but it will only work if you are coloring by the same variable as the offset, will only work for a plane and will not work if the user surface is outside of the domain.

This would be a nice thing to add to Post, however.

-Robin

Robin June 29, 2006 11:30

Re: Relief Plots in CFX
 
A sure way to do this, albeit complicated, is to do the following:

1. Export the data on the original surface (export1.csv) 2. Create the offset surface. 3. Export the geometry (including node connectivity) on the offset surface (export2.csv) 4. Open both exported files in a spreadsheet. Copy the column(s) of variables from the original (export1.csv) to the displaced surface (export2.csv). Save it back to a .csv file and be careful that Excel does not truncate your values. It will by default. To avoid this, select all of the cells and change the number format to General. 5. Create a User Surface using the "From File" method and load export2.csv. The variables loaded on the user surface will appear as <Variable Name> on <User Surface Name>.

Voila!

Maybe I'll write a macro to do it when I have some time.

Regards, Robin

Michael B June 30, 2006 02:08

Re: Relief Plots in CFX
 
It works fine even if the user surface is outside the doamin. And since the coloring variable is proportional to the offset, it works fine. Have a look at the following two plots. The original and the relief plot.

Note that the user surface is outside of the wireframe and also that the units correspond.

http://i.pbase.com/g4/33/263333/3/62700288.8tnWaJ6a.jpg http://i.pbase.com/g4/33/263333/3/62700296.0uugbOfZ.jpg


Michael B June 30, 2006 03:47

Re: Relief Plots in CFX
 
Here's a session file (*.cse) creating what I've done.
Change the varibles zxyplane and curvatureparameter



# SESSION FILE. RELIEF START. MAKE PRESSURE RELIEF.CSE

LIBRARY:
CEL:
EXPRESSIONS:
zxyplane=0.005 [m]
END
END
END
EXPRESSION EVALUATOR:
Evaluated Expression = zxyplane
END
> forceupdate EXPRESSION EVALUATOR


PLANE:Plane 1
Apply Instancing Transform = On
Apply Texture = Off
Blend Texture = On
Bound Radius = 0.5 [m]
Colour = 0.75, 0.75, 0.75
Colour Map = Rainbow
Colour Mode = Constant
Colour Scale = Linear
Colour Variable = Pressure
Colour Variable Boundary Values = Hybrid
Culling Mode = No Culling
Direction 1 Bound = 1 [m]
Direction 1 Orientation = 0 [degree]
Direction 1 Points = 10
Direction 2 Bound = 1 [m]
Direction 2 Points = 10
Domain List = All Domains
Draw Faces = On
Draw Lines = Off
Instancing Transform = Default Transform
Invert Plane Bound = Off
Lighting = On
Line Colour = 0, 0, 0
Line Colour Mode = Default
Line Width = 1
Max = 0.0 [Pa]
Min = 0.0 [Pa]
Normal = 1 , 0 , 0
Option = XY Plane
Plane Bound = None
Plane Type = Slice
Point = 0 [m], 0 [m], 0 [m]
Point 1 = 0 [m], 0 [m], 0 [m]
Point 2 = 1 [m], 0 [m], 0 [m]
Point 3 = 0 [m], 1 [m], 0 [m]
Range = Global
Render Edge Angle = 0 [degree]
Specular Lighting = On
Surface Drawing = Smooth Shading
Texture Angle = 0
Texture Direction = 0 , 1 , 0
Texture File =
Texture Material = Metal
Texture Position = 0 , 0
Texture Scale = 1
Texture Type = Predefined
Tile Texture = Off
Transform Texture = Off
Transparency = 0.0
Visibility = On
X = 0.0 [m]
Y = 0.0 [m]
Z = zxyplane
OBJECT VIEW TRANSFORM:
Apply Reflection = Off
Apply Rotation = Off
Apply Scale = Off
Apply Translation = Off
Principal Axis = Z
Reflection Plane Option = XY Plane
Rotation Angle = 0.0 [degree]
Rotation Axis From = 0 [m], 0 [m], 0 [m]
Rotation Axis To = 0 [m], 0 [m], 0 [m]
Rotation Axis Type = Principal Axis
Scale Vector = 1 , 1 , 1
Translation Vector = 0 [m], 0 [m], 0 [m]
X = 0.0 [m]
Y = 0.0 [m]
Z = 0.0 [m]
END
END

LIBRARY:
CEL:
EXPRESSIONS:
curvatureparameter=90000 [m^-1]
END
END
END
EXPRESSION EVALUATOR:
Evaluated Expression = curvatureparameter
END
> forceupdate EXPRESSION EVALUATOR

LIBRARY:
CEL:
EXPRESSIONS:
Offset=Pressure / (curvatureparameter * 1[Pa])
END
END
END
EXPRESSION EVALUATOR:
Evaluated Expression = Offset
END
> forceupdate EXPRESSION EVALUATOR


USER SCALAR VARIABLE:Relief offset
Boundary Values = Conservative
Calculate Global Range = Off
Expression = Offset
Recipe = Expression
Variable to Copy = Pressure
END


USER SURFACE:User Surface 1
Apply Instancing Transform = On
Apply Rotation = On
Apply Scale = On
Apply Texture = Off
Apply Translation = Off
Associated Boundary = Domain Interface 1 Side 1
Associated Boundary Specified = On
Blend Texture = On
Colour = 0, 0.8, 0
Colour Map = Rainbow
Colour Mode = Constant
Colour Scale = Linear
Colour Variable = Pressure
Colour Variable Boundary Values = Hybrid
Contour Level = 1
Culling Mode = No Culling
Domain List = All Domains
Draw Faces = On
Draw Lines = Off
File Units = m
Input File = data.txt
Instancing Transform = Default Transform
Lighting = On
Line Colour = 0, 0, 0
Line Colour Mode = Default
Line Width = 1
Maintain Conservative Values = On
Max = 0.0 [Pa]
Min = 0.0 [Pa]
Offset Direction = 1 , 0 , 0
Offset Distance = 0.0 [m]
Offset Mode = Variable
Offset Type = Normal
Offset Variable = Relief offset
Option = Offset From Surface
Principal Axis = Z
Range = Global
Render Edge Angle = 0 [degree]
Rotation Angle = 0 [degree]
Rotation Axis From = 0 [m], 0 [m], 0 [m]
Rotation Axis To = 1 [m], 0 [m], 0 [m]
Rotation Axis Type = Principal Axis
Scale Factor = 1.0
Specular Lighting = On
Surface Drawing = Smooth Shading
Surface Name = Plane 1
Texture Angle = 0
Texture Direction = 0 , 1 , 0
Texture File =
Texture Material = Metal
Texture Position = 0 , 0
Texture Scale = 1
Texture Type = Predefined
Tile Texture = Off
Transform Texture = Off
Translation Vector = 0 [m], 0 [m], 0 [m]
Transparency = 0.0
Use Absolute Pressure = Off
Visibility = On
OBJECT VIEW TRANSFORM:
Apply Reflection = Off
Apply Rotation = On
Apply Scale = On
Apply Translation = Off
Principal Axis = Z
Reflection Plane Option = XY Plane
Rotation Angle = 0 [degree]
Rotation Axis From = 0 [m], 0 [m], 0 [m]
Rotation Axis To = 1 [m], 0 [m], 0 [m]
Rotation Axis Type = Principal Axis
Scale Vector = 1 , 1 , 1
Translation Vector = 0 [m], 0 [m], 0 [m]
X = 0.0 [m]
Y = 0.0 [m]
Z = 0.0 [m]
END
END

PLANE:Plane 1
Visibility = Off
END


LIBRARY:
CEL:
EXPRESSIONS:
Pressure Relief=(Z-zxyplane)*curvatureparameter*1[Pa]
END
END
END
EXPRESSION EVALUATOR:
Evaluated Expression = Pressure Relief
END
> forceupdate EXPRESSION EVALUATOR


USER SCALAR VARIABLE:PressureZ
Boundary Values = Conservative
Calculate Global Range = Off
Expression = Pressure Relief
Recipe = Expression
Variable to Copy = Pressure
END

USER SURFACE:User Surface 1
Visibility = Off
END


CONTOUR:Contour 1
Colour Variable = PressureZ
Colour Variable Boundary Values = Conservative
Contour Range = Local
Location List = User Surface 1
Number of Contours = 11
END

Robin June 30, 2006 08:01

Re: Relief Plots in CFX
 
OK. I see what you've done. You have related the location to the offset. The only problem is that this would only work for regular geometric shapes. It would be hard to do on an arbitrary geometry because you would not know what the offset was.

Still very clever.

A simple improvement would be to replace your curvature parameter with a simple normalization of the offset variable, multiplied by a maximum offset distance. If you want the max offset to be 1 [cm], then do the following (using Pressure and Plane 1 as an example):

Pressure/maxVal(Pressure)@Plane 1 * maxDisp maxDisp = 1 [cm]

Regards, Robin


All times are GMT -4. The time now is 04:33.