Friday Flownex Tech Tips #12

Sizing Pumps and Manually Specifying a Pump Curve in Flownex

As a System Engineer you may not always already have equipment decided on for your particular network. Flownex makes it easy to start from scratch and will help determine the equipment necessary to meet the flow or process requirements. In today’s tip we’ll go over how to size a pump using the basic centrifugal pump component and how to manually enter pump curve data. We are using Flownex version

Sizing a Pump

In our example scenario let us pretend we are sizing a pump for a cooling water circuit. We are tasked with finding a pump which will deliver water at a rate of 1 kg/s to the heat exchanger. We know our upstream and downstream boundary conditions as well as the heat added at the exchanger and the speed at which we will be operating the pump.

Choose the appropriate flow component

There are a few different pumps available in Flownex:

Basic Centrifugal Pump: Used when we do not have a pump chart available, particularly useful when sizing a pump.

Fan or Pump: Used when a pump chart is available for modeling either compressible or incompressible flows.

Positive Displacement Pump: Used for modeling rotary and reciprocating pumps where the fluid is incompressible, non-Newtonian, or a slurry.

Variable Speed Pump: Similar to the Fan or Pump but with the ability to interpolate between fan/pump curves for different speeds of rotation.

In this case we’d choose the Basic Centrifugal Pump. This is found in the component pane under Turbos and Pumps. Since we only know the RPM we can enter it in the inputs under Speed at BEP:

Recall we don’t know what the design of the pump will be. Since all we know is that the mass flow rate needs to be 1 kg/s we will check the box for fixed mass flow and then select to change design to target our desired flowrate.

Once we hit solve our pump design inputs will be populated such that our desired mass flow rate is achieved. We can cross-reference these values with available pumps to choose the appropriate component for our network!

Specifying a Pump Curve

If we already know which pump we are using, or perhaps are trying to decide between several available pumps, we may need to add these pump curves to Flownex. To add a pump curve we will navigate to the Charts and Lookup Tables pane > Project Database > Flow Solver > Turbos and Pumps. In this scenario we are looking at a single speed pump so we will right-click on Pump and Fan Charts and Add a Category.

We can name our category whatever is appropriate and then right-click on the newly created category to add our own pump chart.

To edit the newly created pump chart we can either double-click on it or right-click and select edit. Now we simply specify the Reference Density and then fill out the table with the relevant data points. To speed things along we can copy and paste a table of data points from excel or whatever source we get this curve from. Don’t forget to check your units!

Bonus Tip!

Friday Flownex Tech Tips #11

How to use Flow Path Graphs and Increment Plots in Flownex

Flow Path Graphs and Increment Plots can be incredibly useful visualization tools to see how a simulation result varies as a function of length along the axial flow path and to see a higher fidelity result for a single flow component. Use these in Flownex to up your reporting game! In this demo we are using Flownex version

Creating a Flow Path

A flow path is any continuous series of flow elements and can be created by clicking “Flow Paths” in the results ribbon. Once we’ve created our new flow path we define it by choosing our start and end nodes.

Another, simpler, method is to simply drag and drop the nodes onto the flow path start and end point:

If we have a branched network we can add an intermediate node or flow component to our flow path to ensure the correct path is captured in the graph:

Insert a Flow Path Graph

The Flow Path Graph is in the component pane under visualization > graphs. Once the graph is added to the canvas we simply need to drag and drop our newly created flow path onto the graph and choose the characteristic we are interested in plotting. We will need to drag and drop the flow path for each characteristic we would like plotted.

How to create Increment Plots

You may have noticed in the previous images that there were many data points on the graphs for each of our flow components. This is because we had each pipe modeled as 25 increments. When we add increments to our flow components Flownex will treat each component as if it were split up that number of increments – solving the conservation equations for each increment rather than once over the entire component. This is helpful when modeling long pipes, capturing pressure waves, or determining exactly where a phase change may happen. A good way to think about this is that it is essentially the same as refining a mesh in a typical finite element analysis.

There is another plot in Flownex we can use for a single flow component that has been incremented. The increment plot is located in the components pane under Visualization > Graphs > Increment Plots. If we were, for example, trying to plot the inside surface temperature of our first pipe in this example network we could use an increment plot to see what is going on.

To create an increment plot we simply drag and drop the plot onto the canvas. We can either selectively drag results from individual increments or multi-select many increments and drag the desired variable onto the graph. Note that since there is a tie of each increment parameter separately there may be some delay if we are multiselecting a very large number of increments.

Bonus Tips!

  • We can use a Flow Path graph for a single component to avoid having to multi-select increments.
  • To create a graph on its own page instead of floating on the canvas go to the Project Explorer pane on the left side of the GUI, select Graphs, then right-click on the Graphs Folder and select Add Graph Page and choose your desired type of plot.

An Ansys Licensing Tip – ANSYSLMD_LICENSE_FILE

Most Ansys users make use of floating licensing setups, and I would say the majority of those actually make use of licenses that are hosted nonlocally but on their network. Within this licensing scheme, there are quite a few different tools and utilities that we can use to specify where we pull our licenses, too. One of the methods that is making a comeback (in my recent experience) as far as success in troubleshooting and overall reliability is specifying the environment variable ANSYSLMD_LICENSE_FILE.

