Secant or Instantaneous CTE? Understanding Thermal Expansion Modeling ANSYS Mechanical

One of the more common questions we get on thermal expansion simulations in tech support for ANSYS Mechanical and ANSYS Mechanical APDL revolve around how the Coefficient of Thermal Expansion, or CTE. This comes in to play if the CTE of the material you are modeling is set up to change with the temperature of that material.

This detailed presentation goes in to explaining what the differences are between the Secant and Instantaneous methods, how to convert between them, and dealing with extrapolating coeficients beyond temperatures for which you have data.

PADT-ANSYS-Secant_vs_Instantaneous_CTE-2017_07_05

You can download a PDF of the presentation here.

How-To: Connecting Shells Elements in Surface Models with ANSYS SpaceClaim and ANSYS Mechanical

By using the power of ANSYS SpaceClaim to quickly modify geometry, you can set up your surface models in ANSYS Mechanical to easily be connected.  Take a look in this How-To slide deck to see how easy it is to extend geometry and intersect surfaces.

PADT-ANSYS-Connecting-Shells-SpaceClaim-Mechanical

Coupling ANSYS Mechanical and Flownex

The below example demontrates how to couple Flownex and ANSYS mechanical using the Mechanical Generic Interface component.

For those that don’t know, Flownex is a thermal-fluid system modeling tool that is great for modeling heat, flow, pressure, etc… in systems.  At PADT we often connect it to ANSYS Mechanical to do more detailed component level simulation when needed. 

Why the need for the link in the fist place?

  • It is an automated workflow to couple Flownex and ANSYS through direct mapping of Flownex results (HTC and bulk temperatures) as boundary condition to an ANSYS thermal analysis.
  • Represents a conjugate heat transfer model with fluid calculations handled in Flownex
  • Allows one to easily/quickly investigate fluid flow and heat transfer properties under a wide range operating conditions.

First we will discuss the steady state thermal ANSYS Mechanical model that will be linked to Flownex.

We have a pipe Pipe with arbritraty geometry and material properties. Convection boundary conditions have been applied to both the internal and external pipe walls. The inernal Bulk Temperature will be supplied by Flownex.

  • External BC
    • HTC 100 w/m2K
    • Bulk Temperature 22C
  • Internal BC
    • HTC 1500 w/m2K
    • Bulk Temperature will be supplied by Flownex

A command snippet, which will calculate the total heat flow through the inner wall surface and write the value out into a text file called d_result, has been inlcuded in the ANSYS Mechanical model.

In order to achieve a bidirectional coupling, Flownex will execute the Mechanical APDL batch file. We can generate the Mechanical APDL batch file (ds.dat), from within Mechanical.

The soluiton procedure is as follows

  1. Flownex modifies the ds.dat file
  2. Flownex executes the modified ds.dat file
  3. The modified ds.dat file generates the d_result.txt file
  4. Flownex reads the d_result.txt file
  5. Flownex executes an iteration, using value from d_result.txt
  6. Repeat untill solutions are converged.

The next step after creating the ds.dat file is to set up your Flownex model.

The Flownex model comprises of a pipe component with arbritrary geomery, filled with air with an inlet temperature and pressure of 500˚C and 120 kPa respectilvy and a flow rate of approximatly 1kg/s.

We have connected the pipe component to the Mechanical Generic Interface using data transfer links.

The data transfer links pass the bulk fluid temperature form the pipe to the Mechanical Generic Interface component, and return the heat flow value calculated using ANSYS to the pipe.

Next we need place the ds.dat file in the AnsysMechanical_Files folder which is located in the Flownex project folder. It is necessary to create a copy of the ds.dat called ModifiedData.dat in the same location.

Let’s go over the inputs to the Mechanical Generic Interface component in Flownex:

1) Executable location

C:\Program Files\ANSYS Inc\v180\ansys\bin\winx64\Ansys180.exe

This is the path to ANSYS executable. Pay particular attention to the version number (eg 180, 172), as this will be different depending on the version of ANSYS you have installed.

2) Command line parameters

-b -i ModifiedData.dat -o results

Flownex will launch ANSYS, and execute the ModifiedData.dat Mechanical APDL batch file from the command line, using the above command a detailed description of command line options can be found in another blog post here.

3) Project files folder, Data file name and Modified data file name

Here we specify location of the Mechanical APDL batch files

4) Inputs

Here we will define where in ModifiedData.dat the value from Flownex, fluid temperature in this case, will be placed. This is done by determining what the boundary condition variable and ID is, and finding the prefix before the boundary condition value in the ds.dat file. Typically the variable for temperature is _loadvari and for HTC it is _convari.

It is possible to know the boundary condition ID by activating the appearance of Beta options in WB.

5) Outputs

Here we will specify the location of the d_result.txt that ANSYS generates. It should appear in the same folder as the Mechanical APDL batch files after successful execution.

Flownex and ANSYS will pass data back and forth every time step of a transient Flownex run.

The simulation should continue to run up to, and beyond the point where the Flownex and ANSYS simulation have converged. If we plot out the heat input or temperature value vs time we should be able to visualize convergence, akin to residual plots when running a CFD simulation, and then manually stop the simulation after values have stabilized.

Below we increase the fluid inlet temperature form 500˚C to 1000˚C after 10 iterations, and observed a increase in heat flow from ~1.4kW to ~2.8kW.

ANSYS 18 Mechanical Ease of Use Webinar – Coming Soon

We here at PADT are proud to present the ease of use and productivity enhancements that have been added to ANSYS Mechanical in release 18.

With this new release, ANSYS Mechanical focuses on the introduction of a variety of improvements that help save the users time, such as smarter data organization and new hotkeys, along with additions that can help you to better visualize specific intricacies in your models.

