*heading : file for verification of elastic-plastic joint elements. Test: elasticity, orientations, output and stiffness matrix, perturbations cases tested 2d: Orientation : cylindrical, and conical 3d: Orientation : cylindrical and conical General moduli : Done only for 3d cases Conical with embedment>critical is also tested (2d case) ****************************************************************************** Explanation of element set names The first two letters indicate whether the joint is two (d2) or three (d3) dimensional. The next three letters indicate whether the cross section is cylindrical (cyl) or conical (con). If the sixth letter is `n', general moduli are used. If the sixth letter is `s', spud can moduli are used. If the sixth letter is `l', spud can moduli are used, with the embedment less than critical. If the sixth letter is `g', spud can moduli are used, with the embedment greater than critical. If the last letter is `f', the moduli are field variable dependent. ****************************************************************************** ** **node definitions ** *node,nset=d2cyls 1,1. 2,1. *node,nset=d3cyls 11,2. 12,2. *node,nset=d2conl 21,3 22,3 *node,nset=d3cyln 31,4 32,4 *node,nset=d2cong 41,5 42,5 *node,nset=d3conl 51,6 52,6 *node,nset=d2cyln 61,7 62,7 *node,nset=d2cylsf 101,8. 102,8. *node,nset=d3cylsf 111,9. 112,9. *node,nset=d3cylnf 131,10. 132,10. *node,nset=d2cylnf 161,11. 162,11. *nset,nset=nall d2cyls,d3cyls,d2conl,d3cyln,d2cong,d3conl,d2cyln,d2cylsf,d3cylsf,d3cylnf *nset,nset=nall nall,d2cylnf ** ** ** element definitions ** *element,type=joint2d, elset=d2cyls 21,1,2 *element,type=joint3d,elset=d3cyls 31,11,12 *element,type=joint2d, elset=d2conl 41,21,22 *element,type=joint3d, elset=d3cyln 51,31,32 *element,type=joint2d, elset=d2cong 61,41,42 *element,type=joint3d, elset=d3conl 71,51,52 *element,type=joint2d, elset=d2cyln 81,61,62 *element,type=joint2d, elset=d2cylsf 121,101,102 *element,type=joint3d, elset=d3cylsf 131,111,112 *element,type=joint3d, elset=d3cylnf 151,131,132 *element,type=joint2d, elset=d2cylnf 181,161,162 *elset,elset=pert 21,31,41,51,121,131,151 ** ** ** ** ** nset definitions ** *nset,nset=bd2cyls 1, *nset,nset=bd2conl 21, *nset,nset=bd2cong 41, *nset,nset=bd2cyln 61, *nset,nset=bd3cyls 11, *nset,nset=bd3cyln 31, *nset,nset=bd3conl 51, *nset,nset=bd2cylsf 101, *nset,nset=bd3cylsf 111, *nset,nset=bd3cylnf 131, *nset,nset=bd2cylnf 161, *nset,nset=base bd2cyls,bd3cyls,bd2conl,bd3cyln,bd2cong,bd3conl,bd2cyln,bd2cylsf,bd3cylsf *nset,nset=base base,bd3cylnf,bd2cylnf *nset,nset=td2conl 22, *nset,nset=td2cong 42, *nset,nset=td2cyls 2, *nset,nset=td2cyln 62, *nset,nset=td3cyls 12, *nset,nset=td3cyln 32, *nset,nset=td3conl 52, *nset,nset=td2cylsf 102, *nset,nset=td3cylsf 112, *nset,nset=td3cylnf 132, *nset,nset=td2cylnf 162, *nset,nset=d2cyls 1,2 *nset,nset=d3cyls 11,12 *nset,nset=d2cylsf 101,102 *nset,nset=d3cylsf 111,112 *nset,nset=npert 1,2,11,12,21,22,31,32,101,102,111,112,131,132 ** ** transformations to make nodal local directions orient with ** material directions ** *transform,nset=d2cyls 1,1,0,-1,1,0 *transform,nset=d2cyln 1,1,0,-1,1,0 *transform,nset=d3cyls 1,0,0,0,0.7071,0.7071 *transform,nset=d2conl 1,1.732,0,-1,1.732,0 *transform,nset=d2cong 1,1.732,0,-1,1.732,0 *transform,nset=d3conl 1,0.866,0.5,-1,0.866,0 *transform,nset=d2cylsf 1,1,0,-1,1,0 *transform,nset=d2cylnf 1,1,0,-1,1,0 *transform,nset=d3cylsf 1,0,0,0,0.7071,0.7071 ** **orientations of matl. ** ** *orientation,name=od2cyl 1,1,0,-1,1,0 *orientation,name=od2conl 1,1.732,0,-1,1.732,0 *orientation,name=od2cong 1,1.732,0,-1,1.732,0 *orientation,name=od3cyls 1,0,0,0,0.7071,0.7071 *orientation,name=od3cyln 1,0,0,0,1,0 *orientation,name=od3conl 1,0.866,0.5,-1,0.866,0 ** ** ** elset definitions ** *elset,elset=ejoins *elset,elset=ejoins d2cyls,d3cyls,d2conl,d3cyln,d2cong,d3conl,d2cyln,d2cylsf,d3cylsf *elset,elset=ejoins ejoins,d3cylnf,d2cylnf ** ** **property definitions ** ** general moduli 2d *epjoint,elset=d2cyln,orien=od2cyl,section=spud 1.6, 0. *joint elasti,ndim=2,moduli=general 2.e3,-1.e3,3.e3,-2.e3,0.e3,6.e3 ** ** general moduli 2d *epjoint,elset=d2cylnf,orien=od2cyl,section=spud 1.6, 0. *joint elasti,ndim=2,moduli=general,dependencies=1 3.e3,-1.e3,3.e3,-2.e3,0.e3,6.e3,30.,2. 2.e3,-1.e3,3.e3,-2.e3,0.e3,6.e3,30.,3. ** ** *** general moduli 3d ** *epjoint,elset=d3cyln,orien=od3cyln,section=spud 1.1 ,0. *joint elasti,ndim=3,moduli=general 1.e3, 0., 2.e3, 0., -1.2e3, 3.e3, 0., 0., 0., 5.e3, 0., 0., 1.e3, 0., 6.e3, 0., 1.e3, 0., 0., 0. , 2.e3 ** *** general moduli 3d ** *epjoint,elset=d3cylnf,orien=od3cyln,section=spud 1.1 ,0. *joint elasti,ndim=3,moduli=general,dependencies=1 2.e3, 0., 2.e3, 0., -1.2e3, 3.e3, 0., 0., 0., 5.e3, 0., 0., 1.e3, 0., 6.e3, 0., 1.e3, 0., 0., 0. , 2.e3,30.,2. 1.e3, 0., 2.e3, 0., -1.2e3, 3.e3, 0., 0., 0., 5.e3, 0., 0., 1.e3, 0., 6.e3, 0., 1.e3, 0., 0., 0. , 2.e3,30.,3. ** ** *** cylindrical spud can 2d ** *epjoint,elset=d2cyls,orien=od2cyl,section=spud 1.25, 0.0 *joint elasti,ndim=2,moduli=spud can 0.84e3, 1.643e3, 2.1504e3, 0.3 ** *** cylindrical spud can 2d ** *epjoint,elset=d2cylsf,orien=od2cyl,section=spud 1.25, 0.0 *joint elasti,ndim=2,moduli=spud can,dependencies=1 0.94e3, 1.643e3, 2.1504e3, 0.3,30.,2. 0.84e3, 1.643e3, 2.1504e3, 0.3,30.,3 ** ** *** cylindrical spud can 3d ** *epjoint,elset=d3cyls,orien=od3cyls,section=spud 1.5,0 *joint elasti,ndim=3,moduli=spud can 0.7e3,1.0952e3,4.666e3,0.3,5e3 ** *** cylindrical spud can 3d ** *epjoint,elset=d3cylsf,orien=od3cyls,section=spud 1.5,0 *joint elasti,ndim=3,moduli=spud can,dependencies=1 0.8e3,1.0952e3,4.666e3,0.3,5e3,30.,2. 0.7e3,1.0952e3,4.666e3,0.3,5e3,30.,3. ** ** **conical spud 3d ** *epjoint,elset=d2conl,orien=od2conl,section=spud 1.25,60.0 *joint elasti,ndim=2,moduli=spud can 0.84e3, 1.643e3,2.1504e3,0.3 ** *initial conditions, type=spud embedment d2conl,0.5 ** ** **conical spud can with embedment > critical ** *epjoint,elset=d2cong,orien=od2cong,section=spud 1.25,60.0 *joint elasti,ndim=2,moduli=spud can 0.84e3, 1.643e3,2.1504e3,0.3 ** *initial conditions, type=spud embedment d2cong,2.5 ** ** ** conical spud 3d ** *epjoint,elset=d3conl,orien=od3conl,section=spud 1.5,120,0.361,0.0 *joint elastic,ndim=3,moduli=spud can 0.2021e3,0.4743e3,0.1768e3,0.3,4.5e3 ** *initial conditions, type=spud embedment d3conl,0.361 ** *initial conditions,type=field,variable=1 nall,2. ** ** *amplitude,name=hside 0.,1.,1.0,1.0 ** *step simple strain test: move node 1 and displace node 2 *static,direct 1.,1. *field,variable=1,amplitude=hside nall,3. *boundary base,1,5,1e-3 61,6,6,2.2e-3 161,6,6,2.2e-3 51,1,3,1e-3 1,6,6,1.e-3 101,6,6,1.e-3 11,6,6,1.e-3 111,6,6,1.e-3 21,6,6,5e-4 31,6,6,1e-3 131,6,6,1e-3 41,6,6,5.e-4 51,4,4,1e-3 51,5,5,1e-3 51,6,6,1e-3 **d3 general td3cyln,1,, 2.e-3 td3cyln,2,, 3.e-3 td3cyln,3,, 4.e-3 td3cyln,4,, 5.e-3 td3cyln,5,, 6.e-3 td3cylnf,1,, 2.e-3 td3cylnf,2,, 3.e-3 td3cylnf,3,, 4.e-3 td3cylnf,4,, 5.e-3 td3cylnf,5,, 6.e-3 **d2 general td2cyln,1,, 3.1e-3 td2cyln,2,, 4.1e-3 td2cyln,6,, 4.2e-3 td2cylnf,1,, 3.1e-3 td2cylnf,2,, 4.1e-3 td2cylnf,6,, 4.2e-3 *** td3cyln,6,, 7.e-3 td3cylnf,6,, 7.e-3 **d2 tip td2cyls, 1,, 2.1e-3 td2cyls, 2,, 4.2e-3 td2cyls, 6,, 2.3e-3 td2cylsf, 1,, 2.1e-3 td2cylsf, 2,, 4.2e-3 td2cylsf, 6,, 2.3e-3 **cone tip > critical td2conl, 1,, 1.32e-3 td2conl, 2,, -0.75e-3 td2conl, 6,, .10e-2 **cone tip td2cong, 1,, 1.32e-3 td2cong, 2,, -0.75e-3 td2cong, 6,, .10e-2 ** d3 tip. td3cyls, 1,, 2.1e-3 td3cyls, 2,, -0.2e-3 td3cyls, 3,, 2.3e-3 td3cyls, 4,, 2.4e-3 td3cyls, 5,, 2.5e-3 td3cyls, 6,, 2.6e-3 td3cylsf, 1,, 2.1e-3 td3cylsf, 2,, -0.2e-3 td3cylsf, 3,, 2.3e-3 td3cylsf, 4,, 2.4e-3 td3cylsf, 5,, 2.5e-3 td3cylsf, 6,, 2.6e-3 ** conical d3 tip td3conl,1,, 2.2e-3 td3conl,2,, 3.75e-3 td3conl,3,, -1.10e-3 td3conl,4,, 6.82e-3 td3conl,5,, 8.65e-3 td3conl,6,, 3.20e-3 ** ** output ** *el print,summary=no,elset=ejoins e, s, nforc, *node print rf, *el file,elset=ejoins e, s, nforc, *nodefile rf, ** ** ** *end step ** *step remove all forces, except displace the base. the tip should follow. this step tests that the stiffness matrix is correct. *static,direct 1.,1. *boundary, op=new bd2cyls, 1,, 1.e-3 bd2cyls, 2,, 2.e-3 bd2cyls, 6,, 3.e-3 bd2cylsf, 1,, 1.e-3 bd2cylsf, 2,, 2.e-3 bd2cylsf, 6,, 3.e-3 ** d2cone bd2conl, 1,, 1.e-3 bd2conl, 2,, 2.e-3 bd2conl, 6,, 3.e-3 *** ** d2 cone>critical bd2cong, 1,, 1.e-3 bd2cong, 2,, 2.e-3 bd2cong, 6,, 3.e-3 *** ** d2 general bd2cyln, 1,, 1.e-3 bd2cyln, 2,, 2.e-3 bd2cyln, 6,, 6.e-3 bd2cylnf, 1,, 1.e-3 bd2cylnf, 2,, 2.e-3 bd2cylnf, 6,, 6.e-3 ** **d3 general bd3cyln, 1,, 1.e-3 bd3cyln, 2,, 2.e-3 bd3cyln, 3,, 3.e-3 bd3cyln, 4,, 4.e-3 bd3cyln, 5,, 5.e-3 bd3cyln, 6,, 6.e-3 bd3cylnf, 1,, 1.e-3 bd3cylnf, 2,, 2.e-3 bd3cylnf, 3,, 3.e-3 bd3cylnf, 4,, 4.e-3 bd3cylnf, 5,, 5.e-3 bd3cylnf, 6,, 6.e-3 ** d3 bd3cyls, 1,, 1.e-3 bd3cyls, 2,, 2.e-3 bd3cyls, 3,, 3.e-3 bd3cyls, 4,, 4.e-3 bd3cyls, 5,, 5.e-3 bd3cyls, 6,, 6.e-3 bd3cylsf, 1,, 1.e-3 bd3cylsf, 2,, 2.e-3 bd3cylsf, 3,, 3.e-3 bd3cylsf, 4,, 4.e-3 bd3cylsf, 5,, 5.e-3 bd3cylsf, 6,, 6.e-3 ** ** d3c 51, 1,, 1.e-3 51, 2,, 2.e-3 51, 3,, 3.e-3 51, 4,, 4.e-3 51, 5,, 5.e-3 51, 6,, 6.e-3 ** *el print e, *el file,f=0 *node print u, *node file u, *end step *step define concenterated forces and expect to get calculated displacements and strains. *static,direct 1.,1. *boundary,op=new bd2cyls, 1,6,0 bd2cylsf, 1,6,0 bd2conl,1,6,0 bd3cyls, 1,6,0 bd3cylsf, 1,6,0 bd3cyln,1,6,0 bd3cylnf,1,6,0 bd2cong,1,6,0 bd3conl,1,6,0 61,1,6,0 161,1,6,0 *cload td2cyls, 1, 3.3 td2cyls, 2, 16.0 td2cyls, 6, 2.6 td2cylsf, 1, 3.3 td2cylsf, 2, 16.0 td2cylsf, 6, 2.6 td2conl,1, 0.4434 td2conl,2, -4.0452 td2conl,6, 0.09853 td3cyls, 1, 3.3 td3cyls, 2, -4.8 td3cyls, 3, 5.2 td3cyls, 4, 7.0 td3cyls, 5, 11.25 td3cyls, 6, 12.00 td3cylsf, 1, 3.3 td3cylsf, 2, -4.8 td3cylsf, 3, 5.2 td3cylsf, 4, 7.0 td3cylsf, 5, 11.25 td3cylsf, 6, 12.00 td3cyln,1, 1.0 td3cyln,2, 4.4 td3cyln,3, 26.60 td3cyln,4, 10.0 td3cyln,5, 42.0 td3cyln,6, 30.0 td3cylnf,1, 1.0 td3cylnf,2, 4.4 td3cylnf,3, 26.60 td3cylnf,4, 10.0 td3cylnf,5, 42.0 td3cylnf,6, 30.0 *elprint,elset=pert e, s, nforc, *nodeprint,nset=npert u, rf, *elfile,elset=pert e, s, nforc, *nodefile,nset=npert u, rf, *end step ** ** static perturbation *step,perturbation static perturbation step about loads in previous steps pert of 0.5p...linear...expect u_pert=0.5u of prev. *static *cload td2cyls, 1, 1.65 td2cyls, 2, 8.0 td2cyls, 6, 1.3 td2cylsf, 1, 1.65 td2cylsf, 2, 8.0 td2cylsf, 6, 1.3 td2conl,1, 0.2217 td2conl,2, -2.0226 td2conl,6, 0.049265 td3cyls, 1, 1.65 td3cyls, 2, -2.4 td3cyls, 3, 2.6 td3cyls, 4, 3.5 td3cyls, 5, 5.625 td3cyls, 6, 6.0 td3cylsf, 1, 1.65 td3cylsf, 2, -2.4 td3cylsf, 3, 2.6 td3cylsf, 4, 3.5 td3cylsf, 5, 5.625 td3cylsf, 6, 6.0 td3cyln,1, 0.5 td3cyln,2, 2.2 td3cyln,3, 13.3 td3cyln,4, 5.0 td3cyln,5, 21.0 td3cyln,6, 15.0 td3cylnf,1, 0.5 td3cylnf,2, 2.2 td3cylnf,3, 13.3 td3cylnf,4, 5.0 td3cylnf,5, 21.0 td3cylnf,6, 15.0 *elprint,elset=pert e, s, nforc, *nodeprint,nset=npert rf, u, *elfile,elset=pert e, s, nforc, *nodefile,nset=npert u, rf, *end step