This variable allows you to point directly towards one or more license servers using a port@address definition for the FlexNet port. With just this defined, the interconnect port will default to 2325, but if your server setup requires another interconnect port then you can also specify this using the ANSYSLI_SERVERS environment variable with the same format.

The downside is that this is a completely separate license server specification from the typical ansyslmd.ini approach, so any values specified this way will not be visible in the “Ansys Client License Settings” utility. On the upside, this is a completely separate license server specification! Meaning, if there are permission issues associated with ansyslmd.ini, or the other license utilities experienced some unknown errors on installation, this may be able to circumvent those issues entirely.

Also, for more advanced setups this can be used to assign specific license servers to individual users on a machine or to potentially help with controlling the priority of license access if multiple license servers are present. Anyway, this may be worth looking into if you encounter issues with client-side licensing!

Friday Flownex Tech Tips #10

Rotor-Rotor and Rotor-Stator Cavities

Happy Friday! In today’s tech tip we’ll introduce the rotating components library and demonstrate how to utilize the cavity drawing tool for rotor-stator cavities which can be a huge time-saver when building secondary flow networks. We are working with Flownex version

Rotating Components

One common implementation of rotating components in Flownex that I see is for modeling secondary flow networks for gas turbines. These flow paths are also sometimes called secondary air systems. What this refers to is the flowpath separate from the primary flowpath (Secondary, get it?). This is flow used to cool equipment, shrouds, discs, vanes, and to provide buffering for the seals to the oil system.

Flownex has a whole library of rotating components that come in handy when building these secondary flow networks. These are well documented in the Flownex help manuals if you’d like to read up on technical specification, inputs, results, and theory.

  • Custom Vortex
    • A custom vortex is used when velocity profile is between that of a forced vortex and free vortex.
  • Forced Vortex
    • In a forced vortex the fluid moves similar to a solid body with constant angular velocity.
  • Free Vortex
    • Free vortex swirl is calculated using mass flow rate average of the incoming swirl streams, swirl is constant over the radius; usually used for rotating fluid in an open cavity.
  • Labyrinth Seal
    • Used for modeling axial and radial straight and staggered seals.
  • Rotating Annular Gap
    • Used to model flow through an annulus with the inner or outer cylinder rotating.
  • Rotating Channel
    • Used for flow inside channels in rotating discs and blades.
  • Rotating Nozzle
    • Similar to a stationary nozzle where there is a discharge coefficient as a function of the inlet type.
  • Rotor-Rotor Cavity
    • Used when calculating swirl ratio from moment balance on the the rotor surfaces, bolt heads, and flows.
  • Rotor-Stator Cavity
    • Used when calculating swirl ratio from moment balance on the the rotor and stator surfaces, bolt heads, and flows.

Cavity Drawing Tool

Now we get to the nitty gritty of todays tip; how to utilize the cavity drawing tool. When we use either a Rotor-Rotor component or a Rotor-Stator component there are two options for specifying the surface geometry. We can either model as pure radial disks, or as a complex surface specification.

We can use the complex surface specification option to model a rotor-stator cavity like in the cross-section below. When using this option we will need to get a cross-section like this from CAD or from a scaled technical schematic.

To specify this surface geometry we will click the radio button next to surface geometry and add our image to the project. For a refresher on adding an image to your project check out the blog post on adding a background image.

Reference Measurements

We will first need to specify our reference axial and radial coordinates. This is done by dragging the red and blue boxes to known locations on the cross section and entering in the values in our desired units.

Surface Geometry

Now that we have specified the reference measurements we can define our rotor and stator surface geometries. This can be done in the Rotor Surface Geometry ribbon and the Stator Surface Geometry ribbon. The mode in the top right of the GUI lets us know if we are adding points, moving points, or deleting points. To add points we will click and drag from the previous point.

You’ll notice the inner and outer radius fields are automatically updated. This can be a good way to sanity check against known measurements or against CAD. We will need to do the same thing for the stator surface geometry.


If there are rotor or stator bolts they may be added in their respective ribbons. The blue lines we see in these images represent the limits of the rotor or stator surface. If bolts are added we will need to click Bolt Details at the bottom of the window and add bolt geometry. The radius fraction is populated automatically and the other inputs will need to be updated as needed by the engineer.

Cavity Shroud

If we need to model the cavity shroud this can be done in the shroud ribbon. In our demonstration today the shroud is included in the rotor and stator surface geometries. For this case we can de-select specify shroud width.

Gap Width

Next we must specify the gap width. To understand what the appropriate width to specify we must dive a little bit into the theory.

Flow regimes for rotor-stator cavity flow can be classified by the following image:

“G” being the gap width ratio (s/a where s is the gap width and a is the outer radius of the cavity) and Re is the Reynolds number for cavity flow. Essentially there are four regimes which are determined by the Reynolds number and gap ratio.