This webinar is coming up soon

Join PADT’s Simulation Support & Application Engineer Doug Oatis for an overview of the current user friendly interfaces within ANSYS Mechanical, along with the numerous additions in this new release that help to improve efficiency tenfold, such as:

Pretension Beam Connection

A beam connection is a power idealization to connect parts without modeling the bolts. Now the beam connection can be pretensioned as well.

Register today to find out how you can use this highly requested feature and many others to improve your throughput and stay ahead of the curve!

Making Thermal Contact Conductance a Parameter in ANSYS Mechanical 18.0 and Earlier with an APDL Command Object

A support request from one of our customers recently was for the ability to make Thermal Contact Conductance, which is sort of a reciprocal of thermal resistance at the contact interface, a parameter so it can be varied in a parametric study.  Unfortunately, this property of contact regions is not exposed as a parameter in the ANSYS Mechanical window like many other quantities are.

Fortunately, with ANSYS there is almost always a way……in this case we use the capability of an APDL (ANSYS Parametric Design Language) command object within ANSYS Mechanical.  This allows us to access additional functionality that isn’t exposed in the Mechanical menus.  This is a rare occurrence in the recent versions of ANSYS, but I thought this was a good example to explain how it is done including verifying that it works.

A key capability is that user-defined parameters within a command object have a ‘magic’ set of parameter names.  These names are ARG1, ARG2, ARG3, etc.  Eric Miller of PADT explained their use in a good PADT Focus blog posting back in 2013

In this application, we want to be able to vary the value of thermal contact conductance.  A low value means less heat will flow across the boundary between parts, while a high value means more heat will flow.  The default value is a calculated high value of conductance, meaning there is little to no resistance to heat flow across the contact boundary.

In order to make this work, we need to know how the thermal contact conductance is applied.  In fact, it is a property of the contact elements.  A quick look at the ANSYS Help for the CONTA174 or similar contact elements shows that the 14th field in the Real Constants is the defined value of TCC, the thermal contact conductance.  Real Constants are properties of elements that may need to be defined or may be optional values that can be defined.  Knowing that TCC is the 14th field in the real constant set, we can now build our APDL command object.

This is what the command object looks like, including some explanatory comments.  Everything after a “!” is a comment:

! Command object to parameterize thermal contact conductance
! by Ted Harris, PADT, Inc., 3/31/2017
! Note: This is just an example. It is up to the user to create and verify
! the concept for their own application.

! From the ANSYS help, we can see that real constant TCC is the 14th real constant for
! the 17X contact elements. Therefore, we can define an APDL parameter with the desired
! TCC value and then assign that parameter to the 14th real constant value.
!
! We use ARG1 in the Details view for this command snippet to define and enable the
! parameter to be used for TCC.

r,cid ! tells ANSYS we are defining real constants for this contact pair
! any values left blank will not be overwritten from defaults or those
! assigned by Mechanical. R command is used for values 1-6 of the real constants
rmore,,,,,, ! values 7-12 for this real constant set
rmore,,arg1 ! This assigned value of arg1 to 14th field of real constant

! Now repeat for target side to cover symmetric contact case
r,tid ! tells ANSYS we are defining real constants for this contact pair
! any values left blank will not be overwritten from defaults or those
! assigned by Mechanical. R command is used for values 1-6 of the real constants
rmore,,,,,, ! values 7-12 for this real constant set
rmore,,arg1 ! This assigned value of arg1 to 14th field of real constant

You may have noticed the ‘cid’ and ‘tid’ labels in the command object.  These identify the integer ‘pointers’ for the contact and target element types, respectively.  They also identify the contact and target real constant set number and material property number.  So how do we know what values of integers are used by ‘cid’ and ‘tid’ for a given contact region?  That’s part of the beauty of the command object: you don’t know the values of the cid and tid variables, but you alsp don’t need to know them.  ANSYS automatically plugs in the correct integer values for each contact pair simply by us putting the magic ‘cid’ and ‘tid’ labels in the command snippet.  The top of a command object within the contact branch will automatically contain these comments at the top, which explain it:

!   Commands inserted into this file will be executed just after the contact region definition.
!   The type number for the contact type is equal to the parameter “cid”.
!   The type number for the target type is equal to the parameter “tid”.
!   The real and mat number for the asymmetric contact pair is equal to the parameter “cid”.
!   The real and mat number for the symmetric contact pair(if it exists)
! is equal to the parameter “tid”.

Next, we need to know how to implement this in ANSYS Mechanical.  We start with a model of a ball valve assembly, using some simple geometry from one of our training classes.  The idea is that hot water passes through the valve represented by a constant temperature of 125 F.  There is a heat sink represented at the OD of the ends of the valve at a constant 74 degrees.  There is also some convection on most of the outer surfaces carrying some heat away.

The ball valve and the valve housing are separate parts and contact is used to allow heat to flow from the hotter ball valve into the cooler valve assembly:

Here is the command snippet associated with that contact region.  The ‘magic’ is the ARG1 parameter which is given an initial value in the Details view, BEFORE the P box is checked to make it a parameter.  Wherever we need to define the value of TCC in the command object, we use the ARG1 parameter name, as shown here:

Next, we verify that it actually works as expected.  Here I have setup a table of design points, with increasing values of TCC (ARG1).  The output parameter that is tracked is the minimum temperature on the inner surface of the valve housing, where it makes contact with the ball.  If conductance is low, little heat should flow so the housing remains cool.  If the conductance is high, more heat should flow into the housing making it hotter.  After solving all the design points in the Workbench window, we see that indeed that’s what happens:

And here is a log scale plot showing temperature rise with increasing TCC:

So, excluding the comments our command object is 6 lines long.  With those six lines of text as well as knowledge of how to use the ARG1 parameter, we now have thermal contact conductance which varies as a parameter.  This is a simple case and you will certainly want to test and verify for your own use.  Hopefully this helps with explaining the process and how it is done, including verification.

 

 

 

ANSYS 18 – Mechanical Ease of Use Webinar

We here at PADT are proud to present the ease of use and productivity enhancements that have been added to ANSYS Mechanical in release 18.

With this new release, ANSYS Mechanical focuses on the introduction of a variety of improvements that help save the users time, such as smarter data organization and new hotkeys, along with additions that can help you to better visualize specific intricacies in your models.

Join PADT’s Simulation Support & Application Engineer Doug Oatis for an overview of the current user friendly interfaces within ANSYS Mechanical, along with the numerous additions in this new release that help to improve efficiency tenfold, such as:

  • Hotkey Additions
  • Box Geometry Creation Within Mechanical
  • Free Standing Remote Points
  • Improved Status Bar Information
  • Pretension Beam Connection
  • Solver Scratch Directory Specification
  • Improved Probe Annotations

Register today to find out how you can use these enhancements to improve your throughput and stay ahead of the curve!

We look forward to seeing you there.

Making Solids Water Tight in ANSYS Spaceclaim for ANSYS Workbench Meshing

Occasionally when solid geometry is imported from CAD into ANSYS SpaceClaim the geometry will come in as solids, but when a mesh is generated on the solids the mesh will appear to “leak” into the surrounding space. Below is an assembly that was imported from CAD into SpaceClaim. In the SpaceClaim Structure Window all of the parts can be seen to be solid components.

When the mesh is generated in ANSYS Mechanical it appears like the assembly has been successfully meshed.

However, when you look at the mesh a little closer, the mesh can be missing from some of the surfaces and not displayed correctly on others.

Additionally, if you create a cross-section through the mesh, the mesh on some of the parts will “leak” outside of the part boundaries and will look like the image below.

Based on the mesh color, the mesh of the part in the center of the assembly has grown outside of the surfaces of the part.
To repair the part you need to go back to SpaceClaim and rebuild it. First you need to hide the rest of the parts.

Next, create a sketch plane that passes through the problem part.

In the sketch mode create a rectangle that surrounds the part. When you return to 3D mode in SpaceClaim, that rectangle will become a surface that passes through the part.

Now use the Pull tool in SpaceClaim to turn that surface into a part that completely surrounds the part to be repaired, making sure to turn on the “No Merge” option for the pull before you begin.

After you have pulled the surface into a solid, it should like the image below where the original part is completely buried inside the new part.

Now you will use the Combine tool to divide the box with the original part. Select Combine from the Tool Bar, then select the box that you created in the previous step. The cutter will be activated and you will move the cursor around until the original part is highlighted inside the box. Select it with the left mouse button. The Combine tool will then give you the option to select the part of the box that you want to remove. Select the part that surrounds the original part. After it is finished, close the combine tool and the Structure Tree and 3D window will now look like the following:

Now move the new solid that was created with the Combine tool into the location of the original part and turn off the original one and re-activate the other parts of the assembly. The assembly and Structure Tree should now look like the pictures below.

Now save the project, re-open the meshing tool, and re-generate the mesh. The mesh should now be correct and not “leaking” beyond the part boundaries.

Using External Data in ANSYS Mechanical to Tabular Loads with Multiple Variables

ANSYS Mechanical is great at applying tabular loads that vary with an independent variable. Say time or Z.  What if you want a tabular load that varies in multiple directions and time. You can use the External Data tool to do just that. You can also create a table with a single variable and modify it in the Command Editor.

In the Presentation below, I show how to do all of this in a step-by-step description.

PADT-ANSYS-Tabular-Loading-ANSYS-18

You can also download the presentation here.

Connection Groups and Your Sanity in ANSYS Mechanical

You kids don’t know how good you have it with automatic contact creation in Mechanical.  Back in my day, I’d have to use the contact wizard in MAPDL or show off my mastery of the ESURF command to define contacts between parts.  Sure, there were some macros somewhere on the interwebs that would go through and loop for surfaces within a particular offset, but for the sake of this stereotypical “old-tyme” rant, I didn’t use them (I actually didn’t, I was just TOO good at using ESURF to need anyone else’s help).

Image result for old tyme

Hey, it gets me from point A to B

In Mechanical contact is automatically generated based on a set of rules contained in the ‘Connection Group’ object:

image

It might look a little over-whelming, but really the only thing you’ll need to play around with is the ‘Tolerance Type’.  This can either ‘Slider’ or ‘Value’ (or use sheet thickness if you’re working with shells).  What this controls is the face offset value for which Mechanical will automatically build contact.  So in the picture shown above faces that are 5.9939E-3in apart will automatically have contact created.  You can play around with the slider value to change what the tolerance

image image image

As you can see, the smaller the tolerance slider the larger the ‘acceptable’ gap becomes.  If you change the Tolerance Type to be ‘Value’ then you can just directly type in a number.

Typically the default values do a pretty good job automatically defining contact.  However, what happens if you have a large assembly with a lot of thin parts?  Then what you run into is non-sensical contact between parts that don’t actually touch (full disclosure, I actually had to modify the contact settings to have the auto-generated contact do something like this…but I have seen this in other assemblies with very thin/slender parts stacked on top of each other):

image

