*heading
	Cylinder - 9-node full integration elements 
        tested with def-vs-rigid small sliding contact
*preprint, model=yes, history=yes
*node, nset=bot
1,  1.0, 0.0
17, 1.0, 0.0
21, 1.5, 0.0
37, 1.5, 0.0
41, 2.0, 0.0
57, 2.0, 0.0
*node
999, 0.0, 0.0
*ngen, line=c, nset=bot
1, 17, 1, 999, , , , 0.0, 0.0, 1.0
21, 37, 1, 999, , , , 0.0, 0.0, 1.0
41, 57, 1, 999, , , , 0.0, 0.0, 1.0
*ncopy, old set=bot, change number=200, shift, new set=top
0.0, 0.0, 1.0

*nset, nset=nall
bot,top
*element, type=ccl9, elset=eall
1,  3,43,243,  1,41,241,  2,42,242
8,  1,41,241, 15,55,255, 16,56,256
11, 3,243,203, 1,241,201, 2,242,202
18, 1,241,201,15,255,215,16,256,216
*elgen, elset=eall
1, 7, 2, 1
11, 7, 2, 1
*elset, elset=e_inner, gen
11, 18, 1
*solid section, elset=eall, material=st1
*material, name=st1
*elastic
30E6, 0.3
**
** contact definition
**
*node, nset=rigid
1000, 0, 0, 0
*surface,name=asurf
e_inner, s5
*surface,name=bsurf,type=revolution
0.,0.,0.,0.,0.,1.
start, 1.2,  3.0
line,  1.2, -2.0
*rigid body,analytical surface=bsurf,ref node=1000
*contact pair,interaction=rough, small sliding
asurf,bsurf
*surface interaction,name=rough
**
** node set definition
**
*nset, nset=in, gen
1,16
201,216
*nset, nset=out, gen
41,56
241,256
*nset, nset=out_bot, gen
41,56
*transform, type=c, nset=nall
0.0,0.0,0.0, 0.0,0.0,1.0
**
** HISTORY DEFINITION
**
** step 1: Shrink fit with *CONTACT INTERFERENCE.
** 	   Establish base state.
**
*step, nlgeom
 establish contact
*static
0.1, 1.0
*contact interference,shrink
asurf, bsurf
**
*** Boundary conditions
**
*boundary
out_bot, 3, 3
41, 2, 2
rigid, 1, 6
*el print
s,
e,
*contact print
*controls,parameter=field
1.0e-6,
*print,contact=yes
*output, field, freq=6
*element output, elset=eall
s
*node output
u
*contact output, slave=asurf, variable=preselect
*end step
**
** step 2: slide w/o friction, linear perturbation
**
*step, pert, nlgeom
*static
*boundary, op=mod
rigid, 3, 3, 0.01
*contact print
*output, field
*element output, elset=eall
s
*node output
u
*end step
**
** step 3: change surface friction
**
*step, nlgeom
*static
1.0,1.0
*change friction, interaction=rough
*friction
0.3,
*output, field, freq=6
*element output, elset=eall
s
*node output
u
*end step
**
** step 4: slide with friction
**
*step, nlgeom
*static
1.0, 1.0
*boundary, op=mod
rigid, 3, 3, 0.01
*output, field, freq=6
*element output, elset=eall
s
*node output
u
*contact output, slave=asurf, variable=preselect
*end step