Flownex uses correlations from Haaser et. al (1987) and Daily and Nece (1960) to calculate the required moments produced by the rotor or stator on the fluid within the cavity. Haaser et al. is valid for Regime IV whereas Daily and Nece is valid for 0.0127<=s/a<=0.217 and 1000<=Re<=1e7. It is suggested to use Haaser when the flow is in Regime IV and Daily and Nece when the flow is within the other regions.

I hope I haven’t lost you.

So, for complex geometry (not just two flat surfaces) it is recommended to use the smallest gap width first and calculate the disc Reynolds number. Using the smallest gap width gives you the smallest gap width ratio which will lower the point at which your fluid is in the flow regimes graph above. Now check in what region you are. If your Reynolds number is high enough to be in region IV, and while using the smallest gap width your are still in region IV then it is safe to say that your entire flow will be valid when using Haaser. If this is true, you can then use the smallest gap width because the correlations of Haaser is not dependent on gap width. Using the minimum gap width essentially allows you to make sure that your entire flow is within regime IV. When you have used the smallest gap but see that your gap width ratio and/or Reynolds number leaves you in a different regime (I,II or III), we will then suggest that you calculate the moments using Daily and Nece.

To summarize, start with the smallest gap width and determine the Flow Regime:

If we are in region IV for the smallest gap width then we can leave the gap width as originally specified. If we were in any other region we should change our gap width to be an average:

Don’t forget to specify the correct correlation in the inputs for your rotor stator cavity as well. Big thanks to Leander Kleyn at Flownex for helping me understand the theory behind the gap width!

Discretization of the Cavity

Lastly, we need to assign the discretization of the model. This can be thought of as sort of refining the mesh of the cavity. We can specify more or less increments and can drag the increments around to be sure to capture changing geometry.

There you have it! A complex surface specification of a rotor-stator cavity using the cavity drawing tool in Flownex!

Friday Flownex Tech Tips #8

How to Setup an External Shared Database in Flownex

Hi Folks! Another short and simple tech tip this week; How to set up an external shared database in Flownex. When working as part of a team it makes sense to share resources. Once one person builds a custom component or defines a complex fluid we want to share that with everyone in our organization. Today I will show you how to create and maintain a shared database. For todays example we are working in Flownex version

Creating the Database

Start by opening up Flownex – it can be a new project or any existing project. On the right side of the GUI we’ll want to navigate to the Components pane. At the top of the pane you’ll see a variety of buttons. Depending on your installation the buttons you see may be different than the ones in the visual below. To create a new database we’ll want to click the Create Database icon.

Then we’ll want to navigate to a shared network location and pick an appropriate folder that will be accessible to others in our organization. I would encourage keeping the directory name as short as possible (I.E. a top level location) so that there is no concern for a deep database hitting windows character limit.

Once we have chosen a location and clicked OK we will see our shared database in both the Components pane and in the Charts and Lookup Tables pane. We’ll need to right-click on the newly created shared database and create a New Library in which we will place our shared components. Creating multiple libraries can be useful when grouping similar components or to discretize between different groups in the organization which are using Flownex.

Adding components to an External Database

To add custom components to our external database we simply drag and drop them from our project database. If you want to learn how to create a custom compound component please reference our previous blog post on this topic here. Choosing “Copy” will create a copy of the component in the shared database, choosing “Move” will move the component to the shared database and any references to that component in the project will now reference the component from the external database.

Adding a fluid to an External Database

To add a custom fluid to our external database the process is very similar to the procedure for the custom compound component. The only difference is that we want to do this drag and drop action within the Charts and Lookup Tables pane instead of the Components pane. If you need a refresher on creating or importing custom fluids here is a blog post on that topic!

Connecting to an External Database

Once a user has created a shared database it is now possible for other users to connect to that database. the process of connecting to an external database is quite simple. On the Components pane we will again look at the buttons near the top. We will want to click the Connect Database icon and then navigate to the shared location of the external database. Once there we will find the database configuration file, .dbcfg. We should select this file and click OK. You are now connected to the shared database!

Bonus Tips!

  • To lock an external database to avoid unintentional editing you can right-click on the database in Flownex and select “Lock Database”.
  • If you need to migrate the database to another location on your server you can copy the entirety of the folder and move it. Users will simply need to follow the same procedure of connecting to an external database the next time they open Flownex.
  • Special Note: If sending a network to someone external to your organization it is important to note that components or references from external databases will not be included by default. These components or charts will need to be copied to the project database and then the shared database will need to be disconnected before archiving the project for transfer. A second option would be to share the database itself.

Friday Flownex Tech Tips #7

Using Views to bridge networks across multiple pages

When building our networks it may be necessary to utilize multiple pages for a single network. This could be simply because our network is large and complex, or because it simply makes sense to keep certain branches or processes separate. In this tech tip we will show how to use “views” to continue networks across multiple pages. For this example we are using Flownex version


In Flownex the way that we continue networks across pages or even just jumping across portions of the same page is through the use of “views”. To create a view we right-click on the component we’d like to use as our bridge and select copy. Then navigate to where we’d like to continue our network and right-click, “paste view”.

Note that this is not really a “copy” of the previous node; it is another instance of the exact same node. I personally recommend using nodes for views over flow components so that they are less likely to be mistaken as separate components.