In the image above, we see that contact has been defined between the bolt head and a plate when there is clearly a washer present.  So we can fix this by going in and specifying a value of 0, meaning that only surfaces that are touching will have contact defined.  But now let’s say that some parts of your assembly aren’t touching (maybe it’s bad CAD, maybe it’s a welded assembly, maybe you suppressed parts that weren’t important).

image

The brute force way to handle this would be to set the auto-detection value to be 0 and then go back and manually define the missing contacts using the options shown in the image above.  Or, what we could do is modify the auto-contact to be broken up into groups and apply appropriate rules as necessary.  The other benefit to this is if you’re working in large assemblies, you can retain your sanity by having contact generated region by region.   In the words of the original FE-guru, Honest Abe, it’s easier to manage things when they’re logically broken up into chunks.

image

Said No One Ever

Sorry…that was bad.  I figured in the new alt-fact world with falsely-attributed quotes to historical leaders, I might as well make something up for the oft-overlooked FE-crowd.

So, how do you go about implementing this?  Easy, first just delete the default connection group (right-mouse-click on it and select delete).  Next, just select a group of bodies and click the ‘Connection Group’ button:

image image image

In the image series above, I selected all the bolts and washers, clicked the connection group, and now I have created a connection group that will only automatically generate contact between the bolts and washers.  I don’t have to worry about contact being generated between the bolt and plate.  Rinse, lather, and repeat the process until you’ve created all the groups you want:

image

ALL the Connection Groups!

Now that you have all these connection groups, you can fine-tune the auto-detection rules to meet the ‘needs’ of those individual body groups.  Just zooming in on one of the groups:

image

By default, when I generate contact for this group I’ll get two contact pairs:

image image

While this may work, let’s say I don’t want a single contact pair for the two dome-like structures, but 2.  That way I can just change the behavior on the outer ‘ring’ to be frictionless and force the top to be bonded:

image

I modified the auto-detection tolerance to be a user-defined distance (note that when you type in a number and move your mouse over into the graphics window you will see a bulls-eye that indicates the search radius you just defined).  Next, I told the auto-detection not to group any auto-detected contacts together.  The result is I now get 3 contact pairs defined:

image image image

Now I can just modify the auto-generated contacts to have the middle-picture shown in the series above to be frictionless.  I could certainly just manually define the contact regions, but if you have an assembly of dozens/hundreds of parts it’s significantly easier to have Mechanical build up all the contact regions and then you just have to modify individual contact pairs to have the type/behavior/etc you want (bonded, frictionless, symmetric, asymmetric, custom pinball radius, etc).  This is also useful if you have bodies that need to be connected via face-to-edge or edge-to-edge contact (then you can set the appropriate priority as to which, if any of those types should be preserved over others).

So the plus side to doing all of this is that after any kind of geometry update you shouldn’t have much, if any, contact ‘repair’ to do.  All the bodies/rules have already been fine tuned to automatically build what you want/need.  You also know where to look to modify contacts (although using the ‘go to’ functionality makes that pretty easy as well).  That way you can define all these connection groups, leave everything as bonded and do a preliminary solve to ensure things look ‘okay’.  Then go back and start introducing some more reality into the simulation by allowing certain regions to move relative to each other.

The downside to doing your contacts this way is you risk missing an interface because you’re now defining the load path.  To deal with that you can just insert a dummy-modal environment into your project, solve, and check that you don’t have any 0-Hz modes.

How-To: ANSYS 18 RSM CLIENT SETUP on Windows 2012 R2 HPC

We put this simple how-to together for users to speed up the process on getting your Remote Solve Manager client up and running on Microsoft Windows 2012 R2 HPC.

Download the step-by-step slides here:

padt-ansys-18-RSM-client-setup-win2012r2HPC.pdf

You might also be interested in a short article on the setup and use of monitoring for ANSYS R18 RSM.

Monitoring Jobs Using ANSYS RSM 18.0

If you are an ANSYS RSM (Remote Solve Manager) user, you’ll find some changes in version 18.0. Most of the changes, which are improvements to the installation and configuration process, are under the hood from a user standpoint. One key change for users, though, is how you monitor a running job. This short entry shows how to do it in version 18.0.

Rather than bring up the RSM monitor window from the Start menu as was done in prior version, in 18.0 we launch the RSM job monitor directly from the Workbench window, by clicking on Jobs > Open Job Monitor… as shown here:

When a solution has been submitted to RSM for solution on a remote cluster or workstation, it will show up in the resulting Job Monitor window, like this:

Hopefully this saves some effort in trying to figure out where to monitor jobs you have submitted to RSM. Happy solving!

Modeling 3D Printed Cellular Structures: Approaches

How can the mechanical behavior of cellular structures (honeycombs, foams and lattices) be modeled?

This is the second in a two-part post on the modeling aspects of 3D printed cellular structures. If you haven’t already, please read the first part here, where I detail the challenges associated with modeling 3D printed cellular structures.

The literature on the 3D printing of cellular structures is vast, and growing. While the majority of the focus in this field is on the design and process aspects, there is a significant body of work on characterizing behavior for the purposes of developing analytical material models. I have found that these approaches fall into 3 different categories depending on the level of discretization at which the property is modeled: at the level of each material point, or at the level of the connecting member or finally, at the level of the cell. At the end of this article I have compiled some of the best references I could find for each of the 3 broad approaches.

1. Continuum Modeling

The most straightforward approach is to use bulk material properties to represent what is happening to the material at the cellular level [1-4]. This approach does away with the need for any cellular level characterization and in so doing, we do not have to worry about size or contact effects described in the previous post that are artifacts of having to characterize behavior at the cellular level. However, the assumption that the connecting struts/walls in a cellular structure behave the same way the bulk material does can particularly be erroneous for AM processes that can introduce significant size specific behavior and large anisotropy. It is important to keep in mind that factors that may not be significant at a bulk level (such as surface roughness, local microstructure or dimensional tolerances) can be very significant when the connecting member is under 1 mm thick, as is often the case.

