Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations waross on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

too many increments, warped and distorted elements 1

Status
Not open for further replies.

MrSamuel

Bioengineer
Oct 13, 2011
45
0
0
CA
I have a model of a human foot that consists of rigid bones kinematicaly connected and enveloped in linearly elastic soft tissue. Ligaments are approximated as tension only trusses.

The model is finicky, slight changes can prevent the model from solving. I get the error "too many increments" and get the "distorted" and "warped" warnings. But I get those warnings when it solves too. Really, the warnings are the exact same whether or not it solves. So how am I to know what is going wrong? Any recommended trouble shooting steps?
 
Replies continue below

Recommended for you

The bone, soft tissue, and ligaments are one part. Its the bone and soft tissue being merged that is the problem. Once they are one part, I cannot isoloate the bone componement for visualization. And the surfaces of the bone don't exist anymore, only the surface of the soft tissue as the bones are inside the soft tissue. See in the attached pic how you can see the tibia and fibula bone where they are outside the soft tissue, but where they are inside they are no longer visible.
Any thoughts?
getfile.aspx
 
Brilliant, I can see the bones now!

I'm just about there. I just need to connect the bones. I'm doing it kinematically with pins and hinges rather than contact modeling (trying to make this thing fast).
In the example of a hinge joint, I create two reference points. The first point lies somewhere on the hinge axis. I create a coordinate system at this first point with the X-axis pointing along the hinge axis. A wire connects the two reference points, and I assign a hinge connector to this wire. Finally, I connect one reference point to one bone, and the other reference point to the other bone. I was doing this connection within the rigid body constraint, but now that I'm not using rigid body constraints, what is the best tool? Couple, tie, MPC tie or pin? I tried tieing the reference point (master) to a single bone surface, but this didn't constrain relative bone motion to the hinge axis. How could I do this? Is there a totally different and better approach I should try?

What confuses me is that I am trying to constrain a reference point to a deformable solid. Perhaps I should be trying to constrain it to a single node. I'm not sure how this is done and even if I achieve it, its not a very robust solution because I have to redo the connection every time I rebuild the mesh during convergence testing...

Thanks!
Sam
 
To pick a node, I go to the mesh module, select the main part (merged ligaments, bone, and soft tissue), and create a set. I do this for two bones (I'm just making one pin connection for now). I then go to the interaction module and create an MPC constraint, select the first set (control node), then the second set (slave node), I then specify the MPC type to be pin. Is this the correct procedure? Assuming it is, here is where I have trouble:

-When creating a node set in the mesh module, I can only see external nodes, not the interior ones (kind of like the problem I was having with the visualization module). How can I select an interior node? How can I select the node nearest a 3D coordinate I specify (I know before hand the center of rotation)?
-If I remesh the part for convergence testing, won't I loose the sets and have to re enter them all?
-While I was testing working with nodes, I created an encastre boundary condition on a node set, yet the node still moved, any guess why it wouldnt hold still?
-In regards to MPC pin constraints, when I have two bones A and B with respective internal nodes A and B, I create a MPC pin constraint with node A as the control and node B as the slave. Rotations occur about both node A and node B (oddly, this is the case for MPC tie constraint too, I don't see the difference between tie and pin). What I really want is for both bones to rotate only about node A. How can I do this? Perhaps I need the slave node set to contain three nodes in bone B? Or is there an easier way?

Hope this is clear enough,
Thanks,
Sam
 
Sometimes it is easier to work with INPs directly. I'd simply put the following lines in the INP where you have your other constraints defined (assuming the nodes belong to the same part):

Code:
*MPC
PIN, Node a, Node b

So, all you need to do is ensure you know the node numbers. And even when you are trying to carry out convergence testing, the same procedure applies.

If I remember correctly, ABAQUS has a plug-in which lets you detect a node closest a set of coordinates. If its not installed, you may find it on the SIMULIA custhelp website.

A fixed node can not move. Double-check your model.

Can't you simply fix rotational DOFs of node B? For example, the following fixes 5 and 6 rotational DOFs:

Code:
*Boundary
node B, 5, 5
node B, 6, 6

 
Everything is great except for creating the bone to bone hinge and pin joints. I would really prefer not to work with the inp file as any changes to the cae file I make means I have to make changes to the inp file again. Just doesnt seem robust to me. And I'm having trouble tieing rotational degrees of freedom about a node with MPC tie constraint, it seems to work the same as MPC pin.

I'm thinking I should try the connectors again. They worked find for me previously when I could add the reference points to rigid body constraints. But now that I'm not using rigid body constraints, I'm not sure how to tie the reference points to the bones (I haven't had much luck with couple and tie constraints) ... Have you used connectors like this before, how would you set up a hinge connection between two deformable bodies?

Thanks for all your time on this, a lot of questions I've had... I hope others will happen across this thread as you've provided some excellent advice.
Sam
 
MrSamuel said:
as any changes to the cae file I make means I have to make changes to the inp file again

You make all sorts of changes you want in the CAE, create an INP and then edit the generated INP only where changes are needed. You don't have to repeat anything (although there are exceptions).

I'd kinematically couple (while fixing DOFs I want fixed) all nodes (except the ones that are assigned to some other constraint) of each bone to a reference node. Then, I'd use MPC Pin type constraint between the two reference nodes.

I've used connectors mostly, if not always, for actuation (e.g. in modeling the effect of muscles.)

 
OK, I think I've got all the techniques you've helped me with working individually, now I just need to put it together in one moodel. Already I can tell it will be a fast and robust model.

Heres a question in a slightly different direction. Please let me know if I should create a new thread for it, though the answer may be very short.
I push a flat hexahedral meshed solid into the foot to simulate loading on flat ground. Pressure is what I am interested in, so I look at CPress on the ground model. I thought the results looked high, so I multiplied the pressure at each node by the element area to calculate force. Sure enough, I got a force higher (it varies depending on mesh density, but maybe around 20%) than what was applied during loading.
Any idea why it is off? Do you know, or know of a reference that explains how CPress is calculated?

Thanks,
Sam
 
Glad to hear that.

a) If the ground is supposed to be far more stiff relative to the bone, then why not simply create an analytical rigid surface for the ground?
b) You are not taking in to account the shear stress, are you?

I am not sure if this is possible but check what RF (at the ground nodes that are in contact with the foot or the other way around) gives you.

I don't remember off the top of my head how CPRESS or CSTRESS are computed by ABAQUS but I am sure the Analysis User's Manual must have sufficient content related to this. Also, you might want to watch the CPRESS error indicator (CPRESSERI; CSTRESSERI). The error value should be a fraction of the contact pressure in the region of interest.

How did you compute element area? Note that ABAQUS must use some sort of threshold to define when a surface comes in to contact with another surface. Based on that distance, it will decide how much "area" is in contact. There is an output variable for contact area and I guess its CAREA; check the manual. Then, after computing the solution, it must compute a vectorial resultant force on the area. Finally, there is nodal averaging (in the Visualization module) to be kept in mind as well.


 
With your help I think I figured it out: pressure listed at a node is not necessarily acting on an area the size of the element; at the edges of the contact areas, it will inevitably be less. Thus I cannot simply multiply each pressure by the element area and sum them to get total force. Though by reducing the ground mesh, this method approaches the actual force. This isn't the case for reaction force where summing the values at the nodes accurately results in total load regardless of mesh size.

Thanks for getting me on the right track, again!
That's all for now.
Sam
 
Status
Not open for further replies.
Back
Top