Ansys CFX - Reference Guide
Ansys CFX - Reference Guide
Ansys CFX - Reference Guide
ANSYS, Inc.
Southpointe
275 Technology Drive
Canonsburg, PA 15317
ansysinfo@ansys.com
http://www.ansys.com
(T) 724-746-3304
(F) 724-514-9494
Release 13.0
November 2010
ANSYS, Inc. is
certified to ISO
9001:2008.
Disclaimer Notice
THIS ANSYS SOFTWARE PRODUCT AND PROGRAM DOCUMENTATION INCLUDE TRADE SECRETS AND ARE CONFIDENTIAL
AND PROPRIETARY PRODUCTS OF ANSYS, INC., ITS SUBSIDIARIES, OR LICENSORS. The software products and documentation are furnished by ANSYS, Inc., its subsidiaries, or affiliates under a software license agreement that contains provisions concerning non-disclosure, copying, length and nature of use, compliance with exporting laws, warranties,
disclaimers, limitations of liability, and remedies, and other provisions. The software products and documentation may
be used, disclosed, transferred, or copied only in accordance with the terms and conditions of that software license
agreement.
ANSYS, Inc. is certified to ISO 9001:2008.
Third-Party Software
See the legal information in the product help files for the complete Legal Notice for ANSYS proprietary software and
third-party software. If you are unable to access the Legal Notice, please contact ANSYS, Inc.
Published in the U.S.A.
Table of Contents
1. CFX Launcher .......................................................................................................................................... 1
1.1. The Launcher Interface ..................................................................................................................... 1
1.1.1. Menu Bar ................................................................................................................................. 1
1.1.1.1. File Menu ........................................................................................................................ 1
1.1.1.1.1. Save As ................................................................................................................... 1
1.1.1.1.2. Quit ........................................................................................................................ 1
1.1.1.2. Edit Menu ....................................................................................................................... 2
1.1.1.2.1. Clear ....................................................................................................................... 2
1.1.1.2.2. Find ........................................................................................................................ 2
1.1.1.2.3. Options .................................................................................................................. 2
1.1.1.2.3.1. User Interface Style ........................................................................................ 2
1.1.1.2.3.2. Application Font and Text Window Font .......................................................... 2
1.1.1.3. CFX Menu ....................................................................................................................... 2
1.1.1.3.1. CFX-Pre .................................................................................................................. 2
1.1.1.3.2. CFX-Solver Manager ............................................................................................... 2
1.1.1.3.3. CFD-Post ................................................................................................................ 2
1.1.1.3.4. Other CFX Applications ........................................................................................... 2
1.1.1.4. Show Menu ..................................................................................................................... 3
1.1.1.4.1. Show Installation .................................................................................................... 3
1.1.1.4.2. Show All ................................................................................................................. 3
1.1.1.4.3. Show System .......................................................................................................... 3
1.1.1.4.4. Show Variables ....................................................................................................... 3
1.1.1.4.5. Show Patches ......................................................................................................... 3
1.1.1.5. Tools Menu ...................................................................................................................... 3
1.1.1.5.1. ANSYS License Manager .......................................................................................... 3
1.1.1.5.2. Command Line ....................................................................................................... 3
1.1.1.5.3. Configure User Startup Files (UNIX only) .................................................................. 4
1.1.1.5.4. Edit File .................................................................................................................. 4
1.1.1.5.5. Edit Site-wide Configuration File ............................................................................. 4
1.1.1.6. User Menu ....................................................................................................................... 4
1.1.1.7. Help Menu ...................................................................................................................... 4
1.1.2. Tool Bar .................................................................................................................................... 4
1.1.3. Working Directory Selector ....................................................................................................... 4
1.1.4. Output Window ....................................................................................................................... 4
1.2. Customizing the Launcher ................................................................................................................ 5
1.2.1. CCL Structure ........................................................................................................................... 5
1.2.1.1. GROUP ............................................................................................................................ 5
1.2.1.2. APPLICATION ................................................................................................................... 6
1.2.1.2.1. Including Environment Variables ............................................................................. 7
1.2.1.3. DIVIDER ........................................................................................................................... 8
1.2.2. Example: Adding the Windows Calculator ................................................................................. 8
2. Volume Mesh Import API ........................................................................................................................ 9
2.1. Valid Mesh Elements in CFX ............................................................................................................... 9
2.2. Creating a Custom Mesh Import Executable for CFX-Pre ................................................................... 10
2.2.1. Compiling Code with the Mesh Import API ............................................................................. 11
2.2.1.1. Compiler Flags ............................................................................................................... 11
2.2.2. Linking Code with the Mesh Import API .................................................................................. 11
2.2.2.1. Linking a Customized C Mesh Import Executable on a UNIX Platform .............................. 12
2.2.2.2. Linking a Customized Fortran Mesh Import Executable on a UNIX Platform ..................... 12
2.2.2.3. Linking a Customized Mesh Import Executable on a 32-bit Windows Platform ................. 12
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
iii
iv
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
vi
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
vii
viii
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
ix
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
xi
xii
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
xiii
xiv
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
xv
xvi
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
The CFX Launcher consists of a menu bar, a tool bar for launching applications, a working directory selector,
and an output window where messages are displayed. On Windows platforms, an icon to start Windows
Explorer in the working directory appears next to the directory selector.
1.1.1.1.1. Save As
Saves the contents of the output window to a file.
1.1.1.1.2. Quit
Shuts down the launcher. Any programs already launched will continue to run.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
1.1.1.2.1. Clear
Clears the output window.
1.1.1.2.2. Find
Displays a dialog box where you can search the text in the output window.
1.1.1.2.3. Options
Presents the Options dialog box, which enables you to change the appearance of the launcher.
1.1.1.3.1. CFX-Pre
Runs CFX-Pre, with the working directory as specified in Working Directory Selector (p. 4).
1.1.1.3.3. CFD-Post
Runs CFD-Post, in the current working directory as specified in Working Directory Selector (p. 4).
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
CFX contains some utilities (for example, a parameter editor) that can be run only from the command
line.
You may want to specify certain command line arguments when starting up a component so that it
starts up in a particular configuration.
If you are having problems with a component, you may be able to get a more detailed error message
by starting the component from the command line than you would get if you started the component
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Type the directory name into the box and press Enter.
Click Browse
) next to the directory name. This displays a list of recently used directories.
Find: Displays a dialog box where you can enter text to search for in the output.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
1.2.1.1. GROUP
GROUP objects represent menus and toolbar groups in the launcher. Each new GROUP creates a new menu
and toolbar. Nothing will appear in the menu or toolbar until you add APPLICATION or DIVIDER objects
to the group. An example of a GROUP object is given below:
GROUP: CFX
Position = 200
Menu Name = &CFX
Show In Toolbar = Yes
Show In Menu = Yes
Enabled = Yes
END
The group name is set after the colon. In this case, it is CFX This is the name that APPLICATION
.
and DIVIDER objects will refer to when you want to add them to this group. This name should be
different to all other GROUP objects.
Position refers to the position of the menu relative to others. The value should be an integer between
1 and 1000. Groups with a higher Position value, relative to other groups, will have their menu appear
further to the right in the menu bar. Referring to Figure 1.1 (p. 1), CFX has a lower position value than
the ANSYS group. The File and Edit menus are always the first two menus and the Help menu is always
the last menu.
The title of the menu is set under Menu Name (this menu has the title CFX). The optional ampersand
is placed before the letter that you want to have act as a menu accelerator (for example, Alt+C displays
the CFX menu). You must be careful not to use an existing menu accelerator.
The creation of the menu or toolbar can be toggled by setting the Show in Menu and Show in
Toolbar options to Yes or No respectively. For example, you may want to create a menu item but
not an associated toolbar icon.
Enabled sets whether the menu/toolbar is available for selection or is disabled. Set the option to No
to disable it.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
1.2.1.2. APPLICATION
APPLICATION objects create entries in the menus and toolbars that will launch an application or run a
process. Two examples are given below with an explanation for each parameter. The first example creates
a menu entry in the Tools menu that opens a command line window. The second example creates a menu
entry and toolbar button to start CFX-Solver Manager.
APPLICATION: Command Line 1
Position = 300
Group = Tools
Tool Tip = Start a window in which CFX commands can be run
Menu Item Name = Command Line
Command = <windir>\system32\cmd.exe
Arguments = /c start
Show In Toolbar = No
Show In Menu = Yes
Enabled = Yes
OS List = winnt
END
APPLICATION: CFXSM
Position = 300
Group = CFX
Tool Tip = Launches ANSYS CFX-Solver Manager
Menu Item Name = CFX-&Solver Manager
Command = cfx5solve
Show In Toolbar = Yes
Show In Menu = Yes
Enabled = Yes
Toolbar Name = ANSYS CFX-Solver Manager
Icon = LaunchSolveIcon.xpm
Shortcut = CTRL+S
END
The application name is set after the colon, in the first example it is Command Line 1 This name
.
should be different to all other APPLICATION objects.
Position: sets the relative position of the menu entry. The value should be an integer between 1 and
1000. The higher the value, relative to other applications that have the same group, the further down
the menu or the further to the right in a toolbar the entry will appear. If you do not specify a position,
the object assumes a high position value (so it will appear at the bottom of a menu or at the right of
a group of buttons).
Group: sets the GROUP object to which this application belongs. The value must correspond to the
name that appears after GROUP: in an existing GROUP object. The menu and/or toolbar entry will not
be created if you do not specify a valid group name. The GROUP object does not have to be in the
same configuration file.
Tool Tip: displays a message when the mouse pointer is held over a toolbar button. In the Command
Line 1 example above, the Tool Tip entry is not used since a toolbar button is not created. This
parameter is optional.
Menu Item Name: sets the name of the entry that will appear in the menu. If you do not specify a
name, the name is set to the name of the APPLICATION: object. The optional ampersand is placed
before the letter that you want to have act as a menu accelerator (for example, alt+c then s will start
CFX-Solver Manager. Alt+c selects the CFX menu and s selects the entry from the menu). You must
be careful not to use an existing menu accelerator.
Command: contains the command to run the application. The path can be absolute (that is, use a forward
slash to begin the path on UNIX, or a drive letter on Windows). If an absolute path is not specified, a
relative path from <CFXROOT>/bin/ is assumed. If no command is specified, the menu item/toolbar
button will not appear in the CFX Launcher. The path and command are checked when the CFX
Launcher is started. If the path or command does not exist, the menu item/toolbar button will not appear
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Arguments: specifies any arguments that need to be passed to the application. The arguments are
appended to the value you entered for Command. You do not need to include this parameter as there
are no arguments to pass. You may find it useful to include environment variables in the arguments;
for details, see Including Environment Variables (p. 7).
Distinct arguments are space-separated. If you need to pass an argument that contains spaces (for example, a Windows file path) you should include that argument in double quotes, for example:
Arguments = C:\Documents and Settings\User arg2 arg3
Show In Toolbar: determines if a toolbar button is created for the application. This optional parameter has a default value of Yes.
Show In Menu: determines if a menu entry is created for the application. This optional parameter
has a default value of Yes.
Enabled: controls the menu entry and toolbar button. Set this parameter to No to disable the application. This optional parameter has a default value of Yes.
OS List is an optional parameter that enables you to set which operating system the application is
suitable for. If OS List is not supplied, the launcher will attempt to create the menu item and toolbar
button on all platforms.
For example, the command to open a command line window varies depending on the operating system.
In the Command Line 1 example above, the application only applies to Windows platforms. To complete
the OS coverage, the launcher configuration files contain more Command Line applications that apply
to different operating systems.
OS List can contain the following values: winnt (Windows, including Windows XP), aix (IBM), hpux,
(HP), hpux-ia64 (64-bit HP), solaris (Sun), linux, linux-ia64 (64-bit Linux).
Toolbar Name: sets the name that appears on the toolbar button. This parameter is optional (since
you may only want to show an icon).
Icon: specifies the icon to use on the toolbar button and in the menu item. The path can be absolute
(that is, use a forward slash to begin the path on UNIX, or a drive letter on Windows). If an absolute
path is not specified, a relative path from <CFXROOT>/etc/icons is assumed. The following file
formats are supported for icon image files: Portable Network Graphics (png), Pixel Maps (ppm, xpm)
and Bitmaps (bmp). Other icons used in the launcher are 32 pixels wide and 30 pixels high. This parameter is optional. If it is not included, an icon will not appear.
Shortcut: specifies the keyboard shortcut that can be pressed to launch the application. You must
be careful not to use a keyboard shortcut that is used by any other APPLICATION object.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
1.2.1.3. DIVIDER
DIVIDER objects create a divider in a menu and/or toolbar (see the Tools menu for an example). An example
of the CCL for DIVIDER objects is shown below.
DIVIDER: Tools Divider 1
Position = 250
Group = Tools
OS List = winnt, aix, hpux, hpux-ia64, linux, linux-ia64, solaris
END
The Position, Group and OS List parameters are the same as those used in APPLICATION objects.
For details, see APPLICATION (p. 6).
Although the parameter Toolbar Name is not strictly required, you would end up with a blank toolbar button
if it were not set.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
You must write the program using the API to translate the mesh read from the 3rd-party file into a format
that can be processed by CFX-Pre.
Inclusion of the cfxImport.h header file (for C programs and not Fortran programs).
2.
3.
4.
5.
Optionally, definitions of 2D and 3D regions with either cfxImportRegion or the following three
functions: cfxImportBegReg, cfxImportAddReg, cfxImportEndReg
6.
10
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Note
Windows users should note that custom mesh import programs must be compiled as multithreaded applications.
Flag
hpux (pa-2)
+DS2.0W +DA2.0W
hpux-ia64
+DD64
linux (32-bit)
<none>
linux-ia64
solaris
-m64
aix
11
12
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Note
In past releases of ANSYS CFX the API has defined IDs of nodes and elements as integers (int).
This release now uses a datatype ID_t to represent these quantities. This type is currently defined
as an unsigned integer (unsigned int). This allows a greater number of nodes and elements to
be imported than in the past.
cfxELEM_TET
cfxELEM_PYR
cfxELEM_WDG
cfxELEM_HEX
4
5
6
8
The element node ordering and local face numbering follow Patran Neutral file conventions for element
descriptions.
1
2
3
Node and Face regions define 2D regions of the imported mesh. Element regions define 3D regions of the
imported mesh.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
13
Note
Due to the limited topological information recoverable from a set of nodes it is not advisable to
define 2D regions internal to a 3D region using nodes. In this case it is advisable to use Face regions.
Node regions are specified by a list of node IDs.
Face regions are defined by a list of face IDs. These face IDs are a combination of an element ID and a local
face number in the element.
2.3.2.1. cfxImportStatus
int cfxImportStatus ()
Returns 0 if descriptor is not opened and -1 if not opened for writing. In the normal case, 1 is returned if
opened for writing to CFX, and 2 if opened for writing to a file.
2.3.2.2. cfxImportInit
void cfxImportInit ()
Performs initialization to begin communicating with CFX. This routine should be called early on in the import
program to let CFX know that data is to be sent. If not called within 60 seconds, CFX will terminate the import
process. If called and there is no connection with CFX, then the routine cfxImportTest("/dev/null")
(UNIX) or cfxImportTest("null") (Windows) will be called. This routine will be automatically called
by most of the API routines if not already called.
There is no return value for this routine. In the case of an error, cfxImportFatal will be called.
2.3.2.3. cfxImportTest
int cfxImportTest (filename)
char *filename;
This routine allows testing of import program in isolation from CFX by writing data to a file filename instead
of attempting to write it to the CFX communication channel.
The routine will return the file descriptor of the output file or will terminate with a call to cfxImportFatal
on error.
14
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
2.3.3.1. cfxImportDone
long cfxImportDone ()
Indicate to the import API that all mesh data has been given and the API should now send the data to CFX.
Except for cfxImportTotals, this should be last call made to the API. Returns the total number of bytes
transferred to CFX by the import program.
2.3.3.2. cfxImportTotals
long cfxImportTotals (counts)
size_t counts[cfxImpCNT_SIZE];
Get the total number of nodes, elements, regions and other useful information given to the mesh import
API by the program. This information is returned in the array counts, which should be of size at least
cfxImpCNT_SIZE (currently defined as 9). The values returned in counts may be indexed by the enum
list in cfxImport.h, which is:
counts[cfxImpCNT_NODE]
counts[cfxImpCNT_ELEMENT]
counts[cfxImpCNT_REGION]
counts[cfxImpCNT_UNUSED]
counts[cfxImpCNT_DUP]
counts[cfxImpCNT_TET]
counts[cfxImpCNT_PYR]
counts[cfxImpCNT_WDG]
counts[cfxImpCNT_HEX]
=
=
=
=
=
=
=
=
=
number
number
number
number
number
number
number
number
number
of
of
of
of
of
of
of
of
of
nodes
elements
regions
unused nodes
duplicate nodes
tetrahedral elements
pyramid elements
wedge elements
hexahedral elements
The return value for the function is the total number of bytes of data sent to CFX or written to the test file
given when cfxImportTest was called.
2.3.4.1. cfxImportError
void cfxImportError (callback)
void (*callback)(char *errmsg);
Define a user routine to be called before terminating due to a fatal error. callback is the applicationsupplied function to be called in the case of an error. The callback routine takes a single argument, errmsg,
which will be passed by cfxImportFatal and should be processed by the callback function as a brief
message describing the error that has occurred. If this function is not called or callback is not specified, then
the normal termination behavior of the mesh import API will be that the any fatal errors will write the error
message to stderr as well as being sent to CFX.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
15
2.3.4.2. cfxImportFatal
void cfxImportFatal (errmsg)
char *errmsg;
Terminate with an error message, errmsg. This routine will send the message to CFX, shut down the communication channel or test file and call the user callback function (if specified by a call to cfxImportError).
There is no return from this call. The import program will terminate immediately after clean up tasks have
been performed.
2.3.5.1. cfxImportNode
ID_t cfxImportNode (nodeid, x, y, z)
ID_t nodeid;
double x, y, z;
Define a node in the import API to be subsequently imported into CFX. The unique identifier of the node
is given by nodeid, and the coordinates of the node by x, y, and z.
Returns 0 if nodeid is invalid (less than 1), or nodeid is successfully defined. If a node with the same
identity has already been defined, the coordinate values will alter to the supplied values.
2.3.5.2. cfxImportGetNode
ID_t cfxImportGetNode (nodeid, x, y, z)
ID_t nodeid;
double *x, *y, *z;
Get the coordinates for the node identified by nodeid and return the values in x, y, and z. Returns 0 if the
node has not been defined or the node ID for the node.
2.3.5.3. cfxImportNodeList
ID_t * cfxImportNodeList ()
Returns an array of all node identifiers currently defined or NULL if no nodes have been defined. The first
entry in the array is the number of nodes currently defined.
The memory for the array returned is allocated using malloc by the routine, consequently it should be
destroyed when no longer required by calling free.
2.3.6.1. cfxImportElement
ID_t cfxImportElement (elemid, elemtype, nodelist)
ID_t elemid, *nodelist; int elemtype;
16
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
cfxELEM_TET
cfxELEM_PYR
cfxELEM_WDG
cfxELEM_HEX
4
5
6
8
/*
/*
/*
/*
*/
*/
*/
*/
The list of vertices in nodelist refers to IDs of nodes which on termination of the import program by a
call to cfxImportDone must have been defined by calls to cfxImportNode. If this is not the case a fatal
error will be reported and the API will terminate.
The vertex ordering for the elements follows Patran Neutral File element conventions, and is shown in the
following figure.
Note
The vertex ordering for the export API is different. For details, see cfxExportElementList (p. 57).
Returns 0 in the case of an elemid is invalid (less than 1) or an unsupported value is given by elemtype,
or elemid if the element is successfully defined. If the element already exists the vertices of the element
will be redefined.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
17
2.3.6.2. cfxImportGetElement
ID_t cfxImportGetElement (elemid, nodelist)
ID_t elemid, nodelist[];
Get the node IDs for corresponding to the vertices of element identified by elemid and store in the array
nodelist. This array needs to be at least as large the number of vertices for the element (a size of 8 will
handle all possible element types).
Returns 0 if the element is not defined, or the element type (number of vertices). The node IDs will be
ordered in the order expected by cfxImportElement if the program was to redefine the element.
2.3.6.3. cfxImportElementList
ID_t * cfxImportElementList ()
Returns an array of all the currently defined element IDs or NULL if no elements have been defined. The
first entry in the array is the number of elements.
The memory for the array returned is allocated using malloc by the routine, consequently it should be
destroyed when no longer required by calling free.
2.3.6.4. cfxImportGetFace
ID_t cfxImportGetFace (elemid, facenum, nodelist)
ID_t elemid, nodelist[]; int facenum;
Gets the node IDs for the local facenumth face of the element identified by elemid.
The node IDs are returned in nodelist, which should be of at least of size 4. The nodes correspond to
the vertices of the face and are ordered counter-clockwise such that the normal for the face points away
from the element. The face numbers and associated node indices are modeled after Patran Neutral File elements, and are tabulated here:
Element Type
Face
Nodes
tetrahedron
pyramid
prism
hexahedron
18
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Face
Nodes
Note
The face numbers and associated node indices are different when exporting elements. For details,
see cfxExportFaceNodes (p. 60).
Returns -1 if the element has not been defined, 0 if the face number is out of range, or the number of nodes
for the face (3 or 4):
2.3.6.5. cfxImportFindFace
ID_t cfxImportFindFace (elemid, nnodes, nodeid)
ID_t elemid, nodeid[]; int nnodes;
Gets the local face number in element identified by elemid that contains all the nodes supplied by the
calling routine in nodeid. nnodes is the number of nodes for the face (3 or 4).
Returns -1 if the element is not found or nodeid is not supplied or nnodes is greater than 4 or less than
3. Returns 0 if there is no match, or the local face number (1 to 6) of the element.
2.3.7.1. cfxImportBegReg
int cfxImportBegReg (regname, regtype)
char *regname;
int regtype;
Initialize for the specification of a region. If a region is currently being defined, cfxImportEndReg will be
called.
The name of the region is given by regname. If the region name is NULL, the name Unnamed Region
2D or Unnamed Region 3D, with a sequential integer appended, will be used. If a region named regname
has already been defined, then additional objects will be added to the previous region.
The type of region is given by regtype, which should be one of cfxImpREG_NODES, cfxImpREG_FACES
or cfxImpREG_ELEMS depending on whether the region is to be defined by nodes, faces or elements,
respectively. It is not currently possible to mix types in a region; doing so will cause the import API to terminate with an error message.
Returns the number of objects (node, faces or elements) currently in the region.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
19
2.3.7.2. cfxImportAddReg
int cfxImportAddReg (numobjs, objlist)
int numobjs, *objlist;
2.3.7.3. cfxImportEndReg
int cfxImportEndReg ()
2.3.7.4. cfxImportRegion
int cfxImportRegion (regname, regtype, numobjs, objlist)
char *regname;
int regtype, numobjs, *objlist;
Import a region named regname of type regtype. The number of objects to add to the region is given
by numobjs, and the list of object IDs by objlist. This routine combines calls to cfxImportBegReg,
cfxImportAddReg and cfxImportEndReg.
Returns the total number of objects in the region on termination of the routine.
2.3.7.5. cfxImportRegionList
char ** cfxImportRegionList ()
2.3.7.6. cfxImportGetRegion
int * cfxImportGetRegion (regname)
char *regname;
Returns a list of objects in the region named regname, or NULL if the region does not exist. The first entry
in the returned list is the region type and the second entry is the number of object IDs.
20
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
2.3.8.1. cfxImportBegCompRegion
cfxImportBegCompReg()
char *regionName;
2.3.8.2. cfxImportAddCompRegComponents
int cfxImportAddCompRegComponents(componentCount,components)
int componentCount;
char **components;
Add a set of component region names specified in components to the composite region currently being
defined. componentCount specified how many components are specified in the components array,
Returns -1 if a composite region isnt being defined or insufficient memory is available to add the components
of the composite region, or 0 if the components were successfully added.
2.3.8.3. cfxImportEndCompReg
int cfxImportEndCompReg()
2.3.8.4. cfxImportCompositeRegion
int cfxImportCompositeRegion(regionName, componentCount, components)
char *regionName, **components;
int componentCount;
Define a composite region named regionName with componentCount components supplied in character
array components.
Returns 0 if successful or -1 if an error occurred preventing the composite region being defined.
2.3.9.1. cfxImportMap
ID_t cfxImportMap (nodeid, mapid)
ID_t nodeid, mapid;
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
21
2.3.10.1. cfxinit
call cfxinit
2.3.10.2. cfxtest
CHARACTER*n filename
call cfxtest(filename)
Interface to cfxImportTest. filename is a CHARACTER*n value which gives the name of the file to
dump the output to.
2.3.10.3. cfxunit
CHARACTER*n units
call cfxunit(units)
2.3.10.4. cfxwarn
CHARACTER*n mesg
call cfxwarn(mesg)
2.3.10.5. cfxfatl
CHARACTER*n mesg
call cfxfatl(mesg)
Interface to cfxImportFatal. Emit a warning message mesg and terminate the program cleanly.
2.3.10.6. cfxdone
call cfxdone
Interface to cfxImportDone. Terminates the program and transfers the data to CFX-Pre.
22
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
2.3.10.7. cfxnode
INTEGER idnode
DOUBLE PRECISION x,y,z
call cfxnode(idnode,x,y,z)
Interface to cfxImportNode. Imports a node with the specified coordinates. idnode is an INTEGER value
for the node ID, and x, y, and z are the DOUBLE PRECISION coordinates of the node.
2.3.10.8. cfxnodg
INTEGER idnode
DOUBLE PRECISION x,y,z
call cfxnodg(idnode,x,y,z)
Interface to cfxImportGetNode. Queries the current coordinates or a node referenced by idnode. idnode
is an INTEGER value for the node ID, and x, y, and z are the DOUBLE PRECISION coordinates of the node.
2.3.10.9. cfxnods
INTEGER ids(*)
call cfxnods(ids)
Interface to cfxImportNodeList. Retrieves the list of all valid node IDs having been imported into the
API. ids is an INTEGER array that must be at least as large as the number of nodes currently imported.
2.3.10.10. cfxelem
INTEGER idelem,itelem,nodes(*)
call cfxelem(idelem,itelem,nodes)
Interface to cfxImportElement. idelem is element ID, and itelem is the element type (number of
nodes - 4,5,6, or 8). Both are of type INTEGER. nodes is an array of INTEGER node IDs dimensioned of size
at least itelem.
2.3.10.11. cfxeleg
INTEGER idelem,itelem,nodes(*)
call cfxeleg(idelem,itelem,nodes)
Interface to cfxImportGetElement. Queries the current node ids that define the vertices of the element
referenced by the id idelem. idelem is element ID, and itelem is the element type (number of nodes
- 4, 5, 6, or 8). Both are of type INTEGER. nodes is an array of INTEGER values that will contain the node IDs
on successful return. It should be dimensioned of size at least itelem.
2.3.10.12. cfxeles
INTEGER ids(*)
call cfxeles(ids)
Interface to cfxImportElemList. Retrieves the list of all valid element IDs having been imported into
the API. ids is an INTEGER array that must be at least as large as the number of elements currently imported.
2.3.10.13. cfxfacd
INTEGER eleid, elefc, id
call cfxfacd(eleid, elefc, id)
Interface to cfxImportFaceID. Defines a face id (id) in terms of an element ID (eleid) and local face
(elefc) of that element.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
23
2.3.10.14. cfxface
INTEGER eleid, elefc, vtx(*)
INTEGER cfxface(eleid, elefc, vtx)
Interface to cfxImportGetFace. Returns the node IDs of the vertices defining a face located by the element
ID (eleid) and local face (elefc) of that element.
2.3.10.15. cfxffac
INTEGER eleid, nvtx, vtx(*), elefc
call cfxffac(eleid, nvtx, vtx, elefc)
Interface to cfxImportFindFace. Returns the local face (elefc) of an element (eleid) which is defined
by the vertices (vtx).
2.3.10.16. cfxregn
CHARACTER*n regname
INTEGER type,nobjs,objs(*)
call cfxregn(regname,type,nobjs,objs)
Interface to cfxImportRegion. Regname is a CHARACTER*n string defining the region name, type is an
INTEGER value specifying the type of region, either 1 for nodes, 2 for faces, or 3 for elements. nobjs is an
INTEGER value which gives the number of objects in the region, and objs is an INTEGER array of object IDs
dimensioned at least size nobjs.
2.3.10.17. cfxregb
CHARACTER*n regname
INTEGER type
call cfxregb(regname,type)
Interface to cfxImportBegReg. Start defining a new region or make an existing region of the same name
the current one if it already exists and is of the same type. regname is a CHARACTER*n string defining the
region name, type is an INTEGER value specifying the type of region, either 1 for nodes, 2 for faces, or 3 for
elements.
2.3.10.18. cfxrega
INTEGER nobjs,objs(*)
call cfxrega(nobjs,objs)
Interface to cfxImportAddReg. Add the objects (objs) to the current region. nobjs is an INTEGER value
which gives the number of objects to add to the region, and objs is an INTEGER array of object IDs dimensioned at least size nobjs.
2.3.10.19. cfxrege
call cfxrege()
Interface to cfxImportEndReg. Finish defining the current region (after the call there will be no current
region).
2.3.10.20. cfxregs
CHARACTER*n regname
INTEGER numobj
call cfxregs(regname,numobj)
24
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
2.3.10.21. cfxregg
CHARACTER*n regname
INTEGER type, obj(*)
call cfxregg(regname, type, objs)
Get the type (type) and object IDs (objs) referenced by the region regname. regname is a CHARACTER*n
string specifying the region name. type is INTEGER and objs is an INTEGER array at least of the size returned
by cfxregs.
2.3.10.22. cfxcmpb
CHARACTER*n regname
call cfxcmpb(regname)
Interface to cfxImportBegCompReg. Start defining a new composite region or make an existing composite
region of the same name as the current one if it already exists. regname is a CHARACTER*n string defining
the region name.
2.3.10.23. cfxcmpa
INTEGER nregs
CHARACTER*(n) regs
call cfxcmpa(nregs,regs)
Interface to cfxImportAddCompReg. Add the region names (regs) to the current composite region being
defined. nregs is an INTEGER value which gives the number of regions to add to the region, and regs is
a CHARACTER*(*) array of region names dimensioned at least size nregs.
2.3.10.24. cfxcmpe
call cfxcmpe()
Interface to cfxImportEndCompReg. Finish defining the current composite region (after the call there
will be no current composite region).
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
25
26
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
27
28
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
29
30
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
2.5.3. CFX-4
2.5.1. ANSYS
Imports an ANSYS file. The external import routine is ImportANSYS. Available options are:
-v Verbose output. Echo additional data to stdout during the import.
-E Import Elements of the same type as regions.
-A Import ANSA parts as regions.
-S Display a list of all supported element types.
2.5.3. CFX-4
Imports a CFX-4 grid file. The external import routine is ImportCFX4.
Available options are:
-v Verbose output. Echo additional data to stdout during the import.
-C Read coordinates as being in cylindrical coordinates.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
31
2.5.4. CFX-5.1
Imports a CFX-5.1 results file. The external import routine is ImportCFX5.
Available options are:
-v Verbose output. Echo additional data to stdout during the import.
-f Input file is formatted.
-u Input file is unformatted (Fortran).
-M <machine type> Set the machine type in the case of a binary or unformatted file so that data conversion
may be done if needed. The default file format is 32-bit IEEE (Iris, Sun, HP, IBM). The currently recognized
machine types are:
HP - HP 32-bit IEEE.
The argument machine type is case insensitive, and only the first 2 characters are needed (any others are
ignored).
32
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
2.5.5. CFX-TfC
-M <machine type> Set the machine type in the case of a binary or unformatted file so that data conversion
may be done if needed. The default file format is 32-bit IEEE (Iris, Sun, HP, IBM). The currently recognized
machine types are:
HP - HP 32-bit IEEE.
The argument machine type is case insensitive, and only the first 2 characters are needed (any others are
ignored).
2.5.5. CFX-TfC
Imports a CFX-TfC 1.3 mesh file. The external import routine is ImportGEM.
Available options are:
-v Verbose output. Echo additional data to stdout during the import.
-f Input file is formatted.
-u Input file is unformatted (Fortran).
-r Read regions from BFI file.
-b <file> Use file as BFI file name instead of default name.
-M <machine type> Set the machine type in the case of a binary or unformatted file so that data conversion may be done if needed. The default file format is 32-bit IEEE (Iris, Sun, HP, IBM). The currently recognized
machine types are:
HP - HP 32-bit IEEE.
33
The argument machine type is case insensitive, and only the first 2 characters are needed (any others are
ignored).
2.5.6. CGNS
Imports a CGNS file The external import routine is ImportCGNS. Available options are:
-v Verbose output. Echo additional data to stdout during the import.
-b Read a grid from the specific CGNS base.
-B Read all CGNS bases. (default)
-c Read BOCO information as 2D regions.
-f Import Family Information as regions.
-E Import each Element Section as a separate region.
-I Import each side of a connection as a separate region.
-P Do not add the Zone name as a prefix to any region being defined.
2.5.6.1. SplitCGNS.exe
The SplitCGNS.exe program will take a single CGNS file and split it into multiple files on a "file per
problem basis". The method for running this is:
SplitCGNS.exe [ -l ] <filename> <basename>
If the file contains two problems called "Pipe" and "Elbow", the import filter will only currently read "Pipe",
but using SplitCGNS will produce two files called basename_Pipe.cgns and basename_Elbow.cgns
each containing a single problem which can then be selected for import via the normal method.
Specifying the "-l" option "links" the part of the data in the original file to the created file using a relative
pathname. The created file does not therefore need to duplicate data.
The "-l" option should only be used if the original file and resulting files are going to be kept relative to
each other (that is, if when SplitCGNS was run the original file was in ../../example.cgns, it must always
remain in this position relative to the created files).
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
2.5.9. I-DEAS
-v Verbose output. Echo additional data to stdout during the import.
-I Import interior boundary conditions.
2.5.8. GridPro/az3000
Imports a GridPro/az3000 grid and connectivity file from Program Development Corporation (PDC).
The external import routine is ImportPDC. The import routine will attempt to determine the connectivity
file associated with the grid file by appending the extension conn to the grid file name. If the file is not
found, then the grid file name extension will be replaced by conn and the new file checked for. If neither
of these are found, the import routine will look for a file named conn.tmp, and if found will use it. A
command line option (-c) is also available to explicitly name the connectivity file.
If a connectivity file is found, the interface information in the file will be used to eliminate the duplicate
nodes at block interfaces, and boundaries conditions will be imported as regions into CFX. If the boundary
condition is named in the connectivity file, then that name will be used for the region name, else the default
name UnnamedRegionX with the X replaced by a number will be used. If a connectivity file is not found,
or the command line option to ignore the connectivity file is given (-i), then only the grid file will be imported, resulting in duplicate nodes at the block interfaces. You may then want to eliminate these duplicate
nodes with the command line option (-d or -D).
Available options are:
-v Verbose output. Echo additional data to stdout during the import.
-i Ignore the connectivity file. Duplicate nodes will result and no regions will be imported.
-c <connfile> Set the name of the connectivity file associated with the grid file to connfile.
-p Include periodic boundary conditions as regions. These are not normally included in the import. Setting
this flag will result in these being imported as regions.
-q Read from the property file
-P <propfile> Set the name of the property file associated with the grid file to propfile.
-3 Import grid blocks as 3D regions
2.5.9. I-DEAS
Imports an I-DEAS Universal file from SDRC. The external import routine is ImportIDEAS. Reads datasets 781
and 2411 (nodes) as nodes, 780 and 2412 (elements) as elements, and nodes (type 7) from datasets 752 and
2417 (permanent groups) as regions. All other datasets are read, but not processed.
Available options are:
-v Verbose output. Echo additional data to stdout during the import.
-n Import nodes in a PERMANENT group as a 2D region.
-l Import elements in a PERMANENT group as a 3D region.
-f Import faces in a PERMANENT group as a 2D region.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
35
2.5.11. PATRAN
Imports a PATRAN Neutral file. The external import routine is ImportPatran. Reads packet 01 (nodes) as
nodes, packet 02 (elements) as elements, and nodes (type 5) from packet 21 (named groups) as regions. A
command line option is available to read packet 06 (loads) as regions also. All other packets are read, but
not processed.
Available options are:
-v Verbose output. Echo additional data to stdout during the import.
-l Import packet 06 (distributed loads) as regions. The regions will be assigned the name PatranLoadX
where the X is replaced by the load ID number.
2.5.12. NASTRAN
Imports a NASTRAN file. The external import routine is ImportMSC. Currently reads only nodes (GRID), tet
(CTETRA) and hex (CHEXA) elements.
Available options are:
-v Verbose output. Echo additional data to stdout during the import.
-l Import PLOAD4 datasets as 2D regions.
-s Import PSOLID datasets as 3D regions.
2.5.13. CFX-TASCflow
Imports TASCflow Version 2 files. The external import routine is ImportGRD. The import routine will read
the mesh information from the GRD file and automatically remove duplicate nodes where interfaces are
defined and are 1:1.
Available command line options are:
-v Verbose output. Echo additional data to stdout during the import.
-V More verbose output.
-i Ignore the blockoff file (BCF).
-c Ignore GCI file.
-o Old style 2.4 format.
36
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
2.5.13. CFX-TASCflow
-b <file> Specifies bcf file which contains blocked-off regions (boundary condition information is ignored).
For details, see CFX-TASCflow Files in the CFX-Pre User's Guide.
-g <file> Specifies gci file to import. For details, see CFX-TASCflow Files in the CFX-Pre User's Guide.
-f Formatted (ASCII) GRD file.
-u Fortran unformatted GRD file.
-3 Import labelled 3D regions.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
37
38
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
2.
3.
4.
Numerous keywords are required for development and use of custom export files. For details, see cfx5export
Arguments.
An example source routine can be used as the basis of a customized program; one is given in the next section.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
39
<stdio.h>
<string.h>
<stdlib.h>
<io.h>
Obtaining CFX-Mesh and Results Export API header files is described in more detail. For details, see Linking
Code with the Mesh and Results Export API (p. 51).
The following piece of code simply defines the message that is printed if the user enters incorrect options
to the program.
static char *usgmsg[] = {
"usage: ExportTemplate [options] res_file [basename]",
" options are:",
" -u<level>
= user level of interest",
" -d<domain>
= domain of interest (default is 0 - all the domains",
"
are combined into a single domain)",
" -t<timestep> = timestep of interest (if set to -1, all timesteps",
"
are exported)"
" -c
= use corrected boundary node data",
" -i
= include boundary node only data",
" -f
= get info on the res_file (No output is created)",
" <basename> is the base filename for Template file output.",
"If not specified, it defaults to res_file. The Template",
"geometry file will be written to <basename>.geom, the",
"results file to <basename>.res, and the variables to",
"<basename>.s## or <basename>.v## where ## is the variable",
"number and s indicates a scalar and v a vector.",
NULL
};
40
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
The variable cfxCNT_SIZE and the types cfxNode and cfxElement are defined in the header file
cfxExport.h as are all variables and functions starting with the letters cfx. For details, see Mesh and
Results Export API (p. 39). The variables level, zone, alias, bndfix and bnddat are used for setting
the default values for the various parameters that can be set on the command line of the program.
The following line prints an error message if there are not enough arguments to proceed.
if (argc < 2)
cfxUsage (usgmsg, NULL);
The following piece of code reads the specified options and assigns values to certain variables accordingly.
If an invalid or incomplete option is specified, then getargs prints an error message and the export program
stops.
while ((n = getargs (argc, argv, options)) > 0) {
switch (n) {
case u:
level = atoi (argarg);
break;
case d:
zone = atoi (argarg);
break;
case t:
timestep = atoi (argarg);
isTimestep = 1;
break;
case c:
bndfix = 1;
break;
case i:
bnddat = 1;
break;
case f:
infoOnly = 1;
break;
}
}
After this, the level variable contains the user level specified. All results are output if they are of this user
level or below it. The zone variable contains the domain number that you specified. The variable alias
determines whether the variables are referred to by their long names or short names. The default here is
for short names to be used because some post-processors need variable names to contain no spaces, but
you are encouraged to use long variable names wherever possible. The variable bndfix determines
whether the variables are exported with corrected boundary node values - if bndfix is set to 1, then corRelease 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
41
The following code writes the basename specified to the character array baseFileName. If one was not
specified, then it defaults to the name of the results file specified. A basename name may be specified in
another directory (for example, ../template/output). However, later in the code this basename without the
preceding directory information is required (in this example output); and so the pointer pptr is assigned
to point to the first character of this name.
/* base file name */
if (argind + 1 < argc)
strcpy (baseFileName,
else
strcpy (baseFileName,
if (NULL != (pptr = strrchr
pptr++;
else if (NULL != (pptr =
pptr++;
else
pptr = baseFileName;
argv[argind+1]);
argv[argind]);
(baseFileName, /)))
strrchr (baseFileName, \\)))
The following code checks that the results file that will be produced by the export program will not overwrite
an existing results file.
/* dont overwrite results file */
sprintf (fileName, "%s.res", baseFileName);
if (0 == strcmp (argv[argind], fileName)) {
fprintf (stderr, "Template res file would overwrite CFX results file\n");
fprintf (stderr, "Need to select new Template output base file name\n");
exit (1);
}
42
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
The following code is ignoring any pyramid elements (elements with 5 nodes) and decreases nelems by
the number of pyramid elements. It then checks to make sure that neither the number of nodes nor the
number of elements is zero; if so, the program exits with return code -1.
The first two lines focus on the number of nodes in the zone and the number of elements in the zone.
nnodes = cfxExportNodeCount();
nelems = cfxExportElementCount();
if (counts[cfxCNT_PYR]) {
printf ("%d pyramid elements found - they are being ignored\n",
counts[cfxCNT_PYR]);
nelems -= counts[cfxCNT_PYR];
}
if (!nnodes
!nelems)
cfxExportFatal ("no nodes and/or elements");
43
*/
"Template Geometry file exported from CFX\n");
" \n");
"node id given\n");
"element id off\n");
The following code writes first the word coordinates and the number of nodes that will be written. The
pointer nodes is initialized to point at the data for the first node and the node data is written into the geometry file. For each node, a node number is written, followed by the three coordinates of that node. Note
that n ranges between 0 and nnodes-1. This program adds 1 to each node number so that the nodes in
the geometry file are numbered between 1 and nnodes. When it has finished, the cfxExportNodeFree
routine frees the memory that was used to store the node data, and finally the word done is printed on
the screen to alert you that it has finished writing the node data.
/* write nodes */
fprintf( fp, "coordinates\n");
fprintf( fp, "%8d\n", nnodes );
nodes = cfxExportNodeList();
printf (" writing %d nodes ...", nnodes);
fflush (stdout);
for (n = 0; n < nnodes; n++, nodes++) {
fprintf( fp, "%8d %12.5e %12.5e %12.5e\n", n + 1, nodes->x,
nodes->y, nodes->z );
}
cfxExportNodeFree();
printf (" done\n");
44
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
The following code is executed only if the number of tetrahedral elements is non-zero. Assuming this, elems
is set to point to the list of elements stored in the results file. The index n loops over all the elements. For
each element, the following step is carried out: If the element is a tetrahedron, then loop over its four vertices
and write their node numbers to the geometry file, then start a new line (ready for the next set of data).
The output produced can be seen in the examples of the exported files in the next section.
if (counts[cfxCNT_TET]) {
elems = cfxExportElementList();
for (n = 0; n < nelems; n++, elems++) {
if (cfxELEM_TET == elems->type) {
for (i = 0; i < elems->type; i++)
fprintf (fp, "%8d", elems->nodeid[i]);
putc (\n, fp);
}
}
}
For wedges (triangular prisms) and hexahedral elements, the same procedure is followed. However, there
is a slight difference in the way that the fprintf line is written for hexahedral elements. This is because
the order that the element nodes are written to the geometry file is different to the order in which they
were read from the results file. This may need to be done if a post-processor has a different convention for
node order than the one that the cfx5export node routines have. The order the nodes are written in will
affect which node is connected to which. The node ordering for exported elements is illustrated in cfxExportElementList (p. 57).
/* wedges */
fprintf( fp, "penta6\n");
fprintf( fp, "%8d\n", counts[cfxCNT_WDG] );
if (counts[cfxCNT_WDG]) {
elems = cfxExportElementList();
for (n = 0; n < nelems; n++, elems++) {
if (cfxELEM_WDG == elems->type) {
for (i = 0; i < elems->type; i++)
fprintf (fp, "%8d", elems->nodeid[i]);
}
putc (\n, fp);
}
}
/* hexes */
fprintf( fp, "hexa8\n");
fprintf( fp, "%8d\n", counts[cfxCNT_HEX] );
if (counts[cfxCNT_HEX]) {
elems = cfxExportElementList();
for (n = 0; n < nelems; n++, elems++) {
if (cfxELEM_HEX == elems->type)
fprintf (fp, "%8d%8d%8d%8d%8d%8d%8d%8d\n",
elems->nodeid[0], elems->nodeid[1],
elems->nodeid[3], elems->nodeid[2],
elems->nodeid[4], elems->nodeid[5],
elems->nodeid[7], elems->nodeid[6]);
}
}
Then the geometry file is closed and the memory occupied by the element data is freed.
printf (" done\n");
fclose (fp);
cfxExportElementFree();
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
45
2.
Either be a variable with useful values everywhere in the zone or be a variable that has values only
on the boundaries (in which case it will be exported only if you asked to include boundary node only
data by specifying the option -i when starting the export program, which translated to setting
bnddat = 1 when the arguments were processed).
Review the cfxExportVariableSize routine if this logic is unclear. For details, see cfxExportVariableSize (p. 64).
Once results are identified, the code calculates the variable namelen, which is the length of the longest
variable name to be exported (the alias variable was set when processing the arguments passed to the
export program, and depends upon whether you wanted to use long names or short names). If there are
no vector or scalar variables to be exported, the export program exits.
/* output results file */
nscalars = nvectors = namelen = 0;
if ((nvalues = cfxExportVariableCount(level)) > 0) {
for (n = 1; n <= nvalues; n++) {
cfxExportVariableSize (n, &dim, &length, &i);
if ((1 != dim && 3 != dim)
(length != nnodes && length != bnddat))
continue;
if (1 == dim)
nscalars++;
else
nvectors++;
i = strlen (cfxExportVariableName (n, alias));
if (namelen < i)
namelen = i;
}
}
if (0 == (nscalars + nvectors)) {
cfxExportDone ();
exit (0);
}
The following code checks that the results file can be opened for writing to, and exits if not. The number
of scalar and vector variables are written to the file, followed by some numbers (which EnSight, for example,
requires) that are always the same for any export of this kind.
sprintf (fileName, "%s.res", baseFileName);
if (NULL == (fp = fopen (fileName, "w+"))) {
sprintf (errmsg, "cant open <%s> for writing", fileName);
cfxExportFatal (errmsg);
}
printf ("writing Template results file to <%s>\n", fileName);
fflush (stdout);
fprintf( fp, "%d %d 0\n", nscalars, nvectors );
fprintf( fp, "%d\n", t2 - t1 + 1 );
for(i = t1; i <= t2; i++) {
fprintf( fp, "%13.4e", cfxExportTimestepTimeGet(i));
if(!(i % 6)) fprintf( fp, "\n");
}
fprintf( fp, "\n");
46
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Next, for each scalar variable, a line is written that contains the filename where the scalar will be written,
and then the name of the variable. Note that the filename is not the basename, but the basename with all
the directory structure (if any) stripped off the front. For details, see Checking File Names (p. 42). This is done
because these file will be written in the same directory as this Template results file, so there is no need for
directory information.
if ( nscalars ) {
for (n = 1; n <= nvalues; n++) {
cfxExportVariableSize (n, &dim, &length, &i);
if (1 == dim && (length == nnodes
length == bnddat))
if(!isTimestep)
fprintf (fp, "%s%s.s%2.2d %s\n", pptr, zoneExt,
n, cfxExportVariableName(n, alias));
else if(t1 == t2)
fprintf (fp, "%s%s_t%d.s%2.2d %s\n", pptr, zoneExt,
cfxExportTimestepNumGet(t1), n,
cfxExportVariableName(n, alias));
else
fprintf (fp, "%s%s_t%*.*s.s%2.2d %s\n", pptr, zoneExt,
nTimeDig, nTimeDig, wildcard, n,
cfxExportVariableName(n, alias));
}
}
The same information is then written for each vector variable and the Template results file is closed.
if ( nvectors ) {
for (n = 1; n <= nvalues; n++) {
cfxExportVariableSize (n, &dim, &length, &i);
if (3 == dim && (length == nnodes
length == bnddat))
if(!isTimestep)
fprintf (fp, "%s%s.v%2.2d %s\n", pptr, zoneExt,
n, cfxExportVariableName(n, alias));
else if(t1 == t2)
fprintf (fp, "%s%s_t%d.v%2.2d %s\n", pptr, zoneExt,
cfxExportTimestepNumGet(t1), n,
cfxExportVariableName(n, alias));
else
fprintf (fp, "%s%s_t%*.*s.v%2.2d %s\n", pptr, zoneExt,
nTimeDig, nTimeDig, wildcard, n,
cfxExportVariableName(n, alias));
}
}
fclose( fp );
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
47
Note
This program makes no use of any of the region routines, which enable access to boundary
condition data, nor the volume routines that enable access to the subdomains that are defined
for a problem.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Five files are produced: the geometry file example.geom, the Template results file example.res, and
three variable files called example.s01, example.s02 and example.v03, which contain the results
for pressure, temperature and velocity, respectively. For details, see:
3.1.2.1. example.geom
The content of this file appears as:
Template Geometry file exported from CFX
node id given
element id off
coordinates
2365
1 2.00000e+00 0.00000e+00 0.00000e+00
2-2.00000e+00-6.51683e-07 0.00000e+00
3 2.00000e+00 0.00000e+00 2.00000e+00
4-2.00000e+00-6.51683e-07 2.00000e+00
5 3.00000e+00 1.00000e+00 5.00000e-01
....
....
....
2362-1.13337e+00 2.18877e-01 4.02491e-01
2363-1.12115e+00-3.66598e-01 2.22610e-01
2364 1.36924e+00 4.78359e-01 1.22588e-01
2365-3.30703e-01 1.38487e+00 2.23515e+00
part 1
volume elements
tetra4
11435
754
230
12
145
755
216
8
122
756
212
125
215
....
....
....
2365
496
475
474
penta6
0
hexa8
0
3.1.2.2. example.res
The content of this file appears as:
2 1 0
1
0.0
0 1
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
49
3.1.2.3. example.s01
The content of this file appears as:
Pressure
1.42748e+04 1.42621e+04 1.43425e+04 1.43350e+04 1.44118e+04 1.44777e+04
1.38639e+04 1.37352e+04 1.44130e+04 1.44755e+04 1.37733e+04 1.37626e+04
....
....
....
1.39092e+04 1.40699e+04 1.24139e+04 1.34786e+04 1.34859e+04 1.37959e+04
50
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
3.3. Linking Code with the Mesh and Results Export API
if (++argind >= argc
- != argv[argind][0])
return (0);
place = argarg = &argv[argind][1];
}
/* check for valid option */
if ((argopt = *place++) == :
(oli = strchr (ostr, argopt)) == NULL) {
fprintf (stderr, "invalid command line option `%c\n", argopt);
exit (1);
}
/* check for an argument */
if (*++oli != :) {
/* dont need argument */
argarg = NULL;
if (!*place)
nextarg = 1;
}
else {
/* need an argument */
if (!*place) {
if (++argind >= argc) {
fprintf (stderr, "missing argument for option `%c\n", argopt);
exit (1);
}
place = argv[argind];
}
argarg = place;
nextarg = 1;
}
return (argopt);
/* return option letter */
}
3.2. Compiling Code with the Mesh and Results Export API
Compilation of a customized executable must be performed using an appropriate compiler and compiler
flags.
The customized executable must also be linked with the provided Mesh and Results Export API library and
the provided i/o library as detailed in Linking Code with the Mesh and Results Export API (p. 51).
Flag
hpux (pa-2)
+DS2.0W +DA2.0W
hpux-ia64
+DD64
<none>
linux-ia64
solaris
-m64
aix
3.3. Linking Code with the Mesh and Results Export API
In order to build a customized export utility, it must be linked with several libraries. With the exception of
bufferoverflowu.lib, these libraries are located in <CFXROOT>/lib/<os>/:
51
3.3.1. UNIX
On most UNIX systems, build the executable with the command:
where <CFXROOT> is the directory in which CFX is installed and <OSDIR> is a directory name corresponding
to the architecture of the machine that you are running on (that is, one of solaris, hpux, hpux-ia64,
aix, linux, or linux-ia64). In this example, your own export program is named export.c and the
executable file will be called export.exe.
The compiler flags and required libraries may vary, depending on the compiler and the custom program.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
cfxELEM_TET
cfxELEM_PYR
cfxELEM_WDG
cfxELEM_HEX
4
5
6
8
In the case of nodes, the global node number is returned, while in the case of faces, the returned value is
a combination of the global element number and local face number of the element. The following macros
are available to enable the user to extract the element and face number from the combined value:
#define cfxFACENUM(face) ((face) & 7)
#define cfxELEMNUM(face) ((face) >> 3)
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
53
where x, y, and z are the coordinates of the node. A pointer to an array of these structures is returned by
cfxExportNodeList. For details, see cfxExportNodeList (p. 57).
where type is the element type and nodeid is an array of node numbers that define the topology of the
element. A pointer to an array of these structures is returned by cfxExportElementList. For details,
see Element Types (p. 53) and cfxExportElementList (p. 57).
3.4.2.1. cfxExportInit
int cfxExportInit (char *resfile, int counts[cfxCNT_SIZE])
Opens the CFX results file named resfile and initializes the Export API. This should be the first call made
to the API.
The routine returns the total number of zones. If the array counts is supplied to the routine (that is, it is
not NULL), the array is filled with values representing the total number of nodes, elements, volumes, regions
and variables for all the zones are returned in this array.
3.4.2.2. cfxExportDone
void cfxExportDone ()
54
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
3.4.2.3. cfxExportError
void cfxExportError (void (*callback) (char *errmsg))
Specify a callback function that will be executed when a fatal error is generated by a call to cfxImportFatal
(see cfxImportFatal (p. 16)). The argument, callback, is the function that will be called, it should take an argument that is the error message passed to cfxImportFatal. It is the responsibility of the function to terminate
the application if required.
3.4.2.4. cfxExportFatal
void cfxExportFatal (char *errmsg)
Generate a fatal error message (errmsg) and close the ANSYS CFX results file. This routine also calls a callback
function, if one has been specified by cfxExportError (see cfxExportError (p. 55)). If no callback function
has been specified the function also terminates the application. There is no return from this call.
3.4.3.1. cfxExportZoneCount
int cfxExportZoneCount ()
3.4.3.2. cfxExportZoneSet
int cfxExportZoneSet (int zone, int counts[cfxCNT_SIZE])
3.4.3.3. cfxExportZoneGet
int cfxExportZoneGet ()
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
55
3.4.3.4. cfxExportZoneFree
void cfxExportZoneFree ()
While a zone is being accessed, internal storage is allocated, this storage should be deallocated when no
longer required. This can be done by calling cfxExportZoneFree or by calling cfxExportNodeFree,
cfxExportElementFree, cfxExportVolumeFree, cfxExportRegionFree and cfxExportVariableFree. Details on each of these routines is available; see:
3.4.3.5. cfxExportZoneIsRotating
int cfxExportZoneIsRotating(double rotationAxis[2][3], double *angularVelocity)
Query whether the current zone is rotating and describe axis and angular velocity of the rotation if applicable.
Returns 1 if the current zone is rotating and 0 if it is not; for the combined zone the return value is always
-1. If successful the rotation axis is returned in rotationAxis and the velocity in angularVelocity in
radians/second.
3.4.3.6. cfxExportZoneMotionAction
int cfxExportZoneMotionAction(const int zone, const int flag)
Specify whether grid coordinates and variables should have the appropriate rotation applied to them if the
zone is rotating so that grid coordinates appear in their correct locations and velocities (for examples) take
this rotation into consideration. If cfxExportZoneList and cfxExportVariableList should return
rotated values, flag should be set to cfxMOTION_USE. The default behavior for a particular zone will be
used if cfxMOTION_IGNORE is specified or this function isn't called. If zone is not valid or flag is not cfxMOTION_USE, cfxMOTION_IGNORE the return value will be -1 otherwise 0 is returned.
3.4.4.1. cfxExportNodeCount
int cfxExportNodeCount ()
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
3.4.4.2. cfxExportNodeList
cfxNode *cfxExportNodeList ()
Return a pointer to an array of cfxNode elements (see cfxnode (p. 23)) containing the coordinate values of
each node in the current zone. The first node in the zone is the first element of the array, the second the
second and so on.
The memory allocated to represent this information should be deallocated using cfxExportNodeFree
(see cfxExportNodeFree (p. 57)) when no longer required.
3.4.4.3. cfxExportNodeGet
int cfxExportNodeGet (int nodeid, double *x, double *y, double *z)
3.4.4.4. cfxExportNodeFree
void cfxExportNodeFree ()
Deallocate any internal storage allocated by the Export API after calls to cfxExportNodeList (see cfxExportNodeList (p. 57)) and cfxExportNodeGet (see cfxExportNodeGet (p. 57)) have been made in the current
zone.
3.4.5.1. cfxExportElementCount
int cfxExportElementCount ()
3.4.5.2. cfxExportElementList
cfxElement *cfxExportElementList ()
Return a pointer to an array of cfxElement elements (see cfxelem (p. 23)) containing the type and vertices
of each element in the current zone. The first element in the zone is the first element of the array, the second
the second and so on.
The memory allocated to represent this information should be deallocated using cfxExportElementFree
(see cfxExportElementFree (p. 58)) when no longer required.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
57
Note
The vertex ordering for the import API is different. For details, see cfxImportElement (p. 16).
3.4.5.3. cfxExportElementGet
int cfxExportElementGet (int elemid, int elemtype, int *nodelist)
Query the type and vertices of a specific element in the current zone.
The index (elemid) is specified between 1 and the number of elements returned by cfxExportElementCount (see cfxExportElementCount (p. 57)). If the value of elemid is out of range the return value is 0 otherwise
it is elemid.
The type of the element is returned in elemtype and the vertices defining the element in nodelist. Note that
nodelist must be large enough to hold the element number of vertices in the element (normally an array
of 8 integers is used as this allows space enough for all element types to be handled).
3.4.5.4. cfxExportElementFree
void cfxExportElementFree ()
Deallocates any internal storage allocated by making calls to cfxExportElementList (see cfxExportElementList (p. 57)) or cfxExportElementGet (see cfxExportElementGet (p. 58)).
58
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
3.4.6.1. cfxExportRegionCount
int cfxExportRegionCount ()
3.4.6.2. cfxExportRegionSize
int cfxExportRegionSize (int regnum, int type)
Query the number of faces (if type is cfxREG_FACES) or nodes (if type is cfxREG_NODES) defined in the
region identified by regnum in the current zone.
The function returns the number of faces or nodes in the current zone or 0 if either regnum is out of range
or type is invalid.
3.4.6.3. cfxExportRegionName
char *cfxExportRegionName (int regnum)
Query the name of the region in the current zone identifies by regnum.
The function returns the name of the region or NULL if the region number supplied is out of range. The
pointer returned points to static storage, which will be overwritten by the next call to cfxExportRegionName.
3.4.6.4. cfxExportRegionList
int *cfxExportRegionList (int regnum, int type)
Query the nodes (type is cfxREG_NODES) or faces (cfxREG_FACES) that define a region. This function
returns a pointer to an array of node ids or face ids that define the region identified by regnum or NULL if
the region number is out of range or the type is not recognized. If type is specified as cfxREG_FACES, the
returned ids will represent faces. The element number and local element face number may be extracted
from each face id returned by using the macros cfxELEMNUM and cfxFACENUM. The node numbers for
the face may be obtained by calling cfxExportFaceNodes. For details, see cfxExportFaceNodes (p. 60).
3.4.6.5. cfxExportRegionGet
int cfxExportRegionGet (int regnum, int type, int index, int *id)
Query the indexth element (type is cfxREG_ELEM) or indexth node (type is cfxREG_NODE) that defines
a the region regnum in the current zone.
If regnum is out of range or type is not recognized or index is out of range, 0 is returned.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
59
3.4.6.6. cfxExportRegionFree
void cfxExportRegionFree (int regnum)
Deallocate any internal data storage associated with the region defined by regnum.
3.4.7.1. cfxExportFaceNodes
int cfxExportFaceNodes (int faceid, int *nodes)
Requests the vertices for the face identified by faceid. The argument faceid should be constructed from
the element number and local face number using the following formula:
(element_number << 3) & local_face_number
Values returned from cfxExportRegionGet and cfxExportRegionList can be supplied directly to
this function.
The number of vertices defining the face are returned if faceid is valid, otherwise 0 is returned. The node
numbers are returned in the array nodes, which should be dimensioned to a minimum size of 4 in the
calling routine.
The face numbers and associated node indices are tabulated here:
Element Type
Face
Nodes
tetrahedron
pyramid
60
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Face
Nodes
prism
hexahedron
Note
The face numbers and associated node indices are different when importing elements. For details,
see cfxImportGetFace (p. 18).
3.4.8.1. cfxExportVolumeCount
int cfxExportVolumeCount ()
3.4.8.2. cfxExportVolumeSize
int cfxExportVolumeSize (int volnum, int type)
Query the number of nodes (if type is cfxVOL_NODES) or number of elements (if type is cfxVOL_ELEMS)
defining the volume indexed by volnum in the current zone. The return value will be 0 if volnum is out
of range or type is invalid.
3.4.8.3. cfxExportVolumeName
char *cfxExportVolumeName (int volnum)
Query the name of the volume in the current zone indexed by volnum. Returns NULL if the volnum is out
of range.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
61
Note
The returned pointer points to internal storage, which will be overwritten by the next call to
cfxExportVolumeName.
3.4.8.4. cfxExportVolumeList
int *cfxExportVolumeList (int volnum, int type)
Query the nodes (type is cfxVOL_NODES) or elements (cfxVOL_ELEMS) that define a volume.
This function returns a pointer to an array of node ids or element ids that define the volume identified by
volnum or NULL if the volume number is out of range or the type is not recognized.
3.4.8.5. cfxExportVolumeGet
int cfxExportVolumeGet (int volnum, int type, int index, int *id)
Query the [index]th element (type is cfxVOL_ELEM) or [index]th node (type is cfxVOL_NODE) that defines
a the volume volnum in the current zone.
If volnum is out of range or type is not recognized or index is out of range, 0 is returned.
Otherwise id will contain the id of the appropriate node or element in defining the volume and the function
will return index.
3.4.8.6. cfxExportVolumeFree
void cfxExportVolumeFree (int volnum)
Deallocate any internal data storage associated with the volume defined by volnum.
3.4.9.1. cfxExportBoundaryCount
int cfxExportBoundaryCount ()
3.4.9.2. cfxExportBoundaryName
const char *cfxExportBoundaryName (const int bcidx)
Query the name of the boundary condition in the current zone identified by bcidx.
62
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Note
The following routines use bcidx which must lie between 1 and cfxExportBoundaryCount()
and use index which must lie between 1 and cfxExportBoundarySize (bcidx, type).
3.4.9.3. cfxExportBoundaryType
const char *cfxExportBoundaryType (const int bcidx)
Query the type (for example, Inlet, Outlet etc.) of the boundary condition in the current zone identified by
bcidx.
The function returns the type of the boundary condition or NULL if the bcidx supplied is out of range.
The pointer returned points to static storage, which will be overwritten by the next call to cfxExportBoundaryType.
3.4.9.4. cfxExportBoundarySize
int cfxExportBoundarySize (const int bcidx, const int type)
Query the number of faces (if type is cfxREG_FACES) or nodes (if type is cfxREG_NODES) defined in the
boundary condition identified by bcidx in the current zone.
The function returns the number of faces or nodes or 0 if either bcidx is out of range or type is invalid.
3.4.9.5. cfxExportBoundaryList
int *cfxExportBoundaryList (const int bcidx, const int type)
Query the faces (if type is cfxREG_FACES) or nodes (if type is cfxREG_NODES) that define a boundary
condition.
This function returns a pointer to an array of node ids or face ids that define the location of the boundary
condition identified by bcidx or NULL if bcidx is out of range or the type is not recognized. If type is
specified as cfxREG_FACES, the returned ids will represent faces. The element number and local element
face number may be extracted from each face id returned by using the macros cfxELEMNUM and cfxFACENUM respectively. The node numbers for the face may be obtained by calling cfxExportFaceNodes.
For details, see cfxExportFaceNodes (p. 60).
The returned pointer points to static data which should be destroyed using cfxExportBoundaryFree.
Subsequent calls to cfxExportBoundaryList will overwrite the array.
3.4.9.6. cfxExportBoundaryGet
int cfxExportBoundaryGet (const int bcidx, const int type, const int index, int *id)
Query the index'th face (type is cfxREG_FACES) or index'th node (type is cfxREG_NODES) that defines
the boundary condition location indexed by bcidx in the current zone. If bcidx is out of range or type is
not recognized or index is out of range (not between 1 and cfxExportBoundarySize), 0 is returned.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
63
3.4.9.7. cfxExportBoundaryFree
void cfxExportBoundaryFree (const int bcidx)
Deallocate any internal data storage associated with the boundary condition defined by bcidx.
3.4.10.1. cfxExportVariableCount
int cfxExportVariableCount(int usr_level)
Query the number of variables at interest level usr_level or below. If usr_level is 0, then the total
number of variables is returned.
3.4.10.2. cfxExportVariableSize
int cfxExportVariableSize (int varnum, int *dimension, int *length, int *bdnflag)
Query the dimension, dimension, and length, length, for the variable identified by varnum, which should
be from 1 to the number of variables, returned by cfxExportVariableCount (cfxExportVariableCount (p. 64)). The length, length, will either be 1 or the same as the number of nodes returned by cfxExportNodeCount (see cfxExportNodeCount (p. 56)). If 1, then the variable has meaningful values only at
the boundary nodes, with a constant value in the interior.
The function also returns bdnflag which indicates if the variable contains corrected boundary node values
(1) or not (0).
The function returns varnum if successful, or 0 if the variable number is out of range.
3.4.10.3. cfxExportVariableName
char *cfxExportVariableName (int varnum, int alias)
64
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
3.4.10.4. cfxExportVariableList
float *cfxExportVariableList (int varnum, int correct)
3.4.10.5. cfxExportVariableGet
int cfxExportVariableGet (int varnum, int correct, int index, float *value)
Request the values of the variable identified by varnum at the location given by index, which should be
from 1 to the length of the variable, inclusively.
The flag correct indicates whether to correct boundary node data (correct=1) or not (correct=0),
assuming that it exists.
The function returns index, or 0 if the location is out of range.
The values of the variable are returned in value which should be dimensioned at least as large as the dimension of the variable.
3.4.10.6. cfxExportVariableFree
void cfxExportVariableFree (int varnum)
Deallocates the internal data storage for the variable identified by varnum for the current zone.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
65
66
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Figure 4.1 Integration of a Remeshing Loop into the General Simulation Workflow
As shown in Figure 4.1 (p. 67), in addition to the Preprocessing and Solution steps of the standard simulation
workflow, the remeshing loop includes three additional steps:
Data Extraction
Geometry Modification
Mesh Recreation.
In the context of remeshing, those steps are responsible for completing the following sub-steps;
Data Extraction: Extract any data needed to guide geometry modifications and mesh re-creation from
the most recent analysis results and monitor point values.
Geometry Re-Creation: Update the analysis geometry so that it conforms to that of the most recent
analysis results (that is, account for mesh deformation).
Mesh Re-Creation: Generate new mesh(es) that correspond to the updated geometry.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
67
Preprocessing: Insert the new mesh(es) into the analysis definition, and generate an updated CFXSolver Input File.
Solution: Interpolate the previously generated analysis results onto the new mesh, re-partition the mesh
if a parallel run mode is selected, and continue the solution process.
As described in Remeshing Tab in the CFX-Pre User's Guide, there are two options available for remeshing:
User Defined and ICEM CFD Replay. As outlined in the discussions that follow, the Preprocessing and
Solution steps (and their respective sub-steps) are automatically executed for both remeshing options. Although the remaining steps are automatically executed for the ICEM CFD Replay remeshing option, they
become the responsibility of a user defined external command for the User Defined remeshing option.
This remeshing option is ideally suited for users who have previously completed an in-house remeshing
solution involving scripts or varying degrees of manual user-intervention. When this option is used, the following steps are automatically executed:
Insert the new mesh(es) into the analysis definition, and generate an updated CFX-Solver Input file
Interpolate the previously generated analysis results onto the new mesh, re-partition the mesh if a
parallel run mode is selected, and continue the solution process.
The following examples outline the use of the User Defined remeshing option:
68
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Set the Activation Condition(s) to the previously created interrupt control condition(s).
Set the External Command to the command that will be used to generate the replacement mesh file.
Set the Replacement File to the name of the file that will be generated by the external command.
The External Command is typically a shell script or batch file that completes the following tasks:
Determine which key-frame mesh to use. This will require parsing the runs output file for the iteration
or time step number, or the actual simulation time. Output generated from the cfx5mondata executable
can also be parsed instead of the runs output file. For details, see Exporting Monitor Data from the
Command Line in the CFX-Solver Manager User's Guide.
Copy the key-frame mesh to the path the specified by the Replacement File setting.
Set the Activation Condition(s) to the previously created interrupt control condition(s).
Set the External Command to the command that will be used to generate the replacement mesh file.
Set the Replacement File to the name of the file that will be generated by the external command.
The External Command is typically a shell script or batch file that completes the following tasks:
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
69
Extract geometry data from the most recent solution of the analysis, and either update or replace the
original geometry. This may be done using mesh-to-geometry conversion tools available in software
such as ANSYS ICEM CFD, or by extracting monitor point data values (for example, the Total Centroid
Displacement variable) using the cfx5mondata executable. For details, see Exporting Monitor Data
from the Command Line in the CFX-Solver Manager User's Guide.
Create a replacement mesh file using the updated or newly generated geometry. This may be done in
any suitable mesh generation application.
Note that some mesh-to-geometry conversion tools are unable to extract the latest mesh coordinates from
the most recent CFX-Solver Results file. If this is the case, then introduce a call to CFX-Pre (within the External
Command) that executes a session file that simply loads the latest CFX-Solver Results file and writes a new
CFX-Solver Input file. That CFX-Solver Input file will contain the required, latest mesh coordinates.
When this option is used, the following steps are automatically executed:
Extract geometry and mesh control data and write them to the cfx_params.rpl replay file in the
run directory. The data includes:
70
Centroid displacements for boundaries that are included in ANSYS ICEM CFD Part Maps
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Run (in batch) the ANSYS ICEM CFD mesh generation program using the master replay file. This master
replay file executes the following tasks:
Load the reference geometry from the Geometry File identified in the Remesh definition.
Apply displacements (including scaling and any offsets) corresponding to all ANSYS ICEM CFD Part
Map definitions contained in the Remesh definition. This is done using the default geometry replay
file provided, or using the user defined replay file if specified in the ICEM CFD Geometry Control
setting.
Apply ICEM CFD Mesh Controls defined in the Remesh definition. This is done using the provided
controls, or using the user-defined replay file if specified in the ICEM CFD Mesh Control setting.
Insert the new mesh(es) into the analysis definition, and generate an updated CFX-Solver Input file.
Interpolate the previously generated analysis results onto the new mesh, re-partition the mesh if a
parallel run mode is selected, and continue the solution process.
You must create the reference Geometry File and the Mesh Replay File because these are specific to each
case. However, the generic default replay files (icemcfd_Remesh.rpl, icemcfd_GeomMod.rpl, and
icemcfd_MeshMod.rpl) used by this option are provided in the <CFXROOT>/etc/Remeshing directory.
These files may be edited to provide installation-wide changes to the ICEM CFD Replay remeshing behavior.
Alternatively, the geometry and mesh modification files may be copied and edited to provide case-specific
changes.
Note
As indicated previously, only translational mesh motion is automatically handled by the ICEM
CFD Replay remeshing option. This is accomplished by applying the displacements of centroids
of boundaries in the ANSYS CFX analysis definition to parts in the ANSYS ICEM CFD geometry.
All other mesh motion (such as rotation about the centroid or another point, or general deformation) will not be applied, and an inconsistency in the analysis geometry before and after
remeshing will be introduced.
71
Use File > Replay Scripts > Replay Control to begin recording the commands for the Mesh Replay
File. The Replay Control dialog is displayed.
2.
Revisit all of the mesh related tabs and settings used to generate the mesh, clicking either the Apply
or OK to commit the settings into the Replay Control panel.
3.
4.
In the Replay Control panel, clear the Record (after current) toggle and select Save to write the
settings to replay file.
You may also want to export the mesh that was (re)generated for use in the simulation definition (as in the
next step).
The third step involves defining the simulation within CFX-Pre. Complete the following tasks to prepare the
simulation:
1.
2.
Define expressions for the motion of the geometry (for example, see the expressions for the ball
movement in Fluid Structure Interaction and Mesh Deformation in the CFX Tutorials).
Note
See also the discussion in Mesh Re-Initialization During Remeshing (p. 73).
3.
Define the flow analysis including the definition of one or more solver interrupt controls, as described
in Interrupt Control in the CFX-Pre User's Guide, to identify the condition(s) under which solver execution
will be interrupted.
4.
Define a configuration and complete the ICEM CFD Replay remeshing setup as described in ANSYS
ICEM CFD Replay Remeshing in the CFX-Pre User's Guide. The Geometry File and Mesh Replay File
created above are referenced here. Note also, that references to one or more of the previously defined
solver interrupt control conditions are required to activate remeshing.
5.
Complete any execution controls for the simulation and either start the solver or write the CFX-Solver
Input file for later use.
72
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
The total mesh displacement variable is relative to a specific mesh topology. Since the mesh topology
changes, this variable is reset each time remeshing occurs.
The new variable called total centroid displacement tracks the displacement of each
boundarys centroid since the beginning of the analysis (that is, relative to the original mesh).
The specified displacement based mesh motion is relative to the initial mesh and must therefore include
an offset to account for mesh re-initialization. The Mesh Initialisation Time variable corresponds
to the time at which mesh re-initialization last occurred. This can be used to evaluate the required offset
for time varying mesh displacement.
An example of the expressions used to evaluate an applied displacement that includes the required offset
to account for mesh re-initialization is given below. In this example, the applied displacement is evaluated
as the desired displacement minus the value of the desired displacement at the Mesh Initialisation
Time.
Disp Desired = 1[m]*0.5*(1-cos(2.[s^-1]*pi*t))
Disp Mesh ReInit = 1[m]*0.5*(1-cos(2.[s^-1]*pi*Mesh Initialisation Time ))
Disp Applied = Disp Desired - Disp Mesh ReInit
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
73
74
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Further mesh deformation is likely to yield elements with negative volumes, which is a fatal condition
Some of the most common causes for mesh folding during deformation are identified in the following sections.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
75
5.1.4. Solving the Mesh Displacement Equations and Updating Mesh Coordinates
During each outer iteration or timestep, the mesh displacement equations are solved to the specified convergence level and the resulting displacements are applied to update the mesh coordinates. This occurs
before proceeding to solve the general transport (for example, hydrodynamics, turbulence, etc.) equations.
Unlike other equation classes, the convergence level (that is, controls and criteria) applied to mesh displacement equations is unaffected by changes made to the basic settings for all other equations. The default
convergence controls and criteria for the mesh displacement equation are tabulated below, and are changed
by visiting the Mesh Displacement entry in the Equation Class Settings tab under Solver Control.
Setting
Value
Residual Type
RMS
Residual Target
1.0E-4
Mesh folding occurs and is detected when the displacements are used to update the mesh coordinates.
Folded meshes can occur if the displacement equations are incompletely solved. In this case, the unconverged
displacement solution field does not vary smoothly enough to ensure that adjacent mesh nodes move by
similar amounts.
76
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Restart Simulation
Restart Behavior
No Deformation
Deformation
Deformation
No Deformation
Deformation
Deformation
If the restart is a transient run with the initial time set to Value, then the final mesh from the initial run will serve as the initial mesh for the
restart simulation.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
77
For information about exporting mechanical and thermal surface data and thermal volumetric data for
use with the MFS solver, refer to Export to ANSYS Multi-field Solver Dialog Box in the CFX-Solver Manager
User's Guide. For information about using the exported results and the MFS Solver, refer to Chapter 3,
The ANSYS Multi-field (TM) Solver - MFS Single-Code Coupling.
For information about exporting mechanical and thermal surface data for general use, refer to Mechanical Import/Export Commands in the CFD-Post User's Guide. This method involves reading a Mechanical
Coded Database (CDB) file and interpolating CFX solution data onto the mesh contained in that file.
For more information about how these steps are automated in the Mechanical application, refer to the
Custom Systems discussion presented in the ANSYS Workbench help documentation.
Load the fluids results file, from which you want to transfer results, into CFD-Post
2.
Select File > Import > Import Mechanical CDB Surface. The Import Mechanical CDB Surface dialog
appears.
3.
Select the CDB file that specifies the surface mesh of the solid object to which to transfer data.
Also select the Associated Boundary for the surface to map onto, and make other selections as
appropriate.
Select the XML document that provides all transfer information. Click OK, and the surface data is
loaded.
4.
Select File > Export > Export Mechanical Load File. The Export Mechanical Load File dialog appears.
5.
In the Export Mechanical Load File dialog, select a filename to which to save the data. For the Location
parameter value, select the imported ANSYS mesh object. Under File Format select ANSYS Load
Commands (FSE or D). (Alternatively, you can select WB Simulation Input (XML) to get XML output.)
Also select the appropriate data to export: Normal Stress Vector, Tangential Stress Vector, Stress Vector,
Heat Transfer Coefficient, Heat Flux, or Temperature. Click Save, and the data file is created.
The one-way FSI data transfer described above is performed automatically when using the FSI: Fluid Flow
(CFX) > Static Structural custom system in ANSYS Workbench. For details, see the Workbench > Workbench
Help > System > Custom Systems > FSI: Fluid Flow (CFX) > Static Structural section in the ANSYS documentation.
78
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Coupling CFX to an External Solver: ANSYS Multi-field Simulations in the CFX-Solver Modeling Guide
Coupled simulations begin with the execution of the Mechanical application and CFX field solvers. The
Mechanical application solver acts as a coupling master process to which the CFX-Solver connects. Once
that connection is established, the solvers advance through a sequence of six pre-defined synchronization
points (SPs), as illustrated in Figure 5.1 (p. 80). At each of these SPs, each field solver gathers the data it requires from the other solver in order to advance to the next point.
The first three SPs are used to prepare the solvers for the calculation intensive solution process, which takes
place during the final three SPs. These final SPs define a sequence of coupling steps, each of which consists
of one or more stagger/coupling iterations. During every stagger iteration, each field solver gathers the data
it requires from the other solver, and solves its field equations for the current coupling step. Stagger iterations
are repeated until a maximum number of stagger iterations is reached or until the data transferred between
solvers and all field equations have converged. The latter guarantees an implicit solution of all fields for
each coupling step.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
79
80
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
81
82
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
This guide is aimed at users who have moderate or little experience using ANSYS CFX. It is part of a series
that provides advice for using ANSYS CFX in specific engineering application areas. The current guidelines
are adapted from Best Practice Guidelines developed for the nuclear reactor safety applications [143 (p. 268)].
83
84
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
=
(61)
Equation 61 (p. 85) is valid for every grid point for which the numerical solution exists. A global number
can be defined by applying suitable norms, as:
%$#"!
=
(62)
The goal of a numerical simulation is to reduce this error below an acceptable limit.
Obviously, this is not a straightforward task, as the exact solution is not known and the error can therefore
not be computed. Exceptions are simple test cases for code verification where an analytical solution is
available.
&
Given a grid spacing , and the truncation error order of a consistent discretization scheme, , a Taylor
series can be written to express the exact solution as:
5A@2987 6 5432
(
(
In other words, the numerical solution converges towards the exact solution with the
spacing. Analogous definitions are available for time discretization errors.
(63)
DC B
10 )
'
85
(64)
+
=
$# "
where
is the
derivative of the exact solution at a given location. An example is a central difference
for a spatial derivative:
+
+
(65)
&
&
6
@
&
8@
6
@
% '
@
% '
&
&
9
&
96
6
% '
9
&
A0 B
B
8
76
&
A0
%
5 4321
97 6
&
%
5 4321
% '
9
8@
)
0
76
This formulation has a truncation error of order 2 and is therefore second-order accurate. The overall truncation error order of the spatial discretization scheme is determined by the lowest order truncation error
after all terms have been discretized.
RQ P
V U
FE D
I H
In the
. First-order upwind
Y X
ba `
. This term then contributes to the diffusion term (numerical/false diffusion), which is most dangerous
in 3D problems with grid lines not aligned to the flow direction. These schemes enhance the dissipation
property of the numerical algorithm (see for example, Ferziger and Peric [141 (p. 267)]) and are not desirable
in high-quality CFD simulations.
From a practical standpoint, it is important to understand that for a first-order method, the error is reduced
to 50% by a doubling of the grid resolution in each spatial direction. For a second-order method, it is reduced
to 25% for the same grid refinement.
(66)
d
e
f
The error in the time discretization can again be obtained by a Taylor series expansion of the numerical
formulation of this equation. With the example of a backward Euler integration:
86
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
(67)
" !
$ #! & %
& % ( ' ) & % (& ' & % & %
)
=
(68)
3
2 10
CA
8 7 9 8 7 BA 6
+
@5 4
5 4
E @
B
D
(69)
(610)
H S
H I
QP
S
This constitutes an implicit formulation with first-order accuracy. A second-order time differencing is not
compatible with this linearization of the right hand side, as the linearization introduced a first-order error
in
. In order to be able to satisfy the implicit dependency of the right hand side on the time level +
more closely, inner iterations (or coefficient loops) are frequently introduced:
UT
gf
X W
y
y
u u
+
(611)
(612)
y
u v
xw
xw
e d
e d
gf X f g f X Y
e d
e d
gf X f gf X `
e d
cb
gf X W i a q prq i a
=
This equation can be converged completely (left hand side goes to zero) in in order to solve the original
exact implicit formulation given by Equation 67 (p. 87). It is obvious that it is not necessary to converge
the coefficient loop to zero, while the right hand side has a finite (first-order) error in
. It can be shown
that for a first-order time integration, one coefficient loop is consistent with the accuracy of the method. In
a case where a second-order accurate scheme is used in the time derivative, two coefficient loops will ensure
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
87
(613)
Zero iteration error would mean that the left hand side is converged to zero, leading to the converged
= . However, in practical situations, the iterative process is stopped at a certain level, in
solution
order to reduce the numerical effort. The difference between this solution and the fully converged solution
defines the iteration error.
The iteration error is usually quantified in terms of a residual or a residual norm. This can be the maximum
, for all grid points, or a root mean square of this quantity. In
absolute value of the right hand side,
most CFD methods, the residual is non-dimensionalized to allow for a comparison between different applications with different scaling. However, the non-dimensionalization is different for different CFD codes,
making general statements as to the required absolute level of residuals impractical. Typically, the quality
of a solution is measured by the overall reduction in the residual, compared to the level at the start of the
simulation.
The iteration error should be controlled with the use of the target variables. The value of the target variable
can be plotted as a function of the convergence level. In case of iterative convergence, the target variable
should remain constant with the convergence level. It is desirable to display the target variable in the solver
monitor during the simulation.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
In this formulation,
(614)
= +
the grid spacing. The subscript, , refers to the current level of grid resolution. Solutions on different grids
are represented by different subscripts.
The assumption for the derivation of an error estimate is that the order of the numerical discretization is
known. This is usually the case. Assuming a second-order accurate method, the above expansion can be
written for two different grids:
# $
$
3 3
3' &
= +
(615)
" !
%
2 10)(
54
= +
D7
E
E
8D 7
D
D7
D
E 8D 7
(616)
6
C BA@9
The difference between the fine grid solution and the exact solution (defining the error) is therefore:
P
Y
X
I
X
Q
Y
Q
V UTSR
(617)
For an arbitrary order of accuracy, , of the underlying numerical scheme, the error is given by:
`
i hgfe
(618)
ut
and
wv
p qd
sc rc
grid solution is available at the same location. In the case of a doubling of the grid density without a
movement of the coarse grid nodes, all information is available on the coarse grid nodes. The application
of the correction to the fine-grid solution requires an interpolation of the correction to the fine grid nodes
(Roache [139 (p. 267)]). In the case of a general grid refinement, the solutions are not available on the same
physical locations. An interpolation of the solution between the different grids is then required for a direct
error estimate. It has to be ensured that the interpolation error is lower than the solution error in order to
avoid a contamination of the estimate.
Richardson interpolation can also be applied to integral quantities (target variables), such as lift or drag
coefficients. In this case, no interpolation of the solution between grids is required.
Note that the above derivation is valid only if the underlying method has the same order of accuracy
everywhere in the domain and if the coarse grid is already in the asymptotic range (the error decreases with
the order of the numerical method). In addition, the method magnifies round-off and iteration errors.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
89
=
(619)
An estimate,
=
(620)
It can be shown (Roache [139 (p. 267)]) that the exact relative error and the approximation are related by:
% %
% $# " !
+
(621)
)(
'&
goes to zero.
In order to arrive at a practical error estimator, the following definitions are proposed:
Field error:
@8 A 2 9 C 1 76543
C 1 B 1 10
(622)
Maximum error:
(623)
(624)
VT W F U
Y E SRQHP
Y E X E IHG IHG D
=
RMS error:
rp s b q u a ihgfc
u a t a ed c e d c `
=
90
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
(625)
where is the defined target variable (list, drag, heat transfer coefficient, maximum temperature, mass flow,
et cetera).
Similar error measures can be defined for derived variables, which can be specified for each test case. Typical examples would be the total mass flow, the pressure drop, or the overall heat transfer. This will be the
recommended strategy, as it avoids the interpolation of solutions between the coarse and the fine grid.
For unstructured meshes, the above considerations are valid only in cases of a global refinement of the
mesh. Otherwise, the solution error will not be reduced continuously across the domain. For unstructured
refinement the refinement level, , can be defined as follows:
$#
(626)
&
%
"!
('
where
It must be emphasized that these definitions do not impose an upper limit on the real error, but are estimates
for the evaluation of the quality of the numerical results. Limitations of the above error estimates are:
For three-dimensional simulations, the demand that the coarse grid solution be in the asymptotic range is
often hard to ensure. It is therefore required to compute the error for three different grid levels, to avoid
fortuitous results. If the solution is in the asymptotic range, the following indicator should be close to constant:
51
34332 10
=
(627)
The statistical model approach reduces the resolution requirements in time and space by many orders of
magnitude, but requires the calibration of model coefficients for certain classes of flows against experimental
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
91
Turbulence models
Multi-phase models
Combustion models
Radiation models.
In combustion models, the reduction can be both in terms of the chemical species and in terms of the turbulence-combustion interaction. In radiation, the reduction is typically in terms of the wavelength and/or
the directional information. For multi-phase flows, it is usually not possible to resolve a large number of individual bubbles or droplets. In this case, the equations are averaged over the different phases to produce
continuous distributions for each phase in space and time.
As all of these models are based on a reduction of the real physics to a reduced resolution, information
has to be introduced from outside the original equations. This is usually achieved by experimental calibration,
or by available DNS (p. 84) results.
Once a model has been selected, the accuracy of the simulation cannot be increased beyond the capabilities
of the model. This is the largest factor of uncertainty in CFD methods, as modeling errors can be of the order
of 100% or more. These large errors occur in cases where the CFD solution is very sensitive to the model
assumptions and where a model is applied outside its range of calibration.
Because of the complexity of industrial simulations, it cannot be ensured that the models available in a
given CFD code are suitable for a new application. While in most industrial codes a number of different
models are available, there is no a priori criterion as to the selection of the most appropriate one. Successful
model selection is largely based on the expertise and the knowledge of the CFD user.
Problem description
Computing power
CFD software
According to the ERCOFTAC Best Practice Guidelines [140 (p. 267)], some of the sources for user errors are:
Lack of experience
Often, user errors are related to management errors when insufficient resources are assigned to a project,
or inexperienced users are given a too complex application. Typical user errors are:
92
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Post-processing errors.
Documentation errors
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
93
Local details. In general, geometrical features with dimensions below the local mesh size (for example,
wall roughness or porous elements) are not included in the geometrical model. These should be incorporated through a suitable model.
In the case that the geometry is imported from CAD-data, the data should be checked beforehand. Frequently,
after the import of CAD-data, the CAD-data has to be adapted (cleaned) before it can be used for mesh
generation. It is essential for mesh generation to have closed volumes. The various CAD-data formats do
not always contain these closed volumes. Therefore, the CAD-data has to be altered in order to create the
closed volumes. It has to be ensured that these changes do not influence the flow to be computed.
Aspect ratios should not be larger than 20 to 50 in regions away from the boundary.
Aspect ratios may, and should, be larger than that in the boundary layers. For well resolved
boundary layers at high Re numbers, the near-wall aspect ratios can be of the order of 105-106.
Avoid non-scalable grid topologies. Non-scalable topologies can occur in block-structured grids and are
characterized by a deterioration of grid quality under grid refinement.
94
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Avoid non-orthogonal, for example, unstructured tetrahedral meshes, in (thin) boundary layers.
Use a finer and more regular grid in critical regions, for example, regions with high gradients or large
changes such as shocks.
Avoid the presence of arbitrary grid interfaces, mesh refinements, or changes in element types in critical
regions. An arbitrary grid interface occurs when there is no one-to-one correspondence between the
cell faces on both sides of a common interface, between adjacent mesh parts.
If possible, determine the size of the cells adjacent to wall boundaries where turbulence models are used,
before grid generation has started.
Numerical diffusion is high when computational cells are created that are not orthogonal to the fluid flow.
If possible, avoid computational cells that are not orthogonal to the fluid flow.
Judge the mesh quality by using the possibilities offered by the mesh generator. Most mesh generators offer
checks on mesh parameters, such as aspect ratio, internal angle, face warpage, right handiness, negative
volumes, cracks, and tetrahedral quality.
It should be demonstrated that the final result of the calculations is independent of the grid that is used.
This is usually done by comparison of the results of calculations on grids with different grid sizes.
Some CFD methods allow the application of grid adaptation procedures. In these methods, the grid is refined
in critical regions (high truncation errors, large solution gradients, et cetera). In these methods, the selection
of appropriate indicator functions for the adaptation is essential for the success of the simulations. They
should be based on the most important flow features to be computed.
As a general rule, any important shear layer in the flow (boundary layer, mixing layer, free jets, wakes, and
so on) should be resolved with at least 10 nodes normal to the layer. This is a very challenging requirement
that often requires the use of grids that are aligned with the shear layers.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
95
96
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
An important weakness of standard two-equation models is that they are insensitive to streamline curvature
and system rotation. Particularly for swirling flows, this can lead to an over-prediction of turbulent mixing
and to a strong decay of the core vortex. There are curvature correction models available, but they have
not been generally validated for complex flows.
The standard two-equation models can also exhibit a strong build-up of turbulence in stagnation regions,
due to their modeling of the production terms. Several modifications are available to reduce this effect, for
instance by Kato and Launder [128 (p. 266)]. They should be used for flows around rods, blades, airfoils, et
cetera.
One of the weak points of the SMC (p. 96) closure is that the same scale equations are used as in the twoequation framework. As the scale equation is typically one of the main sources of uncertainty, it is found
that SMC (p. 96) models do not consistently produce superior results compared to the simpler models. In
addition, experience has shown that SMC (p. 96) models are often much harder to handle numerically. The
model can introduce a strong non-linearity into the CFD method, leading to numerical problems in many
applications.
SMC (p. 96) models are usually not started from a pre-specified initial condition, but from an already available
solution from a two-equation (or simpler) model. This reduces some of the numerical problems of the
SMC (p. 96) approach. In addition, it offers an important sensitivity study, as it allows quantifying the influence
of the turbulence model on the solution. It is therefore recommended that you fully converge the twoequation model solution and save it for a comparison with the SMC (p. 96) model solution. The difference
between the solutions is a measure of the influence of the turbulence model and therefore an indication of
the modeling uncertainty. This is possible only in steady state simulations. For unsteady flows, the models
usually have to be started from the initial condition.
97
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
In ANSYS CFX, hybrid methods are available for all -equation based turbulence models (automatic nearwall treatment), which automatically switch from a low-Re formulation to wall functions based on the grid
spacing you provide. These formulations provide the optimal boundary condition for a given grid. From a
best practice standpoint, they are the most desirable, as they allow for an accurate near-wall treatment over
a wide range of grid spacings. However, accurate boundary layer simulations do not depend only on the
+
near-wall spacing, but also require a minimum of at least 10 grid nodes inside the boundary layer.
Avoid the use of classical wall functions, as they are inconsistent with grid refinement.
Avoid strict low-Re number formulations, unless it is ensured that all near-wall cells are within the resolution requirements of the formulation.
In combination with the model, use scalable wall functions. They can be applied to a range of
grids without immediate deterioration of the solution (default in ANSYS CFX).
For more accurate simulations, use an automatic wall treatment in combination with SST (p. 97) turbulence model (default in ANSYS CFX).
99
100
Geometry reduction
Boundary condition assumptions
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Perform a sensitivity analysis with at least two settings for each arbitrary parameter.
2.
3.
4.
Can be computed inside the solver and displayed during run-time (optimal).
It is optimal if the variable can be computed during run-time and displayed as part of the convergence history.
This enables you to follow the development of the target variable during the iterative process.
It is desirable to have the target variable written out at every timestep in order to display it during the
simulation run.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
101
Provide three (or more) grids using the same topology (or for unstructured meshes, a uniform refinement
over all cells).
Ensure convergence of the target variable in the time- or iteration domain. See Iteration Errors (p. 88)
and Minimizing Iteration Errors (p. 101).
Compute and report error measure for target variable(s) based on Equation 625 (p. 91).
Check if the solution is in the asymptotic range using Equation 627 (p. 91).
(628)
102
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Error estimate based on Equation 625 (p. 91) for (time averaged) target variables
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
103
6.4.1.1. Description
For CFD code verification, convergence can be tested against exact analytical solutions like:
For the verification of newly implemented models, verification can only in limited cases be based on analytical solutions. An example is the terminal rise velocity of a spherical bubble in a calm fluid.
In most other cases, simple experiments are used for the verification. It is recommended that you compute
the test cases given by the model developer in the original publication of the model, or other trustworthy
publications. Quite often experimental correlations can be applied, without the need for comparison with
one specific experiment. For instance for turbulence model verification, the most frequently used correlations
are those for flat plate boundary layers.
6.4.1.2. Requirements
The only requirement for verification data is that they allow a judgement of the correct implementation of
the code and/or the models. This requires information from other sources concerning the performance of
the model for the test case. Strictly speaking, it is not required that the simulations are in good agreement
with the data, but that the differences between the simulations and the data are as expected.
The test suite for model verification must be diverse enough to check all aspects of the implementation. As
an example, a fully developed channel flow does not allow to test the correct implementation of the convective terms of a transport equation. The test suite should also allow testing the correct interaction of the
new model with existing other features of the software.
Software verification for physical models should be carried out in the same environment that the end-user
has available. Testing of the new features in an expert environment might miss some of error sources like
the GUI (p. 93).
Verification cases should be selected before the model is implemented. They must be considered an integral
part of the model implementation.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
6.4.2.1. Description
Examples of validation cases are flows with a high degree of information required to test the different aspects
of the model formulation. In an ideal case, a validation test case should be sufficiently complete to allow
for an improvement of the physical models it was designed to evaluate. Increasingly, validation data are
obtained from DNS (p. 84) studies. The main limitation here is in the low-Reynolds number and the limited
physical complexity of DNS (p. 84) data. Typically, validation cases are geometrically simple and often based
on two-dimensional or axi-symmetric geometries.
6.4.2.2. Requirements
Validation cases are selected to be as close as possible to the intended application of the model. As an example, the validation of a turbulence model for a flat plate boundary layer does not ensure the applicability
of the model to flows with separation (as is known from the model). It is well accepted by the CFD
community and by model developers that no model (turbulence, multi-phase or other) will be able to cover
all applications with sufficient accuracy. This is the reason why there are always multiple models for each
application. The validation cases allow the CFD user to select the most appropriate model for the intended
type of application.
Test case selection requires that the main features of the CFD models that are to be tested be clearly identified. They must then be dominant in the validation case. Validation cases are often single physics cases,
but it will be more and more necessary to validate CFD methods for combined effects.
The requirements for validation cases are that there should be sufficient detail to be able to compute the
flow unambiguously and to evaluate the performance of the CFD method for a given target application.
Completeness of information is one of the most important requirements for a validation test case. This includes
all information required to run the simulation, like:
Geometry
Boundary conditions
While the first three demands are clearly necessary to be able to set up and run the simulation, the knowledge
of all physical effects taking place in the experiment is not always considered. However, it is crucial to have
a clear understanding of the overall flow in order to be able to judge the quality of a test case. Typical
questions are:
Are all the relevant physical effects known (multi-phase, transition, et cetera)?
Have any corrections been applied to the data and are they appropriate?
Completeness of information is also essential for the comparison of the simulation results with the experimental data. A validation case should have sufficient detail to identify the sources for the discrepancies
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
105
6.4.3.1. Description
For an aerodynamic study, a typical hierarchy would be:
6.4.3.2. Requirements
Typically, the detail of the experimental data is much lower than for verification or validation cases.
106
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Geometry
Boundary conditions
Typically, the level of completeness of the data for demonstration cases is much lower than for validation
cases. It is therefore even more essential to identify the missing information and to carry out sensitivity
studies with respect to these data.
In terms of post-processing, demonstration cases often do not provide a high degree of detail. They are
usually not appropriate to identify specific weaknesses in the physical models or the CFD codes. Typically,
only the point data or global parameters, as efficiencies, are provided.
Even though the density of data is usually lower, the quality should satisfy the same criteria as for validation
cases. Error estimates are desirable and so are independent measurements.
Due to the limited amount of data available, the information is usually not sufficient to carry out consistency
checks.
The requirements in terms of availability/openness are usually lower than for validation cases, as the
demonstration applies usually to a smaller audience. A demonstration case might be carried out for a single
customer or one specific industrial sector. It has to be ensured, as in all cases, that the data can be shown
to the target audience of the simulation.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
107
108
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
109
NPSH is the Net Positive Suction Head, a quantity directly related to the inlet total pressure by the relation:
110
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
7.1.4. Setup
(71)
where pT,inlet is the inlet total pressure, pv is the vapor pressure, is density, and g is the acceleration due
to gravity. As the inlet total pressure drops, so does the NPSH value, and the amount of cavitation increases.
To generate this diagram, RPM and flow rate are fixed, and the pressure rise is measured at progressively
lower inlet total pressures. For the part of the test where the inlet total pressure is sufficiently high to prevent
cavitation, the pressure rise across the pump is constant, equal to the amount predicted by the first performance diagram. This results in a horizontal trend in the performance curve as the inlet total pressure is dropped.
Since the pressure rise remains constant, the total pressure at the outlet drops by the same amount as at
the inlet. Using CFX software, a mass flow outlet boundary condition can be specified to fix the flow rate
while the inlet total pressure is varied.
When the inlet total pressure reaches a sufficiently low value, cavitation occurs. A further reduction in inlet
total pressure causes more cavitation, which almost always causes a large loss of pressure rise. In rare cases,
pressure rise can actually increase slightly with small amounts of cavitation. Even in such cases, however, a
further increase in cavitation causes a sudden loss of pressure rise. In the lab, the pressure rise will eventually
become insufficient to maintain the required flow rate. Using CFX software, the solution will eventually fail
to converge. Before this point, data should be collected with a sufficient resolution (sufficiently small changes
in inlet pressure) to resolve the part of the performance curve where the pressure starts to drop. The point
of cavitation is often marked by the NPSH at which the pressure rise has fallen by a few percent.
Set up a simulation with cavitation turned on and pressure levels set high enough to avoid levels of
cavitation that significantly affect pressure rise.
If you have trouble getting a converged solution, try running a simulation with cavitation turned off,
then use the result as an initial guess for a simulation with cavitation turned on.
2.
3.
Calculate the pressure rise across the pump and the NPSH value, then plot a point in the performance
diagram.
4.
5.
Repeat starting from step 2, using the previous solution as the initial guess, until cavitation has caused
a significant loss of pump head.
7.1.4. Setup
To facilitate setting up typical domain settings for the cavitation of water, you may load a single-domain
mesh, then run the template .ccl file:
CFX/etc/model-templates/cavitating_water.ccl
This file should be examined in a text editor before using it so that you understand which settings it specifies.
For the domain fluids list, specify both a liquid and a vapor for the same material. In most cases, it is sufficient
to use a constant-density vapor.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
111
2.
The inlet boundary condition should specify that the volume fraction of vapor is zero.
Turbulence models should be chosen as usual (e.g., k-epsilon or SST). For turbulence induced cavitation,
consider using the DES model.
For advection scheme, use high resolution, or a specified blend factor of unity.
If editing a material, remember that the vapor pressure is on an absolute scale; it does not depend on the
specified reference pressure.
Cavitation models cannot be combined with other types of interphase mass transfer, such as thermal phase
changes.
7.1.6. Post-Processing
A contour plot of volume fraction for the vapor can show where cavitation bubbles exist.
To calculate the inlet and outlet pressures, use the function calculator.
112
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
8.1.1. Setup
8.1.1.1. Steady State vs. Transient
Most simulations are steady-state, particularly for stationary gas turbines that operate at a constant load.
Non-Premixed Combustion
Combustion Models: EDM with product limiter and/or Combustion Models: EDM, FRC/EDM combined,
extinction submodels, FRC/EDM combined, Partially
Flamelet (and, for some cases, also the Premixed
Premixed (Turbulent Flame Speed Closure (TFC))
model).
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
113
Non-Premixed Combustion
8.1.2. Reactions
During the initial analysis of a combustor, the highest values of temperature and outgoing heat flux are
likely to be of primary concern. For this purpose, a single-step Eddy Dissipation reaction can be used. Such
a reaction is likely to overpredict the temperature, and will not predict emissions correctly, but can provide
a conservative indicator of the expected temperature levels.
Other reaction steps might then be added to the simulation to account for the formation of combustion
byproducts. Each reaction step has its own separate time scale. As a result, convergence can become very
difficult when a multi-step reaction contains more than about 5 steps.
114
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
8.2.1. Setup
END
END
END
Depending on the location of the SOLVER CONTROL block, the temperature damping may be applied to a
particular domain or phase. Set the Temperature Damping Limit to 0 so that positive damping is always
applied. The Under Relaxation Factor can be set to multiply changes in temperature by a value
between 0 and 1. You should try a factor of 0.2 if you are having trouble converging a solution.
8.1.4. Post-Processing
Some of the most common plots to create in CFD-Post include:
Mass Fractions: fuel, O2, products, intermediate species (CO), pollutants (NO)
Reaction Rates
The variable "<my reaction>.Molar Reaction Rate" is available for every "Single Step" reaction (EDM, FRC
or combined model).
Plots of the turbulent Damkhler number (the ratio of the turbulent time scale to the chemical time
scale)
8.2.1. Setup
Most simulations are set up as transient. The choice of timestep is generally model dependent, but will
usually fall into the range 0.5 s to 2 s. The Total Energy heat transfer model should be selected to fully
model buoyancy.
Note
When modeling buoyancy, it is very important to correctly specify the buoyancy reference density
when opening boundary conditions are used.
The RNG turbulence model is a good choice for combusting flows, with either no buoyancy terms in
equations or buoyancy terms in both the equations (with C3=1). The SST model is also reasonable, but may
not converge well for natural convection. The SSG model is accurate, but convergence may be very slow.
The most common fuels used are hydrocarbons such as methane, diesel and petroleum. Cellulosic materials,
plastics and wood are also used. The simulation will dictate the type of materials to use as a fuel.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
115
8.2.3. Post-processing
The most common parameters of interest in a combusting fire model are simulation-dependent, but will
usually include one of more of the following:
Temperature
Visibility
Wall Temperature
116
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Buoyancy
Thermal radiation
Fans/pumps
Thermostats.
9.1.1.1. Buoyancy
Most HVAC cases involve flow that is affected by buoyancy. Buoyancy can be activated on the Basic Settings
tab of the Domain details view.
Two buoyancy models are available: Full and Boussinesq. These models are automatically selected according
to the properties of the selected fluid(s).
The Full buoyancy model is used if fluid density is a function of temperature and/or pressure (which
includes all ideal gases and real fluids). In this case, a Buoyancy Reference Density must be set as the
expected average density of the domain.
The Boussinesq model is used if fluid density is not a function of temperature or pressure. In this case,
a Buoyancy Reference Temperature must be set as the expected average temperature of the domain.
HVAC is a reference to Heating, Ventilation (or Ventilating), and Air Conditioning. Often, it is also used as a reference to refrigeration.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
117
Note
If any solid domain uses the Monte Carlo radiation model (that is, if it uses radiation at all), then
all fluid domains using a radiation model must use the Monte Carlo model.
The material used in a domain that transmits radiation has radiation properties that specify Absorption
Coefficient, Scattering Coefficient, and the Refractive Index. These properties may be edited in the Materials details view.
Note
Radiation modeling cannot be used with Eulerian multiphase simulations.
Thermal radiation properties are specified on the Boundary Details panel for each boundary of a domain
that transmits radiation. For opaque surfaces, the properties that must be specified are: Emissivity and
Diffuse Fraction. For inlets, outlets, and openings, you may specify either the Local Temperature or an
External Blackbody Temperature.
The Monte Carlo and Discrete Transfer models allow radiation sources to be specified on the Sources panel
for any subdomain or wall boundary. For subdomains, radiation sources per unit volume are specified; for
118
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Specifying a heat transfer coefficient via a CEL expression that accounts for the thermal energy lost
When using solid domains that transmit radiation, a spectral radiation model is recommended. If a simulation
contains no solid domains that transmit radiation, a gray radiation model can be used for rough calculations
but a spectral model should be used for more detailed modeling.
9.1.1.5. Fans
Fans should be represented by momentum sources if they are embedded in the domain. Fans can also be
represented by an inlet or outlet boundary condition or both.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
119
9.1.1.6. Thermostats
A Thermostat can be defined using a User Fortran routine. Refer to Air Conditioning Simulation in the CFX
Tutorials for details.
120
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
10.1.1. Setup
The choice of a steady state or transient simulation depends on the type of simulation you wish to analyze.
For example, an analysis using a steady-state simulation is often satisfactory for monitoring global quantities.
A transient simulation can be used to observe transient effects, such as recirculation zones.
Most bubble columns use two fluids: one continuous fluid and one dispersed fluid. The model is typically
used in the continuous fluid, and the dispersed phase zero equation is used for the dispersed phase.
Non-drag forces become less significant with increasing size of the bubble column. For smaller columns,
non-drag forces may be significant.
The Grace drag model is recommended, especially for modeling air/water.
A degassing boundary condition is generally employed at the top of the bubble column. The degassing
boundary behaves as an outlet boundary to the dispersed phase, but as a wall to the continuous phase.
A reasonable estimate of the time scale is given by a factor of the length of the domain divided by the velocity scale (for example, 0.5 * L/U).
121
10.1.3. Post-Processing
The main design objective for bubble columns is efficient mixing, which is strongly influenced by the dispersed
phase. Mixing efficiency can be measured in a number of ways. One example is to measure the gas hold-up
in the riser as a function of the superficial gas velocity. This would require solving for the gas volume fraction
for a number of simulations, each with a different mass flow rate of the dispersed phase at the sparger.
Another option would be to use the same input parameters, this time measuring the liquid velocity in the
downcomer.
10.2.1. Setup
Mixing vessels generally use two domains. The impeller domain is a small, rotating domain which encloses
the impeller. The rest of the tank is represented by a stationary domain. Different types of domain interfaces
are available for the connection between the stationary and the rotating domains. The recommended types
are:
The choice of a steady state or transient simulation is dependent on the type of interface that exists between
the two domains. Where a Frozen Rotor interface is used, a steady state simulation is usually carried out.
Performing a transient simulation allows you to use the transient rotor/stator frame change model to account
for transient effects.
The initial guess for velocity can be set to zero in the relative frame for each domain.
10.3.1. Setup
The choice of using a steady-state or transient simulation is problem-dependent. There are two models
available for free surface flow: homogeneous and inhomogeneous. The homogeneous model can be used
122
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
In addition, it is sometimes helpful to reduce the timestep for the volume fraction equations by an order of
magnitude below that of the other equations.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
123
Figure 10.1 An exaggerated view of three inflation layers on each side of the uppermost
subdomain boundary surface.
124
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
A common boundary condition configuration is to specify the total pressure and total temperature at the
inlet and the mass flow at the outlet. Other configurations are also commonly used.
to
, where is the angular velocity of the
A good estimate of the timestep is within the region
rotating domain in radians per second. Selecting an automatic timestep will result in a timestep of
.
125
11.1.3. Post-Processing
CFD-Post offers a powerful array of post-processing tools for turbomachinery applications, including turbospecific plots and performance calculation macros. To use many of the Turbo Post tools, you must first initialize each domain by specifying the locations of turbo regions and instancing information.
The Turbo Calculator from the Turbo menu in CFD-Post allows you to perform calculations on the type of
application you are modeling. The macro prints a report in HTML showing a number of calculated variables,
including torque, head and flow coefficients, blade loading, and efficiency.
You can also create your own macros to customize post-processing using Power Syntax, which is based on
the Perl language.
The optimal performance characteristics can be determined by creating a curve of pressure ratio versus flow
rate.
In Figure 11.1 (p. 126), Region 1 shows an area where a large change in mass flow rate represents a small
change in pressure rise. When modeling flow in this region, a mass flow rate specified outlet is better than
a pressure specified outlet. Region 2 shows an area where a small change in flow rate represents a large
pressure variation. This region is close to choking and a pressure-specified outlet is the best choice. For
,
details, see Convergence Tips (p. 125).
126
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
11.2.3. Post-Processing
If a total pressure inlet boundary condition is used (recommended), it will also provide a useful starting point
for streamlines that are colored by total pressure during post-processing. The uniform total pressure distribution means lines will begin with a uniform color. It may be harder to visually resolve these pressure values
if an inlet velocity profile is used.
CFD-Post provides a performance macro for gas compressors and turbines.
When setting boundary conditions, a total pressure specified inlet and a mass flow outlet are a recommended
practice. The total pressure inlet condition is often more appropriate than the uniform velocity or massflow
inlet condition for cases that assume that the machine is drawing fluid directly from a static reservoir.
to
, where is the
As with gas compressors, a good estimate of the timestep is within the region
angular velocity of the rotating domain in radians per second. Selecting an automatic timestep will result
in a timestep of
.
11.2.3. Post-Processing
If a total pressure inlet boundary condition is used (recommended where possible), it will also provide a
useful starting point for streamlines that are colored by total pressure during post-processing. The uniform
total pressure distribution means lines will begin with a uniform color. It may be harder to visually resolve
these pressure values if an inlet velocity profile is used.
CFD-Post provides a performance macro for liquid pumps and turbines.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
127
Boundary conditions, turbulence models and choice of timestep are the same as for liquid pumps and turbines.
11.3.3. Post-Processing
A similar postprocessing approach to pumps and turbines is also useful for fans and blowers. For details,
see Post-Processing (p. 127). See the following figure for a plot of flow rate vs pressure rise for a blower.
128
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
11.4.2. Stage
11.4.2. Stage
The Stage model circumferentially averages the fluxes in bands and transmits the average fluxes to the
downstream component. Possible applications include axial turbines, compressors and pumps, as well as
fans and torque converters. The model is useful for large pitch ratios and still takes a relatively short time
to solve. The model is not suitable for applications with tight coupling of components and/or significant
wake interaction effects and may not accurately predict loading.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
129
Domain interfaces should typically be placed midway between the rotor and stator for turbomachinery
cases.
To avoid numerical errors, the aspect ratio of elements on the domain interface should be between
0.1:1 and 10:1, as measured by x/y in Figure 11.2 (p. 130).
Where circular domain interfaces exist, they must be axisymmetric in shape as shown in Figure 11.3 (p. 131).
130
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Figure 11.4 Possible Domain Interface Positions with Step Change in Passage Height
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
131
132
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
133
134
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Object and parameter definitions, which are described in Object Creation and Deletion.
CCL actions, which are commands that perform a specific task (such as reading a session file) and which
are described in Command Actions in the CFD-Post User's Guide.
Power Syntax programming, which uses the Perl programming language to allow loops, logic, and
custom macros (subroutines). Power Syntax enables you to embed Perl commands into CCL to achieve
powerful quantitative post-processing. For details, see Power Syntax in ANSYS CFX (p. 233).
State files and session files contain object definitions in CCL. In addition, session files can also contain CCL
action commands. You can view and modify the CCL in these files by using a text editor.
For more information, see Object Creation and Deletion.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
135
If the object type does not need a name, it is called a singleton object. Only one object of a given
singleton type can exist.
Objects and parameters may be placed in any order, provided that the information is set prior to being used
further down the file. If data is set in one place and modified in another, the latter definition overrides the
first.
In CFD-Post, all object definitions are only one object level deep (that is, objects contain parameters, but
not other objects).
Parameter names, and predefined object names, are mixed case. The CFX Expression Language tries to
follow the following conventions:
1.
2.
136
Major words start with an upper case letter, while minor words such as prepositions and conjunctions
are left in lower case (for example, Mass Flow in).
Case is preserved for familiar names (for variables k or r), or for abbreviation RNG.
In simple syntax, a CCL name must be at least one character. This first character must be alphabetic;
there may be any number of subsequent characters and these can be alphabetic, numeric, space or
tab.
Spaces appearing before or after a name are not considered to be part of the name.
Multiple spaces and tabs appearing inside a name are treated as a single space.
12.1.3.3. Indentation
Nothing in the file is sensitive to indentation, but indentation can be used for easier reading.
12.1.3.8. Parameters
A parameter consists of a parameter name at the start of a line followed by an = character followed by a
parameter value. A parameter may belong to many different object types. For example, U Velocity =
1.0 [m/s] may belong to an initial value object and U Velocity = 2.0 [m/s] may belong to a
boundary condition object. Both refer to the same definition of U velocity in the rules file.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
137
12.1.3.9. Lists
Lists are used within the context of parameter values and are comma separated.
12.1.3.10.1. String
String values or other parameter type values are normally unquoted. If any quotes are present, they are
considered part of the value. Leading and trailing spaces are ignored. Internal spaces in parameter values
are preserved as given, although a given application is free to subsequently assume a space condensation
rule when using the data.
The characters $ and # have a special meaning. A string beginning with $ is evaluated as a Power
Syntax variable, even if it occurs within a simple syntax statement. This is useful for performing more
complex Power Syntax variable manipulation, and then using the result as part of a parameter or object
definition. The appearance of # anywhere in the CCL file denotes the start of a comment.
The characters such as [, ],{ and } are special only if used in conjunction with $. Following a $, such
characters terminate the preceding Perl variable name.
Other characters that might be special elsewhere in power syntax are escaped automatically when they
appear in parameter values. For example, @, % and & are escaped automatically (that is, you do not
need to precede these characters with the escape character \ when using them in parameter values).
Parameter values can contain commas, but if the string is processed as a List or part of a List then the
commas may be interpreted as separators (see below under List data types).
Some examples of valid parameter values using special characters in power syntax are:
Estimated cost = \$500
Title = Run\#1
Sys Command = "echo Starting up Stress solver ; fred.exe &"
Pressure = $myArray[4]
Option = $myHash{"foo"}
Fuel = C${numberCatoms}H${numberHatoms}
Parameter values for data types other than String will additionally conform to one of the following definitions.
12.1.3.10.3. Integer
Sequence of digits containing no spaces or commas. If a real is specified when an integer is needed, the
real is rounded to the nearest integer.
138
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
12.1.3.10.5. Real
A single-precision real number that may be specified in integer, floating point, or scientific format, followed
optionally by a dimension. Units use the same syntax as CEL.
Expressions are allowed to include commas inside function call argument lists.
Example usage:
a = 12.24
a = 1.224E01
a = 12.24 [m s^-1]
The list syntax 5*2.0 to represent 5 entries of the value 2.0 is not supported within CCL and hence within
CFD-Post.
12.1.3.10.7. Logical
Several forms are acceptable: YES, TRUE, 1 or ON are all equivalent; NO or FALSE or 0 or OFF are all equivalent; initial letter variants Y, T, N, F are accepted (O is not accepted for On/Off); all case variants are accepted. Logical strings are also case insensitive (YeS, nO).
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
139
140
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
You can also monitor the value of an expression during the solution using monitor points.
Important
There is some CEL that works elsewhere in ANSYS CFX, but not in CFD-Post. Any expression created
in CFX-Pre and used as a Design Exploration output parameter could potentially cause fatal errors
during the Design Exploration run, so you should create all expressions for Design Exploration
output parameters in CFD-Post.
This chapter describes:
13.1. CEL Fundamentals
13.2. CEL Operators, Constants, and Expressions
13.3. CEL Examples
13.4. CEL Technical Details
141
In this example, you may want to predefine <Value_1> and <Value_2>, but this is not required. However,
in order to add two quantities together, they must have the same dimension; that is, it is meaningful to add
a quantity in inches to one expressed in meters, but it is not meaningful to add one expressed in kilograms
to one in square feet.
Expressions can also be functions of other (predefined) expressions:
<Expr_2> = <Expr_1> + <Value_3>
Units follow the conventions in the rest of CFX, in that a calculation has a set of solution units (by default,
SI units), and that any quantity can be defined either in terms of the solution units, or any other set of units
with the correct form.
An expression does not have its own units string, but if it references quantities that have dimensions, these
will determine the resulting units for the expression. For example, if an expression depends inversely on the
square of the x coordinate, then it has implied dimensions of length to the power -2.
Note that if <locator> does not appear as a physics name or a mesh name, the expression fails.
a number, optionally with associated units. This defines a constant. Constants without units are termed
dimensionless.
for mathematical expressions, one or more references to mathematical constants, system variables, or
existing user variables, separated by + (addition), - (subtraction), * (multiplication), / (division) and ^
142
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
for logical expressions involving relational operators, one or more references to mathematical constants
or results from mathematical expressions, separated by <= (is less than or equal to), < (is less than), ==
(is equal to), != (is not equal to), > (is greater than) and >= (is greater than or equal to) with optional
grouping of these by parentheses.
for logical expressions involving logical operators, one or more references to logical constants or results
from relational operations separated by ! (negation), && (logical AND) and || (logical OR), with optional
grouping by parentheses.
Please note that, as of ANSYS CFX 10.0, the precedence of mathematical operators has been made consistent
with standard programming languages such as Fortran and C. Therefore, the power operator, which previously
had lower precedence than unary minus, now has the highest precedence.
The precedence of logical and relational operators is as follows (from highest to lowest):
The relational operators involving less than or greater than (<=, <, > and >=) as in x >= y.
The relational operator is equal to and is not equal to (== and !=) as in x != y.
143
Note that the operator may be used at the end of a line (A +) or at the beginning of a line (/ C). You do not
need to enter the operator twice.
Once the expression has been created, it will appear in the Existing Definitions list box as if it were generated
on a single line (A + B/C).
-x
Any
x+y
Any
x-y
Results Dimensions
Any
[x]
[x]
Any
[x]
Any
[x]
Any
[x]
x*y
Any
Any
Any
[x]*[y]
x/y
Any
Any
x^y (if y is a
simple, constant,
integer expression)
Any
Dimensionless
Anya
[x]^y
Any
Dimensionless
x>0
[x]^y
Dimensionless
Dimensionless
x>0
Dimensionless
!x
Dimensionless
0 or 1
Dimensionless
144
[x]/[y]
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Results Dimensions
x <= y
Any
[x]
0 or 1
Dimensionless
x<y
Any
[x]
0 or 1
Dimensionless
x>y
Any
[x]
0 or 1
Dimensionless
x >= y
Any
[x]
0 or 1
Dimensionless
x == y
Any
[x]
0 or 1
Dimensionless
x != y
Any
[x]
0 or 1
Dimensionless
x && y
Dimensionless
Dimensionless
0 or 1
Dimensionless
x || y
Dimensionless
Dimensionless
0 or 1
Dimensionless
true_expr: is the mathematical expression used to determine the result if the conditional test is true.
false_expr : is the mathematical expression used to determine the result if the conditional test is
false.
Note
The expressions true_expr and false_expr are always evaluated independent of whether
the evaluation of cond_expr is true or false. As a consequence, a conditional statement
cannot be used to avoid division by zero as in if( x>0, 1/x, 1.0). In this case, when
x=0.0, a division by zero will still occur because the expression 1/x is evaluated independent
of whether x>0 is satisfied or not.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
145
Units
Description
J K^-1 mol^-1
avogadro
mol^-1
6.02214199E+23
boltzmann
J K^-1
1.3806503E-23
clight
m s^-1
2.99792458E+08
Dimensionless
Constant: 2.7182817
echarge
As
Constant: 1.60217653E-19
epspermo
1./(clight*clight*mupermo)
m s^-2
mupermo
N A^-2
4*pi*1.E-07
pi
Dimensionless
Constant: 3.141592654
planck
Js
6.62606876E-34
stefan
W m^-2 K^-4
5.670400E-08
a use phase.
The definition phase consists of creating a set of values and expressions of valid syntax. The purpose of the
Expression details view is to help you to do this.
=
=
=
=
30 [C]
303.15 [K]
0 [C] + 30 [K]
273.15 [K] + 30 [K]
These are only equivalent because all units are to the power of unity and units other than [K] appear no
more than once in each expression. The following expression will not produce the expected result:
Temperature = 0 [C] + 30 [C]
146
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
where is density, U a velocity scale, L a length scale and the dynamic viscosity. The velocity scale is taken
as the inlet velocity, the length scale as the inlet width and the density is calculated as the average density
over the inlet area.
The LIBRARY section of the CCL (CFX Command Language) file appears as follows:
LIBRARY :
CEL :
EXPRESSIONS :
Re = 4.29E6 [ ]
Vel = 60 [m s^-1]
L=1.044[m]
Visc=areaAve(density)@in*Vel*L/Re
END
END
MATERIAL : Air Ideal Gas
Option = Pure Substance
PROPERTIES :
Option = Ideal Gas
Molar Mass = 2.896E1 [kg kmol^-1]
Dynamic Viscosity = Visc
Specific Heat Capacity = 1.E3 [J kg^-1 K^-1]
Thermal Conductivity = 2.52E-2 [W m^-1 K^-1]
END
END
END
This shows that four CEL expressions have been created. The first three expressions define constant values
that are used in the Visc expression. The Visc expression calculates the dynamic viscosity based on the
equation for Reynolds number given above. Within the expression the function areaAve(density)@in
is used to evaluate the average density at the inlet.
The Visc expression can now be used to replace the value of Dynamic Viscosity in the MATERIAL
> PROPERTIES section.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
147
Fluid from a main and a side inlet enter at temperatures of 275 K and 375 K respectively. The temperature
of the fluid entering from the third inlet depends on the outlet temperature. When the outlet temperature
is greater than 325 K, the fluid from the third inlet is set to 275 K. When the outlet temperature is less than
325 K, the fluid from the third inlet is set to 375 K. In addition an expression is used to set the dynamic viscosity to be a linear function of temperature.
The LIBRARY section of the .ccl (CFX Command Language) file appears as follows. Note that the \ character indicates a line continuation in CCL.
LIBRARY:
MATERIAL: Water at STP Modified
Option = Pure Substance
PROPERTIES:
Option = General Fluid
Density = 9.999E2 [kg m^-3]
Dynamic Viscosity = VisT
Specific Heat Capacity = 4.21E3 [J kg^-1 K^-1]
Thermal Conductivity = 5.69E-1 [W m^-1 K^-1]
END # PROPERTIES
END # MATERIAL Water at STP Modified
CEL:
EXPRESSIONS:
Tupper = 375.0 [ K ] # Upper temp.
Tlower = 275.0 [ K ] # Lower temp.
Visupper = 0.000545 [ N s m^-2 ] # Vis. at Tupper
Vislower = 0.0018 [ N s m^-2 ] # Vis. at Tlower
VisT = Vislower+(Visupper-Vislower)*(T-Tlower)/ \
(Tupper-Tlower)
# Vis.-Temp. relationship
Tm=(Tupper+Tlower)/2
Tout=areaAve(Water at STP Modified.T)@outlet
Tcontrol=Tlower*step((Tout-Tm)/1[K]) \
+Tupper*step((Tm-Tout)/1[K])
END # EXPRESSIONS
END # CEL
END # LIBRARY
The first four expressions, Tupper, Tlower, Visupper and Vislower are simply constant values to
define temperature and viscosity values. The expression VisT produces a linear function for the dynamic
viscosity taking a value of Visupper at Tupper and a value of Vislower at Tlower. The expression Tm
sets the desired value of the outlet temperature. In this case it is set to a mean value of the two inlet temperatures.
Tout calculates the outlet temperature using the areaAve function.
148
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
When you click Apply, the value is shown below the editor.
Tip
Alternatively, type the expression in a table cell and prefix with = sign. The cell displays the
result when you click outside of the cell.
The second example is a variable expression that plots the pressure coefficient variation on a surface or a
line:
1.
Click the Expressions tab, then right-click in the Expressions area and select New.
2.
3.
4.
5.
Select Insert > Location > Line and use the Details view to position the line in the simulation.
From the Details view Color tab, plot the user variable on a surface or a line (just as you would with
any other variable).
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
149
150
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Note
In the Function column in the table below, [a] denotes any dimension of the first operand.
Operands Values
Results Dimensions
abs( [a] )
Any
[a]
acos( [ ] )
Radians
asin( [ ] )
Radians
atan( [ ] )a
Any
Radians
Any
Radians
besselJ( [ ], [ ] )b
besselY( [ ], [ ] )b
Dimensionless
Dimensionless
cos( [radians] )
Any
Dimensionless
cosh( [ ] )
Any
Dimensionless
exp( [ ] )
Any
Dimensionless
Dimensionless
Dimensionless
int([ ])
loge( [ ] )d
<
log10( [ ] )e
<
Any
[a]
Any
[a]
Any
[a]
nint([ ])g
Dimensionless
Dimensionless
sin( [radians] )
Any
Dimensionless
Dimensionless
Dimensionless
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
151
Operands Values
Results Dimensions
sinh( [ ] )
Any
Dimensionless
sqrt( [a] )
[a]^0.5
Any
Dimensionless
tan( [radians] )i
Any
Dimensionless
tanh( [ ] )
Any
Dimensionless
step( [ ] )
atan does not determine the quadrant of the result, but atan2 does.
The value of the first dimensionless operand n, also referred to as the order of the Bessel function, must be an integer (n=0, 1, 2, ....).The
second argument is a dimensionless real number.
c
The int() function truncates the dimensionless argument to its integer part.
b
Examples:
int(1) = 1
int(2.5) = 2
int(-3.1) = -3
int(-4.8) = -4
The int() function requires a dimensionless argument but will not report an error if the argument of the function has a dimension of
radians or degrees.
d
ln(x) is valid as an alias for loge(x)
e
log(x) is valid as an alias for log10(x)
f
mod(x, y) returns the remainder on dividing x by y; the function is not defined for y = 0.
g
The nint function requires a dimensionless argument and is defined as:
int(x + 0.5) if x >= 0
int(x - 0.5) if x < 0
See the implementation of int( ) function in the table above.
Examples:
nint(2.6) = 3
nint(2.5) = 3
nint(2.4) = 2
nint(1) = 1
nint(-1) = -1
nint(-2.4) = -2
nint(-2.5) = -3
nint(-2.6) = -3
Note that the nint() function will not report an error if the argument of the function has a dimension of radians or degrees.
step(x) is 0 for negative x, 1 for positive x and 0.5 for x=0. x must be dimensionless.
i
tan(x) is undefined for x=n /2, where n=1, 3, 5, ...
h
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Important
You must use consistent units when adding, subtracting, or comparing values.
There are some differences between CEL functions in CFX-Pre and CFX-Solver and those in CFDPost. For details, see below.
The syntax used for calling these functions when used within CEL expressions is:
[<Phase_Name>.][<Component_Name>.]<Function>([<Operand>])@<Location>
where:
Terms enclosed in square brackets [ ] are optional and terms in angle brackets < > should be replaced
with the required entry.
<Phase_Name>: specifies a valid name of a phase. The phase can be fluid, particle, solid, fluid pair, or
polydispersed fluid. For multi-phase cases in CFX-Pre, if the phase name is not specified in the <Operand>, then the phase name associated with the domain, subdomain, domain boundary, initialization
or function in which the operand is being evaluated will be used. For multi-phase cases in CFX-Pre, a
discussion of the handling of the phase name when it is not used to qualify (prepended to) <Function>
and/or <Operand> can be found in CEL Functions with Multiphase Flow (p. 155). For multi-phase cases
in CFD-Post, if the phase name is not specified then the bulk quantity (if available for the CFX-Solver
Results file) is used.
<Function>: specifies the CEL function to evaluate. See Quantitative Function List (p. 156). The function
can be further qualified by appending _Coordinate_Direction. In CFX-Pre, if the coordinate frame
is not specified (in _Coordinate_Direction ) then the function will use the coordinate frame associated with the object (such as for a material, domain, subdomain, domain boundary, source point,
monitor point, initialization, reference location or spark ignition object) in which it is being invoked.
<Operand>: specifies the argument of the function (if required). The operand can be either a valid
mathematical CEL expression (only in CFD-Post) or specified using the following general variable syntax:
[<Phase_Name>.][<Comp_Name>.]<Var_Name>[.<Var_Operator>][.Difference]
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
153
<Variable_Name>: specifies the base name of the variable. You can use the short or long form for
variable names. In CFX-Pre the variable name can be further qualified by appending _<Coordinate_Direction>. This is useful for specifying a particular component of a vector or tensor, for example
Velocity_y_myLocalFrame. In CFX-Pre, if the variable name corresponds to that of a component
of a vector or a tensor and coordinate frame is not prescribed (as part of the coordinate direction) then
the global coordinate frame is used. An exception applies for the position vector x, y, z ( or r,theta,z)
components, which are always local, see Functions Involving Coordinates (p. 155).
<Variable_Operator> specifies the name of the variable operator. The syntax for specifying the
variable operator is [Gradient|Curl|Trnavg|Trnsdv|Trnmin|Trnmax|Boundcon|<Derived>]. All but the <Derived> operator are available in CFX-Pre and CFD-Post, provided they are
available in the CFX-Solver Results file. See Data Acquisition Routines in the CFX-Solver Modeling Guide.
The <Derived> variable operator is available in CFD-Post, for example Absolute Helicity derived
for use with Vortex Cores, see Vortex Core Region in the CFD-Post User's Guide. In CFX-Pre the variable
operator can be further qualified by appending _<Coordinate_Direction>.
<Location>: specifies the location over which the function is to be applied. The syntax of location is:
[Case:<Case_Name>.][REGION:]<Location_Name>
The case syntax [Case:<Case_Name>.] is only available in CFD-Post and is used when multiple
cases are loaded to indicate the name of the desired case.
In CFX-Pre [<Location_Name>] must be a domain boundary, domain, subdomain, or, primitive or
composite mesh region. If the location name of a mesh region is the same as the name of a named
boundary, domain or subdomain, then the mesh location name must be prepended by REGION:. For
primitive or composite mesh regions, conservative values will be used even if the name of the mesh
region is the same as that of a named boundary.
In CFD-Post [<Location_Name>] can be any loaded or user-defined location (for example, a point,
domain boundary, plane, mesh region etc.). The syntax REGION:<Region Name> can also be used
in CFD-Post to refer to any mesh region. If a mesh region is present with the same name as, for example,
a domain boundary, then the mesh region is imported into CFD-Post with a Region suffix. For example,
if there is both a domain boundary and a mesh region called in1 in the CFX-Solver Results file, then
in CFD-Post the mesh region will appear in CFD-Post as in1 Region. The syntax in1 will refer to the
domain boundary, and either of in1 Region or REGION:in1 can be used to refer to the mesh region
as desired.
Note
You cannot use a composite region that consists of a mixture of 2D and 3D regions.
area()@REGION:myCompositeMeshRegion
154
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
For massFlow and massFlowAve, if the phase name is not specified for the function, then the bulk
mass flows will be used. See cases 1 to 7 in the table below.
if a fluid-specific operand is specified and no fluid is specified for the function, then the fluid specified
for the operand will be assumed for the function as well. See case 8 in the table below.
if the function is specified and no fluid is specified for the operand, then the fluid specified for the
function will be assumed for the operand as well. See cases 7 and 9 in the table below.
If both the function or operand are fluid-specific, and a phase name is not given for either, the solver
will stop with an error. See case 10 in the table below.
Behavior
massFlow()@inlet
Air.massFlow()@inlet
massFlowAve(Pressure)@inlet
Air.massFlowAve(Pressure)@inlet
massFlowAve(Air.Volume Fraction)@inlet
Air.massFlowAve(Air.Volume
Fraction)@inlet
Air.massFlowAve(Volume Fraction)@inlet
Same as Air.massFlowAve(Air.Volume
Fraction)@ inlet
155
Behavior
10
on a boundary the functions use conservative values for the operand unless this is overriden by the
Boundcon variable operator in CFX-Pre,
on user locations in CFD-Post the functions use values interpolated from nodal values.
Operation
Availability
area( )
All
Supports @<Location>
See area (p. 160).
area_x[_<Coord Frame>]( )
area_y[_<Coord Frame>]( )
area_z[_<Coord Frame>]( )
areaAve(<Expression>)
All
Supports @<Location>
See areaAve (p. 161).
areaAve_x[_<Coord Frame>]( )
areaAve_y[_<Coord Frame>]( )
areaAve_z[_<Coord Frame>]( )
156
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Operation
Availability
Supports @<Location>
areaInt(<Expression>)
All
All
Supports @<Location>
ave(<Expression>)
All
Supports @<Location>
See ave (p. 163).
count( )
countTrue(<Expression>)
All
Supports @<Location>
See countTrue (p. 164).
force( )
All
CFD-Post
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
157
Operation
Availability
Alla
CFX-Pre, CFXSolver
Supports @<Location>
See inside (p. 166).
length()
Length of a curve.
CFD-Post
Supports @<Location>
See length (p. 167).
lengthAve(<Expression>)
Length-weighted average.
CFD-Post
Supports @<Location>
See lengthAve (p. 167).
lengthInt(<Expression>)
Length-weighted integration.
CFD-Post
Supports @<Location>
See lengthInt (p. 168).
mass()
CFX-Pre, CFXSolver
Supports @<Location>
See mass (p. 168).
massAve(<Expression>)
CFX-Pre, CFXSolver
Supports @<Location>
See massAve (p. 168).
massFlow()
All
158
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
All
Operation
Availability
massFlowAveAbs(<var>)
All
massInt(<Expression>)
CFX-Pre, CFXSolver
Supports @<Location>
See massInt (p. 173).
maxVal(<Expression>)
All
Supports @<Location>
See maxVal (p. 173).
minVal(<Expression>)
All
Supports @<Location>
See minVal (p. 173).
probe(<Expression>)
All
Supports @<Location>
See probe (p. 174).
rbstate(<rbvar>[<axis>])
Returns the position/velocity/acceleration or orient- CFX-Pre, CFXation/angular velocity/angular acceleration (or axis Solver
components of these) of a rigid body object or immersed solid that is governed by a rigid body solution. These quantities are with respect to the global
coordinate frame.
See rbstate (p. 174).
rmsAve(<Expression>)
CFX-Pre, CFXSolver
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
159
Operation
Availability
sum(<Expression>)
torque( )
All
All
Supports @<Location>
See volume (p. 176).
volumeAve(<Expression>)
All
Supports @<Location>
See volumeAve (p. 177).
volumeInt(<Expression>)
All
Supports @<Location>
See volumeInt (p. 177).
a
See the definition for [_<Coordinate_ Direction>]] in Quantitative CEL Functions in ANSYS CFX (p. 152)
14.5.1. area
The area function is used to calculate the area of a 2D locator.
area[_<Axis>[_<Coord Frame>] ]()@<Location>
where:
<Axis> is x, y, or z
An error is raised if the location specified is not a 2D object. If an axis is not specified, the total area of the
location is calculated.
160
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
14.5.2. areaAve
area()@Isosurface1 calculates the total area of the location, and Isosurface1.area_y()@Isosurface1 calculates the projected area of Isosurface1 onto a plane normal to the Y-axis.
The specification of an axis is optional. If an axis is not specified, the value held in the object will be used.
To calculate the total area of the location, the axis specification should be left blank (that is, type a comma
after the location specification).
>calculate area, myplane calculates the area of the locator myplane projected onto a plane normal
to the axis specification in the CALCULATOR object.
>calculate area, myplane, calculates the area of the locator myplane. Note that adding the comma
after myplane removes the axis specification.
14.5.2. areaAve
The areaAve function calculates the area-weighted average of an expression on a 2D location. The areaweighted average of a variable is the average value of the variable on a location when the mesh element
sizes are taken into account. Without the area weighting function, the average of all the nodal variable values
would be biased towards variable values in regions of high mesh density.
areaAve[_<Axis>[_<Coord Frame>] ](<Expression>)@<Location>
where:
<Axis> is x, y, or z
<Expression> is an expression
<Location> is any 2D region (such as a boundary or interface). An error is raised if the location specified
is not a 2D object.
You can create an expression using this, and then create a user variable using the expression. The user
variable can then be plotted on objects like any other variable.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
161
You can use the scalar components of Velocity (such as Velocity u) to include a directional sign.
This example will calculate the area-weighted average value of Velocity u, with negative values of
Velocity u replaced by zero. Note that this is not the average positive value because zero values
will contribute to the average.
Function: areaAve, Location: outlet, Variable: max(Velocity u, 0.0[m s^-1]).
14.5.3. areaInt
The areaInt function integrates a variable over the specified 2D location. To perform the integration over
the total face area, select the None option from the Axis drop-down menu. If a direction is selected, the
result is an integration over the projected area of each face onto a plane normal to that direction. Each point
on a location has an associated area which is stored as a vector and therefore has direction. By selecting a
direction in the function calculator, you are using only a single component of the vector in the areaweighting function. Because these components can be positive or negative, depending on the direction of
the normal on the location, it is possible for areas to cancel out. An example of this would be on a closed
surface where the projected area will always be zero (the results returned will not in general be exactly zero
because the variable values differ over the closed surface). On a flat surface, the normal vectors always point
in the same direction and never cancel out.
areaInt[_<Axis>[_<Coord Frame>] ](<Expression>)@<Location>
where:
<Axis> is x, y, or z.
Axis is optional; if not specified the integration is performed over the total face area. If axis is specified,
then the integration is performed over the projected face area. A function description is available.
<Location> is any 2D region (such as a boundary or interface). An error is raised if the location specified
is not a 2D object.
Axis is optional. If it is not specified, the value held in the object will be used. To perform the integration
over the total face area, the axis specification should be blank (that is, type a comma after the location
name). A function description is available in areaInt (p. 162).
162
This example integrates Pressure over Plane 1. The returned result is the total pressure force acting
on Plane 1. The magnitude of each area vector is used and so the direction of the vectors is not
considered.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
14.5.4. ave
Function: areaInt, Location: Plane 1, Variable: Pressure, Direction: None
This example integrates Pressure over the projected area of Plane 1 onto a plane normal to the
X-axis. The result is the pressure force acting in the X-direction on Plane 1. This differs slightly from
using the force function to calculate the X-directional force on Plane 1. The force function includes
forces due to the advection of momentum when calculating the force on an internal arbitrary plane or
a non-wall boundary (inlets, etc.).
Function: areaInt, Location: Plane 1, Variable: Pressure, Direction: Global X.
14.5.4. ave
The ave function calculates the arithmetic average (the mean value) of a variable or expression on the
specified location. This is simply the sum of the values at each node on the location divided by the number
of nodes. Results will be biased towards areas of high nodal density on the location. To obtain a mesh independent result, you should use the lengthAve, areaAve, volumeAve or massFlowAve functions.
ave(<var|Expression>)@<Location>
where:
The ave function can be used on point, 1D, 2D, and 3D locations.
ave(Yplus)@Default calculates the mean Yplus values from each node on the default walls.
Note
To obtain a mesh-independent result, you should use the lengthAve, areaAve, volumeAve
or massFlowAve functions.
The average of a vector value is calculated as an average of its magnitudes, not the magnitude of component
averages. As an example, for velocity:
(141)
where
(142)
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
163
14.5.5. count
The count function returns the number of nodes on the specified location.
count()@<Location>
where:
14.5.6. countTrue
The countTrue function returns the number of mesh nodes on the specified region that evaluate to true
,
where true means greater than or equal to 0.5. The countTrue function is valid for 1D, 2D, and 3D locations.
countTrue(<Expression>)@<Location>
In CFD-Post, an expression that contains the logical operators =, >, <, <=, or >=.
countTrue(TemperatureLE)@Polyline1 returns the number of nodes on the specified polyline locator that evaluate to true.
In CFX-Solver:
>calculate countTrue(TemperatureLE), Domain1
164
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
14.5.7. force
14.5.7. force
This function returns the force exerted by the fluid on the specified 2D locator in the specified direction.
[<Phase>.]force[_<Axis>[_<Coord Frame>] ]()@<Location>
where:
[<Phase>.] is an optional prefix that is not required for single-phase flows. For details, see CEL
Functions with Multiphase Flow (p. 155).
<Axis> is x, y, or z
If the locator is a wall boundary, the force is equal to the pressure force.
For all other locators, the force is equal to the pressure force plus the mass flow force (due to the advection of momentum).
In all cases, if wall shear data exists in the results file, the viscous force is added to the calculated force.
The force function enables you to select the fluids to use when performing your calculation. The result
returned is the force on the locator due to that fluid/those fluids. Because the pressure force is the same at
each node irrespective of the choice of fluids, the only difference is in the viscous forces (on wall boundaries)
or the mass flow forces.
It is important to note that forces arising as a result of the reference pressure are not included in the force
calculation. You can include reference pressure effects in the force calculation in the CFX-Solver by setting
the expert parameter include pref in forces = t
.
It is also important to note that for rotating domains in a transient run, forces on wall boundaries in the
CFX-Solver are evaluated in the reference frame fixed to the initial domain orientation. These quantities are
not influenced by any rotation that might occur during a transient run or when a rotational offset is specified.
However, results for rotating domains in a transient run may be in the rotated position (depending on the
setting of Options in CFD-Post) when they are loaded into CFD-Post for post-processing.
This calculates the total force on the default wall boundaries in the x-direction. Pressure and viscous
forces are included.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
165
This calculates the forces on inlet1 due to pressure and the advection of momentum.
Function: force, Location: inlet1, Direction: Global X, Phase: Water at RTP.
14.5.8. forceNorm
Returns the per unit width force on a line in the direction of the specified axis. It is available only for a
polyline created by intersecting a locator on a boundary. Momentum data must also be available. The
magnitude of the value returned can be thought of as the force in the specified direction on a polyline, if
the polyline were 2D with a width of one unit.
[<Phase>.]forceNorm[_<Axis>[_<Coord Frame>] ]()@<Location>
where:
[<Phase>.] is an optional prefix that is not required for single-phase flows. For details, see CEL
Functions with Multiphase Flow (p. 155).
<Axis> is x, y, or z
<Location> is any 1D location. An error will be raised if the location specified is not one-dimensional.
forceNorm_y()@Polyline1 calculates the per unit width force in the y-direction on the selected polyline.
14.5.9. inside
The inside CEL function is essentially a step function variable, defined to be unity within a subdomain
and zero elsewhere. This is useful for describing different initial values or fluid properties in different regions
of the domain. It is similar to the CEL subdomain variable, but allows a specific 2D or 3D location to be
given. For example, 273 [K] * inside()@Subdomain 1 has a value of 273 [K] at points in Subdomain
1 and 0 [K] elsewhere. The location does not need to be a subdomain, but can be any 2D or 3D named subregion of the physical location on which the expression is evaluated. For immersed solids simulations, the
location can also be a specific immersed solid domain, and the inside function will be updated automatically
at the beginning of each time step.
inside()@<Location>
where:
<Location> is any 2D or 3D named sub-region of the physical location on which the expression is
evaluated.
<Location> can also be an immersed solid domain on which the expression is evaluated dynamically.
166
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
14.5.11. lengthAve
Note
The inside CEL function is not available in CFD-Post.
14.5.10. length
Computes the length of the specified line as the sum of the distances between the points making up the
line.
length()@<Location>
where:
<Location> is any 1D location. Specifying a 2D location will not produce an error; the sum of the
edge lengths from the elements in the locator will be returned.
Note
While using this function in Power Syntax, the leading character is capitalized to avoid confusion
with the Perl internal command length
.
14.5.11. lengthAve
Computes the length-based average of the variable on the specified line. This is the 1D equivalent of the
areaAve function. The results is independent of the nodal distribution along the line because a weighting
function assigns a higher weighting to areas of sparse nodal density.
lengthAve(<Expression>)@<Location>
where:
<Expression> is an expression
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
167
14.5.12. lengthInt
Computes the length-based integral of the variable on the specified line. This is the 1D equivalent of the
areaInt function.
lengthInt(<Expression>)@<Location>
where:
<Expression> is an expression
14.5.13. mass
mass()@<Location>
where:
14.5.14. massAve
massAve(<var>)@<Location>
where:
<var> is a variable
14.5.15. massFlow
Computes the mass flow through the specified 2D location.
[<Phase>.]massFlow()@<Location>
168
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
14.5.16. massFlowAve
where:
[<Phase>.] is an optional prefix that is not required for single-phase flows. For details, see CEL
Functions with Multiphase Flow (p. 155).
<Location> is any fluid surfaces (such as Inlets, Outlets, Openings and fluid-fluid interfaces).
Air at STP.massFlow()@DegassingOutlet calculates the mass flow of Air at STP through the
selected location.
For boundary locators:
The mass flow is calculated using mass flow data from the results file, if it is available. Otherwise, an
approximate mass flow is calculated.
For multiphase cases, the mass flow through a boundary on a GGI interface evaluated in CFD-Post is
an approximation to the 'exact' mass flow evaluated by the solver. This approximation vanishes as the
mesh is refined or as the volume fraction on the interface becomes uniform.
If the locator is an edge based locator (such as a cut plane or isosurface), the domain mass flow data
from the results file will be used.
The massFlow function enables you to select the fluids to use when performing your calculation. The result
returned is the mass flow of the selected fluids through the locator.
14.5.16. massFlowAve
Computes the average of a variable/expression on the specified 2D location. The massFlowAve function
allows you to select the fluids to use when performing your calculation. The result returned is the average
variable value, evaluated according to the formula:
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
169
(143)
where represents the variable/expression being averaged and represents the local mass flow (net local
mass flow if more than one fluid is selected). Each summation term is evaluated on, and corresponds to, a
node on the 2D locator. The mass flow for each term is derived from summing contributions from the surrounding solver integration points. As a result, the denominator evaluates to the conservative net mass flow
through the 2D locator.
In cases where there is significant flow, but little or no net flow through the 2D locator (as can happen with
recirculation), the denominator of the averaging formula becomes small, and the resulting average value
may become adversely affected. In such cases, the massFlowAveAbs (see massFlowAveAbs (p. 170)) function
is a viable alternative to the massFlowAve function.
[<Phase>.]massFlowAve(<var|Expression>)@<Location>
where:
[<Phase>.] is an optional prefix that is not required for single-phase flows. For details, see CEL
Functions with Multiphase Flow (p. 155).
<Location> is any fluid surfaces (such as Inlets, Outlets, Openings and fluid-fluid interfaces). An error
is raised if the location specified is not 2D.
14.5.17. massFlowAveAbs
This function is similar to the massFlowAve function (see massFlowAve (p. 169)), except that each local
mass flow value used in the averaging formula has the absolute function applied. That is:
[<Phase>.]massFlowAveAbs(<var|Expression>)@<Location>
where:
170
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
(144)
[<Phase>.] is an optional prefix that is not required for single-phase flows. For details, see CEL
Functions with Multiphase Flow (p. 155).
<Location> is any fluid surfaces (such as Inlets, Outlets, Openings and fluid-fluid interfaces). An error
is raised if the location specified is not 2D.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
171
In order to visualize this type of backflow through a locator, try making a contour plot of the variable Mass
Flow, setting a user defined Range from 0 to 1 and the # of Contours to 3. This will produce a contour
plot with two color bands: one for each general flow direction. This visualization technique works because
the method of applying integration-point mass-flow data to locator nodes is the same for all uses of the
mass flow variable involving a 2D locator (contour plots, massFlowAve, massFlowAveAbs, etc.).
14.5.20. massFlowInt
Integrates a variable over the specified 2D location. A weighting function is applied to the variable value at
each point based on the mass flow assigned to that point. You can also specify the fluid(s) used to calculate
the mass flow at each locator point.
[<Phase>.]massFlowInt(<var|Expression>)@<Location>
where:
[<Phase>.] is an optional prefix that is not required for single-phase flows. For details, see CEL
Functions with Multiphase Flow (p. 155).
<Location> is any fluid surfaces (such as Inlets, Outlets, Openings and fluid-fluid interfaces). An error
is raised if the location specified is not 2D.
172
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
14.5.23. minVal
14.5.21. massInt
The mass-weighted integration of a variable within a domain or subdomain.
massInt(<var|Expression>)@<Location>
where:
<var> is a variable
14.5.22. maxVal
Returns the maximum value of the specified variable on the specified locator. You should create a User
Variable if you want to find the maximum value of an expression.
maxVal(<var|Expression>)@<Location>
where:
14.5.23. minVal
Returns the minimum value of the specified variable on the specified locator. You should create a User
Variable if you want to find the minimum value of an expression.
minVal(<var|Expression>)@<Location>
where:
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
173
14.5.24. probe
Returns the value of the specified variable on the specified Point object.
probe(<var|Expression>)@<Location>
where:
<Location> is any point object (such as a Source Point or Cartesian Monitor Point).
Important
This calculation should be performed only for point locators described by single points. Incorrect
solutions will be produced for multiple point locators.
14.5.25. rbstate
Returns the value of the specified rigid body state variable, or axis component thereof, on the specified:
Position
Linear Velocity
Linear Acceleration
Euler Angle
Angular Velocity
174
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
14.5.27. sum
Angular Acceleration
Syntax:
rbstate(<rbvar>[<Axis>])@<Location>
where:
<Axis> is X, Y, or Z.
For the Euler Angle rigid body state variable, an axis must be specified. For all of the other rigid
body state variables, the axis is optional. If you do not specify an axis, the magnitude of the vector is
returned. For example, if the variable is Position and you do not specify an axis, the distance from
the origin will be returned.
<Location> is any rigid body object or any immersed solid domain that is governed by a rigid body
solution.
Results are given with respect to the global coordinate frame (Coord 0).
14.5.26. rmsAve
Returns the RMS average of the specified variable within a domain.
rmsAve(<var>)@<Location>
where:
<var> is a variable
14.5.27. sum
Computes the sum of the specified variable values at each point on the specified location.
sum(<var|Expression>)@<Location>
where:
<Location> in CFX-Solver is any 3D region (such as a domain or subdomain); in CFD-Post, Point and
1D, 2D, and 3D locators can be specified.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
175
14.5.28. torque
Returns the torque on a 2D locator about the specified axis. The force calculated during evaluation of the
torque function has the same behavior as the force function. For details, see force (p. 165). You can select
the fluids involved in the calculation.
[<Phase>.]torque_[<Axis>[_<Coord Frame>] ]()@<Location>
where:
[<Phase>.] is an optional prefix that is not required for single-phase flows. For details, see CEL
Functions with Multiphase Flow (p. 155).
<Axis> is x, y, or z
<Coord Frame>
<Location> is any 2D region (such as a wall). If the location specified is not 2D, an error is raised.
14.5.29. volume
Calculates the volume of a 3D location.
volume()@<Location>
where:
<Location> is any 3D region (such as a domain or subdomain). An error is raised if the location specified is not a 3D object. For details, see volume (p. 176).
176
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
14.5.31. volumeInt
14.5.30. volumeAve
Calculates the volume-weighted average of an expression on a 3D location. This is the 3D equivalent of the
areaAve function. The volume-weighted average of a variable is the average value of the variable on a
location weighted by the volume assigned to each point on a location. Without the volume weighting
function, the average of all the nodal variable values would be biased towards values in regions of high
mesh density. The following example demonstrates use of the function.
volumeAve(<var|Expression>)@<Location>
where:
14.5.31. volumeInt
Integrates the specified variable over the volume location. This is the 3D equivalent of the areaInt function.
volumeInt(<var|Expression>)@<Location>
where:
<Location> is any 3D region (such as a domain or subdomain). An error is raised if the location specified is not a 3D object.
For example, volumeInt(Density)@StaticMixer will calculate the total fluid mass in the domain
StaticMixer.
Note
Because the Density variable represents the average density during the timestep rather than the
density at the end of the timestep, the volumeInt(Density) does not accurately give the
mass of fluid at the end of a timestep. Use the mass() function instead.
177
178
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
179
Using velocity as an example, the velocity value calculated at a mesh node is based upon the average in
the control volume surrounding that node. For calculation purposes, the entire control volume is then assumed
to possess that velocity. At a boundary node, its surrounding control volume includes an area in the bulk
of the fluid (this area is highlighted around the boundary node marked 1). Hence, the conservative velocity
calculated at the wall node is not zero, but an average over the control volume adjacent to the boundary.
At a wall boundary node the difference between conservative and hybrid values can be illustrated by considering the case of the mass flow rate through the wall-adjacent control volume. If a zero velocity was enforced at the boundary node, then this would produce zero mass flow through the control volume, which
is clearly not correct.
180
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Long Variable Name: The name that you see in the user interface.
Short Variable Name: The name that must be used in CEL expressions.
Units: The default units for the variable. An empty entry [ ] indicates a dimensionless variable.
Note
The entries in the Units columns are SI but could as easily be any other system of units.
A number represents the user level (1 indicates that the variable appears in default lists, 2 and 3
indicate that the variable appears in extended lists that you see when you click
). This number
is useful when using the CFX Export facility. For details, see File Export Utility in the CFX-Solver
Manager User's Guide. Note that the CFX-Solver may sometimes override the user-level setting depending on the physics of the problem. In these cases, the User Level may be different from that
shown in the tables that follow.
Boundary (B): A B in this column indicates that the variable contains only non-zero values on the
boundary of the model. See Boundary-Value-Only Variables in the CFD-Post User's Guide for more
details.
Boundary-Value-Only Variables in the CFD-Post User's Guide describes the useful things that you can
do with variables that are defined only on the boundaries of the model.
181
R indicates the variable is available to be output to the results, transient results, and backup files
This is not a complete list of variables. Information on obtaining details on all variables is available in RULES
and VARIABLES Files in the CFX-Solver Manager User's Guide.
Note
Variables with names shown in bold text are not output to CFD-Post. However, some of these
variables can be output to CFD-Post by selecting them from the Extra Output Variables List on
the Results tab of the Solver > Output Control details view of CFX-Pre.
Short
Variable
Name
Units
Availab- Definition
ility
Density
density
[kg m^-3]
vel
Velocitya
viscosity
+ +
Dynamic Viscosity
A, C, M,
P, R, TS
2
A, C, M,
P, R, TS
[m s^-1]
Velocity vector.
A, C, M,
P, R, TS
Velocity u
Velocity v
Velocity w
182
[m s^-1]
Components of velocity.
A, C, M,
P, R, TS
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Short
Variable
Name
Units
Availab- Definition
ility
Pressure
pstat
Static Pressure
A, C, M,
P, R, TS
Pa
3,B
For details, see Scalable Wall Functions in the CFXSolver Theory Guide.
wall
shear
Volume of finite volume. For details, see Discretization of the Governing Equations in the CFX-Solver
Theory Guide.
Volume of Finite
Volume
X coordinate
A, C, M,
P, R, TS
C, DT,
R, TS
x
[m]
Wall Shear
ptot
Total Pressure
C
Y coordinate
[m]
2
C
Z coordinate
[m]
2
C
2
C, M, P,
R, TS
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
183
Short
Variable
Name
Units
Availab- Definition
ility
Shear Strain
Rate
sstrnr
[s^-1]
Specific Heat
Capacity at Constant Pressure
Cp
Specific Heat
Capacity at
Constant
Volume
Cv
Thermal Conductivity
cond
A, C, M,
R, TS
[m^2 s^-2
K^-1]
[m^2 s^-2
K^-1]
A, C, M,
R, TS
For details, see Specific Heat Capacity in the CFXSolver Modeling Guide.
A, C, M,
P, R, TS
A, C, M,
R, TS
[K]
1
A, C,
DT, M,
P, R, TS
Total Temperature
Ttot
Qwall
[K]
1
A, C, M,
P, R, TS
[W m^-2]
2,B
C, DT,
R, TS
htc
Total Enthalpy
htot
184
[W m^-2
K^-1]
[m^2 s^2]
2,B
C, R, TS
, is the thermodynamic
The static temperature,
temperature, and depends on the internal energy
of the fluid. In CFX, depending on the heat transfer
model you select, the flow solver calculates either
total or static enthalpy (corresponding to the total
or thermal energy equations). For details, see
Static Temperature in the CFX-Solver Theory Guide.
Temperature
A, C, M,
R, TS
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Short
Variable
Name
Units
Availab- Definition
ility
Static Enthalpy
enthalpy
[m^2 s^2]
2
A, C, M,
P, R, TS
a
When a rotating frame of reference is used, all variables in the CFX-5 results file are relative to the rotating frame, unless specified as a Stn
Frame variable.
Units
Availabil- Definition
ity
Blending
Function for
DES model
desbf
[]
Turbulence
Kinetic Energy
ke
Turbulence
Eddy Dissipation
ed
Turbulent
Eddy Frequency
tef
Eddy Viscosity
eddy viscosity
[kg
m^-1
s-1]
rs
[m^2
s^-2]
Reynolds
Stress
C, M, R,
TS
[m^2
s^-2]
[m^2
s^-3]
[s^-1]
For details, see The k-epsilon Model in the CFXSolver Modeling Guide.
A, C, M,
P, R, TS
A, C, M,
P, R, TS
A, C, M,
P, R, TS
A, C, M,
P, R, TS
A, C, M,
P, R, TS
The eddy viscosity model proposes that turbulence consists of small eddies that are continuously
forming and dissipating, and in which the Reynolds
stresses are assumed to be proportional to mean
velocity gradients. For details, see Eddy Viscosity
Turbulence Models in the CFX-Solver Theory Guide.
This is a tensor quantity with six components. For
details, see Statistical Reynolds Stresses in the CFXSolver Modeling Guide and Reynolds Stress Turbulence Models in the CFX-Solver Theory Guide in the
ANSYS CFX documentation.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
185
Units
Availabil- Definition
ity
Statistical
Reynolds
Stress uu
rsstat uu
[m^2
s^-2]
Statistical
Reynolds
Stress vv
rsstat vv
[m^2
s^-2]
Statistical
Reynolds
Stress ww
rsstat ww
[m^2
s^-2]
Statistical
Reynolds
Stress uv
rsstat uv
Statistical
Reynolds
Stress uw
rsstat uw
Statistical
Reynolds
Stress vw
rsstat vw
[m^2
s^-2]
[m^2
s^-2]
[m^2
s^-2]
M, R
In LES runs, Reynolds Stress components are automatically generated using running statistics of the
instantaneous, transient velocity field. For details,
see Statistical Reynolds Stresses in the CFX-Solver
Modeling Guide.
M, R
M, R
3
M, R
3
M, R
3
M, R
Velocity Correl- uu
ation uu
[m^2
s^-2]
Velocity Correl- vv
ation vv
[m^2
s^-2]
Velocity Correl- ww
ation ww
[m^2
s^-2]
Velocity Correl- uv
ation uv
[m^2
s^-2]
Velocity Correl- uw
ation uw
[m^2
s^-2]
Velocity Correl- vw
ation vw
[m^2
s^-2]
Yplus
[]
yplusstd
C, M, R
C, M, R
3
C, M, R
3
C, M, R
3
C, M, R
3
C, M, R
2,B
C, R, TS
Solver Yplus
yplus
[]
2,B
C, R, TS
186
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Units
Availability
Definition
Thermal Expansivity
beta
[K^ -1]
Units
Availability
Isobaric Compressibility
compisoP
[K^-1]
Isothermal
Compressibility
compisoT
C, M, R
[m s^2 kg^2
1]
C, M, R
Definition
Long Variable
Name
[]
1
A, C, M, R, TS
Shock Indicator
shock indicator
[]
Isentropic
Compressibility
compisoS
[m s^2 kg^2
1]
C, M, R
A, C, M, R, TS
Mach
Mach Number
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
187
Units User
Level
Definition
Latent Heat
lheat
[]
2
C, R, M
Particle Momentum
Source
ptmomsrc
Particle Diameter
particle diameter
[]
2
A, C, M, P,
R
[]
A, C, M, R
Units
Availabil- Definition
ity
Total Pressure
in Stn Frame
ptotstn
Total Enthalpy
in Stn Frame
htotstn
Mach Number
in Stn Frame
Machstn
[]
Velocity in Stn
Frame
velstn
A, C, DT,
M, P, R,
TS
Ttotstn
[K]
A, C, M,
P, R, TS
1
A, C, M,
R, TS
[m s^-1]
1
A, C, M,
R, TS
188
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Availability
Definition
[]
Real Partition
Number
Units
The partition that the node was in for the parallel run.
C, M, R
Units
Availability
Definition
Mass Fraction
mf
[]
A, C, M,
P, R, TS
Mass Concentration
mconc
[kg
m^-3]
A, C, M,
P, R, TS
Units
Availability
Definition
Interfacial
Area Density
area density
[m^-1]
Interface area per unit volume for Eulerian multiphase fluid pairs.
Interphase
Mass Transfer
Rate
ipmt rate
Volume Fraction
vf
Conservative
Volume Fraction
vfc
Drift Velocity
drift velocity
C
[]
3
C
[]
1
A, C, M, P,
R, TS
[]
2
A, C, M, R,
TS
[]
2
C, M, R, TS
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
189
Units
Availability
Definition
Slip Reynolds
Number
slip Re
[]
Slip Velocity
slipvel
C
[]
1
C, M, R, TS
[N m^1]
unclipped
area density
[m^-1]
Superficial Velocity
volflx
[m s^1]
C
1
A, C, M, R,
TS
Units
Availability
Definition
Wall Radiative
Heat Flux
Qrad
[W m^2]
2,B
Qwall
[W m^2]
2,B
[W m^2]
2,B
190
irrad
DT, R,
TS
C, DT,
R, TS
C, DT,
R, TS
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Short Variable
Name
Units
Availability
Definition
Total Enthalpy
htot
[m^2 s^2]
A, C, M, R,
TS
For details, see Transport Equations
in the CFX-Solver Theory Guide.
Rothalpy
rothalpy
[m^2 s^2]
A, C, M, R,
TS
Total Enthalpy in
Stn Frame
htotstn
[m^2 s^2]
A, C, M, R,
TS
Total Temperature
in Rel Frame
Ttotrel
[K]
A, C, DT, M,
P, R, TS
Total Temperature
Ttot
[K]
A, C, DT, M,
P, R, TS
Total Temperature
in Stn Frame
Ttotstn
[K]
A, C, DT, M,
P, R, TS
%! $# !"!
Total Pressure in
Rel Frame
ptotrel
A, C, M, P, R,
TS
Total Pressure
ptot
A, C, M, P, R,
TS
454 3
Total Pressure in
Stn Frame
ptotstn
A, C, M, P, R,
TS
@
A7 9 787 6
Units
Availability
Definition
Accumulated
Coupling Step
acplgstep
[]
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
191
Units
Availability
Definition
Accumulated
Iteration Number
aitern
[]
Accumulated
Time Step
atstep
citern
cstagger
Current Time
Step
ctstep
Sequence Step
sstep
C
[]
2
C
[]
2
C
[]
2
C
[]
2
C
[]
2
C
dtstep
[s]
2
C
Time
[s]
2
C
Note
Variables with names shown in bold text in the tables that follow are not output to CFD-Post.
However, some of these variables can be output to CFD-Post by selecting them from the Extra
Output Variables List on the Results tab of the Solver > Output Control details view in CFXPre.
Units
Availability
Definition
Axial Distance
aaxis
[m]
Absorption
Coefficient
192
absorp
[m^-1]
1
C, M, R, TS
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Units
Availability
Definition
tion coefficient does not vary along the
path).
Boundary Distance
bnd distance
Boundary
Scale
bnd scale
Contact Area
Fraction
af
[AV name]
[AV name]
Thermal Expansivity
beta
Effective
Density
deneff
Density
density
[m]
2
A, C, M, R,
TS
[m^-2]
3
C, M, R, TS
[]
3
M
Additional Variable name
[K^-1]
2
C
[kg m^-3]
3
A, C, M, R,
TS
[kg m^-3]
2
A, C, M, P,
R, TS
Turbulence
Eddy Dissipation
ed
Eddy Viscosity
eddy viscosity
Emissivity
[m^2 s^-3]
1
A, C, M, P,
R, TS
emis
[kg m^-1
s^-1]
[]
A, C, M, P,
R, TS
C
Extinction
Coefficient
extinct
Initial
Cartesian Coordinates
initcartcrd
Turbulence
Kinetic Energy
ke
[m^-1]
1
C
[m]
2
C
[m^2 s^-2]
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
193
Units
Availability
Definition
A, C, M, P,
R, TS
Mach Number
Mach
[]
1
A, C, M, R,
TS
Mach Number
in Stn Frame
Machstn
Mass Concentration
mconc
Mass Fraction
mf
[]
A, C, M, R,
TS
[m^-3 kg]
A, C, M, P,
R, TS
[]
1
A, C, M, P,
R, TS
[]
Conservative
Mass Fraction
mfc
Mean Particle
Diameter
mean particle
diameter
A, C, M, R,
TS
[m]
3
C, P
[m]
[]
meshinittime
Mixture Fraction
mixfrc
mixture
length scale
[m]
mixvar
[]
Molar Concentration
molconc
194
3
C, M, R, TS
2
C, M, R, TS
[s]
C
[]
A, C, M, R,
TS
3
M
1
A, C, M, R,
TS
[m^-3 mol]
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Units
Availability
Definition
A, C, M, P,
R, TS
Molar Fraction
molf
[]
2
A, C, M, P,
R, TS
Molar Mass
[kg mol^-1]
mw
3
C, P
orthfact
Orthogonality
Factor Minimum
orthfactmin
Pressure
[rad]
2
C, M, R, TS
2
C, M, R, TS
2
C, M, R, TS
Absolute Pressure
pabs
Reference
Pressure
pref
Distance from
local z axis
Radius
raxis
2
A, C, M, R,
TS
2
[m]
rademis
[kg s^-3]
A, C, M, P,
R, TS
2
C
Radiative
Emission
[m]
The Reference Pressure is the absolute pressure datum from which all other
pressure values are taken. All relative
pressure specifications in CFX are relative
to the Reference Pressure. For details, see Setting a Reference Pressure in
the CFX-Solver Modeling Guide.
+
Radial spatial location. =
details, see CEL Variables r and
theta (p. 198).
Orthogonality
Factor
C, M, R, TS
orthanglemin
Orthogonality
Angle Minimum
[rad]
orthangle
Orthogonality
Angle
. For
1
RA
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
195
Units
Availability
Incident Radiation
radinc
[kg s^-3]
Radiation Intensity
radint
Refractive Index
refrac
rNoDim
Reynolds
Stress
rs uu, rs vv,
rs ww, rs uv,
rs uw, rs vw
[m^2 s^-2]
Statistical
Reynolds
Stress
rsstat
rsstat
rsstat
rsstat
rsstat
rsstat
[m^2 s^-2]
Scattering
Coefficient
scatter
Soot Mass
Fraction
sootmf
Soot Nuclei
Specific Concentration
sootncl
Specific
Volume
specvol
Local Speed
of Sound
speedofsound
196
Definition
C, DT, M, R,
TS
[kg s^-3]
1
A, C, M, P,
R, TS
[]
1
C, R, TS
uu,
vv,
ww,
uv,
uw,
vw
[]
A, C, M, P,
R, TS
3
M, R
[m^-1]
1
C, M, R, TS
[]
1
A, C, M, R,
TS
[m^-3]
1
A, C, M, R,
TS
[m^3 kg^1]
[m s^-1]
3
A, C, M, R,
TS
2
C, M, R, TS
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Units
Availability
Definition
Subdomain
subdomain
[]
C
inside()
@<Locations>
Theta
taxis
inside()
@<Locations>
[rad]
2
C
Turbulence
Eddy Frequency
tef
Angle around
local z axis
theta
Total Mesh
Displacement
meshdisptot
Velocity u
Velocity v
Velocity w
Velocity in Stn
Frame u
velstn u
Velocity in Stn
Frame v
[s^-1]
taxis is the angular spatial location measured around the locally-defined axis, when
the latter is defined by the Coordinate
Axis option. When the locally defined axis
is the z(/x/y)-axis, taxis is measured from
the x(/y/z)-axis, positive direction as per
right-hand rule.
1
A, C, M, P,
R, TS
[rad]
2
C
[m]
1
C, DT, M, R,
TS
[m s^-1]
1
A, C, M, P,
R, TS
[m s^-1]
velstn v
1
A, C, M, R,
TS
velstn w
Velocity in Stn
Frame w
Volume Fraction
vf
Conservative
Volume Fraction
vfc
[]
1
A, C, M, P,
R, TS
[]
2
A, C, M, R,
TS
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
197
Units
Availability
Kinematic
Viscosity
visckin
[m^2 s^-1]
Wall Distance
wall distance
Definition
A, C, M, P,
R, TS
[m]
2
A, C, M, P,
R, TS
Wall Scale
wall scale
[m^2]
3
M, R, TS
Note
and .
r and theta are particularly useful for describing radial distributions, for instance the velocity profile at
the inlet to a pipe.
198
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Figure 15.1 r and theta with Respect to the Reference Coordinate Frame
where R is the radius of any point in the domain from the axis of rotation. rNoDim is only available for domains defined with a rotating frame of reference.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
199
An expression is a simple expression if the only operations are +, -, *, / and there are no functions used
in the expression.
An expression is a constant expression if all the numbers in the expression are explicit (that is, they do
not depend on values from the solver).
200
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
An expression is an integer expression if all the numbers in the expression are integers and the result
of each function or operation is an integer.
For example (3+5)/2 is a simple, constant, integer expression. However, 2*(1/2) is not a constant integer
expression, since the result of 1/2 is 0.5, not an integer. Also 3.*4 is not a constant integer expression, since
3. is not an integer. Moreover 2^3 is not a simple, constant, integer expression, since ^ is not in the list (+,
-, *, /).
Expressions are evaluated at runtime and in single precision floating point arithmetic.
Some variables are defined only on the boundaries of the model. When using these variables in CFD-Post,
there are a limited number of useful things that you can do with these. For details, see Boundary-Value-Only
Variables in the CFD-Post User's Guide.
The following information is given for particle variables described in this section:
Long Variable Name: The name that you see in the user interface.
Short Variable Name: The name that must be used in CEL expressions.
Units: The default units for the variable. An empty entry [ ] indicates a dimensionless variable.
Note
The entries in the Units columns are SI but could as easily be any other system of units.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
201
Note
Variables with names shown in bold text are not output to CFD-Post. However, some of these
variables can be output to CFD-Post by selecting them from the Extra Output Variables List on
the Results tab of the Solver > Output Control details view of CFX-Pre.
Note
Particle track variables are not available for use in CEL expressions and general User Fortran, and
they also cannot be monitored during a simulation.
For Particle User Fortran, additional track variables can be specified in the argument list for the user routine,
which are not available in CFD-Post:
Long Variable Name
Units
Description
Availability
<Particle Type>.Mean
Particle Diameter
mean
particle diameter
[m]
Particle diameter
<Particle Type>.Particle
Number Rate
particle
number
rate
[s^-1]
<Particle Type>.Particle
Time
pttime
[s]
<Particle Type>.Particle
Traveling Distance
ptdist
202
PR
Particle number rate
3
PR
Simulation time
2
PR
[m]
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Units
Description
Availability
<Particle Type>.Particle
Traveling Time
[s]
Time measured from the time of injection of the particle. For steady-state
simulations only, this time is identical
to <Particle Type>.Particle Time.
2
PR
<Particle Type>.Temperat- T
ure
[K]
Particle temperature
<Particle Type>.Total
Particle Mass
[kg]
PR
ptmasst
2
PR
<Particle Type>.Velocity
[m/s]
Particle velocity
1
PR
<Particle Type>.Velocity
u
<Particle Type>.Velocity
v
[m/s]
1
PR
<Particle Type>.Velocity
w
Long Variable Name
Units
Availability
pteo
[]
2
PR
ptmo
[]
2
PR
ptnu
[]
2
PR
pton
[]
2
PR
ptre
[]
2
PR
ptwe
[]
2
PR
ptslipvel
[m s^-1]
2
PR
Particle Position
ptpos
[m]
2
PR
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
203
Availability
Units
[radian]
3
PR
Note: The factors affecting the Weber number are particle diameter, particle slip velocity, fluid density, and surface tension.
Note: The impact angle is measured from the wall.
Units
Description
[-]
=
where
=
=
=
Units
Description
Fraction of mass of a particular particle component
204
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Units
Availability
ptenysrc
[W m^-3]
2
A, C, M, P, R
ptenysrcc
ptmomsrc
ptmomsrcc
ptmassrctot
ptmassrcctot
[W m^-3 K^1]
A, C, M, P, R
A, C, M, P, R
2
A, C, M, P, R
A, C, M, P, R
A, C, M, P, R
For multi-component mass transfer, the following Additional Variables are available a:
Particle Mass Source
ptmassrc
ptmassrcc
A, C, M, P, R
A, C, M, P, R
The variables for multi-component take the following form: <Particle Type>.<Particle Component>.<Variable Name>
Particle source terms are accumulated along the path of a particle through a control volume and stored at
the corresponding vertex. A smoothing procedure can be applied to the particle source terms, which may
help with convergence or grid independence. For details, see Particle Source Smoothing in the CFX-Solver
Modeling Guide.
Short Variable
Name
Units
Availability
ptremiss
[W m^-3]
2
A, C, M, P, R
ptabscoef
[m^-1]
2
A, C, M, P, R
Particles can also interact with the radiation field and either emit or absorb radiation.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
205
Short Variable
Name
Units
Availability
Averaged Velocity
averaged vel
[m s^-1]
1
A, C, M, P, PR,
R
vfpt
[]
1
A, C, M, P, PR,
R
Averaged Temperature
averaged temperature
[K]
averaged mf
[]
1
A, C, M, P, PR,
R
1
A, C, M, P, PR,
R
averaged pttime
[s]
2
A, C, M, P, PR,
R
averaged mean
particle diameter
[m]
averaged arithmetic
mean particle diameter
[m]
averaged surface
mean particle diameter
[m]
averaged volume
mean particle diameter
[m]
averaged sauter
mean particle diameter
[m]
206
2
A, C, M, P, PR,
R
2
A, C, M, P, PR,
R
2
A, C, M, P, PR,
R
2
A, C, M, P, PR,
R
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
2
A, C, M, P, PR,
R
Short Variable
Name
Units
Availability
averaged mass
mean particle diameter
[m]
averaged particle
number rate
[s^-1]
A, C, M, P, PR,
R
2
A, C, M, P, PR,
R
For simulations with the particle wall film model activated, the following additional vertex variables
are available:
Averaged Volume Fraction Wall
vfptw
[]
1
A, C, M, P, PR,
R
[K]
1
A, C, M, P, PR,
R
This variable takes the following form: <Particle Type>.<Particle Component>.<Variable Name>
The following are the formulae for particle vertex fields' size distributions:
=
%$ !
# #"
$!
# #"
&!
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
207
(151)
With:
: Particle mass
: Particle quantity
Slightly different averaging procedures apply to particle temperature and particle mass fractions:
Averaged Particle Temperature
!" ! ! !
! !" ! ! !
(152)
!
With:
Averaged Mass Fraction
: Particle specific heat capacity
: Particle temperature
3 2 31 0 )
4
3 2 35 1 0 )
'&
$% $#
(153)
3(
With:
89 7 6
Due to the discrete nature of particles, vertex variables may show an unsmooth spatial distribution, which
may lead to robustness problems. To reduce possible problems a smoothing option is available. For details,
see Vertex Variable Smoothing in the CFX-Solver Modeling Guide.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Units
Availability
B, R
Momentum Flow Density
2
B, R
[kg s^-3]
2
B, R
2
B, R
2
B, R
2
B, R
[kg m^-2]
2
B, R
[kg s^-2]
2
B, R
[kg m^-2]
2
B, R
[kg m^-2]
2
B, R
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
209
Short Variable
Name
Units
Availability
RMS Velocity
rms velocity
[m s^-1]
1
A, C, M, P, PR, R
RMS Temperature
rms temperature
[K]
1
A, C, M, P, PR, R
[m]
3
A, C, M, P, PR, R
3
A, C, M, P, PR, R
(154)
With:
A smoothing option, as available for particle vertex variables, is available for particle RMS variables. For details,
see Vertex Variable Smoothing in the CFX-Solver Modeling Guide.
210
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
A number represents the user level (1 indicates that the variable appears in default lists, 2 and 3 indicate
that the variable appears in extended lists that you see when you click
P indicates the variable is available for particle user routine argument lists
R indicates the variable is available to be output to the results, transient results, and backup files
Long Variable
Name
Short Variable
Name
Units
Availability
Aspect Ratio
aspect ratio
[]
Definition
2
C, M, R, TS
Autoignition
autoignition
[]
1
A, C, M, R, TS
Boundary Scale
bnd scale
[]
3
C, M, R, TS
Burnt Absolute
Temperature
burnt Tabs
Burnt Density
burnt density
[K]
2
A, C, M, R, TS
[kg m^-3]
2
A, C, M, R, TS
Clipped Pressure
pclip
[Pa]
1
M, R, TS
Conservative Size
Fraction
sfc
Courant Number
courant
[]
Negative absolute
values clipped for
cavitation
2
A, C, M, R, TS
[]
2
C, M, R, TS
Cumulative Size
Fraction
csf
Current Density
jcur
[]
2
A, C, M, R, TS
1
C, M, R, TS
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
211
Short Variable
Name
Units
Availability
Electric Field
Definition
C, M, P, R, TS
elec
C, M, R, TS
Electric Potential
epot
1
C, M, R, TS
Electromagnetic
Force Density
bfemag
Equivalence Ratio
equivratio
C, M, R, TS
C, M, R, TS
R
[]
2
A, C, M, R, TS
External Magnetic
Induction
bmagext
First Blending
Function for BSL
and SST model
sstbf1
Second Blending
Function for SST
model
sstbf2
Flame Surface
Density
fsd
Specific Flame
Surface Density
spfsd
Frequency
[]
freq
1
M, R, TS
[]
3
C, M, R, TS
[]
3
C, M, R, TS
[m^-1]
1
A, C, M, R, TS
2
A, C, M, R, TS
Combustion with
flame surface density
models.
Combustion with
flame surface density
models.
3
C
Fuel Tracer
trfuel
[]
1
A, C, M, R, TS
212
groupi
[m^2 s^-2]
Residual material
model or exhaust gas
recirculation (EGR)
1
A, C, M, R, TS
[]
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Short Variable
Name
Units
Availability
Definition
C
Group J Index
groupj
[]
2
C
Group I Diameter
diami
2
C
Group J Diameter
diamj
Group I Mass
massi
C
2
C
Group J Mass
massj
2
C
Group I Lower
Mass
massi lower
Group J Lower
Mass
massj lower
Group I Upper
Mass
massi upper
Group J Upper
Mass
massj upper
Ignition Delay
Elapsed Fraction
ignfrc
Ignition Delay
Time
tigndelay
particle integration
timestep
[s]
Isentropic Compressibility
compisoS
[m s^2 kg^-1]
icompeff
iexpeff
C
2
C
2
C
2
C
[]
2
A, C, M, R, TS
[s]
2
A, C, M, R, TS
3
P
[]
C, M, R
2
C, M, R, TS
[]
2
C, M, R, TS
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
213
Short Variable
Name
Units
Availability
Isentropic Total
Enthalpy
htotisen
Isentropic Static
Enthalpy
enthisen
Isobaric Compressibility
compisoP
Isothermal Compressibility
compisoT
LES Dynamic
Model Coefficient
dynmc
Laminar Burning
Velocity
velburnlam
Lighthill Stress
lighthill stress
tensor
Magnetic Induction
bmag
Magnetic Field
hmag
Definition
2
C, M, R, TS
2
C, M, R, TS
2
C, M, R
2
C, M, R
[]
[m s^2 kg^-1]
[K^-1]
1
A, C, M, P, R, TS
[m s^-1]
2
A, C, R, TS
A, C, M, R, TS
C, M, R, TS
2
C, M, R, TS
Magnetic Vector
Potential
bpot
Magnetic Permeability
permmag
External Magnetic
Induction
bmagext
Mass Flux
mfflux
C, M, R, TS
3
C, M, R, TS
1
C, M, R, TS
2
R
Mesh Diffusivity
diffmesh
[m^2 s^-1]
2
C, M, R, TS
Normal Area
normarea
[]
214
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Short Variable
Name
forcetden
Total Pressure in
Rel Frame
ptotrel
Turbulent Burning
Velocity
velburnturb
Mesh Velocity
Units
meshvel
Availability
Definition
3
DT
2
A, C, M, P, R, TS
[m s^-1]
Based on relative
frame total enthalpy.
2
A, C, R, TS
1
C, M, R, TS
Mixture Fraction
Scalar Dissipation
Rate
mixsclds
Molar Reaction
Rate
reacrate
pabsnc
Nonclipped Density
densitync
Normal Vector
normal
[s^-1]
3
A, C, M, R, TS
2
C, R, TS
3
A, C, M, R, TS
[kg m^-3]
2
C
[]
Nonclipped absolute
pressure for cavitation source. This is
written to the .res
file for all cases that
have cavitation.
Nonclipped density
for cavitation source
2
C
Orthogonality
Factor Minimum
orthfactmin
Orthogonality
Factor
orthfact
Orthogonality
Angle Minimum
orthanglemin
Orthogonality
Angle
orthangle
Particle Laplace
Number
ptla
Particle Turbulent
Stokes Number
ptstt
[]
2
C, M, R, TS
[]
2
C, M, R, TS
2
C, M, R, TS
2
C, M, R, TS
[]
2
P
[]
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
215
Short Variable
Name
Units
Availability
Definition
P
Polytropic Compression Efficiency
pcompeff
pexpeff
Polytropic Total
Enthalpy
htotpoly
Polytropic Static
Enthalpy
enthpoly
Reaction Progress
reacprog
[]
2
C, M, R, TS
[]
2
C, M, R, TS
2
C, M, R, TS
2
C, M, R, TS
[]
1
A, C, M, R, TS
wreacprog
wreacprogsrc
Residual Products
Mass Fraction
mfresid
Residual Products
Molar Fraction
molfresid
Restitution Coefficient
restitution coefficient
Rotation Velocity
[]
rotvel
2
A, C, M, R, TS
3
A, C, R, TS
[]
1
A, C, M, R, TS
[]
2
A, C, M, R, TS
[]
3
C, M, R, TS
2
C, R, TS
Rotational Energy
rotenergy
Shear Velocity
ustar
C, R, TS
2
C
Size Fraction
sf
[]
1
A, C, M, R, TS
216
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Short Variable
Name
Units
Availability
Solid Pressure
solid pressure
[Pa]
Definition
3
A, C, M, R, TS
Solid Pressure
Gradient
solid pressure
gradient
[]
3
C, M, R, TS
entropy
3
A, C, M, P, R, TS
Temperature Variance
Tvar
trun
A, C, M, R, TS
2
C
Total Boundary
Displacement
bnddisptot
Total Density
dentot
1
C, DT, M, R, TS
[kg m^-3]
2
A, C, M, R
Total Density in
Stn Frame
dentotstn
Total Density in
Rel Frame
dentotrel
Total Force
[kg m^-3]
forcet
2
A, C, M, R
[kg m^-3]
2
A, C, M, R
3
DT
Unburnt Absolute
Temperature
unburnt Tabs
Unburnt Density
unburnt density
[K]
2
A, C, M, R, TS
[kg m^-3]
2
A, C, M, R, TS
Unburnt Thermal
Conductivity
unburnt cond
Unburnt Specific
Heat Capacity at
Constant Pressure
unburnt Cp
[W m^-1 K^-1] 2
A, C, M, R, TS
[J kg^-1 K^-1]
2
A, C, M, R, TS
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
217
Short Variable
Name
Units
Availability
Volume Porosity
volpor
[]
Definition
2
C, M, R, TS
Volume of Finite
Volumes
volcvol
Vorticity
vorticity
C, R, TS
2
A, C, M, R, TS
Vorticity in Stn
Frame
vortstn
htco
Wall Adjacent
Temperature
tnw
Wall Distance
wall distance
2
A, C, M, R, TS
2
R, TS
[K]
2
C, DT, R, TS
[m]
2
A, C, M, P, R, TS
Wall External
Temperature
tnwo
film thickness
htc
QwallFlow
[K]
2
DT, R, TS
[m]
2
C, R
2
C, R, TS
3
C, DT, R, TS
nwallvel
Wall Scale
wall scale
2
C, R, TS
3
R, M, TS
Wavelength in Vacuum
wavelo
Wavenumber in
Vacuum
waveno
218
3
C
3
C
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Short Variable
Name
Units
Availability
Normalized
Droplet Number
spdropn
[m^-3]
Droplet Number
spdrop
Definition
C, M, R, TS
1
C, M, R, TS
Total MUSIG
Volume Fraction
vft
Smoothed
Volume Fraction
vfs
Temperature Superheating
Tsuperheat
Temperature Subcooling
Tsubcool
1
A, C, M, R, TS
[]
2
A, C, M, R, TS
[]
2
A, C, M, R, TS
3
C
3
C
Temperature above
saturation
Temperature below
saturation
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
219
220
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
2da
2dasw
3d
bns
bnv
cpl
cv
available only for cell values (Node Values option turned off )
des
dil
do
dpm
dtrm
fwh
available only with the Ffowcs Williams and Hawkings acoustics model
edc
emm
ewt
gran
h2o
id
available only when the ideal gas law is enabled for density
ke
kw
les
melt
mix
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
221
nox
np
nv
p1
pmx
ppmx
rad
rc
rsm
s2s
sa
seg
sp
sr
sol
soot
stat
stcm
turbo
udm
uds
CFX Variable
Pressure...
Pressure
Pressure Coefficient
Pressure Coefficient
Dynamic Pressure
Dynamic Pressure
Absolute Pressure
Density
Density
Density...
222
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
CFX Variable
Density All
Density
CFX Variable
Velocity...
X Velocity (bnv)
Y Velocity (bnv)
Velocity Circumferential
Velocity Axial
Radial Velocity
Velocity Radial
Stream Function
Tangential Velocity
Velocity Circumferential
Velocity
Velocity u
Velocity v
Velocity w
Velocity Axial
Velocity Radial
Velocity Circumferential
Velocity Circumferential
Mach Number
Mesh Velocity X
Mesh Velocity Y
Mesh Velocity Z
Velocity Angle
Velocity Angle
Velocity Angle
CFX Variable
Temperature...
Temperature
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
223
CFX Variable
Static Enthalpy
Total Temperature
Rothalpy
Entropy (e)
Static Entropy
Internal Energy
Absorption Coefficient
Scattering Coefficient
Refractive Index
Radiation Temperature
Radiation...
Incident Radiation
<component>.Mass Fraction
Contact Resistivity
Pull Velocity Xa
Pull Velocity Ya
Pull Velocity Za
Solidification/Melting
Surface Cluster ID
CFX Variable
Turbulence...
Reynolds Stress uu
Reynolds Stress vv
Reynolds Stress ww
Reynolds Stress uv
224
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
CFX Variable
Reynolds Stress uw
Reynolds Stress vw
Turbulence Intensity
Eddy Viscosity
Effective Viscosity
(unavailable)
(unavailable)
Ystar
Yplus
CFX Variable
Species...
<Species-n>.Molar Concentration
<Species-n>.Static Enthalpy
<Species-n>.Source Terma
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
225
<Species-n>.Surface Coveragea
Relative Humidity
Mean Fraction
Pdf...
CFX Variable
Reactions...
Fvar Prod
(unavailable)
Scalar Dissipation
Reaction Progress
Damkohler Numbera
Stretch Factora
Temperature
Premixed
Combustion...
CFX Variable
NOx...
NO.Mass Fraction
HCN.Mass Fraction
NH3.Mass Fraction
N2O.Mass Fraction
NO.Molar Fraction
HCN.Molar Fraction
226
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
NH3.Molar Fraction
N2O.Molar Fraction
NO Density (nox)
NO.Density
HCN.Density
NH3.Density
N2O.Density
Temperature Variance
Species Variancea
Species 1 Variancea
Species 2 Variancea
Rate of NO (nox)
NO Source
Soot.Density
CFX Variable
Soot...
<variable>.Trnavg
<variable>.Trnrms
a
a
Table 16.7 Phases, Discrete Phase Model, Granular Pressure, and Granular Temperature
Categories
Category
CFX Variable
Phases...
<phase>.Volume Fraction
Discrete Phase
Model...
DPM Swirl Momentum Source (dpm, 2dasw) <particle>.Particle Swirl Momentum Source
DPM Sensible Enthalpy Source (dpm, e)
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
227
CFX Variable
Particle Burnout
<particle>.Volume Fraction
Granular Pressure...
<phase>.Granular Pressurea
Granular Temperature...
<phase>.Granular Temperature
Table 16.8 Properties, Wall Fluxes, User Defined Scalars, and User Defined Memory Categories
Category
CFX Variable
Properties...
Dynamic Viscosity
Diameter(mix, emm)
<phase>.Granular Conductivity
Thermal Conductivity
R Gas Constant
Prandtl Numbera
Molar Massa
Wall Shear
Wall Shear X
Wall Shear Y
Wall Shear Z
Wall Fluxes...
228
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
CFX Variable
User-Defined
Scalars...
Scalar-n (uds)
<Scalar-n>
<Scalar-n>.Diffusion Coefficient
User-Defined
Memory...
CFX Variable
Cell Info...
Cell Partition
Cell Id (p)
Cell Id
Partition Neighbors
Partition Neighbors
X-Coordinate (nv)
Y-Coordinate (nv)
Axial Coordinate
Angular Coordinate
Grid...
X Surface Area
Y Surface Area
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
229
CFX Variable
Face Area X
Y Face Area
Face Area Y
Face Area Z
Cell Volume
Cell Volume
2d Cell Volume
Face Handedness
Face Handedness
CFX Variable
Grid...
Meridional Coordinate
Spanwise Coordinate
Pitchwise Coordinate
Adaption Function
Adaption Function
Adaption Curvature
Adaption Curvature
Adaption Iso-Value
Adaption Iso-Value
Existing Value
Existing Value
Cell Warpage
Cell Warpage
Cell Children
Cell Children
Adaption...
CFX Variable
Residuals...
Mass Imbalance
230
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
CFX Variable
Pressure Residual
Residual u Velocity
Residual v Velocity
Residual w Velocity
Residual Axial-Velocity
Residual Radial-Velocity
Residual Circumferential-Velocity
Residual Temperature
<Species-n>.Residual
Time Step
Pressure Correction
u Velocity Correction
v Velocity Correction
w Velocity Correction
Axial-Velocity Correction
Radial-Velocity Correction
Circumferential-Velocity Correction
Temperature Correction
<Species-n>.Correction
CFX Variable
Derivatives...
Strain Rate
dX-Velocity/dx
du-Velocity-dx
dY-Velocity/dx
dv-Velocity-dx
dZ-Velocity/dx (3d)
dw-Velocity-dx
dAxial-Velocity/dx (2da)
dAxial-Velocity-dx
dRadial-Velocity/dx (2da)
dRadial-Velocity-dx
dSwirl-Velocity/dx (2dasw)
dCircumferential-Velocity-dx
d<Species-n>-dx
dX-Velocity/dy
du-Velocity-dy
dY-Velocity/dy
dv-Velocity-dy
dZ-Velocity/dy (3d)
dw-Velocity-dy
dAxial-Velocity/dy (2da)
dAxial-Velocity-dy
dRadial-Velocity/dy (2da)
dRadial-Velocity-dy
dSwirl-Velocity/dy (2dasw)
dCircumferential-Velocity-dy
d<Species-n>-dy
dX-Velocity/dz (3d)
du-Velocity-dz
dY-Velocity/dz (3d)
dv-Velocity-dz
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
231
CFX Variable
dZ-Velocity/dz (3d)
dw-Velocity-dz
d<Species-n>-dz
dOmega/dx (2dasw)
dOmega-dx
dOmega/dy (2dasw)
dOmega-dy
dp-dX (seg)
dp-dX
dp-dY (seg)
dp-dY
dp-dZ
CFX Variable
Acoustics...
Acoustic Power
232
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Loops
Subroutines with argument handling (useful for defining commonly re-used plots and procedures)
System functions
Many other procedures (Object programming, World Wide Web access, simple embedded graphical
user interfaces).
Any of the above may be included in a CCL input file or CFD-Post Session file.
Important
You should be wary when entering certain expressions because Power Syntax uses Perl mathem
atical operators. For example, in CEL, is represented as 2^2, but in Perl, it would be written
2**2. If you are unsure about the validity of an operator, you should check a Perl reference guide.
There are many good reference books on Perl. Two examples are Learning Perl (ISBN 1-56592-0422) and Programming Perl (ISBN 1-56592-149-6) from the OReilly series.
This chapter describes:
17.1. Examples of Power Syntax
17.2. Predefined Power Syntax Subroutines
233
These subroutines are loaded when CFD-Post is launched, so you do not need to execute the session files
before using the functions.
Additional information on these macro functions is available. For details, see Gas Compressor Performance
Macro and Cp Polar Plot Macro.
All arguments passed to subroutines should be enclosed in quotations, for example Plane 1 must be
passed as Plane 1 and Eddy Viscosity should be entered as Eddy Viscosity. Any legal CFX
Command Language characters that are illegal in Perl need to be enclosed in quotation marks.
17.1.1. Example 1: Print the Value of the Pressure Drop Through a Pipe
!
!
!
!
$Pin = massFlowAve("Pressure","inlet");
$Pout = massFlowAve("Pressure","outlet");
$dp = $Pin-$Pout;
print "The pressure drop is $dp\n";
234
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
The first line of Power Syntax simply defines a scalar variable called numsteps. Scalar variables (that is,
simple single-valued variables) begin with a $ symbol in Perl. The next line defines a for loop that increments
the variable i up to numsteps. Next, you determine the fraction you are along in the loop and assign it
to the variable trans. The object definitions then use trans to set their transparency and then repeat.
Note how Perl variables can be directly embedded into the object definitions. The final line of Power Syntax
(!}) closes the for loop.
Although this subroutine is designed for use with the next example, you can execute it on its own by typing
!makePlanes(); in the Command Editor dialog box.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
235
! sub manifoldCalcs{
# call the previously defined subroutine (Example 3) make the
# upstream and downstream cutting planes
! makePlanes();
#
# Bound the two planes so they each just cut one side of the branch.
PLANE:plane1
Plane Bound = Circular
Bound Radius = 0.025
END
PLANE:plane2
Plane Bound = Circular
Bound Radius = 0.025
END
# Calculate mass flow through each using the predefined
# 'evaluate' Power Syntax subroutine and output the results
! ($mass1, $mfunits) = evaluate( "massFlow()\@plane1" );
! ($mass2) = evaluate( "massFlow()\@plane2" );
! $sum = $mass1+$mass2;
! print "Mass flow through branch 1 = $mass1 [$mfunits]\n";
! print "Mass flow through branch 2 = $mass2 [$mfunits]\n";
! print "Total = $sum [$mfunits]\n";
# Now calculate pressure drops and mass flows through the exits
# calculate the average pressure at the inlet
!($Pin, $punits) = evaluate( "massFlowAve(Pressure)\@in1" );
# Set-up an array that holds the approximate X location of each
# of the 4 exits. We then loop over the array to move the outlet
# plane and re-do the pressure drop calculation at each exit.
! @Xlocs = (0.15,0.25,0.35,0.45);
! $sum = 0;
! for ($i=0;$i<4;$i++) {
PLANE:outlet
Option = Point and Normal
Normal = 0,-1,-1
Point = $Xlocs[$i],-0.06,-0.2
Plane Bound = Circular
Bound Radius = 0.05
END
! ($Pout, $punits) = evaluate( "massFlowAve(Pressure)\@outlet" );
! ($massFl) = evaluate( "massFlow()\@outlet" );
! $sum += $massFl;
! $Dp = $Pin-$Pout;
! $ii = $i+1;
! print "At outlet \#$ii: Dp=$Dp [$punits], Mass Flow=$massFl [$mfunits]\n";
! } # end loop
! print "Total Mass Flow = $sum [$mfunits]\n";
!} # end subroutine
236
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Each of the subroutines contains an argument list (in brackets, separated by commas). If any argument
contains more than one word (for example, Plane 1), it must be within quotes. You should enclose all
arguments within quotes to avoid making possible syntax errors.
Each subroutine is preceded by its return value(s). For example:
real, string evaluate("Expression", "Locator")
237
Returns the area of a 2D locator. For details, see area (p. 160).
17.2.3.2. areaAve(Variable,Location,Axis)
real areaAve("Variable", "Location", "Axis")
Returns the area-weighted average of the variable at a 2D locator. For details, see areaAve (p. 161).
17.2.3.3. areaInt(Variable,Location,Axis)
real areaInt("Variable", "Location", "Axis")
Returns the result of the variable integrated over the 2D location. For details, see areaInt (p. 162).
17.2.3.4. ave(Variable,Location)
real ave("Variable", "Location")
Returns the arithmetic average of the variable at a location. For details, see ave (p. 163).
17.2.3.5. calcTurboVariables()
void calcTurboVariables()
17.2.3.6. calculate(function,...)
void calculate(function,...)
Evaluates the named function with the supplied argument list, and returns the float result. The function
name is a required argument, which can be followed by a variable length list of arguments.
17.2.3.7. calculateUnits(function,...)
string calculateUnits(function,...)
Evaluates the named function with the supplied argument list, and returns the value and units.
17.2.3.8. collectTurboInfo()
This is an internal subroutine that is used only to initialize report templates.
17.2.3.9. comfortFactors()
This is an internal subroutine that is used only to initialize report templates.
238
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
17.2.3.11. compressorPerformTurbo()
This is an internal subroutine that is used only to initialize report templates.
17.2.3.13. count(Location)
real count("Location")
Returns the number of nodes on the location. For details, see count (p. 164).
Returns the number of mesh nodes on the specified region that evaluate to true where true means
,
greater than or equal to 0.5. "Expression" should contain one of the logical operators =, >, <, <=, or >=.
The countTrue function is valid for 1D, 2D, and 3D locations. For details, see countTrue (p. 164).
17.2.3.16. evaluate(Expression)
real,string evaluate("Expression")
Returns the value of the expression and the units. Only one expression can be evaluated each time the
subroutine is executed. The main advantage of using evaluate is that it takes any CEL expression. This
means that you do not have to learn any other quantitative power syntax routines described in this section.
Also, evaluate will return the result units in addition to the value.
An example is:
evaluate("areaAve(Velocity v)\@Location 1")
In this case, another subroutine is evaluated. The evaluate command takes an any expression as the argument, or more precisely, any expression that resolves to a quantity. This means that you cannot use:
"2*Pressure"
or
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
239
The reason that the @ is escaped calling evaluate() is to avoid Perl treating it as a special character.
17.2.3.17. evaluateInPreferred(Expression)
real,string evaluateInPreferred("Expression")
Returns the value of the expression in your preferred units. Preferred units are the units of the data that CFDPost uses when information is displayed to you and are the default units when you enter information (as
contrasted with units of the data that are stored in results files). Use the Edit > Options > Common > Units
dialog to set your preferred units.
17.2.3.18. exprExists(Expression)
bool exprExists("Expression")
17.2.3.19. fanNoiseDefault()
This is an internal subroutine that is used only to initialize report templates.
17.2.3.20. fanNoise()
This is an internal subroutine that is used only to initialize report templates.
17.2.3.21. force(Location,Axis)
real force("Location", "Axis")
Returns the force on a 2D locator. For details, see force (p. 165).
17.2.3.22. forceNorm(Location,Axis)
real forceNorm("Location", "Axis")
Returns the per unit width force on a line in the direction of the specified axis. It is available only for a
polyline created by intersecting a locator on a boundary. For details, see forceNorm (p. 166).
17.2.3.23. getBladeForceExpr()
This is an internal subroutine that is used only to initialize report templates.
17.2.3.24. getBladeTorqueExpr()
This is an internal subroutine that is used only to initialize report templates.
17.2.3.25. getCCLState()
This is an internal debugging call.
240
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
17.2.3.26. getChildrenByCategory(Category)
SV* getChildrenByCategory("Category")
Returns the children of an object that belong to the specified category in a comma-separated list. Each object
type (for example, a PLANE) can have multiple categories associated with it such as "geometry", "surface",
and so on). Categories are specified in <CFXROOT>/etc/CFXPostRules.ccl.
For example, to get a comma-separated list of all surfaces in a state at the top level (that is, not sub-objects
of other objects):
! $surfaces = getChildrenByCategory("/", "surface" );
Returns the children of an object in a comma separated list. If Child Type is not an empty string, this
subroutine return only children of the specified type.
17.2.3.28. getExprOnLocators()
This is an internal subroutine that is used only to initialize report templates.
17.2.3.29. getExprString(Expression)
string getExprString("Expression")
Returns the value and the units of the expression in the form value units For example: 100 m
.
.
17.2.3.30. getExprVal(Expression)
real getExprVal("Expression")
Returns only the "value" portion of the expression (units are not included).
Extracts the name of an object from its full path. For example:
!string = getObjectName("/USER SURFACE:User Surface 1")
returns "User Surface 1". This is the form needed for evaluating a CEL expression.
Returns the requested information for a parameter of an object. Object Name returns the name or path
of an object; "/" or an empty string specifies the root.Parameter Name returns the name of the parameter.
Info Type returns the type of data requested; this can be one of "type", "value", "default value", or "allowed
values". For example:
! $info = getParameterInfo("/USER DEFINED/POINT:Point 1", "Symbol Size", "default value");
! print "getParameterInfo returned=$info\n";
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
241
17.2.3.33. getParameters()
SV* getParameters("Object Name")
Returns the parameters of an object in a comma-separated list. Use 'split ","' to convert the string into
an array of strings.
17.2.3.34. getTempDirectory()
string getTempDirectory()
17.2.3.35. getType()
SV* getType("Object Name")
Takes a CCL object and parameter name and returns the value of the parameter.
Returns the value stored in Parameter Name.
17.2.3.36.1. Example
1.
2.
3.
4.
5.
Click Process, and the string will be printed to your terminal window.
17.2.3.37. getViewArea()
void getViewArea()
Calculates the area of the scene projected in the view direction. Returns the area and the units in an array
of strings.
242
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
17.2.3.39. Length(Location)
real Length("Location")
Returns the length of a line locator. For details, see length (p. 167).
Note
While using this function in Power Syntax the leading character is capitalized to avoid confusion
with the Perl internal command length.
17.2.3.40. lengthAve(Variable,Location)
real lengthAve("Variable", "Location")
Returns the length-based average of the variable on the line locator. For details, see lengthAve (p. 167).
17.2.3.41. lengthInt(Variable,Location)
real lengthInt("Variable", "Location")
Returns the length-based integral of the variable on the line locator. For details, see lengthInt (p. 168).
17.2.3.42. liquidTurbPerformTurbo()
This is an internal subroutine that is used only to initialize report templates.
17.2.3.43. liquidTurbPerform()
This is an internal subroutine that is used only to initialize report templates.
17.2.3.44. massFlow(Location)
real massFlow("Location")
Returns the mass flow through the 2D locator. For details, see massFlow (p. 168).
17.2.3.45. massFlowAve(Variable,Location)
real massFlowAve("Variable","Location")
Returns the average value of the variable, weighted by mass flow, through the 2D locator. For details, see
massFlowAve (p. 169).
17.2.3.46. massFlowAveAbs(Variable,Location)
real massFlowAveAbs("Variable","Location")
Returns the absolute value of the massFlowAve. For details, see massFlowAve (p. 169).
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
243
17.2.3.47. massFlowInt(Variable,Location)
real massFlowInt("Variable","Location")
Returns the integral of the variable, weighted by mass flow, over the 2D locator. For details, see massFlowInt (p. 172).
17.2.3.48. maxVal(Variable,Location)
real maxVal("Variable","Location")
Returns the maximum value of the variable at the location. For details, see maxVal (p. 173).
17.2.3.49. minVal(Variable,Location)
real minVal("Variable","Location")
Returns the minimum value of the variable at the location. For details, see minVal (p. 173).
17.2.3.51. probe(Variable,Location)
real probe("Variable","Location")
Important
This calculation should only be performed for point locators described by single points. Incorrect
solutions will be produced for multiple point locators.
Returns the value of the variable at the point locator. For details, see probe (p. 174).
17.2.3.52. pumpPerform()
This is an internal subroutine that is used only to initialize report templates.
17.2.3.53. pumpPerformTurbo()
This is an internal subroutine that is used only to initialize report templates.
17.2.3.54. range(Variable,Location)
(real, real) range("Variable","Location")
Returns the minimum and maximum values of the variable at the location.
17.2.3.55. reportError(String)
void reportError("String")
244
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
17.2.3.56. reportWarning(String)
void reportWarning("String")
17.2.3.57. showPkgs()
void showPkgs()
Prints to the console a list of packages available which may contain other variables or subroutines in Power
Syntax.
17.2.3.58. showSubs(packageName)
void showSubs("packageName")
Prints to the console a list of the subroutines available in the specified package. If no package is specified,
CFD-Post is used by default.
17.2.3.59. showVars(packageName)
void showVars("packageName")
Prints to the console a list of the Power Syntax variables and their current value defined in the specified
package. If no package is specified, CFD-Post is used by default.
17.2.3.61. sum(Variable,Location)
real sum("Variable","Location")
Returns the sum of the variable values at each point on the locator. For details, see sum (p. 175).
17.2.3.62. torque(Location,Axis)
real torque("Location","Axis")
Returns the computed value of torque at the 2D locator about the specified axis. For details, see torque (p. 176).
17.2.3.63. turbinePerform()
This is an internal subroutine that is used only to initialize report templates.
17.2.3.64. turbinePerformTurbo()
This is an internal subroutine that is used only to initialize report templates.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
245
17.2.3.65. verboseOn()
bool verboseOn()
17.2.3.66. volume(Location)
real volume("Location")
Returns the volume of a 3D locator. For details, see volume (p. 176).
17.2.3.67. volumeAve(Variable,Location)
real volumeAve("Variable","Location")
Returns the average value of a variable over the 3D locator. For details, see volumeAve (p. 177).
17.2.3.68. volumeInt(Variable,Location)
real volumeInt("Variable","Location")
Returns the integral of a variable over the 3D locator. For details, see volumeInt (p. 177).
246
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
2
Rhie, C.M. and Chow, W.L.,
A Numerical Study of the Turbulent Flow Past an Isolated Airfoil with Trailing Edge Separation
,
AIAA Paper 82-0998, 1982
3
Raw, M.J.,
A Coupled Algebraic Multigrid Method for the 3D Navier-Stokes Equations
,
10th GAMM Seminar, Kiel, 1994.
4
Launder, B.E., Reece, G.J. and Rodi, W.,
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
247
5
Speziale, C.G., Sarkar, S. and Gatski, T.B.,
Modelling the pressure-strain correlation of turbulence: an invariant dynamical systems approach
,
J. Fluid Mechanics, Vol. 277, pp. 245-272, 1991.
6
Schiller, L. and Naumann, A.,
VDI Zeits, 77, p. 318, 1933.
7
Hughmark, G.A.,
AIChE J., 13 p. 1219, 1967.
8
Modest, M.,
Radiative Heat Transfer Second Edition
,
Academic Press, 2003.
9
Menter, F.R.,
Two-equation eddy-viscosity turbulence models for engineering applications
,
AIAA-Journal., 32(8), pp. 1598 - 1605, 1994.
10
Grotjans, H. and Menter, F.R.,
Wall functions for general application CFD codes
,
In K.D.Papailiou et al., editor, ECCOMAS 98 Proceedings of the Fourth European Computational
Fluid Dynamics Conference, pp. 1112-1117. John Wiley & Sons, 1998.
11
Wilcox, D.C.,
Multiscale model for turbulent flows
,
248
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
12
Menter, F.R.,
Multiscale model for turbulent flows
,
In 24th Fluid Dynamics Conference. American Institute of Aeronautics and Astronautics, 1993.
13
Launder, B.E. and Spalding, D.B.,
The numerical computation of turbulent flows
,
Comp Meth Appl Mech Eng, 3:269-289, 1974.
14
White, F.M.,
Viscous Fluid Flow Second Edition,
,
McGraw-Hill, 1991.
15
Kader, B.A.,
Temperature and concentration profiles in fully turbulent boundary layers
,
International Journal of Heat and Mass Transfer, 24(9):1541-1544, 1981.
16
Huang, P.G., Bradshaw, P. and Coakley, T.J.,
Skin friction and velocity profile family for compressible turbulent boundary layers
,
American Institute of Aeronautics and Astronautics Journal, 31(9):1600-1604, 1993.
17
Bouillard, J.X, Lyczkowski, R.W.and Gidaspow, D.,
Porosity Distribution in a Fluidised Bed with an Immersed Obstacle
,
AIChE J., 35, 908-922, 1989.
18
Gidaspow, D.,
Multiphase Flow and Fluidisation Academic Press, 1994.
,
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
249
19
Ishii, M. and Zuber, N.,
Drag Coefficient and Relative Velocity in Bubbly, Droplet or Particulate Flows
,
AIChE J., 25, 843-855, 1979.
20
Lopez de Bertodano, M.,
Turbulent Bubbly Flow in a Triangular Duct
,
Ph. D. Thesis, Rensselaer Polytechnic Institute, Troy New York, 1991.
22
Sato, Y. and Sekoguchi, K.,
Liquid Velocity Distribution in Two-Phase Bubbly Flow
,
Int. J. Multiphase Flow, 2, p.79, 1975.
23
Siegel, R and J.R. Howell,
Thermal Radiation Heat Transfer
,
ISBN 0-89116-506-1.
24
Goldstein, M. and J.R. Howell,
Boundary Conditions for the Diffusion Solution of Coupled Conduction-Radiation Problems
,
NASA Technical Note, NASA TN D-4618.
25
Raw, M.J.,
Robustness of Coupled Algebraic Multigrid for the Navier-Stokes Equations
,
250
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
26
Kee, R. J., Rupley, F. M. and Miller, J. A.,
Chemkin -II: A Fortran Chemical Kinetics Package for the Analysis of Gas-Phase Chemical
Kinetics",
Sandia National Laboratories Report, SAND89-8009,(1991).
27
Brackbill, J.U, Kothe, D.B. and Zemach, C.,
A Continuum Method for Modelling Surface Tension
,
Journal of Computational Physics 100:335-354, 1992.
28
Barth, T.J., and Jesperson, D.C,
The Design and Application of Upwind Schemes on Unstructured Meshes
,
AIAA Paper 89-0366, 1989.
29
Bird, R.B., Stewart, W.E. and Lightfoot, E.N.,
Transport Phenomena
,
John Wiley & Sons, Inc., 1960.
30
Wilcox, D.C.,
Turbulence Modelling for CFD
,
DCW Industries, 2000, La Canada, CA 91011, p. 314.
31
Launder, B.E., Tselepidakis, D. P., Younis, B. A.,
A second-moment closure study of rotating channel flow
,
J. Fluid Mech., Vol. 183, pp. 63-75, 1987.
32
Menter, F. R.,
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
251
,
Model
,
Model
33
Menter, F. R.,
34
Smagorinsky, J.,
General Circulation Experiments with the Primitive Equations
,
Month. Weath. Rev. Vol. 93, pp. 99-165, 1963.
35
Clift, R., Grace, J.R., Weber, M.E.,
Bubbles, Drops and Particles
,
Academic Press, New York, U.S.A., 1978.
36
Liang, L., Michaelides, E. E.,
The magnitude of Basset forces in unsteady multiphase flow computations
,
Journal of Fluids Engineering, Vol. 114, pp. 417-419, 1992.
37
Peters, N.,
Turbulent Combustion
,
Cambridge monographs on mechanics, Cambridge University Press, 2000.
38
Zimont, V.L., Polifke, W., Bettelini, M. and Weisenstein, W.,
An efficient Computational Model for Premixed Turbulent Combustion at High Reynolds
Numbers Based on a Turbulent Flame Speed Closure,
J. Engineering for Gas Turbines and Power (Transactions of the ASME), Vol. 120, pp. 526-532,
1998.
39
252
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
40
Zimont, V.L.,
Gas Premixed Combustion at High Turbulence. Turbulent Flame Closure Combustion Model
,
Proceedings of the Mediterranean Combustion Symposium, Instituto di Richerche sulla
Combustione - CNR, Italy, pp. 1155-1165, 1999.
42
Linan, A.,
On the internal structure of laminar diffusion flames
,
Technical note, Inst. nac. de tec. aeron., Esteban Terradas, Madrid, Spain, 1961.
43
Warnatz, J., Mass, U. and Dibble, R. W.,
Combustion
,
Springer, Verlag, 1996, pp.219-221.
44
Magnussen, B. F.,
The Eddy Dissipation Concept for Turbulent Combustion Modelling. Its Physical and Practical
Implications
,
Presented at the First Topic Oriented Technical Meeting, International Flame Research
Foundation, IJmuiden, The Netherlands, Oct. 1989.
45
Tesner, P. A., Snegirova, T. D., and Knorre, V. G.,
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
253
46
Magnussen, B. F., and Hjertager, B. H.,
On Mathematical Modeling of Turbulent Combustion with Special Emphasis on Soot Formation and Combustion
,
Sixteenth Symp. (Int.) on Combustion, The Combustion Institute, p 719, 1976.
47
Vukalovich, M. P.,
Thermodynamic Properties of Water and Steam
,
Mashgis, Moscow, 6th ed., 1958.
48
Hottel, H.C. and Sarofim, A.F.,
Radiative transfer
,
McGraw-Hill, New York 1967.
49
Hadvig, S.,
Gas emissivity and absorptivity
,
J. Inst. Fuel, 43, pp. 129-135., 1970.
50
Leckner, B.,
Spectral and total emissivity of water vapour and carbon dioxide
,
Comb. Flame, 19, pp. 33-48., 1972.
51
Taylor, P.B. and Foster, P.J.,
The total emissivities of luminous and non-luminous flames
,
Int. J. Heat Mass Transfer, 17, pp. 1591-1605., 1974.
52
Beer, J.M., Foster, P.J. and Siddall, R.G.,
254
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
53
Prakash, C.,
Two phase model for binary liquid-solid phase change
,
Parts I and II, Numerical Heat Transfer, B 15, p. 171.
54
CFX Limited, Waterloo, Ontario, Canada,
CFX-TASCflow Theory Documentation,
Section 4.1.2, Version 2.12, 2002.
55
Menter, F. R. and Kuntz, M.,
Development and Application of a Zonal DES Turbulence Model for CFX-5
,
CFX-Validation Report, CFX-VAL17/0503.
56
Menter, F.R., Kuntz, M.,
Adaptation of Eddy-Viscosity Turbulence Models to Unsteady Separated Flow Behind Vehicles
,
Proc. Conf. The Aerodynamics of Heavy Vehicles: Trucks, Busses and Trains, Asilomar, Ca,
2002.
57
Spalart, P.R, Jou, W.-H., Strelets, M. and Allmaras, S.R.,
Comments on the feasibility of LES for wings, and on a hybrid RANS/LES approach
,
1st AFOSR Int. Conf. On DNS/LES, Aug.4-8, 1997, Ruston, LA. In Advances in DNS/LES, C. Liu
& Z. Liu Eds., Greyden Press, Colombus, OH.
58
Strelets, M.,
Detached Eddy Simulation of Massively Separated Flows
,
AIAA Paper 2001-0879, 39th Aerospace Sciences Meeting and Exhibit, Reno, NV, 2001.
59
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
255
60
Manninen, M. and Tavassalo, V.,
On the Mixture Models for Multiphase Flow
,
VTT Publications, 1996.
62
Prince, M. and Blanch, H.,
Bubble Coalescence and Break-Up in Air-Sparged Bubble Columns
,
AIChE Journal 36, 1485-1499.
63
Hutchings, I.M.,
Mechanical and metallurgical aspects of the erosion of metals
,
Proc. Conf. on Corrosion-Erosion of Coal Conversion System Materials, NACE (1979) 393.
64
Dosanjh, S., and Humphrey, J.A.C.,
The influence of turbulence C on erosion by a particle laden fluid jet, Wear
,
V.102, 1985, pp. 309-330.
65
Aungier, R.H.,
Centrifugal Compressors: A strategy for Aerodynamic Design and Analysis
,
256
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
66
Westbrook, C.K., Dryer, F.L.,
Simplified Reaction Mechanisms for the Oxidation of Hydrocarbon Fuels in Flames
,
Combustion Science and Technology Vol. 27, pp. 31-43, 1981.
67
Faeth, G. M.,
Mixing, transport and combustion in sprays
,
Process Energy Combustion Science, Vol. 13, pp. 293-345, 1987.
68
Mijnbeek, G.,
Bubble column, airlift reactors and other reactor designs Operational Modes of Bioreactors,
,
Chapter 4,
Butterworth and Heinemann, 1992.
69
Bello, R. A., Robinson, C. W., and Moo-Young, M.,
Canadian Journal of Chemical Engineering, Vol. 62, pp. 573. Chemical Institute of Canada and
Canadian Society for Chemical Engineering, 1984.
70
Garca-Calvo, E. and Letn, P.,
Prediction of gas hold-up and liquid velocity in airlift reactors using two-phase flow friction
coefficients
,
Journal of Chemical Technology & Biotechnology, Vol. 67, pp. 388-396,
Wiley Interscience, 1996.
71
Maneri, C. C. and Mendelson, H. D.,
American Institute of Chemical Engineers Journal, Vol. 14, p. 295. American Institute of
Chemical Engineers, 1968.
72
Baker, J. L. L. and Chao, B. T.,
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
257
73
Hughmark, G. A.,
Industrial Engineering and Chemical Process Design and Development, Vol. 6, p. 218. 1967.
74
S. Lo, R. Bagatin and M. Masi.,
The Development of a CFD Analysis and Design Tool for Air-lift Reactors
,
Proceedings of the SAIChE 2000 Conference, Secunda, South Africa, 2000.
75
Ranz, W.E. and Marshall, W.R.,
Chem. Eng. Prog. 48(3), p. 141, 1952.
76
Bardina, J.E., Huang, P.G. and Coakley, T.J.,
Turbulence Modeling Validation Testing and Development
,
NASA Technical Memorandum 110446, 1997. (See also Bardina, J.E., Huang, P.G. and Coakley,
T.J., Turbulence Modeling Validation AIAA Paper 97-2121.)
,
77
H. Schlichting.,
Boundary Layer Theory
,
McGraw-Hill, 1979.
78
Badzioch, S., and Hawksley, P.G.W.,
Kinetics of thermal decomposition of pulverised coal particles, Industrial Engineering
Chemistry Process Design and Development, 9 p. 521 1997.
,
79
S.J. Ubhayakar, D.B. Stickler, C.W. Von Rosenburg, and R.E. Gannon;
Rapid devolatilization of pulverised coal in hot combustion gases
,
16th Symposium (International) on Combustion, The Combustion Institute, p. 426, 1976.
258
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
80
Wall, T.F., Phelan, W.J., and Bartz, S.,
The prediction of scaling of burnout in swirled pulverised coal flames
,
InternationalFlame Research Foundation Report F388/a/3 IJmuiden, TheNetherlands, 1976.
82
Hirschfelder, J.O., Taylor, and M.H., Bird, R.B.,
Molecular Theory of Gases and Liquids
,
Wiley, New York, 1954.
83
Chung, T.H., Lee, L.L., and Starling, K.E.,
Applications of Kinetic Gas Theories and Multiparameter Correlation for Prediction of Dilute
Gas Viscosity and Thermal Conductivity
,
Ind. Eng. Chem. Fundam.
23:8, 1984.
84
Poling, B.E., Prausnitz, J.M., and OConnell, J.P.,
The Properties of Gases and Liquids
,
McGraw-Hill, New York, 2001.
85
Redlich, O., and Kwong, J.N.S.,
"On the Thermodynamics of Solutions. V. An Equation of State. Fugacities of Gaseous Solutions.",
Chem Rev 44:233, 1949.
86
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
259
87
Mei, R. and Klausner, J. F.,
Shear lift force on spherical bubbles
,
Int. J. Heat and Fluid Flow, 15, p. 62, 1994.
88
Antal, S. P., Lahey, R. T., and Flaherty, J. E.,
Analysis of phase distribution in fully developed laminar bubbly two-phase flow
,
Int. J. Multiphase Flow, 7, pp. 635-652, 1991.
89
Krepper, E., and Prasser, H-M.,
Measurements and CFX Simulations of a bubbly flow in a vertical pipe
,
in AMIFESF Workshop, Computing Methods in Two-Phase Flow, 2000.
90
Burns, A.D.B., Frank, Th., Hamill, I., and Shi, J-M.,
The Favre Averaged Drag Model for Turbulent Dispersion in Eulerian Multi-Phase Flows
,
5th International Conference on Multiphase Flow, ICMF-2004, Yokohama, Japan.
91
Moraga, J.F., Larreteguy, A.E., Drew, D.A., and Lahey, R.T.,
Assessment of turbulent dispersion models for bubbly flows in the low Stokes number limit
,
Int. J. Multiphase Flow, 29, p. 655, 2003.
92
CIBSE Guide A: Environmental Design
CIBSE, U.K., 1999.
93
ISO 7730-1984(E), Moderate thermal environments - Determination of the PMV and PPD indices
and specification of the conditions for thermal comfort
260
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
94
Yamada, T. and R.D. Gunn,
J. Chem Eng. Data, 18, p. 234, 1973.
95
Pitzer, K.S., D.Z. Lippmann, R.F. Curl, C.M. Huggins, and D.E. Petersen,
J. Am. Chem. Soc., 77: 3433 (1955).
96
Aungier, R.H.,
A Fast, Accurate Real Gas Equation of State for Fluid Dynamic Analysis Applications
,
Journal of Fluids Engineering, Vol. 117, pp. 277-281, 1995.
97
H. Enwald, E. Peirano and A. E. Almstedt,
Eulerian Two-Phase Flow Theory Applied to Fluidisation
,
Int. J. Multiphase Flow, 22 Suppl., pp. 21-66,1996.
98
J. Ding and D. Gidaspow,
A Bubbling Fluidisation Model using Theory of Granular Flow
,
AIChEJ. 36, pp. 523-538, 1990.
99
C.K.K. Lun, S.B. Savage, D.J. Jeffery, and N. Chepurniy,
Kinetic Theories for Granular Flow: Inelastic Particles in Couette Flow and Slightly Inelastic
Particles in a General Flow Field
,
J. Fluid Mech., 140, pp. 223-256, 1984.
100
C.K.K. Lun, and S.B. Savage,
The Effects of an Impact Velocity Dependent Coefficient of Restitution on Stresses Developed
by Sheared Granular Materials
,
Acta Mechanica., 63, pp. 15-44, 1986.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
261
102
Langtry, R.B., Menter, F.R., Likki, S.R., Suzen, Y.B., Huang, P.G., and Vlker, S.,
A Correlation based Transition Model using Local Variables Part 2 - Test Cases and Industrial
Applications
,
ASME-GT2004-53454, ASME TURBO EXPO 2004, Vienna, Austria.
103
Langtry, R.B., Menter, F.R.,
Transition Modeling for General CFD Applications in Aeronautics
,
AIAA paper 2005-522, 2005.
104
Mayle, R.E.,
The Role of Laminar-Turbulent Transition in Gas Turbine Engines
,
ASME Journal of Turbomachinery, Vol. 113, pp. 509-537, 1991.
105
R. Schmehl,
Advanced Modelling of Droplet Deformation and Breakup for CFD Analysis of Mixture Preparation
,
ILASS-Europe 2002, 2002.
106
Miller A. and Gidaspow D,
AIChE Journal, Vol. 38, No. 11, p. 1811, 1992.
107
F.X. Tanner,
Liquid Jet Atomization and Droplet Breakup Modeling of Non-Evaporating Diesel Fuel Sprays
,
262
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
108
B. Liu, D. Mather and R.D. Reitz,
Effects of Drop Drag and Breakup on Fuel Sprays
,
SAE Technical Paper 930072, 1993.
109
L.P. Hsiang and G.M. Faeth,
Near-Limit Drop Deformation and Secondary Breakup
,
International Journal of Multiphase Flow, Vol. 18, No. 5, pp. 635-652, 1992.
110
S. C. Kuensberg, S.-C., Kong and R. D. Reitz,
Modelling the Effects of Injector Nozzle Geometry on Diesel Sprays
,
SAE Paper 1999-01-0912, 1999.
111
H. Hiroyasu and T. Kadota,
Fuel droplet size distribution in diesel combustion chamber
,
SAE Technical Paper, 740715, 1974.
112
R. Schmehl, G. Maier and S. Wittig,
CFD Analysis of Fuel Atomization, Secondary Droplet Breakup and Spray Dispersion in the
Premix Duct of a LPP Combustor
,
Proc. of 8th Int. Conf. on Liquid Atomization and Spray Systems, Pasadena, CA, USA, 2000.
113
Schlichting, H., and Gersten, K.,
Grenzschicht-Theorie
.
9. Auflage, Springer-Verlag Berlin, Heidelberg, New York, 1997
114
W.H. Nurick,
Orifice Cavitation and Its Effect on Spray Mixing
,
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
263
115
R.D. Reitz and R. Diwakar,
Structure of High-Pressure Fuel Sprays
,
SAE Technical Paper, 870598, 1987.
116
P.J.O'Rourke and A.A. Amsden,
The TAB Method for Numerical Calculation of Spray Droplet Breakup
,
SAE Technical Paper 872089, 1987.
117
M. Pilch and C.A. Erdman,
Use of Breakup Time Data and Velocity History Data to Predict the Maximum Size of Stable
Fragments for Acceleration-Induced Breakup of a Liquid Drop
,
Int. J. Multiphase Flow, Vol. 13, No. 6, pp. 741-757, 1987.
118
S.V. Patankar,
Numerical Heat Transfer and Fluid Flow
,
Hemisphere Publishing Corp., 1980.
119
S. Majumdar,
Role of Underrelaxation in Momentum Interpolation for Calculation of Flow with Nonstaggered
Grids
,
Numerical Heat Transfer 13:125-132.
120
C. Baumgarten, H. Lettmann and G.P. Merker,
Modelling of Primary and Secondary Break-Up Processes in High Pressure Diesel Sprays
,
Paper No. 7, CIMAC Congress, Kyoto 2004.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
122
B. Lewis and G. v. Elbe,
Combustion, Flames and Explosions of Gases
,
3rd Edition, Academic Press, London, 1987.
123
B. E. Milton and J.C. Keck,
Laminar burning velocities in stoichiometric hydrogen and hydrogen-hydrocarbon gas mixtures
,
Combust. Flame, Vol. 58, pp. 13-22, 1984.
124
M. Metghalchi and J.C. Keck,
Burning Velocities of Mixtures of Air with Methanol, iso-octane and indolene at High Pressure
and Temperature
,
Combust. Flame, Vol. 48, pp. 191-210, 1982.
125
W. Wagner, and A. Kruse,
The Industrial Standard IAPWS-IF97: Properties of Water and Steam
,
Springer, Berlin, 1998.
126
Senecal, P.K., Schmidt, D.P., Nouar, I., Rutland, C.J., Reitz, R.D. and Corradin, M.L.,
"Modeling High-Speed Viscous Liquid Sheet Atomization",
International Journal of Multiphase Flow, 25, pp. 1073-1097, 1999.
127
Han, Z., Perrish, S., Farrell, P.V. and Reitz R.D.,
"Modeling Atomization Processes of Pressure-Swirl Hollow-Cone Fuel Sprays",
Atomization and Sprays, Vol. 7, pp. 663-684, Nov.-Dec. 1997.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
265
128
Kato, M., Launder, B.E.,
"The modelling of turbulent flow around stationary and vibrating square cylinders",
Ninth Symposium on "Turbulent Shear Flows", Kyoto, Japan, August 16-18, 1993.
129
Menter, F. R.,
130
Menter F. R. and Egorov, Y.,
"Re-visiting the turbulent scale equation",
Proc. IUTAM Symposium; One hundred years of boundary layer research, Gttingen, 2004.
131
Menter, F.R. and Egorov, Y.,
"A Scale-Adaptive Simulation Model using Two-Equation Models",
AIAA paper 2005-1095, Reno/NV, 2005.
132
Menter, F. R, Kuntz, M., Bender R.,
"A scale-adaptive simulation model for turbulent flow predictions",
AIAA Paper 2003-0767, 2003.
133
Menter. F. R., Kuntz, M. and Durand. L.,
"Adaptation of eddy viscosity turbulence models to unsteady separated flow behind vehicles",
The Aerodynamics Of Heavy Vehicles: Trucks, Buses And Trains, Monterey, Dec.2-6, 2002.
134
Rotta, J. C.,
"Turbulente Strmungen",
Teubner Verlag, Stuttgart, 1972.
266
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
135
Spalart P. R.,
"Young-Person's Guide to Detached-Eddy Simulation Grids",
NASA/CR-2001-211032, 2001.
136
Wilcox, D. C.,
"Turbulence Modelling for CFD",
DWC Industries, La Caada, 1993.
137
Squires, K.,
"Detached eddy simulation: Current status and future perspectives",
Proc. DLES-5 Conference, Mnchen, 2004.
138
Jovic, S., Driver, D. M.,
"Backward-facing step measurement at low Reynolds number, Reh=5000",
NASA TM 108807, 1994.
139
Roache, P. J.,
Verification and Validation in Computational Science and Engineering
,
Hermosa publishers, Albuquerque, New Mexico, 1998.
140
Casey, M. and Wintergerste W.,
Best Practice Guidelines
,
ERCOFTAC Special Interest Group on Quality and Trust in Industrial CFD, Report, 2000.
267
142
Menter, F. R. and Esch T.,
Elements of Industrial Heat Transfer Predictions
,
16th Brazilian Congress of Mechanical Engineering (COBEM), Nov. 2001, Uberlandia, Brazil.
143
Menter, F.,
CFD Best Practice Guidelines for CFD Code Validation for Reactor Safety Applications
,
Evaluation of Computational Fluid Dynamic Methods for Reactor Safety Analysis (ECORA),
European Commission, 5th EURATOM FRAMEWORK PROGRAMME, 1998-2002.
144
Menter F. R. and Egorov, Y.,
Turbulence Models based on the Length-Scale Equation
,
Fourth International Symposium on Turbulent Shear Flow Phenomena, Williamsburg, 2005 Paper TSFP4-268, 2005.
145
Menter F. R. and Egorov, Y.,
SAS Turbulence Modelling of Technical Flows
,
DLES 6 - 6th ERCOFTAC Workshop on Direct and Large Eddy Simulation September, Poitiers,
2005.
146
Spalart P. R.,
Strategies for turbulence modelling and simulations
,
Int. J. Heat Fluid Flow, 21, pp. 252-263, 2000.
147
A. D. Gosman and E. Ioannides,
Aspects of computer simulation of liquid fuelled combustors
,
AIAA Paper, No. 81-0323,1981.
148
268
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
149
Frank, Th.,
Parallele Algorithmen fr die numerische Simulation dreidimensionaler, disperser Mehrphasenstrmungen und deren Anwendung in der Verfahrenstechnik
,
Habilitationsschrift, Shaker Verlag Aachen, pp. 1-329, 2002.
150
Hussmann, B. et al.,
A stochastic particle-particle collision model for dense gas-particle flows implemented in
the Lagrangian solver of ANSYS CFX and its validation
,
6th International Conference on Multiphase Flows, ICMF 2007, Leipzig, Germany, 2007.
151
Oesterl, B., Petitjean, A.,
Simulations of particle-to-particle interactions in gas-solid flows
,
Int. J. Multiphase Flow, Vol. 19(1), pp. 199-211, 1993.
152
Sommerfeld, M.,
Modellierung und numerische Berechnung von partikelbeladenen Strmungen mit Hilfe des
Euler-Lagrange-Verfahrens
,
Habilitationsschrift, Shaker Verlag Aachen, 1996.
153
Lavieville, J., Deutsch, E. and Simonin, O.,
Large eddy simulations of interactions between colliding particles and a homogeneous isotropic turbulence field
,
ASME FED Vol. 228, pp. 359-369, 1995.
154
Sommerfeld, M.,
Validation of a stochastic Lagrangian modeling approach for inter-particle collision in homogeneous isotropic turbulence
,
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
269
155
Huh, K.Y., Lee, E.,
Diesel Spray Atomization Models Considering Nozzle Exit Turbulence Conditions
,
Atomization and Sprays, Vol. 8, pp. 453-469, 1998.
156
Chryssakis, C.A., Assanis, D.N.,
A Secondary atomization Model for Liquid Droplet Deformations and Breakup under High
Weber Number Conditions
,
ILASS Americas, 18th Annual Conference on Liquid Atomization and Spray Systems, Irvine,
CA, 2005.
157
Peng, D.Y. and Robinson, D.B.,
A New Two-Constant Equation of State
,
Ind. Eng. Chem. Fundam., Vol. 15, No. 1, pp. 59 64, 1976.
158
Chung, T.H., M. Ajlan, L.L. Lee and K.E. Starling,
Generalized Multiparameter Correlation for Nonpolar and Polar Fluid Transport Properties
,
Ind. Eng. Chem. Res., Vol. 27, pp. 671 679, 1988.
159
Kurul, N. and Podowski, M. Z.,
On the modeling of multidimensional effects in boiling channels
,
ANS Proc. 27th National Heat Transfer Conference, Minneapolis, MN, July 28-31, 1991.
160
Kocamustafaogullari, G. and Ishii, M.,
Interfacial area and nucleation site density in boiling systems
,
Int. J. Heat Mass Transfer, 26 p. 1377, 1983.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
162
Podowski, R. M., Drew, D.A., Lahey, R. T. and Podowski, M. Z.,
A mechanistic model of the ebullition cycle in forced-convection sub-cooled boiling
,
NURETH-8, Kyoto, Japan, 1997b.
163
Egorov, Y. and Menter, F.,
Experimental implementation of the RPI boiling model in CFX-5.6
,
Technical Report ANSYS / TR-04-10., 2004.
164
Lemmert, M. and Chawla, J. M.,
Influence of flow velocity on surface boiling heat transfer coefficient
,
Heat Transfer and Boiling (Eds. E. Hahne and U. Grigull), Academic Press, 1977.
165
Tolubinski, V. I. and Kostanchuk, D. M.,
Vapour bubbles growth rate and heat transfer intensity at subcooled water boiling
,
4th. International Heat Transfer Conference, Paris, France, 1970.
166
Cole, R.,
A photographic study of pool boiling in the region of CHF
,
AIChEJ, 6 pp. 533-542, 1960.
167
Mikic, B. B. and Rohsenow, W. M.,
A new correlation of pool boiling data including the fact of heating surface characteristics
,
ASME J. Heat Transfer, 91 pp. 245-250, 1969.
168
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
271
169
Ceumern-Lindenstjerna, W. C.,
Bubble Departure and Release Frequencies During Nucleate Pool Boiling of Water and
Aqueous NaCl Solutions
,
Heat Transfer in Boiling, Academic Press and Hemisphere, 1977.
170
Saffman, P. G.,
Corrigendum to: The lift on a small sphere in a slow shear flow
,
J. Fluid Mech., 31, p. 624, 1968
171
Legendre, D. and Magnaudet, J.,
The lift force on a spherical bubble in a viscous linear shear flow
,
J. Fluid Mech., 368, pp. 81126, 1998.
172
Tomiyama, A.,
Struggle with computational bubble dynamics
,
ICMF'98, 3rd Int. Conf. Multiphase Flow, Lyon, France, pp. 1-18, June 8-12, 1998.
173
Frank, Th., Shi, J. M. and Burns, A. D.,
Validation of Eulerian Multiphase Flow Models for Nuclear Safety Applications
,
3rd International Symposium on Two-Phase Flow Modelling and Experimentation, Pisa, Italy,
22-24, Sept. 2004.
174
Wellek, R. M., Agrawal, A. K. and Skelland, A. H. P.,
Shapes of liquid drops moving in liquid media
,
AIChE J, 12, pp. 854-862, 1966.
272
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
175
G. Elssser,
Experimentelle Untersuchung und numerische Modellierung der freien Kraftstoffstrahlausbreitung und Wandinteraktion unter motorischen Randbedingungen
,
Dissertation, Logos Verlag, Berlin, 2001
176
C. Bai and A.D. Gosman,
Prediction of spray wall impingement in reciprocating engines
,
ILASS-Europe, July 1999
177
Frank, Th., Zwart, P. J., Krepper, E., Prasser, H. -M. and Lucas,
Validation of CFD models for mono- and polydisperse air-water two-phase flows in pipes
J. Nuclear Engineering & Design, Vol. 238, pp. 647659, March 2008.
178
Lighthill, M. J.,
On sound generated aerodynamically. I. General theory
Proc. R. Soc. Series A, Vol. 211, p. 564, 1952.
179
Lighthill, M. J.,
On sound generated aerodynamically. II. Turbulence as a source of sound
Proc. R. Soc. Series A, Vol. 222, 1954.
180
Ffowcs-Williams, J. E. and Hawkings, D. L.,
Theory relating to the noise of rotating machinery
J. Sound Vib., Vol. 10, pp. 10-21, 1969.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
273
182
Choi, C. R. and Huh, K. Y.,
"Development and validation of a coherent flamelet model for a spark-ignited turbulent
premixed flame in a closed vessel,"
Combustion & Flame Vol. 114, No. 3-4, 336-348, 1998.
183
A. M. Douaud, P.Eyzat,
Four-Octane-Number Method for Predicting the Anti-Knock Behavior of Fuels and Engines
,
SAE Technical Paper 780080, SAE, 1978.
184
M. P. Halstead, L. J. Kirsch, C. P. Quinn,
The Autoignition of Hydrocarbon Fuels at High Temperatures and Pressures Fitting of a
Mathematical Model
,
Combustion and Flame, Vol. 30, pp. 45-60, 1977.
185
H. O. Hardenberg, F.W. Hase,
An Empirical Formula for Computing the Pressure Rise Delay of a Fuel from Its Cetane
Number and from the Relevant Parameters of Direct-Injection Diesel Engines
,
SAE Technical Paper 790493, SAE, 1979.
186
Meneveau, C., and Poinsot, T.,
Stretching and quenching of flamelets in premixed turbulent combustion
,
Combustion and Flame, 86:311-332, 1991.
187
T. Poinsot, D. Veynante,
Theoretical and Numerical Combustion
,
Edwards, 2001.
188
274
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
189
Wallin, S., and Johansson A.,
Modelling streamline curvature effects in explicit algebraic Reynolds stress turbulence
models
,
International journal of Heat and Fluid Flow, 23(5), pp. 721-730, 2002.
190
Hellsten, A.,
New advanced
191
Spalart, P.R., and Shur, M.
On the sensitization of turbulence models to rotation and curvature
,
Aerospace Sci. Tech., 1(5), pp. 297-302, 1997.
192
Smirnov, P.E., and Menter, F.R.
Sensitization of the SST turbulence model to rotation and curvature by applying the SpalartShur correction term
,
ASME Paper GT 2008-50480, Berlin, Germany, 2008.
193
Coleman, H.W., Hodge, B.K., Taylor, R.P.,
A Re-Evaluation of Schlichtings Surface Roughness Experiment
,
Journal of Fluids Engineering, Vol. 106, 1984.
194
Lechner, R., and Menter, F.,
,
Development of a rough wall boundary condition for -based turbulence models
Technical Report ANSYS / TR-04-04, 2004.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
275
195
Pimenta, M.M., Moffat, R.J. and Kays, W.M.,
The Turbulent Boundary Layer: An Experimental Study of the Transport of Momentum and
Heat with the Effect of Roughness
,
Interim Report Stanford University, CA, 1975.
196
Launder, B.E.,
Second-moment closure: present and future
.
Int. J. Heat and Fluid Flow, Vol. 10, No. 4, pp. 282-300, 1989.
197
Egorov, Y., and Menter, F.,
Development and Application of SST-SAS Turbulence Model in the DESIDER Project
,
Second Symposium on Hybrid RANS-LES Methods, Corfu, Greece, 2007.
198
Germano, M., Piomelli, U., Moin, P., Cabot, W.H.,
A Dynamic Subgrid-Scale Eddy Viscosity Model
,
Phys. Fluids A 3 (7), pp. 1760-1765, 1991.
199
Lilly, D.K.,
A Proposed Modification of the Germano Subgrid-Scale Closure Method
,
Phys. Fluids A 4 (3), pp. 633-635, 1992.
200
Nicoud, F., Ducros, F.,
Subgrid-Scale Stress Modelling Based on the Square of the Velocity Gradient Tensor
,
Flow, Turbulence and Combustion, 62, pp. 183-200, 1999.
276
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
202
Sazhin, Sergei S.,
Advanced Models of Fuel Droplet Heating and Evaporation
Progress in Energy and Combustion Science, 32, pp. 162214, 2006.
203
Hughes, T.J.R.,
The Finite Element Method
Prentice-Hall, Englewood Cliffs, N.J., 1987.
204
Simo, J.C. and Wong, K.K.,
Unconditionally Stable Algorithms for Rigid Body Dynamics that exactly Preserves Energy
and Momentum
Int. J. Num. Methods in Eng., 31, pp. 19-52, 1991.
205
Hughes, Peter C.,
Spacecraft Attitude Dynamic
Dover, 2004.
206
Etkin, Bernard.,
The Dynamics of Atmospheric Flight
John Wiley & Sons, 1972.
207
Conaire, Marcus , Curran, Henry J., Simmie, John M., Pitz, William J., Westbrook, Charles K.,
A Comprehensive Modeling Study of Hydrogen Oxidation
,
International Journal of Chemical Kinetics,
Volume 36, Issue 11, pp. 603-622, 2004.
208
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
277
209
Matsumoto, S., Saito, S., Maeda, S.
"Simulation of Gas-Solid Two-Phase Flow in Horizontal Pipe"
Journal of Chemical Engineering of Japan
Vol. 9, No. 1, pp. 2328, 1976
210
Tsuji, Y., Oshima, T., Morikawa, Y.
"Numerical Simulation of Pneumatic Conveying in a Horizontal Pipe"
KONA Powder Science and Technology in Japan
No. 3, pp. 3851, 1985
211
Frank, Th.
"Parallele Algorithmen fr die numerische Simulation dreidimensionaler, disperser Mehrphasenstrmungen und deren Anwendung in der Verfahrenstechnik"
Doctorial Dissertation, Shaker Verlag, 2002
212
Sommerfeld, M.
"Numerical Simulation of the Particle Dispersion in Turbulent Flow: the Importance of Particle
Lift Forces and Particle/Wall Collision Models"
ASME Symposium on Numerical Methods for Multiphase Flows, Toronto, Canada
pp. 18, 1990
213
B. P. Leonard,
The ULTIMATE conservative difference scheme applied to unsteady one-dimensional advection,
Comp. Methods Appl. Mech. Eng.,
278
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
214
Jasak, H.; Weller, H.G., Gosman, A.D.
High resolution NVD differencing scheme for arbitrarily unstructured meshes,
Int. J. Numer. Meth. Fluids, 1999,
pp. 413 449.
215
Erdos, J.A.
Numerical Solution of Periodic Transonic Flow through a Fan Stage
AIAA Journal, 1977.
pp. 1559-1568.
216
Gerolymos G.A.
Analysis and Application of Chorochronic Periodicity in Turbomachinery Rotor/Stator Interaction Computations
Journal of Propulsion and Power, 2002.
pp. 1139-1152.
217
Giles, M.
Calculation of Unsteady Wake/Rotor Interaction
J. Propulsion, 1988.
pp. 356-362.
218
He, L.
An Euler Solution for Unsteady Flows Around Oscillating Blades
Transactions of the ASME, 1990.
pp. 714-722.
219
Apsley, D.D. and Leschziner, M.A.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
279
280
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Glossary
Symbols
<CFDPOSTROOT>
<CFXROOT>
A
absolute pressure
absorption coefficient
A property of a medium that measures the amount of thermal radiation absorbed per unit length within the medium.
adaption criteria
The criteria that are used to determine where mesh adaption takes place.
adaption level
The degree that a mesh element has been refined during adaption. Each mesh
element has an adaption level. Each time an element is split into smaller elements, the new elements have an adaption level that is one greater than the
"parent" element. The maximum number of adaption levels is controlled to
prevent over-refinement.
adaption step
Additional Variable
adiabatic
The description of any system in which heat is prevented from crossing the
boundary of the system. You can set adiabatic boundary conditions for heat
transfer simulations in ANSYS CFX or in ANSYS FLUENT.
The default meshing mode in CFX. The AFI mesher consists of a triangular
surface/tetrahedral volume mesh generator that uses the advancing front
method to discretize first the surface and then the volume into an unstructured
(irregular) mesh. Inflation can be applied to selected surfaces to produce
prismatic elements from the triangular surface mesh, which combine with
the tetrahedra to form a hybrid mesh.
all domains
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
281
Glossary
Generally speaking, only the wireframe needs to keep track of both "all domains" and the immersed solid.
ASM (Algebraic Slip Model)
aspect ratio
B
backup file
batch mode
blend factor
A setting that controls the degree of first/second order blending for the advection terms in discrete finite volume equations.
body
boundary
A surface or edge that limits the extent of a space. A boundary can be internal
(the surface of a submerged porous material) or external (the surface of an
airfoil).
boundary condition
Physical conditions at the edges of a region of interest that you must specify
in order to completely describe a simulation.
buoyant flow
Flow that is driven wholly or partially by differences in fluid density. For fluids
where density is not a function of temperature, pressure, or Additional Variables, the Boussinesq approximation is employed. If density is a function of
one of these, then the Full Buoyancy model is employed.
C
CEL (CFX Expression Language)
282
A high level language used within CFX to develop expressions for use in your
simulations. CEL can be used to apply user-defined fluid property dependen-
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Glossary
cies, boundary conditions, and initial values. Expressions can be developed
within CFX using the Expression Editor.
CFD (Computational Fluid
Dynamics)
The science of predicting fluid flow, heat transfer, mass transfer (as in perspiration or dissolution), phase change (as in freezing or boiling), chemical reaction
(as in combustion), mechanical movement (as in fan rotation), stress or deformation of related solid structures (such as a mast bending in the wind),
and related phenomena by solving the mathematical equations that govern
these processes using a numerical algorithm on a computer.
A file that contains the specification for the whole simulation, including the
geometry, surface mesh, boundary conditions, fluid properties, solver parameters and any initial values. It is created by CFX and used as input to CFXSolver.
clipping plane
command actions
Commands entered into the Tools > Command Editor dialog box
All such actions must be preceded with the > symbol. These commands force
CFD-Post to undertake specific tasks, usually related to the input and output
of data from the system. See also Power Syntax (p. 291).
component
compressible flow
computational mesh
A collection of points representing the flow field where the equations of fluid
motion (and temperature, if relevant) are calculated.
control volume
The volume surrounding each node, defined by segments of the faces of the
elements associated with each node. The equations of fluid flow are solved
over each control volume.
convergence
A state of a solution that occurs when the change in residual values from one
iteration to the next are below defined limits.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
283
Glossary
The values of some variables on the boundary nodes (that is, on the edges
of the geometry) are not precisely equal to the specified boundary conditions
when CFX-Solver finishes its calculations. For instance, the value of velocity
on a node on the wall will not be precisely zero, and the value of temperature
on an inlet may not be precisely the specified inlet temperature. For visualization purposes, it can be more helpful if the nodes at the boundary do contain
the specified boundary conditions and so "corrected boundary node values"
are used. Corrected boundary node values are obtained by taking the results
produced by CFX-Solver (called "conservative values") and overwriting the
results on the boundary nodes with the specified boundary conditions. This
will ensure the velocity is display as zero on no-slip walls and equal to the
specified inlet velocity on the inlet, for example.
coupled solver
curve
D
default boundary condition
The boundary condition that is applied to all surfaces that have no boundary
condition explicitly set. Normally, this is set to the No Slip Adiabatic Wall
boundary condition, although you can change the type of default boundary
condition in CFX.
A model that covers the boundary layer by a RANS model and switches to a
LES model in detached regions.
discretization
domain
Regions of fluid flow and/or heat transfer in CFX are called domains. Fluid
domains define a region of fluid flow, while solid domains are regions occupied
by conducting solids in which volumetric sources of energy can be specified.
The domain requires three specifications:
The physical nature of the flow. This determines the modeling of specific
features such as heat transfer or buoyancy.
284
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Glossary
There can be many domains per model, with each domain defined by separate
3D primitives. Multidomain problems may be created from a single mesh if
it contains multiple 3D primitives or is from multiple meshes.
dynamic viscosity
dynamical time
For advection dominated flows, this is an approximate timescale for the flow
to move through the Domain. Setting the physical time step (p. 291) size to
this value (or a fraction of it) can promote faster convergence.
E
eddy viscosity model
edge
The edge entity describes the topological relationships for a curve. Adjacent
faces share at least one edge.
emissivity
A property of an object that describes how much radiation it emits as compared to that of a black body at the same temperature.
expansion factor
The rate of growth of volume elements away from curved surfaces and the
rate of growth of surface elements away from curved boundaries. Expansion
factor is also used to specify the rate of mesh coarsening from a mesh control.
expression editor
external flow
F
face
FLEXlm
flow boundaries
flow region
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
285
Glossary
flow symmetry
Flow where the conditions of the flow entering and leaving one half of a
geometry are the same as the conditions of the flow entering and leaving
the other half of the geometry.
fluid
A substance that tends to flow and assumes the shape of its domain, such as
a gas in a duct or a liquid in a container.
free edges
G
gas or liquid surface
A type of boundary that exhibits no friction and fluid cannot move through
it. Also called a symmetry boundary.
general fluid
The minimum distance between two geometry entities below which CFX
considers them to be coincident. The default setting of global model tolerance,
defined in the template database, is normally .005 in whichever geometry
units you are working.
geometric symmetry
group
A named collection of geometric and mesh entities that can be posted for
display in viewports. The group's definition includes:
Group name
A list of the geometric and mesh entities that are members of the group.
H
hexahedral element
A mesh element with the same topology as a hexahedron, with six faces and
eight vertices.
home directory
The directory on all UNIX systems and some Windows NT systems where each
user stores all of their files, and where various setup files are stored.
However, on some Windows NT systems, users do not have an equivalent to
the UNIX home directory. In this case, the ANSYS CFX setup file cfx5rc can
be placed in c:\winnt\profiles\<user>\Application Data\ANSYS
CFX\<release>, where <user> is the user name on the machine. Other
files can be put into a directory set by the variable HOME.
286
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Glossary
I
ideal gas
A fluid whose properties obey the ideal gas law. The density is automatically
computed using this relationship and a specified molecular weight.
An ANSI standard formatted file used to exchange data among most commercial CAD systems. IGES files can be imported into CFX.
implicit geometry
Geometry that exists as part of some other entity. For example, the edges of
a surface are implicit curves.
import mesh
inactive region
A fluid or porous region where flow and (if relevant) temperatures are not
being calculated, or a solid region where temperatures are not being calculated. By default, inactive regions are hidden from view in the graphics window.
incompressible flow
incremental adaption
The method of mesh adaption used by CFX where an existing mesh is modified
to meet specified criteria. Incremental adaption is much faster than re-meshing;
however, the mesh quality is limited by that of the initial mesh.
initial guess
initial values
A boundary condition (p. 282) for which the quantity of fluid flowing into the
flow domain is specified, for example, by setting the fluid velocity or mass
flow rate.
instancing
interior boundary
A boundary that enables flow to enter and exit. These types of boundaries
are useful to separate two distinct fluid regions from each other, or to separate
a porous region from a fluid region, when you still want flow to occur between
the two regions.
internal flow
Flow through the interior of your geometry, such as flow through a pipe.
interpolation
The process of transferring a solution from a results file containing one mesh
onto a second file containing a different mesh.
isentropic
287
Glossary
isosurface
Isovolume
J
JPEG file
K
k-epsilon turbulence model
A turbulence model (p. 296) based on the concept that turbulence consists of
small eddies that are continuously forming and dissipating. The k-epsilon
turbulence model solves two additional transport equations: one for turbulence
generation (k), and one for turbulence dissipation (epsilon).
kinematic diffusivity
L
laminar flow
The Large Eddy Simulation model decomposes flow variables into large and
small scale parts. This model solves for large-scale fluctuating motions and
uses sub-grid scale turbulence models for the small-scale motion.
legend
A mode in which you type the commands that would otherwise be issued by
the user interface. A viewer is provided that shows the geometry and the
objects created on the command line. Line interface mode differs from entering
commands in the Command Editor dialog box in that line interface action
commands are not preceded by a > symbol. Aside from that difference, all
commands that work for the Command Editor dialog box will also work in
line interface mode, providing the correct syntax is used.
locator
A place or object upon which a plot can be drawn. Examples are planes and
points.
288
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Glossary
M
MAlt key (Meta key)
The MAlt key (or Meta key) is used to keyboard select menu items with the
use of mnemonics (the underscored letter in each menu label). By simultaneously pressing the MAlt key and a mnemonic is an alternative to using the
mouse to click a menu title. The MAlt key is different for different brands of
keyboards. Some examples of MAlt keys include the " " key for Sun Model
Type 4 keyboards, the "Compose Character" key for Tektronix keyboards, and
the Alt key on most keyboards for most Windows-based systems.
mass fraction
The ration of the mass of a fluid component to the total mass of the fluid.
Values for mass fraction range from 0 to 1.
material
meridional
mesh
A collection of points representing the flow field where the equations of fluid
motion (and temperature, if relevant) are calculated.
mesh adaption
The process by which, once or more during a run, the mesh is selectively refined at various locations, depending on criteria that you can specify. As the
solution is calculated, the mesh can automatically be refined in locations
where solution variables are changed rapidly, in order to resolve the features
of the flow in these regions.
There are two general methods for performing mesh adaption. Incremental
adaption takes an existing mesh and modifies it to meet the adaption criteria.
The alternative is re-meshing, in which the whole geometry is re-meshed at
every adaption step according to the adaption criteria. In CFX, incremental
adaption is used because this is much faster; however, this imposes the limitation that the resulting mesh quality is limited by the quality of the initial
mesh.
mesh control
meshing mode
The method you use to create your mesh of nodes and elements required for
analysis. There are two main meshing modes:
A file that contains only the results for selected variables, and no mesh. It can
be created only for transient calculations. It is useful when you are only interested in particular variables and want to minimize the size of the results for
the transient calculation.
multicomponent fluid
A fluid consisting of more than one component. The components are assumed
to be mixed at the molecular level, though the proportions of each component
may vary in space or time. The properties of a multicomponent fluid are dependent on the proportion of constituent components.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
289
Glossary
N
Navier-Stokes equations
The fundamental equations of fluid flow and heat transfer, solved by CFXSolver. They are partial differential equations.
Preferential settings for your model that define the meshing mode (p. 289), the
geometry units, and the global model tolerance (p. 286).
A parameter that is used in mesh adaption (p. 289) to determine how many
nodes are added to the mesh in each adaption step (p. 281).
non-Newtonian fluid
A fluid that does not follow a simple linear relationship between shear stress
and shear strain.
normal
O
open area
OpenGL
outlet
A boundary condition where the fluid is constrained to flow only out of the
domain.
outline plot
A plot showing the outline of the geometry. By setting the edge angle to 0,
the surface mesh can be displayed over the whole geometry.
output file
A text file produced by CFX-Solver that details the history of a run. It is important to browse the output file when a run is finished to determine
whether the run has converged, and whether a restart is necessary.
P
parallel runs
parametric equation
Any set of equations that express the coordinates of the points of a curve as
functions of one parameter, or express the coordinates of the points of a
surface as functions of two parameters, or express the coordinates of the
points of a solid as functions of three parameters.
parametric solids
290
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Glossary
parametric surfaces
Particle-Particle Collision
Model (LPTM-PPCM)
A model in ANSYS CFX that takes inter-particle collisions and their effects on
the particle and gas phase into consideration.
A boundary condition where the values on the first surface specified are
mapped to the second surface. The mapping can be done either by a translation or a rotation (if a rotating frame of reference is used).
pick list
The list processor interprets the contents of all selected data boxes. All selected
data boxes in CFX expect character strings as input. The character strings may
be supplied by the graphics system when you select an entity from a viewport,
or you can type or paste in the string directly. The character strings are called
"pick lists."
plot
Any means of viewing the results in CFD-Post. Types of plots include vectors,
streamlines, and contour plots.
point
point probes
polyline
post-processor
The component used to analyze and present the results of the simulation.
For ANSYS CFX, the post-processor is CFD-Post.
Power Syntax
The CFX Command Language (CCL) is the internal communication and command language of CFD-Post. It is a simple language that can be used to create
objects or perform actions in the post-processor. Power Syntax enables you
to embed Perl commands into CCL to achieve powerful quantitative postprocessing.
Power Syntax programming uses the Perl programming language to allow
loops, logic, and custom macros (subroutines). Lines of Power Syntax are
identified in a .ccl file by an exclamation mark (!) at the start of each line.
In between Perl lines, simple syntax lines may refer to Perl variables and lists.
For details, see Power Syntax in ANSYS CFX (p. 233).
pre-processor
The component used to create the input for the solver. For ANSYS CFX, the
pre-processor is CFX-Pre.
pressure
In the cavitation model, pressure is the same as solver pressure, but clipped
such that the absolute pressure is non-negative. It is used for post-processing
only.
A 3D mesh element shaped like a triangular prism (with six vertices). Sometimes known as a wedge element.
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
291
Glossary
PVM (Parallel Virtual Machine)
PVMHosts file
The database file containing information about where ANSYS CFX, and consequently PVM, have been installed on each PVM node. It is consulted when
the Parallel Virtual Machine is started to determine where PVM is located on
each slave node.
pyramid element
R
reference coordinate frame
region
residuals
The change in the value of certain variables from one iteration to the next.
The discretized Navier-Stokes equations (p. 290) are solved iteratively. The residual for each equation gives a measure of how far the latest solution is from
the solution in the previous iteration. A solution is considered to be converged
when the residuals are below a certain value.
CFX-Solver writes the residuals to the output file (p. 290) so that they can be
reviewed. ANSYS FLUENT allows residuals to be plotted during the solution
process.
A file produced by CFX-Solver that contains the full definition of the simulation
as well as the values of all variables throughout the flow domain and the
history of the run including residuals (p. 292). An CFX-Solver Results file can
be used as input to CFD-Post or as an input file to CFX-Solver, in order to
perform a restart.
Time-averaged equations of fluid motion that are primarily used with turbulent
flows.
Reynolds stress
The stress added to fluid flow due to the random fluctuations in fluid momentum in turbulent flows. When the Navier-Stokes equations (p. 290) are derived for time averaged turbulent flow to take into account the effect of these
fluctuations in velocity, the resulting equations have six stress terms that do
not appear in the laminar flow equations. These are known as Reynolds
stresses.
A model that solves transport equations for the individual Reynolds stress
components. It is particularly appropriate where strong flow curvature, swirl,
and separation are present. Reynolds stress models in general tend to be less
292
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Glossary
numerically robust than eddy viscosity models such as the k-epsilon turbulence
model (p. 288).
RNG k-epsilon turbulence
model
A coordinate system that rotates. ANSYS CFX and ANSYS FLUENT can solve
for fluid flow in a geometry that is rotating around an axis at a fixed angular
velocity.
run
A process that requires the specification of the CFX-Solver input file (and an
initial values file, if necessary), and produces an output file and a results file
(if successful).
S
Sampling Plane
scalar variable
A variable that has only magnitude and not direction. Examples are temperature, pressure, speed (the magnitude of the velocity vector), and any component of a vector quantity.
A shear stress transport model used primarily for unsteady CFD simulations,
where steady-state simulations are not of sufficient accuracy and do not
properly describe the true nature of the physical phenomena. Cases that may
benefit from using the SAS-SST model include:
Unsteady flow behind a car or in the strong mixing behind blades and
baffles inside stirred chemical reactors
Unsteady cavitation inside a vortex core (fuel injection system) or a fluidstructure interaction (unsteady forces on bridges, wings, and so on).
For these problems and others, the SAS-SST model provides a more accurate
solution than URANS models, where steady-state simulations are not of sufficient accuracy and do not properly describe the true nature of the physical
phenomena.
Second Moment Closure
models
Models that use seven transport equations for the independent Reynolds
stresses and one length (or related) scale; other models use two equations
for the two main turbulent scales.
A file that contains the records of all the actions in each interactive CFX session. It has the extension .ses.
A based SST model that accounts for the transport of the turbulent
shear stress and gives highly accurate predictions of the onset and the amount
of flow separation under adverse pressure gradients.
A singleton object that consists of an object type at the start of a line, followed
by a : (colon). Subsequent lines may define parameters and child objects as-
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
293
Glossary
sociated with this object. The object definition is terminated by the string
END on a line by itself. The singleton object for a session file is declared like
this:
SESSION:
Session Filename = <filename>.cse
END
The difference between a singleton object and a named object is that after
the data has been processed, a singleton can appear just once as the child
of a parent object. However, there may be several instances of a named object
of the same type defined with different names.
slice plane
A locator that is planar, and that consists of all the points that intersect the
plane and the mesh edges.
solid
A material that does not flow when a force or stress is applied to it.
The general class of vector valued functions of three parametric variables.
solid sub-domain
solver
The component that solves the CFD problem, producing the required results.
solver pressure
spanwise coordinate
specific heat
The ratio of the amount of heat energy supplied to a substance to its corresponding change in temperature.
The amount of heat energy required to raise the temperature of a fixed mass
of a fluid by 1 K at constant pressure.
speed of sound
sphere volume
state files
Files produced by CFD-Post that contain CCL commands. They differ from
session files in that only a snapshot of the current state is saved to a file. You
can also write your own state files using any text editor.
steady-state simulation
A simulation that is carried out to determine the flow after it has settled to
a steady state. Note that, even with time constant boundary conditions, some
flows do not have a steady-state solution.
294
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Glossary
stream plot
A plot that shows the streamlines of a flow. Stream plots can be shown as
lines, tubes, or ribbons.
streamline
The path that a small, neutrally-buoyant particle would take through the flow
domain, assuming the displayed solution to be steady state.
subdomains
subsonic flow
surface plot
symmetry-plane boundary
condition
T
template fluid
One of a list of standard fluids with predefined properties that you can use
'as is', or use as a template to create a fluid with your own properties.
thermal conductivity
The property of a fluid that characterizes its ability to transfer heat by conduction.
A property of a substance that indicates its ability to transfer thermal energy
between adjacent portions of the substance.
thermal expansivity
The property of a fluid that describes how a fluid expands as the result of an
increase in temperature. Also known as the coefficient of thermal expansion,
.
theta
The angular coordinate measured about the axis of rotation following the
right-hand rule. When looking along the positive direction of the axis of rotation, theta is increasing in the clockwise direction. Note that the theta coordinate in CFD-Post does not increase over 360, even for spiral geometries that
wrap to more than 360.
topology
tracers
Particles that follow a flow pathline. Used in viewing CFD results in order to
visualize the mechanics of the fluid flow.
transitions
Portions of a mesh that are the result of meshing geometry with two opposing
edges that have different mesh seeds. This produces an irregular mesh.
turbulence intensity
295
Glossary
estimate of the turbulence intensity at the inlet boundary from external,
measured data. For example, if you are simulating a wind-tunnel experiment,
the turbulence intensity in the free stream is usually available from the tunnel
characteristics. In modern low-turbulence wind tunnels, the free-stream turbulence intensity may be as low as 0.05%.
For internal flows, the turbulence intensity at the inlets is totally dependent
on the upstream history of the flow. If the flow upstream is under-developed
and undisturbed, you can use a low turbulence intensity. If the flow is fully
developed, the turbulence intensity may be as high as a few percent.
turbulence length scale
A physical quantity related to the size of the large eddies that contain the
energy in turbulent flows.
In fully-developed duct flows, the turbulence length scale is restricted by the
size of the duct, since the turbulent eddies cannot be larger than the duct.
An approximate relationship can be made between the turbulence length
scale and the physical size of the duct that, while not ideal, can be applied
to most situations.
If the turbulence derives its characteristic length from an obstacle in the flow,
such as a perforated plate, it is more appropriate to base the turbulence
length scale on the characteristic length of the obstacle rather than on the
duct size.
turbulence model
A model that predicts turbulent flow (p. 296). The available turbulence models
in ANSYS CFX are:
A flow field that is irregular and chaotic look. In turbulent flow, a fluid particle's
velocity changes dramatically at any given point in the flow field, in time,
direction, and magnitude, making computational analysis of the flow more
challenging.
turbulent flow
V
variable
A quantity such as temperature or velocity for which results have been calculated in a CFD calculation.
See also Additional Variable (p. 281).
vector plot
296
A plot that shows the direction of the flow at points in space, using arrows.
Optionally, the size of the arrows may show the magnitude of the velocity of
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Glossary
the flow at that point. The vectors may also be colored according to the value
of any variable.
verification
viewer area
The area of ANSYS CFX that contains the 3D Viewer, Table Viewer, Chart
Viewer, Comment Viewer, and Report Viewer, which you access from tabs
at the bottom of the area.
viewport (CFX)
A current group
posted viewport
A viewport that has been selected for display.
target viewport
A viewport selected for a viewport modify action. Any viewport (including
the current viewport) can be selected as the target viewport.
viscosity
The ratio of the tangential frictional force per unit area to the velocity gradient
perpendicular to the flow direction.
W
wall
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
297
Glossary
workspace area
The area of CFX-Pre and CFD-Post that contains the Outline, Variables, Expressions, Calculators, and Turbo workspaces, which you access from the
tabs at the top of the area. Each workspace has a tree view at the top and
an editor at the bottom (which is often called the Details view).
See also "CFD-Post Graphical Interface".
Y
y+ (YPLUS)
Z
zero equation turbulence
model
298
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Index
Symbols
2D geometries
and validation cases, 104
3D
trajectories of particles and Lagrange models, 100
3D grid problems
lines not aligned to flow, 86
3D simulations
and coarse grid solutions in the asymptotic range,
88
A
accuracy
of boundary layer simulations, 99
round-off errors , 88
allowed arguments
in an export program, 40
analytical solutions
and software errors, 103
ANSYS FLUENT field variables, 221
application uncertainties
and numerical errors, 93
reduction of, 100
arbitrary grid interfaces
and grid generation, 94
area function, 160
area(Location,Axis) power syntax subroutine, 238
areaAve function, 161
areaAve(Variable,Location,Axis) power syntax subroutine, 238
areaInt function, 162
areaInt(Variable,Location,Axis) power syntax subroutine,
238
aspect ratio of cells
defined, 98
asymptotic
range and coarse grid solution, 88
range and error estimation, 88
automatic near-wall treatment
hybrid methods, 99
ave function, 163
ave(Variable,Location) power syntax subroutine, 238
axi-symmetric geometries
and validation cases, 104
B
backward Euler integration, 86
benchmark studies
C
CAD
importing and checking geometry data, 94
calcTurboVariables() power syntax subroutine, 238
calculate() power syntax subroutine, 238
calculateUnits() power syntax subroutine, 238
calibration
and validation of statistical models, 103
of model coefficients and model capability, 91
Cartesian coordinate
variables, 183
CCL (CFX command language)
names definition, 137
overview, 135
syntax, 135
CEL (CFX expression language), 141
available system variables, 201
conditional statement, 145
constants, 143, 146
examples, 147
expression names, 200
expression properties, 200
expression syntax, 143
expressions, 141, 146
functions and constants, 144
fundamentals, 141
if statement, 145
introduction, 141
logical expressions, 142
logical operators, 144
mathematical expressions, 142
mathematical operators, 144
multiple-line expressions, 143
offset temperature, 146
operators and built-in functions, 144
relational operators, 144
scalar expressions, 200
statements, 142
technical details, 149
unavailable system variables, 201
units, 142
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
299
Index
values - dimensionless, 141
variables, 191
CEL limitations
create Design Exploration expressions in CFD-Post,
141
CFD (Computational Fluid Dynamics)
difficulties in quantification of, 83
CFD methods
accuracy and experimental data, 103
CFD simulation
model selection and application, 95
CFDPOSTROOT
installation root directory, 281
CFX command language (CCL)
names definition, 137
overview, 135
syntax, 135
CFX export
user-defined export routines, 39
CFX Launcher, 1
adding APPLICATION objects, 6
adding DIVIDER objects, 8
adding GROUP objects, 5
customizing, 5
interface, 1
using variables in APPLICATION objects, 7
CFX menu overview, 2
CFXROOT
installation root directory, 281
coarse and fine grids
interpolation of, 88
coefficient loops
and time discretization error, 86
collectTurboInfo() power syntax subroutine, 238
comfortFactors() power syntax subroutine, 238
command line, 3
comment character in CCL syntax, 137
compressible flow variables, 187
compressorPerform() power syntax subroutine, 239
compressorPerformTurbo() power syntax subroutine,
239
computational cells
representation of geometry of the flow domain, 94
conditional statement, 145
conservative variable values, 179
constants in CEL, 143, 146
continuation character, in CCL syntax, 137
convergence
asymptotic evaluation on unstructured meshes, 83
plotting the value of the target variable, 88
copyFile() power syntax subroutine, 239
corrected boundary node values, 179
300
D
data quality
and validation, 104
defined constants and structures, 53
demonstration experiments, 106
Detached Eddy Simulation (DES), 96
Direct Numerical Simulation (DNS), 84
double-precision round-off errors
See also single precision, 88
E
eddy viscosity, 97
and heat transfer models, 99
and one-equation models, 96
Edit menu overview, 2
element
data structure, 54
hexahedral, 58
prism, 58
pyramid, 58
routines, 57
tetrahedral, 58
types, 53
wedge, 58
element types (VMI), 9
enthalpy variables, 191
error separation
overview, 83
errors
from differences between exact and discretized
equations, 84
from documentation, 84
from flow phenomena, turbulence, combustion,
multi-phase, 84
from inadequate use of CFD software, 84
from insufficient simulation information, 84
minimizing, 93
separation of, 83
Euler-Euler formulation
multi-phase models, 100
evaluate(Expression) power syntax subroutine, 239
evaluateInPreferred(Expression) power syntax subroutine, 240
examples
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Index
calculate area, 161
CEL, 147
feedback to control inlet temperature, 148
Reynolds number dependent viscosity, 147
experimental data
and numerical errors, 93
export
linking programs, 51
export program
allowed arguments in, 40
example, 40
file header, 40
geometry file output, 44
initialization of, 40
opening the results file , 42
output from, 48
results file, 47
specifying results file , 42
template results file, 46
timestep setup, 43
expression
properties in CEL, 200
expression language, 141
constants, 146
expressions, 141
statements, 142
statements - multiple-line expressions, 143
statements - syntax, 143
units, 142
using, 146
values - dimensionless, 141
expression names
CEL, 200
expression syntax, 143
expressions
create in CFD-Post for Design Exploration, 141
in CEL, 146
exprExists() power syntax subroutine, 240
extrapolation
Richardson, 88
interpolation of, 88
fluid-structure interaction
introduction, 75
force function, 165
force(Location,Axis) power syntax subroutine, 240
forceNorm function, 166
forceNorm(Location,Axis) power syntax subroutine,240
free shear flow, 96
and Large Eddy Simulation models, 97
functions
area, 160
areaAve, 161
areaInt, 162
ave, 163
count, 164
countTrue, 164
force, 165
forceNorm, 166
inside, 166
length, 167
lengthAve, 167
lengthInt, 168
mass, 168
massAve, 168
massFlow, 168
massFlowAve, 169
massFlowInt, 172
massInt, 173
maxVal, 173
minVal, 173
probe, 174
rbstate, 174
rmsAve, 175
sum, 175
torque, 176
volume, 176
volumeAve, 177
volumeInt, 177
functions and constants
CEL, 144
face warpage
and grid generation, 94
false diffusion, 86
fanNoise() power syntax subroutine, 240
fanNoiseDefault() power syntax subroutine, 240
field error, 88
file header
in an export program, 40
File menu overview, 1
fine and coarse grids
geometry
and numerical error, 93
geometry file output
from an export program, 44
geometry generation, 94
getBladeForceExpr() power syntax subroutine, 240
getBladeTorqueExpr() power syntax subroutine, 240
getCCLState() power syntax subroutine, 240
getChildren() power syntax subroutine, 241
getChildrenByCategory() power syntax subroutine,241
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
301
Index
getExprOnLocators() power syntax subroutine, 241
getExprString() power syntax subroutine, 241
getExprVal() power syntax subroutine, 241
getObjectName() power syntax subroutine, 241
getParameterInfo() power syntax subroutine, 241
getParameters() power syntax subroutine, 242
getTempDirectory() power syntax subroutine, 242
getType() power syntax subroutine, 242
getValue(Object Name,Parameter Name) power syntax
subroutine, 242
getViewArea() power syntax subroutine, 242
grid
recommendations for aspect ratio, density, angle,
topology, 94
refined for critical regions, 94
grid adaptation
and indicator functions, 94
grid problems
lines not aligned to flow, 86
grid refinement
and scalable wall functions, 98
grid refinement and time step reduction, 88
grid resolution
assessment of mesh parameters , 94
doubling of, 86
grid sensitivity
SAS model and DES formulation, 97
H
heat transfer models, 99
Help menu overview, 4
hexahedral element, 58
hybrid methods
for omega-equation based turbulence models, 98
hybrid variable values, 179
I
if statement, 145
indentation
in CCL syntax, 137
inflow profiles
and boundary conditions, 93
and inlet boundary conditions, 93
inside function, 166
internal flows, 97
interpolation
of solution between grids and integral quantities,88
interpolation of error, 88
isCategory() power syntax subroutine, 242
iteration
coefficient loops and time discretization error, 86
iteration error
302
numerical, 88
quantified in terms of a residual, 88
K
k-epsilon
model selection and scalable wall functions, 99
two equation model, 91
k-omega
two equation model, 91
L
Lagrange models
multi-phase models, 100
laminar channel flow, 104
laminar Couette flow, 104
Large Eddy Simulation (LES), 96
launcher, 1
adding APPLICATION objects, 6
adding DIVIDER objects, 8
adding GROUP objects, 5
customizing, 5
interface, 1
Show menu, 3
using variables in APPLICATION objects, 7
law of the wall
and standard wall functions, 98
length function, 167
length scale
and turbulence models, 96
Length(Location) power syntax subroutine, 243
lengthAve function, 167
lengthAve(Variable,Location) power syntax subroutine,
243
lengthInt function, 168
lengthInt(Variable,Location) power syntax subroutine,
243
linking
code into CFX, 51
export programs, 51
liquidTurbPerform() power syntax subroutine, 243
liquidTurbPerformTurbo() power syntax subroutine,
243
lists
in CCL syntax, 138
logarithmic region
and standard wall functions, 98
logical expressions, 142
logical operators, 144
low-Reynolds (low-Re)
and wall boundary conditions, 99
low-Reynolds (low-Re) and DNS studies
validation cases, 104
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Index
M
mass function, 168
mass transfer between phases
multi-phase models, 100
massAve function, 168
massFlow function, 168
massFlow(Location) power syntax subroutine, 243
massFlowAve function, 169
massFlowAve(Variable,Location) power syntax subroutine, 243
massFlowAveAbs function, 170
massFlowAveAbs() power syntax subroutine, 243
massFlowInt function, 172
massFlowInt(Variable,Location) power syntax subroutine, 244
massInt function, 173
mathematical expressions, 142
mathematical operators, 144
maximum error, 88
maxVal function, 173
maxVal(Variable,Location) power syntax subroutine,
244
Mechanical import/export example, 78
mesh resolution
See grid resolution, 94
meshes
convergence on unstructured , 83
minVal function, 173
minVal(Variable,Location) power syntax subroutine,
244
modeling
numerical errors, 91
models
combustion, 91
multi-phase, 91
radiation, 91
turbulence, 91
multi-field runs, 200
multi-phase models
Euler-Euler, 100
Lagrange, 100
multicomponent calculation variables, 189
multiple-line expressions, 143
N
named objects
in CCL syntax, 137
Navier-Stokes, 91
near-wall
automatic treatment - hybrid methods, 99
resolution at wall nodes - low-Re models, 99
near-wall aspect ratio
grid generation, 94
near-wall length scales
and boundary layer flows, 97
negative volumes
and grid generation, 94
nodes
data structure, 54
routines, 56
non-miscible fluids
and multi-phase models, 100
non-orthogonal meshes, 94
numerical diffusion
due to non-orthogonal cells, 94
numerical diffusion term
false diffusion, 86
numerical errors
application uncertainties, 93
iteration, 88
modeling, 91
round-off, 88
software, 93
solution error estimation, 88
solutions, 85
spatial discretization, 86
time discretization, 86
user, 92
O
objectExists() power syntax subroutine, 244
offset temperature
in CEL, 146
one-equation turbulence model
and eddy viscosity, 96
operators and built-in functions
CEL, 144
Output window overview, 4
P
parallel calculation variables, 188
parameter values
in CCL syntax, 138
parameters
in CCL syntax, 137
particle tracking variables, 187
particle variables
list of all, 201
type - boundary vertex, 208
type - field, 204
type - particle sources into the coupled fluid phase,
204
type - radiation, 205
type - RMS, 209
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
303
Index
type - track, 202
type - vertex, 206
physics
multi-phase and unsteady effects, 83
plot target variables
as a function of the convergence level, 88
power syntax, 233
examples, 233
subroutines, 237
power syntax subroutines
area(Location,Axis), 238
areaAve(Variable,Location,Axis), 238
areaInt(Variable,Location,Axis), 238
ave(Variable,Location), 238
calcTurboVariables() , 238
calculate() , 238
calculateUnits() , 238
compressorPerform(), 239
copyFile(), 239
count(Location), 239
countTrue() , 239
cpPolar(), 239
evaluate(Expression), 239
evaluateInPreferred(Expression), 240
exprExists() , 240
force(Location,Axis), 240
forceNorm(Location,Axis), 240
getCCLState() , 240
getChildren() , 241
getChildrenByCategory() , 241
getExprOnLocators() , 241
getExprString() , 241
getExprVal() , 241
getObjectName() , 241
getParameterInfo() , 241
getParameters() , 242
getTempDirectory() , 242
getType() , 242
getValue(Object Name,Parameter Name), 242
getViewArea() , 242
isCategory() , 242
Length(Location), 243
lengthAve(Variable,Location), 243
lengthInt(Variable,Location), 243
massFlow(Location), 243
massFlowAve(Variable,Location), 243
massFlowAveAbs(Variable,Location), 243
massFlowInt(Variable,Location), 244
maxVal(Variable,Location), 244
minVal(Variable,Location), 244
objectExists() , 244
probe(Variable,Location), 244
304
range(Variable,Location), 244
showPkgs(), 245
showSubs(), 245
showVars(), 245
spawnAsyncProcess() , 245
sum(Variable,Location), 245
torque(Location,Axis), 245
verboseOn(), 246
volume(Locator), 246
volumeAve(Variable,Location), 246
volumeInt(Variable,Locator), 246
Prandtl number
and heat transfer models, 99
precision
round-off errors, 88
prism element, 58
probe function, 174
probe(Variable,Location) power syntax subroutine,244
problems
due to round-off errors, 98
grid lines not aligned to flow, 86
program initialization
in an export program, 40
project management
to reduce errors, 84
to reduce user errors, 93
pseudo time stepping scheme
and iteration error, 88
pumpPerform() power syntax subroutine, 244
pumpPerformTurbo() power syntax subroutine, 244
pyramid element, 58
Q
quality
of grid - checking the mesh parameters, 94
quality assurance
definition of target variables, 83
quality of numerical results
setting the estimates for evaluation, 88
quality of solution
measurement of overall reduction in the residual,88
R
radiation calculation variables, 190
random behavior of the numerical solution
round-off errors, 88
range(Variable,Location) power syntax subroutine,244
rbstate function, 174
refinement
grid and time step reduction, 88
relational operators, 144
remeshing, 67
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Index
ICEM CFD replay, 70
user defined, 68
reportError() power syntax subroutine, 244
reportWarning() power syntax subroutine, 245
residual
and iteration error, 88
results file
in an export program, 47
opening from an export program, 42
specifying in an export program, 42
Reynolds Averaged Navier-Stokes (RANS), 91
Reynolds stresses
and Second Moment Closure, 97
Richardson extrapolation, 88
determination of relative solution error, 88
Richardson interpolation
improves the solution on the fine grid, 88
rms error, 88
rmsAve function, 175
rotating frame of reference variables, 188
round-off error
numerical, 88
round-off errors
and wall functions, 98
S
scalable wall function
and boundary conditions, 98
scalar expressions
CEL, 200
scalar quantities
defining error types, 83
Scale Adaptive Simulation model(SAS), 96
Second Moment Closure (SMC), 96
selection of model
and modeling errors, 91
sensitivity
SAS model and DES formulation of grid, 97
to swirl and system rotation, 97
sensitivity analysis
to reduce application uncertainties, 100
sensitivity of the application
and model selection, 95
shear layer
grids that are aligned with, 94
Shear Stress Transport (SST), 96
shocks
and fine grids, 94
Show menu overview, 3
showPkgs() power syntax subroutine, 245
showSubs() power syntax subroutine, 245
showVars() power syntax subroutine, 245
single physics
validation cases, 104
single-phase Navier-Stokes equations, 84
single-precision round-off errors
See also double precision, 88
singleton objects
CCL syntax, 137
software errors
numerical, 93
software fixes
verification studies, 103
solid-fluid 1:1 interface
conservative values, 180
hybrid values, 180
solid-fluid GGI interface
conservative values, 181
hybrid values, 181
solid-fluid interface variables, 180
space and time
resolution of grid and modeling errors, 95
resolution requirements, 91
spatial discretization
and non-linear algebraic equations, 86
numerical errors, 86
truncation error, 86
spatial discretization errors
minimizing, 102
spawnAsyncProcess() power syntax subroutine, 245
stagnation regions
and Second Moment Closure models, 97
turbulence build-up and two-equation models, 97
statistical model
and resolution requirements, 91
testing the quality of, 104
validation and calibration, 103
steady-state runs, 199
streamline curvature
and two-equation models, 97
subdomain
in user export, 48
subroutines, 237
sum function, 175
sum(Variable,Location) power syntax subroutine, 245
swirling flows
and residuals, 101
and two-equation models, 97
syntax
case sensitivity in CCL, 136
CCL parameters, 137
continuation character in CCL, 137
end of line comment character in CCL, 137
indentation in CCL, 137
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
305
Index
lists in CCL, 138
name objects in CCL, 137
parameter values in CCL, 138
singleton objects in CCL, 137
system information, 3
system variable prefixes, 198
system variables
available, 201
unavailable, 201
T
target variable error, 88
target variables
plotting as a function of iteration number, 101
to monitor numerical errors, 101
Taylor series
and time discretization error, 86
spatial discretization, 86
truncation error, 86
temperature
in CEL expressions, 146
temperature variables, 191
template results file
in an export program, 46
terminal rise velocity
in a calm fluid, 104
test case quality
and large-scale unsteadiness, 104
tetrahedral element, 58
time and space
resolution of grid and modeling errors, 95
resolution requirements, 91
time discretization
and inner iterations or coefficient loops, 86
numerical errors , 86
time discretization errors
minimizing, 102
time step
and target variables, 101
reducing errors, 84
unsteadiness due to a moving front, 102
time step reduction
and grid refinement, 88
timestep setup
in an export program, 43
Toolbar overview, 4
Tools menu overview, 3
torque function, 176
torque(Location,Axis) power syntax subroutine, 245
training
to reduce errors, 84
trajectories
306
U
uncertainty
and sensitivity analysis, 100
in CFD methods due to the accuracy of simulation,
91
physical standpoint of, 83
See also errors, 84
units
in CEL, 142
unsteadiness
and quality of a test case, 104
Unsteady RANS (URANS), 96
user errors
numerical, 92
user level of variables, 181, 202
User menu overview, 4
V
validation
and calibration of statistical models, 103
of a statistical model, 104
validation experiments, 104
variables
acoustics, 232
adaption, 230
ANSYS FLUENT field, 221
boundary value only, 181, 202
Cartesian coordinates, 183
cell, 229
density, 222
derivatives, 231
for a rotating frame of reference, 188
for buoyant flows, 187
for compressible flows, 187
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
Index
for multicomponent calculations, 189
for multiphase calculations, 189
for parallel calculations, 188
for particle tracking, 187
for radiation calculations, 190
for total enthalpies, 191
for total pressures, 191
for total temperatures, 191
for turbulent flows, 185
granular pressure, 228
granular temperature, 228
grid, 229
grid (turbo), 230
hybrid and conservative values, 179
list of all, 181
long names, 181
NOx, 226
pdf, 226
phase model, 227
phases, 227
premixed combustion, 226
pressure, 222
properties, 228
radiation, 224
reactions, 226
residuals, 230
short names, 181, 201
solid-fluid interface, 180
soot, 227
species, 225
temperature, 223
turbulence, 224
unsteady statistics, 227
user level, 181, 202
user-defined memory, 229
user-defined scalars, 229
velocity, 223
wall fluxes, 228
variables for CEL Expressions, 191
verboseOn() power syntax subroutine, 246
verification experiments, 104
verification studies
to detect the software errors, 103
viscous sublayer
and aspect ratio of cells in standard wall functions,
98
and integration of the equations - low-Re models,
99
volume
function, 176
volume fractions
missing information for validation cases, 104
W
wall functions
boundary condition, 98
using the classical - inconsistent with grid refinement,
99
wall heat transfer
for coarser grids, 99
one-dimensional distribution, 83
wall shear stress
for coarser grids, 99
wedge element, 58
working directory selector, 4
Y
y+
and accuracy of boundary layer simulations, 99
near-wall resolution required by low-Re models, 99
Z
zone routines, 55
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.
307
308
Release 13.0 - SAS IP, Inc. All rights reserved. - Contains proprietary and confidential information
of ANSYS, Inc. and its subsidiaries and affiliates.