HomeIndustriesProductsServicesPartnersAbout Us

Customer Login

Home arrow CFD-ACE+ User Tips arrow Simplifying DTF Files
Simplifying DTF Files Print E-mail
As your geometries and grid systems get more and more complex, you may find it desirable to simplify your life by "simplifying" your DTF files.

It is not uncommon these days for you to build a grid system that contains hundreds if not thousands of boundary condition patches. Likewise models often have hundreds of volume condition regions as well. Many of these boundaries are artifacts of the grid generation process (blocking strategies and construction entities) and not necessarily representative of the physical part. The problem is that each of these entities (BCs and VCs) take up resources which can have a significant impact on the time it takes to read or write a DTF file. Not to mention the complexity of working with a model that has 2000 BCs from which you are trying to pick the single BC that needs to be set to isothermal @ 350K!

This note describes a process that can be performed on most DTF files to "simplify" them. After simplifying the file you will be left with a DTF file that contains a single zone and has only enough BC and VC records needed to describe the model. That is, all BC/VC records with the same information (name and values) will be combined into one record. This can often take a model file with more than 1000 BCs and simplify it to a model with less than 10 BCs. This greatly speeds up file read/writes and makes model setup much more easy and error free.

Notice in the table below the drastic change in the number of entities and file load times for the "simplified" versions of a typical fuel cell or hard disk drive model file.

Model #BCs #VCs GUI Load Time
Fuel Cell (Orig) 3096 279 135 sec
Fuel Cell (Simplified) 8 11 20 sec
Disk Drive (Orig) 5247 783 322 sec
Disk Drive (Simplified) 20 1 23 sec

If you have ever thought it would be nice to reduce the number of BCs or VCs that you have to deal with, then please read on for an example of how to simplify your file.


Simplifying Example

Note: All files used for this example can be downloaded by clicking here.

Let's look at a simple example of a cylinder geometry where the bottom side of the cylinder must be broken into several unique patches for specifying special boundary conditions, while the outer side of the cylinder will be considered a wall and the top of the cylinder will be an outlet. The entire volume of the cylinder will be considered as a single fluid region.

bottom view View from Bottom (cyan=wall, yellow=inlet) top view View from Top (cyan=wall, green=outlet)

The easiest way to make this grid system is to grid the bottom (unique) side of the cylinder and then extrude it to make the full cylinder. In this case we have made a prismatic grid system. So 2D unstructured domains were made and then extruded to make the 3D prism grids.

At the completion of the gridding we have 17 volumes (one for each prism domain) and 100 boundaries (tops, bottoms, sides, and internal interfaces between the domains). The picture below gives you some indication of the complexity of the grid system (several surfaces have been removed for clarity).

grid

Now for the trick! Based on the problem spec given above we know that we only need to physically specify 1 volume region (since everything is fluid) and 4 unique boundary conditions:

  • INLET on the bottom pieces
  • WALL on the bottom pieces
  • WALL on the side
  • OUTLET on the top

Before we can simplify the model we need to make sure that we have uniquely identified the boundaries. In this case we have used CFD-GEOM's BC/VC editor to set the BC names and types appropriately (e.g., bottom_inlet, bottom_wall, side_wall, and top_outlet).

We can then use the dtf_decompose utility with the -combined option to automatically simplify this file for us.

dtf_decompose -combined -file_out cylinder_simple.DTF cylinder.DTF 1 1

The above command should be run from the ms-dos command prompt or unix shell. (Make sure you are in the directory where the model DTF file is located!)

The syntax can be explained as follows:

dtf_decompose
The utility we are going to use. Included with the ACE_SOLVER package and must be version 3.0.24 or greater (You can check the version you have by running "dtf_decompose -v" from the command line. On MS-Windows systems the version number will be written to a file dtf_decompose.version in the current directory.)
-combined
The -combined option will collect all of the BCs which have the same name and same properties into one record. Likewise for VCs.
-file_out
The next argument will be the output DTF file
cylinder_simple.DTF
This is the new file that will be created from this operation
cylinder.DTF
This is the input file which will be processed
1 1
First number is the sim# to process in the input file (almost always will be 1).
The second number is the number of zones to be created in the output file (must be 1).
After running this command you will have a new DTF file (cylinder_simple.DTF) which will be a single zone file with only 1 volume condition and 4 boundary conditions! You can now use this simplified file just like any other, including parallel simulations.