The level of error introduced by a continuum assumption is likely to vary by process: processes like Fused Deposition Modeling (FDM) are already strongly anisotropic with highly geometry-specific meso-structures and an assumption like this will generate large errors as shown in Figure 1. On the other hand, it is possible that better results may be had for powder based fusion processes used for metal alloys, especially when the connecting members are large enough and the key property being solved for is mechanical stiffness (as opposed to fracture toughness or fatigue life).

Fig 1. Load-displacement curves for ULTEM-9085 Honeycomb structures made with different FDM toolpath strategies

2. Cell Level Homogenization

The most common approach in the literature is the use of homogenization – representing the effective property of the cellular structure without regard to the cellular geometry itself. This approach has significantly lower computational expense associated with its implementation. Additionally, it is relatively straightforward to develop a model by fitting a power law to experimental data [5-8] as shown in the equation below, relating the effective modulus E* to the bulk material property Es and their respective densities (ρ and ρs), by solving for the constants C and n.

homogenizationeqn

While a homogenization approach is useful in generating comparative, qualitative data, it has some difficulties in being used as a reliable material model in analysis & simulation. This is first and foremost since the majority of the experiments do not consider size and contact effects. Secondly, even if these were considered, the homogenization of the cells only works for the specific cell in question (e.g. octet truss or hexagonal honeycomb) – so every new cell type needs to be re-characterized. Finally, the homogenization of these cells can lose insight into how structures behave in the transition region between different volume fractions, even if each cell type is calibrated at a range of volume fractions – this is likely to be exacerbated for failure modeling.

3. Member Modeling

The third approach involves describing behavior not at each material point or at the level of the cell, but at a level in-between: the connecting member (also referred to as strut or beam). This approach has been used by researchers [9-11] including us at PADT [12] by invoking beam theory to first describe what is happening at the level of the member and then use that information to build up to the level of the cells.

membermodeling
Fig 2. Member modeling approach: represent cellular structure as a collection of members, use beam theory for example, to describe the member’s behavior through analytical equations. Note: the homogenization equations essentially derive from this approach.

This approach, while promising, is beset with some challenges as well: it requires experimental characterization at the cellular level, which brings in the previously mentioned challenges. Additionally, from a computational standpoint, the validation of these models typically requires a modeling of the full cellular geometry, which can be prohibitively expensive. Finally, the theory involved in representing member level detail is more complex, makes assumptions of its own (e.g. modeling the “fixed” ends) and it is not proven adequately at this point if this is justified by a significant improvement in the model’s predictability compared to the above two approaches. This approach does have one significant promise: if we are able to accurately describe behavior at the level of a member, it is a first step towards a truly shape and size independent model that can bridge with ease between say, an octet truss and an auxetic structure, or different sizes of cells, as well as the transitions between them – thus enabling true freedom to the designer and analyst. It is for this reason that we are focusing on this approach.

Conclusion

Continuum models are easy to implement and for relatively isotropic processes and materials such as metal fusion, may be a good approximation of stiffness and deformation behavior. We know through our own experience that these models perform very poorly when the process is anisotropic (such as FDM), even when the bulk constitutive model incorporates the anisotropy.

Homogenization at the level of the cell is an intuitive improvement and the experimental insights gained are invaluable – comparison between cell type performances, or dependencies on member thickness & cell size etc. are worthy data points. However, caution needs to be exercised when developing models from them for use in analysis (simulation), though the relative ease of their computational implementation is a very powerful argument for pursuing this line of work.

Finally, the member level approach, while beset with challenges of its own, is a promising direction forward since it attempts to address behavior at a level that incorporates process and geometric detail. The approach we have taken at PADT is in line with this approach, but specifically seeks to bridge the continuum and cell level models by using cellular structure response to extract a point-wise material property. Our preliminary work has shown promise for cells of similar sizes and ongoing work, funded by America Makes, is looking to expand this into a larger, non-empirical model that can span cell types. If this is an area of interest to you, please connect with me on LinkedIn for updates. If you have questions or comments, please email us at info@padtinc.com or drop me a message on LinkedIn.

References (by Approach)

Bulk Property Models

[1] C. Neff, N. Hopkinson, N.B. Crane, “Selective Laser Sintering of Diamond Lattice Structures: Experimental Results and FEA Model Comparison,” 2015 Solid Freeform Fabrication Symposium

[2] M. Jamshidinia, L. Wang, W. Tong, and R. Kovacevic. “The bio-compatible dental implant designed by using non-stochastic porosity produced by Electron Beam Melting®(EBM),” Journal of Materials Processing Technology214, no. 8 (2014): 1728-1739

[3] S. Park, D.W. Rosen, C.E. Duty, “Comparing Mechanical and Geometrical Properties of Lattice Structure Fabricated using Electron Beam Melting“, 2014 Solid Freeform Fabrication Symposium

[4] D.M. Correa, T. Klatt, S. Cortes, M. Haberman, D. Kovar, C. Seepersad, “Negative stiffness honeycombs for recoverable shock isolation,” Rapid Prototyping Journal, 2015, 21(2), pp.193-200.

Cell Homogenization Models

[5] C. Yan, L. Hao, A. Hussein, P. Young, and D. Raymont. “Advanced lightweight 316L stainless steel cellular lattice structures fabricated via selective laser melting,” Materials & Design 55 (2014): 533-541.