Regarding views

A couple of things to note regarding view components. First, you’ll notice the floating “V” to the left of the component. This indicates that the component is a view. It’s a good idea to leave this layer on – if for some reason you cannot see the “V” it can be turned on under the view ribbon:

Secondly, to find out where the views are located in your network the simplest way to jump between them is to right-click on an existing view and select the “views” option. Here you can navigate to any other views by simply clicking on them. Note that you are not limited to only two instances of a node (two views). There could be many instances across many pages.

Common uses of views could be to connect networks built by different engineers, connecting different subsystems that make up a larger network, or even capturing 3D network layouts by building a portion of the network in the x-y plane and using a view to connect to part of the network built in the z-y plane.

Setting up and Solving a PCB and Enclosure for Thermal Simulation in Ansys Icepak Electronic Desktop

The thought of setting up and running a complex PCB and Enclosure thermal model was something that used to strike fear in the heart of engineers. That is no longer true. In this video, we step through the process of importing, setting up, and solving a PCB thermal simulation.

If you have any questions or would like to learn more, please contact us at or

Friday Flownex Tech Tips #6

Creating Custom Fluids

Occasionally glossed over, adding custom fluids is a fairly standard operation in Flownex that we don’t think about until it’s necessary. There are a couple of ways to do this which we’ll go over in today’s post. I am working in Flownex

Creating a mixed fluid

To create a mixed fluid we first need to create a folder for this fluid in our project database. This can be done in the charts and lookup tables pane by right clicking on “mixed fluids” and selecting “add category”. We can create our new fluid by right-clicking on the new folder and selecting “Add a new mixed fluid”. Note we can right-click and rename both the fluid itself and the containing folder.

To define our new mixed fluid we double-click on the new mixed fluid to open the editor. Here we can add the components of our mixed fluids.

Creating a new fluid from scratch

To create a fluid from scratch we repeat the same process of creating a folder and creating a new fluid as above with the exception being that we’d complete these steps under the “Pure Fluids” category. Once this is done we’ll need to double-click or right-click > edit our from scratch fluid and enter in the fluid properties. Note for many properties we can define the relationship with pressure and temperature as constant (non-dependent), table, equation, or script.

Importing a fluid

To import a fluid we will follow the same steps of creating the folder under pure fluids. Now instead of right-clicking and adding new we will right-click and select “import”. Then we simply navigate to our desired fluid file and click “Ok”.

Bonus Tips!

  • In the window where you define your fluid you’ll notice the “Test” button. This feature can be utilized to test created fluids to confirm properties against known properties for given pressures and temperatures.
  • We can also copy and paste fluids from the master database into the project database to give us a good starting point for creating similar fluids (or extending properties to higher/lower temps/pressures).

Friday Flownex Tech Tips #5

Custom Result Layers!

The result layers in Flownex have evolved quite a bit over the last few iterations of the code. Although we might typically associate color-gradient results more with 3D CFD, it does have a place in 1D system modeling. Taking advantage of results layers in Flownex can give a very quick understanding of what is going on with our system, and, with a little customization, can be incredibly powerful as an addition to our design and analysis toolbelt. In this post I am using Flownex version

How to create a result layer

To create a custom result layer we must navigate to the results ribbon and select result layer setup.

First we want to right-click in the Result Layers window and add a new result layer.

There are two options to add the schema for our result layer. The first is to right-click on the Selected Result Layer Schemas and add either a specific or generic schema. The second, and my PREFERRED, method is to simply drag and drop results from components on the canvas into this window:

Note that I want to multi-select any component types which will be included in this result layer. This could be any flow components which share a common result such as “quality”. I also convert to generic because I want the result layer to apply to all pipes, not just the pipe I initially drag and drop the property from.

Defining the custom result layer

In this example I have a two-phase water network with a cold external temperature. I want to create a result layer to quickly see if the water is in the gas phase, liquid phase, or somewhere in-between. The problem I have been tasked with solving is ensuring that the water never condenses. I will need to determine where we may need to add additional heat flux to the network.

We can use the Quality result property to determine the phase of our fluid. Quality < 0 indicates fully liquid, quality between 0 and 1 indicates liquid/gas mixture, greater than 1 indicates fully vapor.

To make this work as intended I can set up a gradient with three increments going from -1 to 2. The idea being the lowest increment would encompass -1 to 0, middle increment would be 0 to 1, and the top increment would be 1 to 2. For the gradient mode I made sure to pick <-[MinValue, MaxValue]-> so that the max and min increments would extend past the specified range.

As we apply this to our network we can easily see that we do, in fact, have a phase change from gas at the inlet, to mixture in the second two component, to fully liquid near the outlet.

I may decide to add a heater to our outlet pipe and perhaps a thicker insulative layer to all three to attempt to keep the water in gas phase throughout the system.

Bonus Tip!

  • Result layers can also be super handy when troubleshooting to quickly identify large pressure differentials, choking points, or other outlying fluid properties.

Flownex Friday Tech Tips #4

How to make a great compound component!

Compound components make it easy and efficient to reuse the same collection of components over and over throughout your models. In this post I’ll be going over the basics of making a user-friendly and aesthetically pleasing compound component. In this example I am working in Flownex Version

