Modeling interference fit (shrink fit)

Hi,

does CalculiX have an option to model interference fit (shrink fit / press fit) in contact? So that I can place two parts with initial interference and it will be resolved by the solver with stress and strain generation (unlike slave adjustment in tie constraint). I haven’t seen any keyword for that but I came across some websites mentioning presfit option, however I’m not sure how to use it. Especially that I submit the job via preprocessor and I don’t use any commands for solver. Is there a way to model interference fit with just the keywords ?

Model your parts with the interference value, they will resolve the press fit. Make sure your mesh density is sufficient and your contact stiffness is high enough (you will know if it is not if you see your parts passing through each other).

Ok, but there are two possible approaches to initial interference in contact - the software might resolve them without generating stresses and strains or do it with stress and strain generation. The former is just a convenient slave surface adjustment while the latter is actual interference fit modeling. Isn’t the first option used by default in CalculiX ?

I am not sure, but I think the surface adjustment is for bonded contact (constraint equations), so that the CE’s don’t store load.
My experience with contact is that it works by default as I describe. Below is a small input sample, this should give you enough to get started.

You can also look at these YouTube videos. They use the Mecway preprocessor but they discuss topics that I think are relevant to you (contact, interference, contact stiffness, friction) and they can be run in the demo version of Mecway. Once you run an example, you can see the Calculix commands that were generated.

https://www.youtube.com/watch?v=MYFW7MBtqI4

https://www.youtube.com/watch?v=lx0-2XtFz1Y

*** EXAMPLE INTERFERENCE FIT USING CONTACT
*NODE
1,0.005,0,0.01
2,0.009899999015033,0.004698017383809,0.009825071979314
3,0,0.005,0.005
4,0.005,0.005,0.01
5,0,0,0.01
6,0.009899999015033,0.0001980173838092,0.009825071979314
7,0.005,0,0.005
8,0.009899999015033,0.004698017383809,0.005325071979314
9,0,0.005,0.01
10,0,0,0.005
11,0.005,0.005,0.005
12,0.009899999015033,0.0001980173838092,0.005325071979314
13,0.004899999015033,0.0001980173838092,0.005325071979314
14,0.004899999015033,0.004698017383809,0.005325071979314
15,0.004899999015033,0.0001980173838092,0.009825071979314
16,0.004899999015033,0.004698017383809,0.009825071979314
*ELEMENT,TYPE=C3D8
1,13,12,8,14,15,6,2,16
2,10,7,11,3,5,1,4,9
*ELSET,ELSET=part2
2
*ELSET,ELSET=part1
1
*SURFACE,NAME=s1
2,S4
*SURFACE,NAME=s2
1,S6
*MATERIAL,NAME=Material
*ELASTIC,TYPE=ISOTROPIC
100000000000,0.3
*SOLID SECTION,ELSET=part2,MATERIAL=Material
*SOLID SECTION,ELSET=part1,MATERIAL=Material
*BOUNDARY
2,1,0
2,2,0
2,3,0
3,1,0
3,2,0
3,3,0
5,1,0
5,2,0
5,3,0
6,1,0
6,2,0
6,3,0
8,1,0
8,2,0
8,3,0
9,1,0
9,2,0
9,3,0
10,1,0
10,2,0
10,3,0
12,1,0
12,2,0
12,3,0
*CONTACT PAIR,INTERACTION=SI_1,TYPE=SURFACE TO SURFACE
s2,s1
*SURFACE INTERACTION,NAME=SI_1
*SURFACE BEHAVIOR,PRESSURE-OVERCLOSURE=LINEAR
2000000000000
*STEP,NLGEOM=YES,INC=100
*STATIC
0.05,1,0,0
*NODE FILE,GLOBAL=YES
U,RF
*EL FILE
S,E,ENER
*CONTACT FILE
CDIS,CSTR
*END STEP

In the past I have modeled (first in Abaqus and then CalculiX) lot of rubber bushes that before applying main loads, we need to press fit in assembly condition. In order to do that we made a preliminar assembly step were we define a cylindric coordinate system (*TRANSFORM card) for the nodes related to the faces that we need to press fit, then just apply a radial displacement (1st dof of the cylindrical coordinate system) to the nodes of the pressed fit faces. The main advantage of this method is that you don’t need to include the exterior part or use contacts, you directly decrease the diameter of the part to the exactly end dimention.

Attached an animation of a press fit operation of a rubber/metal bush, made with CCX/Mecway and with this procedure.

image002

1 Like