Log In

Come Join Us!

Are you an
Engineering professional?
Join Eng-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!
  • Students Click Here

*Eng-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Students Click Here


plotting life

plotting life

plotting life

My company does not have nCode. our ansys license is very limited with regard to fatigue. We get outputs from ansys simulations that are input into our in-house software for post processing. The results are fatigue lives and damage.
It can produce life and damage results at all selected nodes in a txt or CSV file. I would like to find a way to plot the result in ansys on to the source mesh. I have tried using a "csvplot" ACT extension by CAE, and it works in some cases but produces unacceptable errors in others. Is there any APDL command objects that will read a txt file assign a value to each node for contour plotting? Even if the contour was an apdl image. I'm using v18.2 but can upgrade to 19.

RE: plotting life

What we did was read in the min stress and max stress at every node into an array. Calculate the mean and alternating stress. Then take that and use Modified Goodman to get your fatigue stress. Fit a curve to your fatigue data to get Sfat = f(n) and use that to get n=f(Sfat). You now have the life at each node, or n = f(x,y,z). Divide your required life by n and get the safety factor. Then use *VPUT to read the life into the database so you can plot it.

Rick Fischer
Principal Engineer
Argonne National Laboratory

RE: plotting life

Thanks for you suggestion but that process is not sufficient. It does not account for our particular load histories..unless your instruction to "fit a curve to your fatigue data to get Sfat = f(n)" is that part. But I have no clue how to do that in ansys.

Summary of our process:
For us, fatigue is based on a load history with load effects form several different load contributors in several different directions. So the range between a single min and max is not sufficient. For each contributor, loads are rainflow counted into bins. For each contributor, each bin has a min and max load in each load direction and a number of occurrences. There could be 20 bins, there could be 300,000 bins. We use Ansys to a find a component stress response to unit loading for each contributor applied in each direction, a unit stress Transfer function is developed. The component stresses response to each direction of loading for a contributor are exported and externally post processed by scaling to fit each bin. The sum of s_ij.min and sum s_ij.max for all directional responses create two tensors in each bin for each node. The difference of each component from the min and max tensors create a difference tensor for each bin. Principal stress ranges are calc'd from the difference tensors. Then damage is calc'd from the principal stress ranges.
What you suggest does not seem to account for all this since:
1) the min and max stress from a single load case may not represent the correct load cycle range.
2) a single bin in a load history might represent a contributor's tensile, shear, and torsion load ranges associated with a number of cycles. The next bin has different load values for all load components. The combined effect of load is important so a single set of reference stress ranges are not sufficient. To avoid thousands of load cases, A unit stress transfer function is developed and applied to the history.

Our process is really not important.
I just need to know how to contour plot external data.

You say use "*VPUT to read the life into the database so you can plot it."
But *VPUT just put arrays into the db. Furthermore, it seems to only work with a list of predefined items.
How does that hep me make a contour plot?

RE: plotting life

I figured it out
*tread to make a table of my values then
*VPUT does work somewhat if I want to use all nodes or if I want to do a set of sequential nodes. Otherwise it does not map the data correctly.
Must loop DNSOL

My only issue with this that these commands replace values that exists in the data set like UX for example. So the plots are labeled UX plots (or whatever data I replaced). Life and damage are not on the list of replaceable data.

RE: plotting life

When the loading was not constant, we ran multiple load cases and used Miner's Rule. Also, we applied knockdown factors to various areas for surface finish, etc by assigning nodes to components, and then increasing the fatigue stress at those nodes.

lets say your FS value is in column 14.

yes, the title will say UX. put a title on the plot to identify it. Sometimes it helps to turn powergraphics off.

/title,Safety Factor for Fatigue Failure at 2.5E5 Cycles

You can vput over any result supported by plnsol, but some values, like von Mises stress, are not in the database, and are recalculated when you plot, so your fatigue results get overwritten.

Rick Fischer
Principal Engineer
Argonne National Laboratory

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Eng-Tips Forums free from inappropriate posts.
The Eng-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Eng-Tips forums is a member-only feature.

Click Here to join Eng-Tips and talk with other members!


Close Box

Join Eng-Tips® Today!

Join your peers on the Internet's largest technical engineering professional community.
It's easy to join and it's free.

Here's Why Members Love Eng-Tips Forums:

Register now while it's still free!

Already a member? Close this window and log in.

Join Us             Close