How to create a compound component

To create a compound component we must first create a local library in the project database. This can be done by right-clicking on the project database in the components pane and select “New Library”.

We can name our new library and choose a picture if desired:

To create our compound component we just need to right-click on the new library and select “New Compound Item”

To build our compound component we’ll use the “edit” function on the compound component. In this example I am building a Lohm resistor component. It’s a good idea to test my component on a separate page to make sure scripts interact as expected and validate results against some given test cases.

Let’s make it functional!

To define the inputs and results we’d like to expose to the user we right-click on the new compound component in the library and select “component setup”.

To add inputs and results we need to navigate to the Compound Setup ribbon and then simply drag and drop inputs and results into the Selected Properties window. Note that we can even grab whole categories of inputs or results to save time!

Now those inputs and results will appear to the user when they add this compound component to their canvas!

Let’s make it pretty!

To make our component more aesthetically appealing let’s replace the boring default icon with one more representative of our Lohm Resistor. To do this we right-click on our compound component again and this time stay in the “Display Setup” tab. We can click the “Choose Picture” button to upload our own icon. To refresh on the image selector check out the blog post on adding a background image.

To correct the aspect ratio so that it shows up looking less squished on our canvas we want to change the settings back in the Compound Setup tab. I’ll change it to 133×34 so that it appears similar in scale to the standard flow components but correct in the aspect ratio.

Now when we place our compound component onto our canvas it should look great!

Bonus Tips!

  • In the compound component setup there is a third ribbon called “Tooltips Setup”. This is where we can define what properties show up when we hover our mouse over the component.
  • Don’t forget we can save compound components in a “database” on a server so that they can be accessed by every Flownex user in your organization.

Friday Flownex Tech Tips #3

Input Sheet Hacks!

Building on last week’s global parameters example I’d like to show some tricks within the input sheet environment. These are really more so excel tricks – but the methodology within Flownex is slightly different. In this example I am working in Flownex Version

Refresher on using Input Sheets

To create a new Input Sheet we will navigate to the project tab, then select “Excel Reports/Pages”, right-click on the Input Sheets folder, and select “New Input Sheet”

To add inputs to the sheet it’s as simple as dragging and dropping the inputs from the component into the desired cell in the Input Sheet.

Formatting our Input Sheet

I like to use color, shading, and border to specify which cells contain inputs so that if I pass the project off to a client or colleague it is immediately clear what variables they should be editing and which cells they shouldn’t change.

To modify the formatting we need to enter “workbook designer”. This is done by right-clicking on the input sheet and selecting “workbook designer”

All of the standard Excel-type formatting is available here, including adding graphs, images, etc. Typical operations are found in the format menu on the top ribbon.

Drop Downs

A more advanced Excel operation I like to integrate into these types of input sheets is a drop-down where multiple inputs may be tied to a given condition. In the example below I set up a scenario for given ambient temperature for cold day, hot day, and nominal day.

In the workbook designer we will click “insert” > “worksheet” and build our list of environmental conditions. On the right we will set the associated temperatures.

Back on Sheet1 we will need to set up the data validation cell reference to this table. Select the cell where we want to add the dropdown and go to data > validation. We will choose list, and reference cells B2:B4 of Sheet2.

We will need to use VLOOKUP to associate the temp to another cell based on this dropdown. Where this becomes valuable is when we have many input variables tied to each of the dropdown selections.

In this example, since we’ve put the applicable temps a single column to the right the syntax for VLOOKUP will be “=VLOOKUP(B5,Sheet2!B2:C4,2,FALSE)”. After this is added it should behave as follows:

As I mentioned before, this trick becomes very powerful when you have many different environmental or operational inputs tied to a single “scenario” that you want to model in an individual run rather than in a parameter study.

Bonus Tip!

  • All of these tricks can be applied to any of the excel-type sheets within Flownex. Remember to be careful with parameter tables as the inputs and results are tied to the columns instead of individual cells.

Using the ACT Console for Automation in Ansys Mechanical

Editor’s Note: The other day we got a tech support question. A user was creating lots of STL’s from his Ansys Mechanical results and was tired of clicking so much. They were wondering if we could give them a few hints to get going. Alex Grishen, Matt Sutton, and Joe Woodward all pitched in on the email thread. Then, seeing how useful it was Alex converted it into a PowerPoint that we could share with other users.

A big change in Ansys Mechanical scripting with ACT is the introduction of a recording button. This allows you to record your actions as a starting point for your script. The tutorial also includes links to other resources.

If you find yourself clicking away and thinking, “there has got to be a way to automate this,” then you need to try automation out.


A Comparison of ANSYS Fluent Meshing and Ansys Meshing for CFD

If you have ventured into Computational Fluid Dynamics (CFD), you know that the meshing process can be laborious, but critical to the solve-time and solution accuracy. You may have also noticed that there are a lot of meshing tools to choose from, and while it is tempting to think of them as a commodity, they certainly are not. The types of meshes and the workflows available in the tool can make or break your simulation (and your mood). 