[6] S. Didam, B. Eidel, A. Ohrndorf, H.‐J. Christ. “Mechanical Analysis of Metallic SLM‐Lattices on Small Scales: Finite Element Simulations versus Experiments,” PAMM 15.1 (2015): 189-190.

[7] P. Zhang, J. Toman, Y. Yu, E. Biyikli, M. Kirca, M. Chmielus, and A.C. To. “Efficient design-optimization of variable-density hexagonal cellular structure by additive manufacturing: theory and validation,” Journal of Manufacturing Science and Engineering 137, no. 2 (2015): 021004.

[8] M. Mazur, M. Leary, S. Sun, M. Vcelka, D. Shidid, M. Brandt. “Deformation and failure behaviour of Ti-6Al-4V lattice structures manufactured by selective laser melting (SLM),” The International Journal of Advanced Manufacturing Technology 84.5 (2016): 1391-1411.

Beam Theory Models

[9] R. Gümrük, R.A.W. Mines, “Compressive behaviour of stainless steel micro-lattice structures,” International Journal of Mechanical Sciences 68 (2013): 125-139

[10] S. Ahmadi, G. Campoli, S. Amin Yavari, B. Sajadi, R. Wauthle, J. Schrooten, H. Weinans, A. Zadpoor, A. (2014), “Mechanical behavior of regular open-cell porous biomaterials made of diamond lattice unit cells,” Journal of the Mechanical Behavior of Biomedical Materials, 34, 106-115.

[11] S. Zhang, S. Dilip, L. Yang, H. Miyanji, B. Stucker, “Property Evaluation of Metal Cellular Strut Structures via Powder Bed Fusion AM,” 2015 Solid Freeform Fabrication Symposium

[12] D. Bhate, J. Van Soest, J. Reeher, D. Patel, D. Gibson, J. Gerbasi, and M. Finfrock, “A Validated Methodology for Predicting the Mechanical Behavior of ULTEM-9085 Honeycomb Structures Manufactured by Fused Deposition Modeling,” Proceedings of the 26th Annual International Solid Freeform Fabrication, 2016, pp. 2095-2106

SFF Symposium 2016 Paper: Predicting the Mechanical Behavior of ULTEM-9085 Honeycomb Structures

Our work on  3D printed honeycomb modeling that started as a Capstone project with students from ASU in September 2015 (described in a previous blog post), was published in a peer-reviewed paper released last week in the proceedings of the SFF Symposium 2016. The full title of the paper is “A Validated Methodology for Predicting the Mechanical Behavior of ULTEM-9085 Honeycomb Structures Manufactured by Fused Deposition Modeling“. This was the precursor work that led to a us winning an 18-month award to pursue this work further with America Makes.

Download the whole paper at the link below:
http://sffsymposium.engr.utexas.edu/sites/default/files/2016/168-Bhate.pdf

Abstract
ULTEM-9085 has established itself as the Additive Manufacturing (AM) polymer of choice for end-use applications such as ducts, housings, brackets and shrouds. The design freedom enabled by AM processes has allowed us to build structures with complex internal lattice structures to enhance part performance. While solutions exist for designing and manufacturing cellular structures, there are no reliable ways to predict their behavior that account for both the geometric and process complexity of these structures. In this work, we first show how the use of published values of elastic modulus for ULTEM-9085 honeycomb structures in FE simulation results in 40- 60% error in the predicted elastic response. We then develop a methodology that combines experimental, analytical and numerical techniques to predict elastic response within a 5% error. We believe our methodology is extendable to other processes, materials and geometries and discuss future work in this regard.

Figure
Fig 1. Honeycomb tensile test behavior varying as a function of manufacturing parameters
The ASU Capstone team (left to right): Drew Gibson, Jacob Gerbasi, John Reeher, Matthew Finfrock, Deep Patel and Joseph Van Soest.
Fig 2. The ASU Capstone team (left to right): Drew Gibson, Jacob Gerbasi, John Reeher, Matthew Finfrock, Deep Patel and Joseph Van Soest.

ANSYS R17 Topological Optimization Application Example – Saxophone Brace

topo-opt-sax-a2What is Topological Optimization? If you’re not familiar with the concept, in finite element terms it means performing a shape optimization utilizing mesh information to achieve a goal such as minimizing volume subject to certain loads and constraints. Unlike parameter optimization such as with ANSYS DesignXplorer, we are not varying geometry parameters. Rather, we’re letting the program decide on an optimal shape based on the removal of material, accomplished by deactivating mesh elements. If the mesh is fine enough, we are left with an ‘organic’ sculpted shape elements. Ideally we can then create CAD geometry from this organic looking mesh shape. ANSYS SpaceClaim has tools available to facilitate doing this.

topo-opt-sax-a1Topological optimization has seen a return to prominence in the last couple of years due to advances in additive manufacturing. With additive manufacturing, it has become much easier to make parts with the organic shapes resulting from topological optimization. ANSYS has had topological optimization capability both in Mechanical APDL and Workbench in the past, but the capabilities as well as the applications at the time were limited, so those tools eventually died off. New to the fold are ANSYS ACT Extensions for Topological Optimization in ANSYS Mechanical for versions 17.0, 17.1, and 17.2. These are free to customers with current maintenance and are available on the ANSYS Customer Portal.

In deciding to write this piece, I decided an interesting example would be the brace that is part of all curved saxophones. This brace connects the bell to the rest of the saxophone body, and provides stiffness and strength to the instrument. Various designs of this brace have been used by different manufacturers over the years. Since saxophone manufacturers like those in other industries are often looking for product differentiation, the use of an optimized organic shape in this structural component could be a nice marketing advantage.

