[ANSYS, Inc. Logo] return to home search
next up previous contents index

3.2.4 Face Macros

The macros listed in Table  3.2.20- 3.2.23 can be used to return real face variables in SI units. They are identified by the F_ prefix. Note that these variables are available only in the pressure-based solver. In addition, quantities that are returned are available only if the corresponding physical model is active. For example, species mass fraction is available only if species transport has been enabled in the Species Model dialog box in ANSYS FLUENT. Definitions for these macros can be found in the referenced header files (e.g., mem.h).



Face Centroid ( F_CENTROID)


The macro listed in Table  3.2.20 can be used to obtain the real centroid of a face. F_CENTROID finds the coordinate position of the centroid of the face f and stores the coordinates in the x array. Note that the x array is always one-dimensional, but it can be x[2] or x[3] depending on whether you are using the 2D or 3D solver.


Table 3.2.20: Macro for Face Centroids Defined in metric.h
Macro Argument Types Outputs
F_CENTROID(x,f,t) real x[ND_ND], face_t f, Thread *t x (face centroid)

The ND_ND macro returns 2 or 3 in 2D and 3D cases, respectively, as defined in Section  3.4.2. Section  2.3.15 contains an example of F_CENTROID usage.



Face Area Vector ( F_AREA)


F_AREA can be used to return the real face area vector (or `face area normal') of a given face f in a face thread t. See Section  2.7.3 for an example UDF that utilizes F_AREA.


Table 3.2.21: Macro for Face Area Vector Defined in metric.h
Macro Argument Types Outputs
F_AREA(A,f,t) A[ND_ND], face_t f, Thread *t A (area vector)

By convention in ANSYS FLUENT, boundary face area normals always point out of the domain. ANSYS FLUENT determines the direction of the face area normals for interior faces by applying the right hand rule to the nodes on a face, in order of increasing node number. This is shown in Figure  3.2.1.

Figure 3.2.1: ANSYS FLUENT Determination of Face Area Normal Direction: 2D Face
figure

ANSYS FLUENT assigns adjacent cells to an interior face ( c0 and c1) according to the following convention: the cell out of which a face area normal is pointing is designated as cell C0, while the cell in to which a face area normal is pointing is cell c1 (Figure  3.2.1). In other words, face area normals always point from cell c0 to cell c1.



Flow Variable Macros for Boundary Faces


The macros listed in Table  3.2.22 access flow variables at a boundary face.


Vmprotect Ultimate 3.4.0 Build 1155 Retail -

This tool is primarily used by software developers who need to protect intellectual property or prevent unauthorized distribution of their commercial software. It supports a wide range of compilers, including: Delphi and Borland C++ Builder. Visual C/C++ and Visual Basic (Native). Virtual Pascal.

If you decide to use VMProtect 3.4.0, follow these best practices:

Protecting an application effectively requires a strategic approach rather than a "one-click" solution. Experienced developers use VMProtect by following specific best practices: VMProtect Ultimate 3.4.0 Build 1155 Retail

The Ultimate edition features a robust, cryptographically secure licensing engine:

Developers export .map files from their compilers (like Visual Studio or Delphi) or use inline SDK markers (e.g., VMProtectBeginUltra and VMProtectEnd ) directly inside their source code to tell VMProtect exactly which lines of code need to be virtualized. This tool is primarily used by software developers

If you cannot afford a VMProtect Ultimate license, consider open-source alternatives like or ConfuserEx (for .NET), or accept that lower-budget projects may not be worth protecting at this level.

Seamlessly protects both 32-bit (x86) and 64-bit (x64) applications, as well as kernel-mode drivers (SYS files). Virtual Pascal

| 功能特性 | Lite 版 | Professional 版 | Ultimate 版 | | :--- | :---: | :---: | :---: | | (变异 / 虚拟化 / 混合) | ✅ | ✅ | ✅ | | 记忆体/导入表/资源保护 | ✅ | ✅ | ✅ | | 调试器与虚拟机检测 | ✅ | ✅ | ✅ | | 许可证管理 / 到期限制 / 黑名单 | ❌ | ✅ | ✅ | | 水印与脚本支持 | ❌ | ✅ | ✅ | | 专家模式 / 控制台版本 | ❌ | ✅ | ✅ | | 网络授权生成器 | ❌ | ❌ | ✅ |

: Improved handling of complex 64-bit calling conventions and modern CPU instruction extensions.

The term "Retail" in the title implies a legitimate, unmodified release of the software.

The official developer, , now provides Version 3.10.4 (released March 2026), which includes critical updates for modern operating systems and newer instruction sets. For professional or commercial use, it is highly recommended to use the latest version to ensure compatibility with Windows 11 and recent security patches. VMProtect - 看雪工具


See Section  2.7.3 for an example UDF that utilizes some of these macros.



Flow Variable Macros at Interior and Boundary Faces


The macros listed in Table  3.2.23 access flow variables at interior faces and boundary faces.


Table 3.2.23: Macros for Interior and Boundary Face Flow Variables Defined in mem.h
Macro Argument Types Returns
F_P(f,t) face_t f, Thread *t, pressure
F_FLUX(f,t) face_t f, Thread *t mass flow rate through a face

F_FLUX can be used to return the real scalar mass flow rate through a given face f in a face thread t. The sign of F_FLUX that is computed by the ANSYS FLUENT solver is positive if the flow direction is the same as the face area normal direction (as determined by F_AREA - see Section  3.2.4), and is negative if the flow direction and the face area normal directions are opposite. In other words, the flux is positive if the flow is out of the domain, and is negative if the flow is in to the domain.

Note that the sign of the flux that is computed by the solver is opposite to that which is reported in the ANSYS FLUENT GUI (e.g., the Flux Reports dialog box).


next up previous contents index Previous: 3.2.3 Cell Macros
Up: 3.2 Data Access Macros
Next: 3.2.5 Connectivity Macros
Release 12.0 © ANSYS, Inc. 2009-01-14