Ansys Meshing and Ansys Fluent Meshing are the two most used Ansys meshing tools for CFD. It is thus useful to learn about the commonality and difference between the two. Common questions new (and existing users) have are:

  • How do the two tools fit into the Ansys CFD workflow?
  • How are the two tools different?
  • When is one tool preferred over the other?

Let us start with how these two fit into the Ansys CFD workflow. In particular, let us cover how both integrate with Ansys Workbench.

Ansys Meshing Workbench Integration

Ansys meshing is a staple of the workbench environment. Its physics-aware mesh settings allow you to tailor meshes for Electromagnetics, Structural FEA, CFD, etc. One can drag a mesh component system onto the project or bring it in as part of an analysis system. Figure 1 shows Ansys meshing component in Workbench as well as the CFD analysis systems with Ansys meshing. It is seamless.

Figure 1: Ansys Meshing Workbench Integration

Fluent Meshing Workbench Integration

Many users use Fluent Meshing in standalone mode instead of Workbench as part of the “New Fluent Experience Workflow.” However, Fluent meshing is available in Workbench as well. You can import Fluent Meshes to Polyflow and CFX, not only Fluent. Note that to do so, one must enable the beta feature in the workbench options as shown in Figure 2 to allow connections between Fluent Meshing and Polyflow or CFX.

Figure 2: Fluent Meshing Workbench Integration

Meshing Topologies

Fundamental to meshing is cell topology. It is important to first note that Fluent meshing is a strictly 3D mesher, while Ansys meshing can generate 2D and 3D meshes. In 3D, both tools can generate meshes with tet, hex, prism/wedge, and pyramid elements. Fluent’s Mosaic Meshing technology sets itself apart by leveraging conformal polyhedron elements. Polys offer advantages over tets in that they greatly reduce cell count, offer good gradient calculations because of the additional faces, while still being easy to use for complex geometries.

Figure 3: 3D Element Types, Polyhedrons are Only Available in Fluent Meshing

Conformal vs Nonconformal Meshes

Keep in mind that not all CFD tools are compatible with non-conformal meshes. Reminder, conformal meshes match every node to a node in the adjacent cells. Ansys CFD tools can handle non-conformal mesh mapping at interfaces i.e. a coarse solid mesh interface with a fine fluid mesh. However, CFX and Polyflow are not compatible with non-conformal cell structures like standard Fluent meshing hex-core meshes with 1/8 octree transitions. Do not worry though, Fluent meshing users can now easily fill in these transitions with pyramids via the advanced setting “Avoid 1/8 octree transition” and thus achieve a conformal cell structure.  

Figure 4: Fluent Meshing Conformal Hex-Core is Compatible with Ansys CFX and Polyflow

Volume Mesh Methods

The volume mesh methods available in these two tools have some commonality but also significant differences. Often the decision as to which tool should depend on which mesh method is most appropriate for your geometry and your real-world constraints like computing power, project deadlines, accuracy requirements, etc. For example, if your manager comes by your desk and tells you he wants a rough estimate for pressure drop through a manifold by the end of the day, you probably do not have time to block off a structured mesh with perfect boundary layer resolution. Figures 5 and 6 provide a high-level comparison of the methods available in both tools and you should use them to guide you as you plan your CFD model.

Figure 5: Ansys Meshing Volume CFD Mesh Methods

Figure 6: Fluent Meshing Volume Mesh Methods

Meshing Workflows

So how do you use these tools? Let us review that next because while the general steps are similar, the workflow from cad to finished mesh differs significantly.

Ansys Meshing Workflow

I would sum up the Ansys meshing workflow as flexible, parametric, and iterative. It is flexible in that you can mix/match mesh methods for different bodies and sequence them as you wish. Your control of the mesh can be as simple as accepting the physics-aware global mesh control defaults or you can take a fine comb and specify edge, node, face, body sizing, etc. in any sequence to achieve mesh refinement exactly where you want it. It is parametric in that you can have all controls be driven by user-defined name selections. These name selections can be automated based on size/ location/ associativity via the worksheet tool allowing you to update your geometry and have mesh settings propagate through. Lastly, it is iterative because you can generate the mesh for sections of the model, check quality metrics, and iterate until the mesh is ready for analysis.

Figure 7: Ansys meshing Workflow

Fluent Meshing Task-Based Workflows

Two task-based workflows are available in Fluent meshing and they cover most use cases: Watertight and Fault-Tolerant. These workflows guide users step by step through the meshing process beginning with geometry and import and ending in volume mesh generation. These workflows are customizable and can be saved to be re-used in future analyses.

Figure 8 compares the two workflows at a high level. As the names suggest, the watertight workflow is used for fluid and/or solid geometry that is relatively clean and watertight. Most users opt for this workflow when they are fortunate enough to have clean geometry or after using the capable geometry clean-up tools in Ansys Spaceclaim.

However, sometimes CAD is very dirty and/or composed of many parts that make it a laborious undertaking to clean up. The fault-tolerant meshing (FTM) workflow excels here. FTM can be used with all major CAD formats like STL, JT, etc. The best way to visualize FTM for external flow applications is to picture shrink wrapping a car. For internal flow, picture blowing up a balloon inside the part. The “wrapping” process covers up small leakages and errors in the CAD. You use the wrap to build a surface mesh and then a volume mesh.