This article is not intended to be a technical discourse on the principles behind topological optimization, nor is it intended to show expertise in saxophone design. Rather, the intent is to show an example of the kind of work that can be done using topological optimization and will hopefully get the creative juices flowing for lots of ANSYS users who now have access to this capability.

That being said, here are some images of example bell to body braces in vintage and modern saxophones. Like anything collectible, saxophones have fans of various manufacturers over the years, and horns going back to production as early as the 1920’s are still being used by some players. The older designs tend to have a simple thin brace connecting two pads soldered to the bell and body on each end. Newer designs can include rings with pivot connections between the brace and soldered pads.

topo-opt-sax-01
Half Ring Brace

 

Solid connection to bell, screw joint to body
Solid connection to bell, screw joint to body
Older thin but solid brace rigidly connected to soldered pads
Older thin but solid brace rigidly connected to soldered pads
topo-opt-sax-04
Modern ring design
Modern Dual Degree of Freedom with Revolute Joint Type Connections
Modern Dual Degree of Freedom with Revolute Joint Type Connections

Hopefully those examples show there can be variation in the design of this brace, while not largely tampering with the musical performance of the saxophone in general. The intent was to pick a saxophone part that could undergo topological optimization which would not significantly alter the musical characteristics of the instrument.

The first step was to obtain a CAD model of a saxophone body. Since I was not able to easily find one freely available on the internet that looked accurate enough to be useful, I created my own in ANSYS SpaceClaim using some basic measurements of an example instrument. I then modeled a ‘blob’ of material at the brace location. The idea is that the topological optimization process will remove non-needed material from this blob, leaving an optimized shape after a certain level of volume reduction.

Representative Solid Model Geometry Created in ANSYS SpaceClaim. Note ‘Blob’ of Material at Brace Location.
Representative Solid Model Geometry Created in ANSYS SpaceClaim. Note ‘Blob’ of Material at Brace Location.

In ANSYS Mechanical, the applied boundary conditions consisted of frictionless support constraints at the thumb rest locations and a vertical displacement constraint at the attachment point for the neck strap. Acceleration due to gravity was applied as well. Other loads, such as sideways inertial acceleration, could have been considered as well but were ignored for the sake of simplicity for this article. The material property used was brass, with values taken from Shigley and Mitchell’s Mechanical Engineering Design text, 1983 edition.

topo-opt-sax-07
Applied Boundary Conditions Were Various Constraints at A, B, and C, as well as Acceleration Due to Gravity.

This plot shows the resulting displacement distribution due to the gravity load:

topo-opt-sax-08

Now that things are looking as I expect, the next step is performing the topological optimization.

Once the topological optimization ACT Extension has been downloaded from the ANSYS Customer Portal and installed, ANSYS Mechanical will automatically include a Topological Optimization menu:

topo-opt-sax-09

I set the Design Region to be the blog of material that I want to end up as the optimized brace. I did a few trials with varying mesh refinement. Obviously, the finer the mesh, the smoother the surface of the optimized shape as elements that are determined to be unnecessary are removed from consideration. The optimization Objective was set to minimize compliance (maximize stiffness). The optimization Constraint was set to volume at 30%, meaning reduce the volume to 30% of the current value of the ‘blob’.
After running the solution and plotting Averaged Node Values, we can see the ANSYS-determined optimized shape:

topo-opt-sax-10
Two views of the optimized shape.

What is apparent when looking at these shapes is that the ‘solder patch’ where the brace attaches to the bell on one end and the body on the other end was allowed to be reduced. For example, in the left image we can see that a hole has been ‘drilled’ through the patch that would connect the brace to the body. On the other end, the patch has been split through the middle, making it look something like an alligator clip.

 

Another optimization run was performed in which the solder pads were held as surfaces that were not to be changed by the optimization. The resulting optimized shape is shown here:

topo-opt-sax-11

Noticing that my optimized shape seemed on the thick side when compared to production braces, I then changed the ‘blob’ in ANSYS SpaceClaim so that it was thinner to start with. With ANSYS it’s very easy to propagate geometry changes as all of the simulation and topological optimizations settings stay tied to the geometry as long as the topology of those items stays the same.

Here is the thinner chunk after making a simple change in ANSYS SpacClaim:

topo-opt-sax-12

And here is the result of the topological optimization using the thinner blob as the starting point:

topo-opt-sax-13

Using the ANSYS SpaceClaim Direct Modeler, the faceted STL file that results from the ANSYS topological optimization can be converted into a geometry file. This can be done in a variety of ways, including a ‘shrink wrap’ onto the faceted geometry as well as surfaces fit onto the facets. Another option is to fit geometry in a more general way in an around the faceted result. These methods can also be combined. SpaceClaim is really a great tool for this. Using SpaceClaim and the topological optimization (faceted) result, I came up with three different ‘looks’ of the optimized part.

Using ANSYS Workbench, it’s very easy to plug the new geometry component into the simulation model that I already had setup and run in ANSYS Mechanical using the ‘blob’ as the brace in the original model. I then checked the displacement and stress results to see how they compared.

First, we have an organic looking shape that is mostly faithful to the results from the topological optimization run. This image is from ANSYS SpaceClaim, after a few minutes of ‘digital filing and sanding’ work on the STL faceted geometry output from ANSYS Mechanical.

topo-opt-sax-14

This shows the resulting deflection from this first, ‘organic’ candidate:

topo-opt-sax-15

The next candidate is one where more traditional looking solid geometry was created in SpaceClaim, using the topological optimization result as a guide. This is what it looks like:

topo-opt-sax-16

This is the same configuration, but showing it in place within the saxophone bell and body model in ANSYS SpaceClaim:

topo-opt-sax-17

