My mother in law is still getting used to the concept of a smart phone.
MIL: “Do you have a GPS so you know how to get there?”
Me: “There’s an App for that.”
MIL: “Do you have a flashlight?”
Me: “There’s an App for that.”
MIL: “Do you have a chromatic tuner?”
Me: “There’s an app for that.”
OK, maybe my mother-in-law didn’t ask about the tuner, but there is in fact an app for that.
In similar fashion, now that ACT (ANSYS Customization Toolkit) is a reality, we can start answering questions with, “There’s an Extension for that.” What is an extension? It’s a bit of customized software that you can integrate with ANSYS Workbench to have it do things that aren’t built in to the current menus.
We’ll leave the nuts and bolts of how Extensions work for another article, but please be aware that current ANSYS customers can now download several Extensions from the ANSYS Customer Portal. We’ll take a look at one of these in this blog entry.
To access the currently available extensions, you must have a login to the ANSYS Customer Portal and be current on maintenance (TECS). Within the customer portal, the Extensions are available by clicking on Downloads > Extension Library; then click on ACT Library.
As of this writing there are 12 extensions available for download. These vary from the sophisticated Acoustics Extension for 14.5 to simpler extensions such as the one we’ll look at here which allows you to change the material property numbers of entities in Workbench Mechanical.
Once you have downloaded the desired extension, you’ll need to install it. For use in the current project, you click on Extensions at the menu near the top of the Workbench Window and click on Install Extension.
After clicking on Install Extension, you browse to the folder in which you have saved the downloaded extension. The Extension file extension (I’m not making this up) is .wbex. Here is what it looks like when loading the material change extension:
Next you must click on Extensions again the Workbench window, and click on Manage Extensions. That will bring up this window.
Check the box next to any extensions you want to load, then click Close. If you have already launched the Mechanical editor, you will probably need to exit Workbench and get back in or at least click on File > New and reload for the new extension to show up.
When you open the Mechanical editor, the new extension should show up in the menus. Here is what the material change button looks like after the extension has been loaded:
Each time you open a new Workbench session, you’ll need to click on Extensions > Manage Extensions if you want an extension to be loaded into the Mechanical editor.
Alternatively, you can have an extension load every time by clicking on Tools > Options from the Workbench window, followed by a click on Extensions. Enter the name of the desired extension in the box, as shown here.
After clicking OK, any new Mechanical editor session will have the material change extension loaded.
So, what good is it? I will now show a simple example of implementation of the material change extension. The idea here is that we have a bolted connection and we want to look at two different conditions by changing the material properties of the washers to see what effect that has on the results. Using the material change extension, I can force the washers (and nuts and bolts too) to have a specific material number rather than the default value assigned by Workbench. The material number is used in the Mechanical APDL batch input file created by Workbench to identify which elements have which material properties.
Now before you APDL gurus get all riled up, yes, I know this can be done with the magic ‘matid’ parameter. That’s how we’ve been doing things like this for years. The material number extension is nicer since it’s an actual button built into the GUI. We’re really trying to show how extensions work here, not necessarily the best way to simulate a model with changing material properties.
That all being said, here is what it looks like. Clicking on the ‘matchange’ button in the menus inserts a new matchange object in the tree under the analysis type branch. In this example, the matchange button has been clicked three times, resulting in three matchange objects.
The matchange functionality requires that we create Named Selections for any entities for which we want to change material property numbers. How do I know that? When I downloaded the extension from the ANSYS Customer Portal, a nice read me .pdf file came along with it.
Here I have clicked on matchange 2 in the tree and identified the Named Selection for the entities I want to change, in this case the named selection Washers. I then entered my desired integer material number for these entities, 102.
Finally, in order to demonstrate that it works, I added on command snippet under the Static Structural branch, containing these APDL commands:
Those commands select the washers by my user-defined material number (I could have also selected by named selection). The commands then define new material properties for material 102. Again, there are other ways to do this, but this shows the effect of the extension. Note that this command snippet is set in the details view to only be active for load step number 3. Load step one applies bolt pretension. Load step 2 solves for the operating load with the original material properties and load step 3 solves for the same loads but with the modified material properties for the washers.
This plot shows von Mises stress in the washers vs. loadstep/substep. As you can see in the graph below the stress plot, indeed the von Mises stress is changing due to the material change from step 2 to step 3. This was a nonlinear analysis with large deflection turned on.
So, this should give you a taste of what extensions are and what can be done with them. The next time you are asked to do something in Workbench for which there isn’t a built-in menu, you may be able to say, “There’s an extension for that!”
Users of graphics-intensive software like the ANSYS family of products occasionally encounter problems caused by graphics or video drivers. It’s important to keep your drivers up to date. In this entry we will summarize some of the symptoms of driver problems and will let you know how to find and install the latest drivers if needed.
Recently I found two issues with my software tools that ended up getting fixed by simply updating the graphics driver. I first noticed the problem with ANSYS Maxwell. While Maxwell had displayed on my machine with no trouble in the past, I found after installing the latest version that it would not load past the initial splash screen. Older versions now had the same problem as well. Also possibly related, I noticed that certain plots in ANSYS DesignXplorer were showing up as big red X’s rather than the response surface plots I was expecting. Most software and plotting worked just fine. There were just a couple of things that were not working. With some input from the helpful staff at ANSYS, Inc., the Maxwell problem was diagnosed as a probable graphics driver issue. Sure enough, once I downloaded and installed the latest driver for my graphics card, goodness was restored and both Maxwell and DesignXplorer were back to normal on my computer.
How can you obtain the specs on your graphics card so you can determine if you have the latest driver or not? On Windows 7, one way to do it is to open up the Control Panel. In the View By setting at upper right, specify Small icons. Then click on Performance Information and Tools. Next click on the link labeled “View and print detailed performance and system information.” The resulting window will have a Graphics section which will list your display adapter type (graphics card manufacturer and model) along with the version number of the installed driver.
There are a couple of ways to check on whether the driver you have is the latest or not. One way is to use Windows Update, although keep reading to see why this is not recommended. On Windows 7 this can be done by right clicking on the desktop and selecting Screen Resolution, then Advanced Settings, then Properties on the Adapter tab, then Driver tab, Update Driver. However, as the helpful staff at ANSYS, Inc. has pointed out to me, Windows Update is not always aware of the absolute latest drivers available. I ended up learning that one the hard way.
Therefore, the recommended method of checking on your graphics driver version is to go to the manufacturer’s website. My graphics card happens to be an AMD FirePro V5900. A web search on AMD FirePro easily gets me to the AMD website page for FirePro professional graphics cards. There is a “Find a Driver” link at upper right. Using that link and knowing the model number of my card, I can easily find the latest driver version and download and install it if it’s newer than the version currently installed. Similarly, the nVidia website has a prominent “Drivers” link on their home page.
The bottom line: it’s always a good idea to make sure you have the latest driver installed for your graphics card. Certainly if you notice that your software is not displaying correctly or just hanging for no reason, one of the first and easiest things to check is whether or not you have the latest graphics driver installed.
In part I if this series, we saw how to use Newton-Raphson residual plots as an aid to vanquishing convergence difficulties in ANSYS Workbench Mechanical. In part II, we will see how to quickly launch the ANSYS Mechanical APDL user interface to plot elements that have undergone too much distortion, thereby resulting in a convergence failure. Several problems can cause convergence failures, but one that can be particularly frustrating is elements that have undergone too much distortion.
Currently there isn’t a way to isolate and view elements that have triggered a convergence failure due to too much distortion within the Workbench Mechanical user interface. Fortunately we have access to the older ANSYS Mechanical APDL interface, which does allow us to select and visualize elements that have undergone too much distortion. This can be useful in that it tells us exactly where in the model the elements are failing. Hopefully we can use this information to take corrective action in Mechanical such as making local mesh modifications, adding more details to geometry, etc.
So, how do we do this? Rather than try to give a lesson on how to use the Mechanical APDL interface, we’re just going to give the commands needed to be clicked with the mouse or typed in. We’re following the K.I.S.S. principal, meaning Keep It Simple, Silly.
The procedure to follow includes these steps:
1. Identify the directory in which our results file resides.
2. Launch ANSYS Mechanical APDL.
3. Point to the results file identified in step 1.
4. Modify the nodal coordinates so they are in the deflected state at the point of convergence failure.
5. Plot those error-causing elements.
We will now go into more detail using a model that has convergence trouble. This model solved successfully for the first 4 substeps, but on the 5th substep the solution failed to converge. We get this error in the solver output (Solution Information):
*** ERROR *** CP = 2872.649 TIME= 16:29:51 One or more elements have become highly distorted. Excessive distortion of elements is usually a symptom indicating the need for corrective action elsewhere. Try incrementing the load more slowly (increase the number of substeps or decrease the time step size). You may need to improve your mesh to obtain elements with better aspect ratios. Also consider the behavior of materials, contact pairs, and/or constraint equations. If this message appears in the first iteration of first substep, be sure to perform element shape checking.
Looking at the model, we see we have an indenter that is being pressed into a block of material. The indenter is steel and the block is aluminum. Both have nonlinear material properties defined.
Total deformation for the last converged substep looks like this:
The unconverged results show that we have some elements that have large nodal deflections:
So, our error message tells us that one or more elements have become highly distorted. Which elements are they? The following procedure will show us how to view those for sure, using Mechanical APDL.
Here are each of the 6 steps mentioned above, in detail:
1. Identify the directory in which our results file resides:
We do this from the Workbench window, by clicking on View > Files. Scroll down in the resulting list of files until you find file.rst, the ANSYS Result file. The location will be listed in the resulting information, but the text is not selectable. To make it easier, right click on the file.rst row and select Open Containing Folder.
From the top of the resulting Windows Explorer window, select the folder path and right click > copy.
2. Launch ANSYS Mechanical APDL:
Click Start > All Programs > ANSYS 14.0 > ANSYS Mechanical APDL Product Launcher. In the resulting window, paste in the directory path in the Working Directory box:
Click the Run button at the bottom of the window. The Mechanical APDL user interface will start.
3. Point to the results file identified in step 1:
Click on General Postproc on the left, then Data & File Opts. In the resulting Data and File Options window, click on the […] button below Read single result file:
You should see the result file, file.rst, available in the resulting window. Click on that file, then click Open. Click OK in the Data and File Options window.
We need to read in one set of results to load the model into the Mechanical APDL database. Click General Postproc > Read Results > Last Set.
4. Modify the nodal coordinates so they are in the deflected state at the point of convergence failure:
Let’s plot the elements so we can see the model (this will show the elements with nodes in the original, undeflected positions). We’ll just have you type in the command to make the element plot: in the input line near the top of the window, type eplot, then return.
The plot will show in the default “front” view, looking down the global Z axis. Note that if weak springs are on in Workbench Mechanical, you will see these as line elements pointing away from the model in a few places.
The nodal modification is performed in the preprocessor. Click on the Preprocessor command on the left side of the window. Type in this command in the input line to modify the nodal positions to those of the unconverged (last set) of results:
Plot the elements again. You should now see the deflected nodal positions.
Using the view controls over on the right side, we can rotate and zoom in. A short cut is to use the right mouse button to box zoom and Ctrl + Right Mouse Button to rotate the model. Now we can better see where the deformations are occurring. We still have all elements selected and plotted, so the next step will be to filter the plot to show the error-causing elements.
5. Plot those error-causing elements:
Shape checking of elements consists of two levels, warning and error. The solver will not continue if any elements exceed the error level. Shape checking is discussed in detail in section 13.1 of the Theory Reference in the ANSYS Help. We have the ability to plot both warning level elements and error level elements, using this procedure:
On the left side of the window, click on Meshing > Check Mesh > Individual Elm > Plot Warning/Error Messages.
With all boxed checked, this is the resulting plot in the front view. “Good” elements are displayed in blue, “warning” elements in yellow, and “error” or failed elements are shown in red.
When the elements are very highly distorted, their surfaces can’t always be displayed and it looks like there is a hole in the model. This won’t always happen depending on how highly distorted the elements are, viewing direction, etc..
If we uncheck the Good Elements (blue) box, then only the warning and error elements are displayed.
When you are done viewing the elements, click on the Quit button near the top, and exit without saving to get out of Mechanical APDL.
So what does all this tell us? For this model, the elements below the indenter body are experiencing too much deformation (red elements). Some elements in the indenter body are at the warning level but not the error level (yellow elements). The fix could be to apply the load more gradually (more substeps), refine the mesh at this location, or maybe a combination of both. In this case we also changed the Workbench Mechanical shape checking from Standard to Aggressive Mechanical.
Unable to converge. Convergence Failure. Failure to Converge. Never nice words to see when you are trying to get your simulation done.
If you’ve encountered convergence failures while running nonlinear structural analyses in ANSYS Workbench Mechanical, this two part series is for you. What is a convergence failure? In a nutshell it means that there is too much imbalance in the system. The calculated reaction forces do not match the applied loads and even though the program tries hard to make changes to overcome the imbalances, it hasn’t been able to do so and stops. If we look at the Force residuals under Solution Information, we will see that the solver has been unable to get the force convergence residual, or imbalance force, to drop below the current criterion
Test model example: Newton Raphson Convergence Failure; Solution Stops
We won’t spend a lot of time here explaining the Newton-Raphson method, convergence, and residual plots here, since we wrote a Focus article back in 2002 which discusses them in more detail. The article begins on p. 7 at this link:
The context of that article was Mechanical APDL, but the article is directly relevant since solving in Workbench Mechanical is done in Mechanical APDL in batch mode.
In crayon terms, we want the purple line to drop below the blue line. When it doesn’t and the solver is out of options to keep trying, the solution stops and we get an error message.
Now what? The traditional knobs to turn are to increase the number of substeps, decrease contact stiffness if contact is involved, perhaps add more points to the plasticity curve, etc. But what if something else is the problem? How can we identify where the problem is?
In this part I article we will discuss how to plot the Newton-Raphson residuals as contour plots to see where in the model the highest force imbalances are located. Often this is useful information to help us figure out what is going on so we can take corrective action. First, be aware that we must turn on the Newton-Raphson residual plots prior to solving. That means you either have to turn them on and re-solve after a convergence failure, knowing that you’ll get the same failure again, or you need to clairvoyantly (or perhaps just prudently) turn on the residuals prior to attempting the initial solve. Why aren’t they on all the time, you ask? Most likely because they slow things down just a bit and also require a bit more disk space than otherwise, although if the solution runs to completion no Newton-Raphson residual plots are saved.
Here is how we turn them on. In the Details view for the Solution Information branch, change the Newton-Raphson Residuals setting from the default of zero to a nonzero number such as 3 or 4. That will continuously save the last 3 or 4 Newton-Raphson residual plots for viewing as contour plots after the solution has stopped due to a convergence failure.
After the solution has stopped, the Newton-Raphson residual plots will be available under the Solution Information branch.
The quantity plotted is actually the square root of the sum of the squares of the residuals in the global X, Y, and Z directions. So, the plots don’t show us direction information, but they do show where the residuals and hence the force imbalances are the largest. Below is an example. The region in red shows where the residuals are the highest. Since this is a model involving contact between two bodies, apparently the contact regions and specifically contact at the corners of the part on the left is the source of our convergence difficulties.
Newton-Raphson Residual Force Plot for the last attempted equilibrium iteration.
So, how do we use this information? In this case we now suspect that the contact regions, especially at the corners of the smaller part, are the problematic areas. Using this information we made two changes to the model.
First, we changed the Detection Method for the contact elements from Program Controlled (at the element Gauss points) to Nodal-Normal to Target. Many times when contact problems involve touching at corners, the robustness of the contact interface can be improved by changing the detection method from Gauss points to nodes.
Second, we reduced the contact stiffness by changing Normal Stiffness from Program Controlled (factor of 1.0) to a Manual setting of 0.2. Reducing the contact stiffness can help with contact convergence for a lot of problems. Too low of a stiffness value can cause problems too, but in this case the resulting penetration is still small so a value of 0.2 seems reasonable. When in doubt, a sensitivity study can be performed whereby you make changes to the contact stiffness value while tracking your results quantities of interest. As with most inputs you can vary, your results of interest should not be sensitive to contact stiffness.
These two changes allowed our test model to nicely converge for the full amount of load.
The Newton-Raphson Residual plots are always displayed on the original geometry, not the deflected geometry at version 14.0 of ANSYS Mechanical. If the deflections are large this can make it harder to ascertain what is causing the high residual values. In those cases, it can be helpful to compare the total deformation and stress plots for the unconverged solution, along with those plots for the last converged solution, with the 1.0 true scale on the deformation active. This will show the parts in their deflected state, and that can help in determining why the residuals are high at certain locations.
We recommend creating at least 3 residual plots (set in the details of Solution Information as described above). Sometimes the location of the imbalance can bounce around a bit from equilibrium iteration to equilibrium iteration, so having more than one or two plots to look at can be beneficial in determining problem locations.
Summing it up, the Newton-Raphson residual plots are one piece of information we can use to determine why we are having convergence difficulties. They can give us an indication of where the convergence difficulties are occurring in the model, and many times we can use that information to help us know what settings should be modified or what other changes should be made to the model to improve the convergence behavior.
In part II of this article, we’ll look at how to quickly use ANSYS Mechanical APDL to view the elements that have undergone too much deformation.
You may have noticed there are several official service packs available for ANSYS 14.0. In case it’s not clear to you what each of these service packs is for, here is a brief explanation to hopefully allow you to determine which of them you may need for your particular application of ANSYS products.
ANSYS140.0.1: Service Pack 1:
This fixes a rare scenario in which the ANSYS Mechanical database can be overwritten with a zero size file on exiting ANSYS Workbench by clicking the close window icon. This is recommended for all Workbench Mechanical Users.
ANSYS140.0.3: Service Pack 3:
This fixes a problem causing a potential solver error for ANSYS Mechanical APDL ("classic") for large modal superposition harmonic analyses. The definition of large is on the order of half a million degrees of freedom. If you are an ANSYS Mechanical APDL user, this service pack is recommended.
ANSYS140.0.8: Service Pack 8:
This fixes a list of issues with ANSYS Icepak. If you are a user of Icepak 14.0, this service pack is recommended.
ANSYS140.0.10: Service Pack 10:
This fixes a performance (speed) issue with ANSYS Composite PrepPost 14.0. As of this writing the service pack is only available for Windows 64 bit platforms. This service pack also includes service pack 1.
All other service packs are available for Windows 32 bit, Windows 64 bit, and Linux 64 bit systems. All service packs and more info on the service packs can be obtained on the ANSYS Customer Portal in the software download area. Click on the hyperlink for a given product’s "Last Update" date. That will bring up documentation on the available service packs for that product.
Maybe you’ve seen AQWA show up in the list of ANSYS products to be installed on your computer, or maybe you’ve seen it as a topic in the ANSYS Help System and you otherwise wondered about it. Is it related to Aqua Man or perhaps Aqua Lung? Not at all. If you are not familiar with it, AQWA is a tool for simulating wave and current as well as wind loads on marine vessels and structures.
Truthfully, although we are located in the Sonoran Desert, we have some great lakes within a short drive of Phoenix, let alone Tempe Town Lake just a few miles from PADT, and lakes Powell and Mead up on our northern and western borders with Utah and Nevada offer miles and miles of incredible scenery. However, most of our rivers are dammed for water storage and irrigation so it’s not uncommon to see river beds with no water in them for most of the year. A standard joke is that Arizona is the place where rivers and bodies of water are not associated with each other.
The bottom of the Salt River, aka Rio Salado, which flows through Phoenix (Sometimes)
The Nav System Knows it as a River
Yes, it does rain in Phoenix. Just not often. This storm caused over an inch of rain in some places:
This is more of a typical day. No rain in sight:
You may be wondering why we have an interest in AQWA here in the Sonoran Desert. The short answer is that we support an organization working on alternative energy sources, including offshore wave power. As a result, we’ve had to become familiar with the ANSYS AQWA suite of tools.
Interaction Between Waves and a Floating Structure
Incident Waves on a Moving Ship:
At version 14.0, the main part of AQWA, hydrodynamic diffraction, is integrated with ANSYS Workbench. In a hydrodynamic diffraction analysis, we are calculating the response on our structure due to incoming and receding waves. The effects on the water due to its interaction with the structure are also included. It’s also possible to perform a hydrodynamic time response analysis within the Workbench framework. Interaction with permanent structures such as piers and breakwaters can be included as well.
The use of Workbench means we can use ANSYS DesignModeler to construct and edit our geometry, including a slice at the waterline and formation of a multi-body part, both of which are needed for AQWA. It is somewhat integrated with Workbench Mechanical, in that it’s possible to map pressure and inertia loads from AQWA into Mechanical for a detailed structural analysis, but it’s somewhat of a manual process currently. For those familiar with the ANSYS APDL command language, it’s fairly straightforward.
Geometry Split at the Water Line in DesignModeler:
AQWA can also be run in stand-alone mode, which opens up additional capabilities while still taking advantage of DesignModeler surface geometry or another source. The various modules have creative names such as AQWA-Line, AQWA-Librium, AQWA-Fer, AQWA-Drift, and AQWA-Naut. Besides hydrodynamic diffraction, one can look at the effects of mooring lines, cables and tethers and varying wave and wind loads on structures. Special elements are included which facilitate the simulation of ‘stingers’ or articulated trusses which are used to connect underwater piping to floating vessels. Fenders can also be modeled to allow for interaction between floating and floating or floating and permanent structures that may come into or out of contact.
Geometry of the structures modeled consists of surface models which are meshed with shell elements. Meshes must be relatively coarse compared to what most of us who normally perform structural analyses are used to. Small geometric details usually need to be omitted to keep the mesh sizes down, but that’s not really a problem as we are trying to accurately predict interaction between the fluid and the structures, not stress concentrations or other localized results within AQWA.
In addition to plots and animations of interacting waves and pressure distributions, many other results quantities are available including cable forces, RAO’s (response amplitude operators), drift coefficients, shear force and bending moments, and other quantities used in the industry. These quantities are useful to those developing sea-going vessels as well as for those in the oil and gas industry involved in developing Floating Production, Storage, and Offloading (FPSO) structures and Tension Leg Platforms (TLP’s), etc.
Forces on Two Mooring Lines vs. Time:
Floating Structure Lateral Position vs. Time:
If any of this looks like a tool that would be useful for the types of projects you work on, by all means contact your local ANSYS provider for more information. You’ll want to plan on taking the AQWA training class, which we have found very useful.
One of the lakes along the Salt River. Indeed there is water in the desert, if no ocean:
This new article narrows the focus to contact elements specifically. We recently had a tech support question about how to utilize element birth and death for contact elements in ANSYS Workbench. So, a simple example was put together and is explained below.
The main idea is that we need multiple load steps (labeled Steps in Workbench) in order for elements to change status from alive to dead or vice versa. We also need a way to select the elements so that we can identify which ones will be killed or made alive.
Keep in mind that ANSYS Workbench Mechanical is a newer pre- and post-processor for good old ANSYS Mechanical APDL. That means we can insert ANSYS commands into the object tree in Workbench Mechanical and those commands will be executed when the solver reads the batch input file that is created when we click the solve button.
So, we need at least one set of Mechanical APDL commands to identify which contact/target pairs or contact regions we need to kill or make alive. In our example we’ll focus on killing elements but the same principal applies to making killed elements come alive. Note that killing elements does not remove them from the model. Rather, it reduces their stiffness by a default value of six orders of magnitude so that effectively they do not participate. The Mechanical APDL commands needed are for the contact/target pair identification are scalar parameter commands.
ANSYS Workbench employs some ‘magic’ parameter names that automatically plug in the integer pointers used behind the scenes for identification of element types and material properties. In the case of contact and target elements, these parameter names are ‘cid’ for the contact elements and ‘tid’ for the target elements. Thus, for each contact region we want to be able to kill, we need to create unique scalar parameter names, such as:
If we had more than one pair, we might use
and increment the ‘1’ in the parameter names on the left side for each contact pair so that we end up with mycont1, mycont2, etc.
These commands need to be inserted directly under each desired contact region so that they will be located in the appropriate place in the solver batch input file at solution time.
The next command snippet needed is the one that selects the desired contact and target elements and then employs the ANSYS Mechanical APDL command to kill them. Finally we need to re-select all the elements in the model so that they are all active when the solution takes place. An example of this command object is:
!kill selected elements (contact and target) ekill,all
!select everything allsel
Note that anything that occurs to the left of a “!” is considered a comment. This second command object needs to be inserted under the analysis type branch.
Next, we need to tell ANSYS to perform at least 2 steps (load steps). This is accomplished in the Details view for Analysis Settings. For Step Controls, number of steps needs to be 2 (or more than 2). Once 2 load steps are specified, we can tell ANSYS to only activate the EKILL command snippet for load step 2. This is done in the Details view for the command snippet. Step Selection Mode can be set to By Number and the Step Number set to 2, meaning that the command object will only be active for load step 2. This will result in the contact elements that have been selected by the above commands being killed in load step 2.
In our example, we have two semicircular rings, connected by contact elements where they touch. One side of the interface uses bonded contact, active for both loads steps. The other side of the interface uses frictionless contact, active in load step 1 and killed in load step 2. We would expect that under a compressive load, the frictionless contacts will prevent penetration in load step 1 but allow penetration in load step 2 since they have been killed.
That is exactly what the results show. The contact status for the frictionless contact region goes from 2 (sliding) at the end of load step 1 to zero (far or not touching) at the end of load step 2.
Deformation plots indicate that penetration is prevented in load step 1.
In load step 2, penetration is allowed because the contact elements at this location have been killed.
So, here is a fairly simple Workbench Mechanical example of utilizing command objects to select contact and target elements, and to kill those elements using the Mechanical APDL EKILL command. You can read up on element birth and death in the Mechanical APDL Help for more details on element birth and death. We hope this is useful information to you.
Anyone who has had to mesh shell assemblies has probably run into trouble with edges that don’t quite line up, edges that meet in the middle of faces and other problems that make the meshing process difficult. Often geometry operations were required to reconcile those problems and many times significant effort was required to get a continuous mesh.
Another historically used tool to connect shell assemblies was the use of constraint equations to connect edge nodes to surface nodes on the finite element level. More recently, advances in contact technology have allowed for the use of nonlinear contact elements to connect shell assembly meshes. Both of those techniques, while useful, have some drawbacks. For example, constraint equations do not support large rotations of the geometry as the direction of application does not change as nodes rotate. Also, contact elements increase the computational expense if they can otherwise be eliminated.
ANSYS, Inc. now provides us with another technique for handling shell assembly meshing, called Mesh Connections. First available in version 13.0 and enhanced in version 14.0, mesh connections use the mesher itself to connect shell assemblies toward the goal of getting a continuous or conformal mesh across the surface bodies that make up the assembly.
Consider this boat hull example. It consists of panel surfaces defining the hull as well as some stiffening ribs. All geometry is composed of surface bodies.
Some of the ribs line up with edges in the hull surfaces, while others do not as shown in the close up image shown below.
We can now create mesh connections in the Connections branch after loading this geometry into the Mechanical editor in Workbench 14.0.
Upon generating the mesh, the mesher will attempt to create a continuous or conformal mesh even though we have do not have intersecting geometry.
With the default settings, we can see in this image that it did a fairly good job of creating the mesh for the ribs which do not intersect with the hull surfaces. Nodes on the hull surface were adjusted so that they connect to the rib geometry.
In this case with relatively little effort we were able to obtain a continuous mesh between the ribs and the hull, even though the several of the ribs shared no intersections with the hull surfaces. In fact, the mesh connections were able to overcome small gaps in between the geometry as well.
In 14.0, the mesh connections are generally performed after the initial mesh is created by default. This means that if changes are made only to mesh connection settings, the remeshing operation is fairly quick since the initial mesh does not need to be regenerated in most cases.
Note that mesh connections exist in the Connections branch, not the Mesh branch. The mesh connection setup works in similar fashion to contact region creation in that searching for edges/faces to connect is based on proximity. The proximity value can be controlled via a slider or by entering an explicit distance, both available in the Mesh Connections details window.
To activate mesh connections, highlight the Connections branch and click on the Connection Group button in the context sensitive menu above the outline tree. Change the Connection Type to Mesh Connection in the details.
Next right click on the Connections branch and select Create Automatic Connections. You may need to adjust the auto detection tolerance in the details to make sure the tolerance distance is large enough to detect desired gaps between edges and faces or edges and edges for the mesh connection to work.
If any contact regions have been automatically created that you want to replace with mesh connections, delete or suppress them. You have the choice of automatically creating mesh connections or manually creating them. Both options are available by right clicking.
In the example shown here, mesh connections are edge to face. Edge to edge mesh connections are also available.
With a couple of mesh settings added, we can obtain a better mesh:
Note that the hull surface nodes have moved a bit in order to allow for the mesh connections with the ribs. Here is a view of the outer hull surface in the mesh connection region:
There are other considerations as well, such as which geometric entities should be the master or slave. In general slave geometry is ‘pinched’ into the master geometry. Also, mesh connections can be setup manually for cases where the auto detection is not appropriate or is not providing the desired level of control. Note that the mesh can end up as an approximation of the geometry since the mesh will have moved to close gaps. Here is an example:
In summary, mesh connections are another tool that are available to us in ANSYS meshing capabilities, having value for shell assemblies. In cases where shell geometry edges do not meet at intersections we can still obtain a continuous mesh without having to perform additional geometry operations. Mesh connections can be faster than using contact elements at the edges as well. There are other features and considerations for mesh connections which are explained in the ANSYS 14.0 Help. We recommend you give them a try if you are tasked with simulating shell type structures.
Editors note: For this weeks Focus posting I’m just taking a PowerPoint that Ted Harris created and putting it on the Blog so the search engines can find it easily. We share this with our customers to help them quickly install the ANSYS software and hope you find it useful. You can also download a PDF of the PowerPoint if you wish to keep a copy, share it with your co-workers, or print it out:
Twice in the last week we’ve taken tech support calls in which the users questioned why their stress or strain results were being reported differently in Workbench Mechanical vs. the results from the same results file in /POST1 with ANSYS Mechanical APDL. After answering those questions it was pretty obvious that a Focus blog entry was in order. All we needed was a good, relevant example to demonstrate the issues and the explanation.
First glimpse of approaching dust storm. All photos by the author.
In case you missed it, the big story here in the Phoenix area this week was our monster haboob, or dust storm. If you’re not familiar with the term haboob, Wikipedia explains it here: http://en.wikipedia.org/wiki/Haboob. In order to have a humongous dust storm, you’ve got to have wind.
Stopped in a parking lot to take these pictures – the only camera I had was my phone.
About 3 minutes after this picture was taken the dust storm arrived.
Wind tends to cause damage, but although our recent dust storm is estimated to have been 100 miles wide and up to 10,000 ft. high, we fortunately did not sustain much significant wind damage. Things that do tend to get mangled, however, are deployed patio umbrellas and portable expanding sunshades. These sunshades typically retract into a compact size and fit in a zip up carrying case. Many of us have collections of damaged sun shades that still work via creative application of duct tape, wire, etc. These inexpensive shades work great for keeping the sun off of us during birthday parties or other outdoor gatherings, but high winds tend to cause the metal members to bend and break, causing the shades to need some field engineering repair if not just a one way trip to the dumpster.
Here is a solid geometry representation of a typical portion of the frame of a representative shade. It consists of two rectangular hollow members, pinned to each other at the center, with pins at each end that in the full structure would be attached to additional components.
For simplicity, we fixed the pins on the right side to ground, while those on the left side have an upward bearing load applied to the upper pin and a downward bearing load applied to the lower pin. These loads tend to cause the members to bend at the central pin. The bearing loads in our example represent the effect of a strong gust of wind hitting the fabric canopy above the frame, with the load eventually reacting through the frame to stakes that attach the frame to the ground at the bottom. The main thing to note here is that the applied load is large enough to cause significant plastic deformation, not unlike what one might experience in the real world when one of these structures is subjected to a very strong wind.
Workbench Mechanical, Coarse Mesh, Peak von Mises Stress is 79,219 psi
Same Results File in Mechanical APDL /POST1, Peak von Mises Stress is 83,873 psi
The issue here is that for our initial run with a very coarse mesh, when we view the von Mises stress results in the Mechanical editor and then compare them with the von Mises stress results obtained from the same results file in /POST1 in Mechanical APDL, we notice there is a difference (79.2 ksi vs. 83.9 ksi). Why is that? It has to do with how stresses are calculated. First let’s consider Mechanical APDL and /POST1. The original graphics display system is known as Full graphics. Fifteen or twenty years ago ANSYS, Inc. developed a newer graphics display system for MAPDL known as Powergraphics. There are several differences between these two display systems which affect results quantities.
ANSYS Mechanical APDL uses PowerGraphics by default, which among other things
only looks at results on the exterior surfaces of the model. Full Graphics, on the other hand, includes
interior elements in addition to the exterior surfaces when displaying results plots. Another difference is that with Powergraphics we can vary the number of element facets displayed per element edge with the /efacet command. The default is one facet per edge but for midside-noded elements we can increase that to two or four. With Full Graphics we are stuck with one facet per element edge. Workbench Mechanical uses an algorithm whose results tend to compare more favorably with full graphics, although it apparently displays with 2 facets per element edge. Another option in MAPDL is to plot nodal (averaged) vs. element (unaveraged) stresses.
So, which of all these methods is the correct one? I would consider them all to be correct, just different. However, we can use the difference in
results as guideline for our mesh density (as well as the presence of singularities). If there is a significant
difference between PowerGraphics and Full Graphics results in MAPDL, this usually indicates the mesh is too coarse, at least in our region of interest.
As the mesh is refined, the difference between the two calculations should decrease. In Workbench
Mechanical 13.0, we can plot averaged and unaveraged stress and strain result plots. The choice is made in the details view for a given plot. A significant difference
between these two quantities also indicates that mesh refinement is needed.
In our shade frame model, we can see that as the mesh is refined, the difference in von Mises stress results decreases, as shown in the table below.
A similar effect is seen with the von Mises plastic strain results:
Regarding the mesh densities used, the coarse mesh had an element size of at least 0.05 in. on the member hole at the high stress/strain location, while the fine mesh had an element size of 0.025 on the same hole. Another way to look at the mesh refinement is that the coarse model had 20 elements on the hole of interest while the fine mesh had 104 elements on the same hole. Clearly the coarse mesh in this example was way too coarse for engineering purposes, but this was selected for this article to ensure the effect of different results calculation methods was significant and observable.
So, the bottom line here is that if you see unacceptable differences in stress or strain results using different results calculation methods, it likely means that your mesh, at least in the area of interest, is too coarse. Try adding mesh refinement and check the results again. In Mechanical, you can try adding a Convergence item to a scoped result plot to at least partially automate this process. Just be careful that you don’t include any singularities in your desired convergence region.
If you were expecting a reference to the Kansas song, “Dust in the Wind,” well, I guess this is it. Fortunately we don’t seem to have many lingering affects of the big dust storm. The parking lot here at PADT has a thin layer of dirt that’s gradually disappearing. Once we get a good rain it will all get washed away.
I’m sure the question comes up for a lot of us from time to time, whether from one of our own offspring, another relative, or an acquaintance. “Just what is it that you do, anyway?” Typical answers might be something short and sweet, such as, “I’m an engineer.” A more detailed response might be, “I use a technique called finite element simulation which is a computer tool we use to simulate the behavior of parts or systems in their real world environment.”
You’ll probably find that people’s eyes glaze over and they start looking for someone else to talk to by the time you get to the end of that second quote above. In fact, I find that my extended family is much more interested in my brother-in-law’s surgery stories from the operating room than they are in my own triumphs and challenges in the engineering simulation world. Maybe you’ve had that same sort of reaction. You have probably noticed that there are a whole lot more medical dramas on TV at any one time than there are engineering dramas. They’ve got many characters from Marcus Welby on up to Dr. Ross on ER, Jack on Lost, to Dr. Grey on Grey’s Anatomy, with more than I can count in between.
We’ve got, well, Scotty. And even then I think Dr. McCoy got more air time.
So when my kids ask me what I do at work, I recall a scene from that late 1980’s to early 1990’s TV show The Wonder Years. In the episode “My Father’s Office,” Kevin asks his dad what he does for a living. His father responds in an angry tone, “You know what I do! I work at NORCOM.” As if that were a sufficient explanation. I suppose it was his way of saying, “It’s complicated. It can be high pressure. You might find it boring. It puts food on the table and a roof over our heads, though.”
Rather than reply that way, I’ve tried to come up with what is hopefully a better response. In fact, this concept constitutes the first portion of our Engineering with FEA training class, written by Keith DiRienz of FEA Technologies with contributions by yours truly.
I can’t guarantee that your audience’s eyes won’t glaze over by the end, nor that you’ll become the hit of the party, but this is free and you get what you pay for. This explanation can obviously be adjusted based on the audience, but it goes something like this:
–We have equations to solve for stresses and deflections in simply-shaped parts such as cantilevered beams.
–No such equations exist for complex shaped objects subject to arbitrary loads.
–So, using finite elements, we break up a complex part into solvable chunks, leading to a finite set of equations with finite unknowns.
-We solve the equations for the chunks, and that ends up giving us the results for the whole part.
If we want more details, we can use this: As an example, here is a simple beam, fixed at one end with a tip load P at the other end. We have an equation to calculate the tip deflection u for simple cases:
In the above equation E is the Young’s Modulus, a property of the material being used and I is the moment of inertia, a property of the shape of the beam cross section.
For more complex shapes and loading conditions, we don’t have simple equations like that, but we can use the concept by dividing up our complex shape into a bunch of simpler shapes. Those shapes are called elements.
A useful equation for us is the linear spring equation, F=Kx, where F is the force exerted on the spring, K is the stiffness of the spring, and x is the deflection of one end of the spring relative to the other. If we extend that concept into 3D, we can have a spring representation in 3D space, meaning the X, Y, and Z directions. In fact, the tip deflection equation shown above for the beam fixed at one end can be considered a special case of our linear spring equation, solved for deflection with a known applied force.
By assembling our complex structure out of these 3D springs, or elements, we can model the full set of geometry for complex shapes. The process of making the elements is called meshing, because a picture or plot of the elements looks like a mesh.
Using linear algebra and some calculus (stay in school kids!) we can setup a big series of equations that takes into account all the little springs in the structure as well as any fixed (unable to move) locations and any loads on the structure. The equations are too big to solve by hand by normal people so computers are used to do this.
When the computer is done solving we end up with deflection results in each direction for the corner points (called nodes) in each element. Some elements have extra nodes too.
From those deflection results, the computer can calculate other quantities of interest, such as stresses and strains. Further, other types of analyses can be solved in similar fashion, such as temperature calculations and fluid flow.
Here is an example using a familiar object that practically everyone can relate to. This plot shows the mesh:
This is fixed in the blue region at the bottom and has an upward force on the left end. The idea here is that someone is holding it tightly on the blue surface and is pulling up on the red surface.
After solving the simulation, we get deflection results like this:
The picture above shows that the left end of the paper clip has deflected upward, which is what we would expect based on common experience with bending paper clips. Using our finite element method, we can predict the permanent deflection resulting from bending the paper clip beyond it’s ‘yield’ point, resulting in what we call plastic deformation.
Clearly there is a lot more to it than these few sentences describe, but hopefully this is enough to get the point across.
In sum, not as exciting as my brother in law’s medical stories involving nail guns or other gruesome injuries, but hopefully this makes the world of engineering simulation a little more accessible to our friends and family.
In the Wonder Years episode, Kevin ends up going to work with his father to see for himself what he does. I won’t spoil the episode, but hopefully you’ll get the chance to show your family and friends what it is that you do from time to time.
The time I like is the rush hour, cos I like the rush The pushing of the people – I like it all so much Such a mass of motion – do not know where it goes I move with the movement and … I have the touch
Looking back I can see a defining moment in my life when about a month after high school graduation two good friends and I drove four hours from home to see Peter Gabriel in concert. It’s not that the concert was great, which it was, but it was the trip itself. It was a first foray after high school, a sort of toe dipping into the freedom of adulthood while in a strange pause between graduating in a small town in the same school system with the same kids and starting engineering school in a big city in the Fall.
Wanting contact I’m wanting contact I’m wanting contact with you Shake those hands, shake those hands
What does all that have to do with ANSYS, you ask? Primarily, it’s hard to get Peter Gabriel’s “I Have the Touch” out of my head whenever I’m working with contact elements. Someone once said that we are a product of the music of our youth. While as I’ve gotten older and hopefully wiser I would hope that we are made up of much more than the product of listening to some songs, I do find it true that certain songs from years ago tend to stick in my head. So, while Mr. Gabriel plays in my head, let’s discuss checking our contact status in Workbench Mechanical.
For those of us familiar with Mechanical APDL, the CNCHECK command has been a good friend for a lot of years now. This command can be used to interrogate our contact pairs prior to solving to report back which pairs are closed, what the gap distance is for pairs that are near touching, etc. More recently, this type of capability has become available in Workbench Mechanical by inserting a Contact Tool under the Connections branch.
Let’s take a look at that in version 13.0. Here we have inserted a Contact Tool under the Connections branch. It automatically includes the Initial Information sub-branch, with a yellow lightening bolt meaning no initial information has yet been calculated.
By right clicking on the Initial Information sub-branch, we can select Generate Initial Contact Results. The resulting worksheet view provides significant information on all of the defined contact regions. By default the information displayed for each contact region includes the name, contact/target side, type (fictionless, no separation, etc.), status, number of elements contacting, initial penetration, initial gap, geometric penetration, geometric gap, pinball radius, and real constant set number. That last value is useful when reviewing the solver output, as it lists contact info per real constant set number of each contact pair (contact region).
Further, by right clicking on that table we have the option to display some additional data, or remove fields of data. The additional fields that can be added are contact depth, normal stiffness, and tangential stiffness. We can also sort the table by clicking on any of the headings.
The colors in the table display four possible status values:
Red = open status for bonded and no separation types
Yellow = open for non bonded/no separation types
Orange = closed by with a large amount of gap or penetration
Gray = inactive due to MPC or Normal Lagrange or auto asymmetric contact
If we left click on one or more of the contact regions in the table, we can then right click and “Go to Selected Items in Tree.” This is a convenient way to view a particular set of contact regions in the graphics view.
Any social occasion, it’s hello, how do you do All those introductions, I never miss my cue So before a question, so before a doubt My hand moves out and … I have the touch
So, what do we do with this information? Ideally it will prevent us from launching a solution that goes off and cranks for a few hours only to fail due to an improper contact setup. For example, by viewing the initial status for each pair we can hopefully verify that regions that should be initially touching are in fact touching as far as ANSYS is concerned. If there is an initial gap or penetration, correcting action can be taken by adjusting the contact settings or even the geometry if needed prior to initiating the solution.
Wanting contact I’m wanting contact I’m wanting contact with you Shake those hands, shake those hands
The Contact Tool > Initial Information is another tool we can use to help us obtain accurate solutions in a timely manner. If you haven’t had the opportunity to use it, please try it out. I can’t guarantee that it will trigger fond memories, but maybe you’ll have an enjoyable song playing in your head.
“Rest, rest, perturbed spirit!” – William Shakespeare
If you have ever performed a large deflection prestressed modal analysis in ANSYS Mechanical APDL prior to version 13.0, your spirit might have been perturbed as well. The procedure was not very user friendly, to sum it up. For example, unless you were careful, the modal results would over-write the static preload results. Thankfully, at 13.0 we have a smoother and more capable tool for handling large deflection prestressed modal analyses. This new procedure is called Linear Perturbation.
We’ll focus on modal analyses in this article, but be aware that linear perturbation also applies to linear buckling analyses at 13.0, but only following a linear preload solution, and only in Workbench. The capability for modal analyses is supported in both Workbench and Mechanical APDL. Also, the preload, or ‘base’ analysis has to have multiframe restart capability turned on. This will happen by default for a nonlinear analysis but needs to be manually activated in MAPDL for a linear analysis by issuing the command RESCONTROL,LINEAR.
In fairly simple terms, the prestress effects are included in a modal analysis via the change in the stiffness matrix that occurs during the prestress (typically nonlinear static) analysis. This is the method that has been used in ANSYS for years. What’s new at 13.0 is that the program keeps track of different components of the augmented tangent stiffness matrix. The five possible contributing components are material property effects, stress stiffening effects, load stiffening effects, contact element effects, and spin softening effects.
While the material effects must remain linear, the contact stiffness can be altered, if desired, in the subsequent modal analysis. More on that later.
The typical Mechanical APDL procedure to perform a nonlinear static structural prestress run followed by a modal analysis which utilizes those prestress effects is as follows:
! With static model prepared
/solu ! enter solution module
antype,0 ! specify static analysis type
nlgeom,1 ! turn on large deflection effects (nonlinear)
pstres,on ! turn on prestress effects for subsequent modal
nsub,10,10,10 ! specify substep range
save ! save the database
solve ! solve the nonlinear static prestress case
finish ! leave the solution module
/solu ! re-enter solution so we can do a new analysis
antype,,restart,1,10,perturb ! specify restart option for linear perturbation
! from last substep in this case
perturb,modal ! specify modal as next analysis
solve,elform ! calculate element formulation with solve command
modopt,lanb,12 ! specify modal options for solution
mxpand,12 ! specify number of modes for results calc
solve ! solve the prestress modal analysis
/post1 ! enter general postprocessor
INRES,ALL ! make sure we read in all results from file
FILE,’nonlinear_static’,’rstp’ ! specify special results file for modal results
set,first ! read in results for first mode
plns,u,sum ! plot mode shape
set,next ! read in results for next mode
/repl ! plot mode shape, etc.
Note that the linear perturbation (modal) analysis has its own results file, the .rstp file. Because of this, the preload results are still available in their own .rst file as it does not get overwritten by the modal step.
Here is a table of frequency results for a simple test case. Three modal analyses were run:
1. No prestress at all.
2. With a linear static prestress state.
3. With a nonlinear static prestress state.
Here is the model used for these runs in its initial configuration. The block at the base was fixed in all DOF’s and the preload applied was a pressure load on one side of the vane.
Here is the model with the deformed mesh due to the nonlinear prestress:
Here is a mode shape plot for mode 12:
The above example is all well and good but could have been done in prior versions of ANSYS using the old partial solve method. What’s nice about the newer linear perturbation method is that it’s easy to get the mode shape plots relative to the deformed mesh from the prior prestress run, and you don’t need to worry about over-writing the prestress results with the modal results, since the corresponding results files are different.
Further, we can now perform modal analyses using different restart points in the static prestress run, assuming multiple restart points are available.
Finally, we can actually change some contact options between the static prestress solution and the modal solution. For example, if the prestress analysis was run using frictional contact, the subsequent modal analysis can be run utilizing the prestressed state of the structure but with one of three contact states for the modal analysis: true status (that of the prior static analysis), force (to be) sticking, or force (to be) bonded. The sticking option applies only to contact elements with a nonzero coefficient of friction. The bonded option will force contact pairs that are in contact in the static analysis to be bonded in the modal analysis.
The Mechanical APDL command sequence for this procedure would be something like this:
! first perform nonlinear static prestress run, then
perturb,modal,,BONDED,PARDELE! pre-stress modal analysis, switch contact to bonded, delete
! loads in case future MSUP
solve! Generate matrices needed for perturbation analysis
! Next perform modal analysis
mxpand! default expand in case of complex solution
! modal results are now available for postprocessing
In Workbench Mechanical, the appropriate command sequence is sent to the solver when we link a modal analysis to a prior prestress analysis. If the model involves contact, then in the modal analysis we’ll have choices for how the contact should be treated in the Pre-Stress branch under the Modal branch in the Outline Tree. For frictional contact in the static prestress analysis, the choices in the Details view for the Pre-Stress branch in the modal analysis will be Use True Stress, Force Sticking, or Force Bonded as described above.
Here are some example plots for this scenario:
Two 3D plates subject to in plane bending, fixed at right ends, frictional contact between them.
Resulting contact status for static run (sliding is occurring)
Resulting static deformation:
Mode 6 result, “true” contact behavior:
Mode 6 result, “force bonded” contact behavior:
Those last two images show a dramatic difference in modal results simply by changing the contact status behavior in the modal analysis. In the first of those images, the contact status is set to ‘true’, meaning essentially the same as in the prestress analysis, subject to the linear nature of the modal analysis. In this example, the frictional behavior in the static prestress run becomes no separation in the modal analysis, so the two plates can have mode shapes in which the plates slide relative to each other. In the last plot, the contact status has been changed to ‘force bonded’ for the modal solution. As the plot shows, mode shapes can only exist in which the two plates are bonded together. Both modal analyses have the same prestress condition however.
Here is a frequency table comparing the first six modes of the two modal analyses. Note that with the contact forced to be bonded we get a stiffening response as we might expect.
So, although on the surface it might initially appear to be a black art, linear perturbation is a nice enhancement in ANSYS 13.0 that gives us a more robust and capable method for performing modal analyses with prestress effects included. The prestress run is typically a linear or nonlinear static analysis, but it will also work with a full transient analysis to define the prestress state. The ANSYS 13.0 Help has more information (see section 9.2 of the Mechanical APDL Structural Analysis Guide and section 17.8 of the Theory Reference). We also recommend you try out the procedure on your own models.
To many users, licensing is transparent and is managed by a system administrator pretty much behind the scenes. For users at smaller companies, license management may be part of your tasks as an ANSYS user. No matter where you fall on that spectrum, user, user-administrator, or administrator of many products including ANSYS, this article will hopefully have some beneficial information. First, we’ll explain some basics and then look at some problem scenarios and how to resolve them.
But before we get into the nitty gritty please take a second to hear our own very special musical take on licensing:
Why licensing at all? Licensing is how ANSYS, Inc. makes sure that only those paying for software can use the software. Just like you wouldn’t walk out of Ray’s Music Exchange without paying for a guitar, you wouldn’t want folks using ANSYS without paying for their product.
ANSYS uses FLEXlm software to administer licensing of the ANSYS products. However, unlike other applications that also use FLEXlm, the ANSYS license manager has an additional component, the ANSYS Licensing Interconnect. The ANSYS Licensing Interconnect was new at version 12.0 and was previously discussed here: http://www.padtinc.com/epubs/focus/2009/0070_0706/TheFocus_70.pdf#Page=2
The recommended way to install the ANSYS license manager is to install FLEXlm and the ANSYS Licensing Interconnect together. The ANSYS licenses are then administered with the ANSLIC_ADMIN Utility. To access this utility on Windows license servers, the menu pick would be
Start > All Programs > ANSYS, Inc. License Manager > Server ANSLIC_ADMIN Utility.
On Linux, the path is
/ansys_inc/shared_files/licensing/lic_admin and the executable is anslic_admin.
FLEXlm and the ANSYS Licensing Interconnect can also be installed separately so that one can administer the FLEXlm portion using tools like FLEXnet Manager, but the ANSYS Licensing Interconnect still needs to be administered using the ANSLIC_ADMIN Utility.
Once we launch the ANSLIC_ADMIN Utility, the first things we want to check is the status box at the lower left. There are three components to check, the Licensing Interconnect, the Licensing Interconnect Monitor, and FLEXlm. Ideally the status for all three should be ‘running’, like this:
If all three are listed as ‘not running’, the first thing to try is to click on the Start the ANSYS, Inc. License Manager button. If the license file is properly installed and all else is right, the status of each of the three components should change to ‘running’.
Once the status of all three is ‘running’, it’s a good idea to verify the license status by clicking on the View Status/Diagnostic Options button, then Display the License Status. If all is well, the resulting listing should show that the license server is UP, and there are licenses available. The client machine should now be able to check out ANSYS licenses, again if all is well.
Besides the ANSLIC_ADMIN Utility, a couple of useful tools are the license.log file and the ansyslic_server.log file in the ANSYS licensing directory. These files often provide clues to problem situations. The ANSLIC_ADMIN Utility can be used to view these files with the View Status/Diagnostic Options button, or they can be opened in a text editor. Another useful tool is the troubleshooting section in the ANSYS Licensing Guide in the ANSYS Help.
Problem Scenario 1: License Server will not start.
A couple of things can cause this. First, if you have not installed the license file properly. To install a license file, use the Run the License Wizard button or the Install the License File button in the ANSLIC_ADMIN Utility. Second, you are using an expired license file (for leased products, for example), or the hostname or flexid in the license file are wrong. To check it, click on the Register License Server Machine Information button in ANSLIC_ADMIN and compare the results with the info in the license file. It should match. If you have a dynamic IP address, you’ll need the license file to be tied to the hard driver serial number rather than the IP address.
Problem Scenario 2: License Manager starts, but FLEXlm doesn’t start.
In this case, you get a message in the ANSLIC_ADMIN Utility stating not all of the licensing components have started, and it may take a several minutes for everything to work properly. The status portion of the ANSLIC_ADMIN Utility will show that the interconnect is up and the interconnect monitor is up, but FLEXlm is down. The license.log file may show messages like this:
0:01:18 (lmgrd) The TCP port number in the license, 1055, is already in use. 0:01:18 (lmgrd) Possible causes: 0:01:18 (lmgrd) 1) The license server manager (lmgrd) is already running for this license. 0:01:18 (lmgrd) 2) The OS has not “cleared” this port since lmgrd died. 0:01:18 (lmgrd) 3) Another process is using this port number (unlikely). 0:01:18 (lmgrd) Solutions: 0:01:18 (lmgrd) 1) Make sure lmgrd and all vendor daemons for this 0:01:18 (lmgrd) license are not running. 0:01:18 (lmgrd) 2) You may have to wait for the OS to clear this port. 0:01:18 (lmgrd) Retrying for about 5 more minutes 0:01:36 (lmgrd) Still trying… 0:01:54 (lmgrd) Still trying…
In this case, the port may clear on it’s own, or you may need to change the port number from the default of 1055 to something else. This is done by adding a port number to the VENDOR line in the license file, see the ANSYS Licensing Guide for more info. Or, in the worst case, you’ll need to restart the license server computer to free up the needed port.
Problem Scenario 3: The license is up and running, but the client can’t connect to the license server
The first thing to check is that the client machine (which can also be the server) is properly pointing to the license server, even if they are the same computer. To test this, on the client machine (if it’s different from the server machine), run the Client ANSLIC_ADMIN Utility (On Windows: Start > All Programs > ANSYS 13.0 > ANSYS Client Licensing > Client ANSLIC_ADMIN Utility). Click on the Specify the License Server Machine button. Make sure the port numbers and server specification (usually the hostname) are correct. If they are not, take corrective action.
If the above is correct, the second thing to check is if the client can ‘see’ the server on the network. A quick way to test that is to ‘ping’ the server from a command window or shell. Type
in a command window/shell where ‘hostname’ is the name or IP address of the server machine. It should report back that bytes of data have been received from the server. If not, take corrective action, which may be to resolve network problems.
The third thing to check is that the ports and licensing executables can pass through any firewalls. The default port numbers that need to pass are 1055 and 2325. The server machine should allow lmgrd.exe, ansyslmd.exe, ansysli_server.exe, ansysli_monitor.exe, and ansysli_client.exe to pass through any firewall. The client machine should also allow ansysli_client.exe through any firewall.
Most problems in scenario three are resolved by one of those three steps.
Certainly there are other problems that can crop up with licensing. For those we suggest you review the ANSYS Licensing Guide in the Help, or contact your ANSYS support provider.
Hopefully this information is helpful and will keep the users from pursuing you, you won’t feel like the target of a manhunt, and you won’t get Those Licensing Blues.
Providing tech support to users of Mechanical APDL gives us a wide exposure to a varied set of users. And through the years we have discovered that there are some simple, basic, but important things every MAPDL users needs to know. The ten most important things every user shoudl know are:
1. /SHOW,3D 2. /EFACET,2 3. Picking window reset button 4. Hot Spots for Picking and Press and Hold 5. Displaying More than 9 Results Contours 6. CNCHECK 7. Copy and Paste into Input Window 8. /EOF for Input File Debugging 9. Use the Log File 10. Making Results Plot Files
This command tells ANSYS Mechanical APDL to use your computer’s video card to control dynamic rotations of your model, rather than use software to rotate the model. The big difference is that you’ll see a shaded image of your model during dynamic manipulation of the view, rather than shaded > wireframe while rotating > shaded. For some users, switching to this option is like getting a color TV after years of watching just black and white.
To active this option from the Mechanical APDL Product Launcher, go to the Customization/Preferences Tab and change the Graphics Device Name to 3D. If you are running ANSYS from the command line, you can use the –d 3D option after the ANSYS executable specification.
If you are running with mid-side noded elements, you’ll most likely want to include results for the midside nodes, and also make results plots which include any curvature of the element edges. The default, however, is to not include midside noded results in listings or plots and to only give one facet per element edge in results plots. The fix for that is to set the number of facets to 2 (or even 4) on the /EFACET command. Note that Powergraphics needs to be on for this to work.
Picking Window Reset Button
If you have spent a lot of time working interactively in ANSYS Mechanical APDL, you have probably encountered the scenario in which you click on a command that is supposed to activate a picking window, but no picking window shows up. No matter how many times you click on the command, you won’t get the needed picking window. My understanding is this is due to a glitch in the Tcl/Tk GUI language used by ANSYS, Inc. to create the Mechanical APDL user interface. Earlier versions had a fix implemented which was somewhat primitive: while in the ANSYS session, simultaneously press Control-Shift-Delete. This would reset the picking window so we could click on the desired command again and successfully get the needed picking window. The last couple of releases of ANSYS have had an improvement over that, namely the Reset Picking button. This button resides near the upper right corner of the user interface, in between the Raised Hidden “Cheese Sandwich” button and the Contact Manager button.
Hot Spots for Picking and Press and Hold
This is really two things, but they are closely related so we’ll consider them as one. Have you ever have trouble using the mouse to pick the entity you want? You click where you think you’ll be picking the desired entity but some other entity gets highlighted. If this happens a lot, you’re probably not familiar with how ANSYS uses Hot Spots for picking, nor with the Press and Hold left mouse button behavior.
First we’ll discuss hot spots, which are locations on each geometric entity. Areas and volumes each have one hot spot, at or very near the centroid. Lines have three hot spots, one at the middle of the line and one close to each end. When you click a location in the graphics window to select an entity, the entity which has a hot spot closest to the picking location is the one which gets picked. Note that hot spots can be outside of an entity (think of an annulus, for example). That means you might click on an entity, but another entity might have its hot spot closer to where you clicked, so that’s the one the is selected. Thinking about where hot spots are can assist greatly in selecting the entities we want.
Second, another useful tool for ensuring we actually pick entities we want is to press and hold the left mouse button while picking. If you press and hold, the entity that’s going to be picked will be highlighted. If you press and hold and drag the mouse around in the screen, different entities can be highlighted, the idea being you press, hold, and drag until the desired entity is highlighted. You then release the left mouse button and that entity is now picked.
Displaying More Than 9 Results Contours
By default results plots in /POST1 have 9 color contours. Sometimes we want more. If you are using the Win32 or X11 graphics drivers, you can obtain up to 14 color contours by issuing
Note that if you are using the 3D graphics driver (see above), you can display up to 128 color contours using the same /contour command. There are other useful options on this command so check the ANSYS help for more info.
What did we do before CNCHECK?
We attempted a lot more contact debugging solves than are needed today, that’s for sure. CNCHECK can be used to interrogate one or more contact pairs prior to solving to help us ensure that contact regions are setup appropriately. Not only does it tell us which contact and target element sets are associated with each other, but it lists all of the ‘calculated’ settings such as the actual value of contact stiffness, penetration tolerance, etc. If there is an initial gap, it will tell us the gap distance. If a contact region is supposed to be initially touching but isn’t, CNCHECK will tell us. We can then hopefully take corrective action before we start the solution. This can be a huge timesaver. CNCHECK has other useful capabilities, all discussed in the Help.
Copy and Paste into Input Window
If you work with ANSYS MAPDL commands a lot, you are hopefully familiar with copying commands from a text file or from an editor (PADT’s PeDal editor specifically created for ANSYS input files comes to mind) and pasting them into the ANSYS command window. ANSYS, Inc. tells us this is not a supported feature, but we at PADT and other users have been doing this for years and it works great. Whether you are building an input file to automate your process or just checking out a few commands from the Help, you can copy the desired command lines and paste them into the input window. You then click the Enter key and all of those commands will be executed within ANSYS, in sequence from first to last. Try it.
/EOF for Input File Debugging
If you routinely build ANSYS MAPDL input files or are just starting to work with them, you should be aware of the /EOF command. You can place that anywhere in your file and the input will stop being read at that location. If you have 2000 lines of APDL code and just want to debug the first 20 by reading only those lines in, you just place the line /EOF after those first 20 lines of code, save the file, and read it in. The remaining 1980 lines will be ignored and you can easily verify the action of those first 20 commands. You can then delete the /EOF command and place a new one farther down to work in the next section. Hopefully you now see the value of /EOF.
Use the Log File
The log file (jobname.log) is a running list of all the MAPDL commands you have executed in your current ANSYS session. It doesn’t matter if you typed them in, pasted them in, or used the GUI, they are there in the log file, sequentially from top to bottom. Further, if you have multiple ANSYS MAPDL sessions in the same working directory using the same jobname, you’ll have a multiple-session history in your log file, each with its own time and date stamp.
How is this useful? If you find yourself repeating your steps over and over, you should consider automating those steps using an input file. An easy way to create an input file is to edit the log file, extract the portion you want to automate, save that into a new file, and perhaps do some further editing to get it to be robust and tailored to your specific application. How to do all that is beyond the scope of this article (see our APDL training classes at www.padtinc.com/support/training), but a quick set of instructions is to execute a command once using the GUI, then view the bottom of the log file to see how it was used. Combine that with the ANSYS Help and you are off and running in building your own MAPDL input files.
Making Results Plot Files
A quick way to make a result plot file is to get the plot and view setup the way you want on the screen, then click on Plotters > Hard Copy > To File. There are several plot file formats available, such as .jpg and .png. This command will automatically ‘reverse video’ meaning you get black text on a white background in your plot file. There are other techniques for getting results plots into plot files, but this is a quick and easy way that you will hopefully find helpful.