When you load the simplified file into CFD-ACE-GUI you will see only 4 boundary conditions to pick (hence the "grouping" has already been done for you).

CFD-ACE-GUI BC Explorer List Before Simplification
(only 10 of 102 BCs shown here!)

before

CFD-ACE-GUI BC Explorer List After Simplification
(4 BCs total! - bottom_wall picked and highlighted)

after gui

This was a simple example but this trick can be used on many models to help make your problem setup easier and on more complicated examples this will often cut file read/save by an order of magnitude. Try this process the next time you are faced with a complex model where simplification might make your modeling efforts easier and more efficient.

If you have any questions about this feature or would like us to discuss some other topic in the future, please let us know.

Regards,
Richard Thoms
ESI CFD Customer Support

Caveats:

While this is a great feature it does have a few limitations. Since we are using the dtf_decompose utility we are faced with it's limitations, most notably the lack of full support for models with thin walls and arbitrary interfaces. There are ways to handle these, but it is beyond the scope of this note, please contact us if you need help.

You must be aware that after processing the file you will end up with a single zone unstructured grid system. So a structured block coming in will be converted into an unstructured hexahedral grid system. This should not cause any problem except maybe if you are using the grid deformation module which handles structured and unstructured deformation differently.

The conversion to fully unstructured grid system also means that you will no longer be able to use structured IJK sliders in CFD-VIEW but rather should use XYZ cuts to view the data on the simplified file.

The simplification process obviously alters the DTF file. Because of this, CFD-GEOM will not be able to update the grid system in a simplified DTF file. Instead you can update the grid system in the original DTF file and then perform the simplification process again.

User Feedback!

Martin asks:
Just a question on this feature: How about a model that has more than a single material, e. g. two different solids, one fluid. Does the dtf_decompose utility take care of combining blocks and domains to the corresponding number of zones, according to VC-names (or material names?). What to do to enforce this?
Richard responds:
Hello Martin,

I did not go into the VCs because it was going to make the note too long but you can replace all instances of BC in the note with VC and everything works the same way.

That is, if you go into CFD-GEOM and name each VC uniquely you will get all of them collected into a single VC.

So for the 17 zones (and VCs) in the cylinder.DTF file, if you named 5 of them to "solid_part" and the remainder you left as "NoName" or the default setting, then after the dtf_decompose -combined operation you would be left with a DTF file that still has 1 zone but it would contain 2 VCs. Give it a try.

Personally, I use VC names to make this happen but you could also use material name. The idea is that a "simple" VC will be made for every unique combination, therefore:

Key, Name, Material, Type
100, housing, steel, solid
102, housing, steel, solid
103, housing, steel, solid
104, housing, steel, solid

Would all collapse to a single VC

Key, Name, Material, Type
100, front, steel, solid
102, front, steel, solid
103, top, steel, solid
104, bottom, steel, solid

Would collapse to 3 VCs (only 100,102 would be combined).

Thanks for the feedback on the note!

 

How to Model DC Plasma Discharge Using CFD-ACE+

There is no direct option in CFD-ACE-GUI to set up a DC plasma discharge model, but the existing CCP solver can be used to model a DC Plasma discharge problem.

Spatial Differencing Schemes for Flow

Spatial differencing schemes control the spatial accuracy of the simulation. Several spatial differencing schemes are available in CFD-ACE+ to estimate the convective term in the transport equations.

Using the Contact Model In Structural Simulations

While solving structural problems, in a large number of cases there are physical contacts between two solid components. Numerically it is difficult to handle this situation as the grid volume (on the fluid side) collapses to zero at the contact surfaces.

Use of the Material Database

In a working group, it may be required to exchange material data between different computers and users. Both material property and reaction data are stored inside the CFD-ACE+ Database. This data can be store in different places and allow different access possibilities (privileges) depending on the type of database.


© 2012 ESI Group CFD Portal