Skip to main content

Posts

Showing posts from June, 2017

COMBIN40 As Simplified 1D Friction

Spring that Imitates Static/Dynamic Friction
Sometimes, a simple linear spring is not adequate. In tough jobs where a spring with a built-in gap or force saturation is needed, COMBIN40 is the spring of choice. It could behave similarly to a one dimensional friction contact like in Wikipedia:
Static to Dynamic Friction
In the animation above, the spring is actually two COMBIN40 springs in parallel. When done just right, they could imitate the behavior of static to dynamic friction forces: Spring Forces
To do it in Mechanical, here's the tip! Under Geometry, you'll have to change the Element Control setting to Manual. This allows the spring element to be modified. Element Control
Next, two identical springs are added (parallel springs). The snippet for the first spring: Spring #1 Snippet
The second spring snippet: Spring #2 Snippet
The snippet has two lines of code. The first line changes the element to COMBIN40, the second line defines the stiffness (K1) and the amount of satu…

It's EALIVE! It's Alive!

To be able to EKILL and EALIVE elements is a neat trick. It allows for a dormant element that springs to life. The reactivated elements have zero strain so some people use it to simply clear it of any unwanted stresses. I have more frequently use it to turn on and off contacts.

Here's a simple example problem: A block is fixed at the bottom, the top cylinder is pushed by hand downwards until it touches the block. Because of adhesive, the two are now 'bonded' together. In the second step, the hand lets go of the cylinder, the spring which is attached to ground at the top pulls on the cylinder creating stress on both parts.

Just push down to cure glue and let go!
There are a few steps needed to get this to work.

Firstly create a snippet of the bonded contact so it could be identified later. The code is simply:
mycid = cid
mytid = tid

Secondly, create two more snippets in the Analysis tree. Snippet #1 will EKILL the contacts for the first time step. Specifying the Step Number i…

ACT Console

The Humble Hammer
Not being very handy around the house, I own a cheap low cost hammer. But as any pro would tell you, no one uses a hammer for roofing. It is very inefficient and gives you a sore arm.

We all want to avoid repeated stress-related injuries (physical and emotional). "Mouse Finger" injury is very real! To mitigate this, Ansys Mechanical has this really cool Automation API. Though intended for ACT debugging and creation, the ACT Console allows the user to input commands that is immediately reflected inside Mechanical. This functions like the Input Line in Ansys Classic! Unfortunately Mechanical only speaks Python and not APDL; so I'm just starting to learn a new language which is hard for an old guy like me. The potential benefits are enormous. Here are some examples:

Say you do non-linear analysis 60% of the time and use the the same settings from a mental checklist. Now you could create Python script to automate those clicks. If you have many time steps an…

APDL Math Example

I read about APDL Math a few years ago with much intrigue. A very interesting write-up about it can be found here. What stood out to me was the possibility of computing modal sensitivity relative to different variables similar to what SOL 200 offers in NASTRAN for optimization.

Web Resources
Ansys Help Document: The commands are documented though the available examples are limited
PADT Blog Post: Eric's article gives a good overview of the capabilities
Ansys Knowledge Resource #2025879: Additional guidance in usage.
PADT Blog Post [Edit: Sept 12, 2017]: Awesome post! Results back in 'User Ordering'!
AnsysTips Blog Post [Edit: Oct 11, 2017]: Export Stiffness Matrix

Unfortunately, that's about all I could find anywhere.

APDL Math Example Overview
DOF ordering is not addressed here. I have not yet figured out a good way to do it yet so please share if you can convert to the 'user ordering' all in one shot.

Please see the script on how the solution was performed. The…