Figure 8: Fluent Meshing Task-Based Meshing Workflows

Usability Features

Figure 9 lists some notable usability features in both tools to consider when deciding which tool is best for the project. The list is of course not exhaustive, but those listed are notable when it comes to having an efficient meshing experience. 

Figure 9: Comparison of Usability Features in Ansys Meshing and Fluent Meshing


To summarize, both Ansys Meshing and Fluent Meshing generate high quality meshes and they provide convenient usability features for efficient and accurate CFD analysis.

Notable differences between the two include:

  • Cell types/ Methods:
    • Fluent Meshing’s Mosaic-Enabled Parallel Poly-Hexcore Meshing combines high geometry fidelity, cell quality and fast solve time.
    • Ansys Meshing Sweep and Multi zone meshing enable users to create structured (primarily) hex meshes with intuitive control and flexibility.
  • Workflows
    • Fluent Meshing’s task-based workflows are easy to use and tailored to the most common CFD applications.
    • Ansys Meshing provides a flexible environment allowing users to leverage smart physics-based global controls while also providing detailed local mesh control.
  • Usability Features
    • Fluent meshing offers the ability to create custom workflows that can include journal files, local sizing and automatic mesh improvement tasks.
    • Ansys meshing worksheets enable mesh operation recording and name selection definition based on size, location, or topology for mesh control

Some readers are likely still interested in the answer to the blunt question: Which tool should I use?

Well, it depends:

  • When using Fluent to solve, the Poly-Hexcore mesh topology offers a clear advantage making Fluent Meshing the likely choice.
  • When using CFX or Polyflow, you can still leverage conformal hex-core meshing or tetrahedral meshes in Fluent Meshing, but the robust integration of Ansys meshing with CFX/ Polyflow makes it the preferred tool.
  • If a structured hex mesh is needed or preferred to minimize mesh size or to align the mesh with the flow direction everywhere, then Ansys meshing offers a more user-friendly environment for this topology via sweep or multizone meshing.

Ansys Mechanical Selection Information: Even More Useful Than We Thought

I have always known that the Selection Information window is extremely useful, giving us properties like Surface Area, Edge length, and the distance between two selected nodes.

But it will also do a few things that I had not known about, until recently. 

Normally you can Export the Nodal Locations with a solution result plot, but for that you have to solve the model first. If you have not yet solved the model, you can still get the nodal locations using the Selection Information window, though it is a little finicky.

  1. Open the Selection information window from the Home tab.
  1. Select all the nodes by selecting one node and hitting CTRL-A.
  1. In the Selection Information window, click the ‘Node ID’ header to sort by Node ID number.
  1. Select the first cell of the data you want.
  1. Scroll all the way to the bottom of the Window, and while holding down the Shift key, select the last row of the adjacent columns that you want to select.
  1. Once selected, right-click on it and hit “Export Text File”, or “Copy” and then Paste the data into Excel.

The trick is that the “Export Text File” and “Copy” do not show up if you pick the headers to select the entire columns like you do in Excel.

You can do the same thing to thing to get the mass properties of an assembly.

Selecting bodies will give you the mass, centroid, and principal moments of inertia. You can get this in the Worksheet view when the Geometry branch is highlighted.  Unlike the Worksheet, however, we can change the options to show the Moments of inertia about a given coordinate system.

We can now export out the six moments of inertia about any given coordinate system.  Next, I will attempt the find the ACT calls to do the same thing.   Stay tuned…

Simulation Workflow from Ansys Electronic Desktop Circuit to Ansys HFSS

ANSYS Electronics Desktop (AEDT) is a collection of powerful tools for simulation. AEDT Circuit provides time domain as well as frequency domain analyses. AEDT Circuit has high execution speed and robust ability to handle circuits of active and passive elements. Analysis types range from DC, Linear Networks (frequency domain), Transient, Oscillator, TV Noise, Envelope, Harmonic Balance, VerifEye (Statistical Eye Diagram), AMI Analysis, and more, with integrated support for additional co-simulation with tools like HSPICE or Matlab.

AEDT Circuit also provides an easy way to create and simulate planar structures such as microstrip, stripline, coupled lines, co-planar strips, co-planar waveguides, and other Printed Circuit Board (PCB) elements which can then be converted into a physical layout of the PCB. In this blog a simple workflow is explained to generate and model a planar structure in Circuit, then export the circuit model to HFSS 3D layout and HFSS for further analysis.

Define your substrate:

After inserting a Circuit Design, right-click on Data under project tree, choose Add Substrate Definition. This brings you to Substrate Defintion window that gives you many optios of substate types. You can choose the type of substarte you need and enter the dielectric and trace metalization information as shown in Figure 1. This substrate is used in calucalation of line impedances.



Figure 1. (a) Substrate Definition options of substrate types, (b) the definition of strapline used in this blog.

Define your stackup:

The stackup in Circuit is very similar to the stackup in HFSS 3D Layout. Please note that the definition of substrate is not automatically transferred to the stackup. The stackup needs to be defined by the user. Select the Schematic tab and from the top banner choose Stackup. Then define each layer. This stackup will be used in creating the layout and transferring it to HFSS 3D Layout.  Figure 2 shows the stackup used for the FR4 substrate that was defined in Figure 1(b).

Figure 2. Stackup definition that will be used to transfer the layout to HFSS 3D Layout.

Create the circuit:

Circuit provides a large selection of component libraries. To see the Component Libraries, click on View and check Component Libraries. In the Component Libraries window look for Distributed and expand it. Under this category you see different types of PCB structures. We will use Stripline library. Expanding Stripline library there are various categories, including Transmission Lines. We need Transmission Line Physical Length component, as we would like to use pieces of transmission line to create an ideal branch line coupler. You notice by hovering the cursor on the name of the component a small information windows shows the symbol and information about the component, alternatively you can right-click on the name of the component and choose “View Component Help” to get to the complete help page about the component. Once a component is selected and placed in the circuit it will also appear under the Project Components list at the bottom of the Component Libraries list. This provides a quick way to reuse them (Figure 3).

Figure 3. (a) Component Libraries, (b) Project Components and information window.

Let’s choose a physical length transmission line and place it on the schematic window. By double clicking on the symbol the Properties window opens and can be modified. Explicit values or parameters can be used to define the line properties.

Are you starting to calculate the line impedance to figure out the dimensions? Wait, there is a tool here that helps you do that. Click on TRL to open the line calculator. The line can be synthesized based on its impedance and electrical size by choosing the correct frequency and clicking on Synthesize (Figure 4). Using physical length transmission lines (50 and 35 ohms) and Tee lines and 4 ports I created an ideal branch line coupler (Figure 5). I ran a frequency analysis to make sure the circuit is working properly.

Before moving on to export the layout to HFSS 3D layout we can do one more step. To keep the substrate definition and reuse it layer, click on File->Save As Technology File. This would save the definition of stripline substrate in the personal library. Next step is to export the layout to HFSS 3D layout.

Figure 4. Properties and TRL windows.

Figure 5. Branch line coupler schematic.

Export to HFSS 3D Layout:

Under Schematic tab, click on Layout, or from the top menu choose Circuit->Layout Editor. Notice that this layout editor is very similar to the HFSS 3D Layout window. Click Ctrl+A, to select everything. Then choose Draw form the top banner and click on Align MW Ports (Figure 6), notice that other tools are also available under Draw, such as Sanitize Layout and Geometry Healing. You might need to do a bit more corrections and cleaning before exporting the layout. Before exporting the geometry, you can also check the HFSS Airbox using Layout->Draw HFSS Airbox.

Figure 6. Aligning ports.

You may change the orientation to Isometric for a better view of the box (Figure 7).

Figure 7. Layout editor in Isometric orientation, showing the HFSS airbox.

Make sure everything is still selected or select them with Ctrl+A, then under Edit, choose Copy to HFSS 3D Layout.  Now an HFSS 3D Layout design is created. Open the design. There might be a few things you like to change. Expand the ports, the name of the ports might have changed. You also note that the ports are of Gap type. You can select the port and in the Properties window, under HFSS click on Gap and choose the Wave port. Just note that the wave port cannot be internal to the design. You might need to adjust the air box size or create PEC port caps in HFSS later.

The second point to consider is about the parameters defined in Circuit. Remember that we defined W35 and W50 as the line widths in Circuit. The parameter are transferred but several local variables are also created based on them. For example click on the 50 ohm line. The width is now shown as a new parameter. You can see the complete list of parameters that are created by choosing HFSS 3D Layout->Design Parameters. Under the Parameters Default you still see W35 and W50, but moving to Local Variables tab you see the parameters created based on the Parameters Default.

Figure 8. Properties window.

Export to HFSS:

Any HFSS 3D Layout design can be exported to HFSS. Click on Analysis from the project three. Right-click and Add HFSS Solution Setup (Figure 9). There is no need to run this analysis. It just needs to be created. Right-click on the HFSS Setup that was just created, select Export->HFSS Model (Figure 10). Select the name and location for this file. Open this file and examine the model. Notice that the parameters are not transferred to HFSS model, this is because all parts of the model are imported (Figure 11). The default ports (Gap ports) appear as lumped port. If you changed the Gap ports to Wave ports in HFSS 3D Layout, it is now the time to add the PEC port caps or change the airbox to make sure ports are not internal to the model.

Figure 9. Adding HFSS solution setup.

Figure 10. Exporting the layout to an HFSS model.

Figure 11. HFSS model.

It is important to note that the type of analysis in Circuit is different than HFSS which will lead to slightly different result (Figure 12), which is expected and emphasizes the value of simulating structures in a full-wave field simulator like HFSS.



Figure 12. (a) Branch-line coupler S parameters from Circuit model, (b) the imported HFSS branch-line coupler S parameters.


This was a short blog showing the workflow for importing PCB and planar designs from AEDT Circuit to HFSS 3D Layout and HFSS. The workflow is a good method to quickly create the HFSS model of a planar structure.

If you would like more information related to this topic or have any questions, please reach out to us at