Next, here is the deformation result for our simple loading condition using this second geometry configuration:

topo-opt-sax-18

The third and final design candidate uses the second set of geometry as a starting point, and then adds a bit of style while still maintaining the topological optimization shape as an overall guide. Here is this third candidate in ANSYS SpaceClaim:

topo-opt-sax-19

Here are is the resulting displacement distribution using this design:

topo-opt-sax-20

This shows the maximum principal stress distribution within the brace for this candidate:

topo-opt-sax-21

Again, I want to emphasize that this was a simple example and there are other considerations that could have been included, such as loading conditions other than acceleration due to gravity. Also, while it’s simple to include modal analysis results, in the interest of brevity I have not included them here. The main point is that topological optimization is a tool available within ANSYS Mechanical using the ACT extension that’s available for download on the customer portal. This is yet another tool available to us within our ANSYS simulation suite. It is my hope that you will also explore what can be done with this tool.

Regarding this effort, clearly a next step would be to 3D print one or more of these designs and test it out for real. Time permitting, we’ll give that a try at some point in the future.

ANSYS 17.1 FEA Benchmarks using v17-sp5

The CUBE machines that I used in this ANSYS Test Case represent a fine balance based on price, performance and ANSYS HPC licenses used.

Click Here for more information on the engineering simulation workstations and clusters designed in-house at PADT, Inc.. PADT, Inc. is happy to be a premier re-seller and dealer of Supermicro hardware.

  • ANSYS Benchmark Test Case Information.
  • ANSYS HPC Licensing Packs required for this benchmark
    • I used (2) HPC Packs to unlock all 32 cores.
  • Please contact your local ANSYS Software Sales Representative for more information on purchasing ANSYS HPC Packs. You too may be able to speed up your solve times by unlocking additional compute power!
  • What is a CUBE? For more information regarding our Numerical Simulation workstations and clusters please contact our CUBE Hardware Sales Representative at SALES@PADTINC.COM Designed, tested and configured within your budget. We are happy to help and to  listen to your specific needs.

Figure 1 – ANSYS benchmark data from three excellent machines.

CUBE
CUBE by PADT, Inc. ANSYS Release 17.1 FEA Benchmark

BGA (V17sp-5)

BGA (V17sp-5)
Analysis Type Static Nonlinear Structural
Number of Degrees of Freedom 6,000,000
Equation Solver Sparse
Matrix Symmetric

Click Here for more information on the ANSYS Mechanical test cases. The ANSYS website has great information pertaining to the benchmarks that I am looking into today.

Pro Tip –> Lastly, please check out this article by Greg Corke one of my friends at ANSYS, Inc. I am using the ANSYS benchmark data fromthe Lenovo Thinkstation P910 as a baseline for my benchmark data.  Enjoy Greg’s article here!

  • The CPU Information

The benchmark data is derived off of the running through the BGA (sp-5) ANSYS test case. CPU’s and how they perform with one of the very latest ANSYS releases, ANSYS Release 17.1.

  1.  Intel® Xeon® e5-2680 V4
  2.  Intel® Xeon® e5-2667 V4
  3.  Intel® Xeon® e5-2697a V4
  • It Is All About The Data
    • Only one workstation was used for the data in this ANSYS Test Case
    • No GPU Accelerator cards are used for the data
    • Solution solve times are in seconds
ANSYS 17.1 Benchmark BGA v17sp-5
Lenovo ThinkStation P910 2680 V4 CUBE w16i 2667 V4 CUBE w32i 2697A V4
Cores Customer X  – 28 Core @2.4GHz/ea CUBE w16i CUBE w132i tS
2 1016 380.9 989.6 1.03
4 626 229.6 551.1 1.14
8 461 168.7 386.6 1.19
12 323 160.7 250.5 1.29
16 265 161.7 203.3 1.30
20 261 0 176.9 1.48
24 246 0 158.1 1.56
28 327 0 151.8 2.15
31 0 0 145.2 2.25
32 0 0 161.7 2.02
15-Nov-16 PADT, Inc. – Tempe, AZ –
  • Cube w16i Workstation – Windows 10 Professional
    1 x 4U CUBE APPLIANCE
    2 x 8c @3.2GHz/ea
    Dual Socket motherboard
    256GB DDR4-2400 MHz LRDIMM
    6 x 600GB SAS3 15k RPM
    NVIDIA QUADRO K6000
  • CUBE w32i Workstation – Windows 10 Professional
    1 x 4U CUBE APPLIANCE
    2 x 16c @2.6GHz/ea
    Dual Socket motherboard
    256GB DDR4-2400 MHz LRDIMM
    2 x 600GB SAS3 15k RPM
    NVIDIA QUADRO M4000
  • Lenovo Thinkstation P910 Workstation – Windows 10 Professional
    Lenovo P910 Workstation
    2 x 14c @2.4GHz/ea
    Dual Socket motherboard
    128GB DDR4-2400 MHz
    512GB NVMe SSD / 2 x 4TB SATA HDD / 512GB SATA SSD
    NVIDIA QUADRO M2000

As you will may have noticed above, the CUBE workstation with the Intel Xeon e5-2697A V4 had the fastest solution solve time for one workstation.

  • *** Using 31 cores the CUBE w32i finished the sp-5 test case in 145.2 seconds.

See 32 Cores of Power! CUBE by PADT, Inc.

cube-w32i-coresCUBE w32i

CUBE w32i

CUBE by PADT, Inc. of ANSYS 17.1 Benchmark Data for sp-5
CUBE by PADT, Inc. of ANSYS 17.1 Benchmark Data for sp-5

Thank you!

http://www.cube-hvpc.com/