SteveMcQ
Mechanical
- Jun 12, 2012
- 10
Having some troubles with a simple model that I need a second look at. I am not sure if my contacts are screwed up or not but I cannot get anything to contact. I have applied the load many different ways and have many different boundary condition attempts on the pipe ends to maintain some restraint.
C*****************************************************************************
C*****************************************************************************
C***
C*** BEARING PAD MODEL PARAMETRIC ARC SUPPORT
C***
C*****************************************************************************
C*****************************************************************************
!
FINI !
/CLE !
/PREP7 !
PI = 3.141592654 !
*AFUN,DEG ! USE DEGREES FOR TRIG FUNCTIONS
!
C*****************************************************************************
C***
C*** INPUT PARAMETERS
C***
C*****************************************************************************
!
PIPE_OD = 16 ! PIPE OUTER DIAMETER
PIPE_WT = 0.500 ! PIPE THICKNESS
!
D_EXT = 1 ! NUMBER OF DIAMETERS TO EXTEND PIPE TO EACH SIDE
!
CMESHDIV = 20 ! LINE DIVISIONS FOR CONTACT REGION
PMESHDIV = 20 ! LINE DIVISIONS FOR REST OF PIPE
!
GAP = 1/64 ! INITIAL GAP BETWEEN PIPE AND SUPPORT
CONTACT_PATCH = 2.000 ! OFFSET FOR MESH REFINEMENT AT CONTACT REGION
CONTACT_SIZE = 30 ! LINE DIVISIONS FOR CONTACT PATCH ON PLATE
PLATE_SIZE = 20 ! LINE DIVISIONS FOR OVERALL PLATE
PLATE_THK_SIZE = 4 !
P_BULK_SIZE = 10 ! LINE DIVISIONS FOR OVERALL PIPE SECITON
P_FINE_SIZE = 40 ! LINE DIVISIONS FOR CONTACT PATCH ON PIPE
P_SIZE_THK = 5 ! LINE DIVISIONS ACROSS PIPE THICKNESS
P_MESH_EXT = 3 ! LINE DIVISIONS FOR PIPE EXTENSION
P_MESH_BEARING = 20 ! LINE DIVISIONS ALONG PIPE AT BEARING REGION
P_MESH_TRANS = 10 ! LINE DIVISIONS ALONG PIPE IN TRANSITION REGION
!
B_LENGTH = 10 ! LENGTH OF BEARING PAD
B_PAD_WIDTH = 10 ! WIDTH OF BEARING PAD
B_PAD_THK = 1 ! WIDTH OF BEARING PAD
!
B_ARC = 15 ! SUPPORTED ARC LENGTH OF BEARING PAD IN DEGREES
ARC_OFF = 15 ! OFFSET FROM PAD SUPPORT FOR MESH REFINEMENT
!
FORCE = 26000 ! APPLIED LOAD IN LBS
!
C*****************************************************************************
C*** CALCULATED PARAMETERS
C*****************************************************************************
PIPE_ID= PIPE_OD-2*PIPE_WT
PIPE_LENGTH = 2*D_EXT*PIPE_OD+B_LENGTH
D1 = 0.000 ! PIPE END
D2 = PIPE_LENGTH/2-B_LENGTH/2-(2.5*SQRT(PIPE_OD/2*PIPE_WT)) ! LOCAL REGION
D3 = PIPE_LENGTH/2-B_LENGTH/2 ! PAD END
D4 = PIPE_LENGTH/2 ! PIPE CENTER
D5 = PIPE_LENGTH/2+B_LENGTH/2 ! PAD END
D6 = PIPE_LENGTH/2+B_LENGTH/2+(2.5*SQRT(PIPE_OD/2*PIPE_WT)) ! LOCAL REGION
D7 = PIPE_LENGTH ! PIPE END
C*****************************************************************************
C*** PARAMETERS USED TO LOCATE CUTS
C*****************************************************************************
C**********************************************************************
C*** ASSIGN MATERIAL PROPERTIES
C**********************************************************************
/INPUT,BEARING_MATERIALS,txt
C*****************************************************************************
C***
C*** MODELING
C***
C*****************************************************************************
/NERR,,100000
/PREP7
C*****************************************************************************
C*** DEFINE ELEMENT TYPES
C*****************************************************************************
!
ET,1,SOLID45 !
ET,2,BEAM4 !
ET,3,CONTA173 !
ET,4,TARGE170 !
!ET,5,PIPE16 !
!
KEYOPT,3, 2,1 ! CONTA173: keyopt 2 : Contact algorithm
!
KEYOPT,3, 5,1 ! CONTA173: keyopt 5 : Close gap with auto CNOF
!
KEYOPT,3, 7,2 ! CONTA173: keyopt 7 : Change in contact predictions made to maintain
! a reasonable time/load increment
KEYOPT,3,10,1 ! CONTA173: keyopt 12: Each substep based on mean stress of underlying
! elements from the previous substep (pair based).
!KEYOPT,3,12,1 ! CONTA173: keyopt 12: Behavior of contact surface
!
C*****************************************************************************
C*** DEFINE KEYPOINTS
C*****************************************************************************
!
CSYS,1 ! Cylindrical CS with z as axis of rotation
!K, KEYPOINT NUMBER, RADIUS, ANGLE, DEPTH
*DO,I,1,7,1
!-----------------------------------------------------------------------------------------
! DEFINE THE PIPE WITH PAD SEGMENT AT BOTTOM
!-----------------------------------------------------------------------------------------
K, %I%01, PIPE_OD/2, 90 , D%I% ! Top of pipe, 12:00 @OD
K, %I%02, PIPE_OD/2, 0 , D%I% ! 3:00 @OD
K, %I%03, PIPE_OD/2, 270+B_ARC+ARC_OFF, D%I% ! Defined distance beyond supported arc @OD
K, %I%04, PIPE_OD/2, 270+B_ARC , D%I% ! Supported region defined by B_ARC @OD
K, %I%05, PIPE_OD/2, 270 , D%I% ! Bottom of pipe, 6:00 @OD
K, %I%06, PIPE_OD/2, 270-B_ARC , D%I% ! Supported region defined by B_ARC @OD
K, %I%07, PIPE_OD/2, 270-B_ARC-ARC_OFF, D%I% ! Defined distance beyond supported arc @OD
K, %I%08, PIPE_OD/2, 180 , D%I% ! 9:00 @OD
K, %I%11, PIPE_ID/2, 90 , D%I% ! Top of pipe, 12:00 @ID
K, %I%12, PIPE_ID/2, 0 , D%I% ! 3:00 @ID
K, %I%13, PIPE_ID/2, 270+B_ARC+ARC_OFF, D%I% ! Defined distance beyond supported arc @ID
K, %I%14, PIPE_ID/2, 270+B_ARC , D%I% ! Supported region defined by B_ARC @ID
K, %I%15, PIPE_ID/2, 270 , D%I% ! Bottom of pipe, 6:00 @ID
K, %I%16, PIPE_ID/2, 270-B_ARC , D%I% ! Supported region defined by B_ARC @ID
K, %I%17, PIPE_ID/2, 270-B_ARC-ARC_OFF, D%I% ! Defined distance beyond supported arc @ID
K, %I%18, PIPE_ID/2, 180 , D%I% ! 9:00 @ID
*ENDDO
!-----------------------------------------------------------------------------------------
!-----------------------------------------------------------------------------------------
! CREATE FLAT INTERMEDIATE PLATE
!-----------------------------------------------------------------------------------------
CSYS,0 ! Default Cartesian CS, +Z is pipe axis
*DO,I,3,5,1 !
K,%I%0, B_PAD_WIDTH/2, -PIPE_OD/2-GAP, D%I%
K,%I%1, CONTACT_PATCH, -PIPE_OD/2-GAP, D%I%
K,%I%2, 0 , -PIPE_OD/2-GAP, D%I%
K,%I%3, -CONTACT_PATCH, -PIPE_OD/2-GAP, D%I%
K,%I%4, -B_PAD_WIDTH/2, -PIPE_OD/2-GAP, D%I%
K,%I%5, B_PAD_WIDTH/2, -PIPE_OD/2-GAP-B_PAD_THK, D%I%
K,%I%6, CONTACT_PATCH, -PIPE_OD/2-GAP-B_PAD_THK, D%I%
K,%I%7, 0 , -PIPE_OD/2-GAP-B_PAD_THK, D%I%
K,%I%8, -CONTACT_PATCH, -PIPE_OD/2-GAP-B_PAD_THK, D%I%
K,%I%9, -B_PAD_WIDTH/2, -PIPE_OD/2-GAP-B_PAD_THK, D%I%
*ENDDO
!-----------------------------------------------------------------------------------------
C*****************************************************************************
C*** DEFINE VOLUMES
C*****************************************************************************
!-----------------------------------------------------------------------------------------
! DEFINE THE PIPE VOLUMES
!-----------------------------------------------------------------------------------------
CSYS,1 ! Cylindrical CS with z as axis of rotation
*DO,I,1,6,1
II=I+1
V, %I%01, %I%11, %I%12, %I%02, %II%01, %II%11, %II%12, %II%02
V, %I%02, %I%12, %I%13, %I%03, %II%02, %II%12, %II%13, %II%03
V, %I%03, %I%13, %I%14, %I%04, %II%03, %II%13, %II%14, %II%04
V, %I%04, %I%14, %I%15, %I%05, %II%04, %II%14, %II%15, %II%05
V, %I%05, %I%15, %I%16, %I%06, %II%05, %II%15, %II%16, %II%06
V, %I%06, %I%16, %I%17, %I%07, %II%06, %II%16, %II%17, %II%07
V, %I%07, %I%17, %I%18, %I%08, %II%07, %II%17, %II%18, %II%08
V, %I%08, %I%18, %I%11, %I%01, %II%08, %II%18, %II%11, %II%01
*ENDDO
!-----------------------------------------------------------------------------------------
!-----------------------------------------------------------------------------------------
! DEFINE FLAT PLATE VOLUMES
!-----------------------------------------------------------------------------------------
CSYS,0 ! Default Cartesian CS, +Z is pipe axis
*DO,I,3,4,1
II=I+1
V, %I%0, %I%1, %I%6, %I%5, %II%0, %II%1, %II%6, %II%5
V, %I%1, %I%2, %I%7, %I%6, %II%1, %II%2, %II%7, %II%6
V, %I%2, %I%3, %I%8, %I%7, %II%2, %II%3, %II%8, %II%7
V, %I%3, %I%4, %I%9, %I%8, %II%3, %II%4, %II%9, %II%8
*ENDDO
!-----------------------------------------------------------------------------------------
C**********************************************************************
C*** SET ELEMENT SIZING
C**********************************************************************
!
KSEL,S,KP,,101, !
KSEL,A,KP,,201, !
LSLK,S,1 !
LESIZE,ALL,,,P_MESH_EXT !
ALLSEL !
!
KSEL,S,KP,,601, !
KSEL,A,KP,,701, !
LSLK,S,1 !
LESIZE,ALL,,,P_MESH_EXT !
ALLSEL !
!
KSEL,S,KP,,201, !
KSEL,A,KP,,301, !
LSLK,S,1 !
LESIZE,ALL,,,P_MESH_TRANS !
ALLSEL !
!
KSEL,S,KP,,501, !
KSEL,A,KP,,601, !
LSLK,S,1 !
LESIZE,ALL,,,P_MESH_TRANS !
ALLSEL !
!
KSEL,S,KP,,301, !
KSEL,A,KP,,401, !
KSEL,A,KP,,501, !
LSLK,S,1 !
LESIZE,ALL,,,P_MESH_BEARING !
!
KSEL,S,KP,,32, !
KSEL,A,KP,,42, !
KSEL,A,KP,,52, !
LSLK,S,1 !
LESIZE,ALL,,,P_MESH_BEARING !
!
KSEL,S,KP,,101, ! MAKE PIPE (P_SIZE_THK) ELEMENTS THICK
KSEL,A,KP,,111, !
LSLK,S,1 !
LESIZE,ALL,,,P_SIZE_THK !
ALLSEL !
!
!
KSEL,S,KP,,103, ! MAKE PIPE (P_BULK_THK) ELEMENTS THICK
KSEL,A,KP,,102, !
KSEL,A,KP,,101, !
KSEL,A,KP,,108, !
KSEL,A,KP,,107, !
LSLK,S,1 !
LESIZE,ALL,,,P_BULK_SIZE !
ALLSEL !
!
!
KSEL,S,KP,,103, ! MAKE PIPE (P_BULK_THK) ELEMENTS THICK
KSEL,A,KP,,104, !
KSEL,A,KP,,105, !
KSEL,A,KP,,106, !
KSEL,A,KP,,107, !
LSLK,S,1 !
LESIZE,ALL,,,P_FINE_SIZE !
ALLSEL !
!
!
KSEL,S,KP,,31, 33 ! ASSIGN LINE DIVISIONS TO CONTACT PATCH ON PLATE
LSLK,S,1 !
LESIZE,ALL,,,CONTACT_SIZE !
ALLSEL !
!
!
KSEL,S,KP,,30, 31 ! ASSIGN LINE DIVISIONS TO CONTACT PATCH ON PLATE
KSEL,A,KP,,33, 34 !
LSLK,S,1 !
LESIZE,ALL,,,PLATE_SIZE !
ALLSEL !
!
!
KSEL,S,KP,,30, ! ASSIGN LINE DIVISIONS TO CONTACT PATCH ON PLATE
KSEL,A,KP,,35 !
LSLK,S,1 !
LESIZE,ALL,,,PLATE_THK_SIZE !
ALLSEL !
C**********************************************************************
C*** CREATE COMPONENTS
C**********************************************************************
C***********************************
C*** PIPE
C***********************************
KSEL,S,KP,,101, 108
KSEL,A,KP,,111, 118
KSEL,A,KP,,201, 208
KSEL,A,KP,,211, 218
KSEL,A,KP,,301, 308
KSEL,A,KP,,311, 318
KSEL,A,KP,,401, 408
KSEL,A,KP,,411, 418
KSEL,A,KP,,501, 508
KSEL,A,KP,,511, 518
KSEL,A,KP,,601, 608
KSEL,A,KP,,611, 618
KSEL,A,KP,,701, 708
KSEL,A,KP,,711, 718
LSLK,S,1
ASLL,S,1
VSLA,S,1
VATT,2,,1
CM,PIPE,VOLU
C***********************************
C*** PLATE
C***********************************
KSEL,S,KP,,30, 39
KSEL,A,KP,,40, 49
KSEL,A,KP,,50, 59
LSLK,S,1
ASLL,S,1
VSLA,S,1
VATT,1,,1
CM,PLATE,VOLU
C***********************************
C*** PLATE BOTTOM
C***********************************
KSEL,S,KP,,35, 39
KSEL,A,KP,,45, 49
KSEL,A,KP,,55, 59
LSLK,S,1
ASLL,S,1
CM,PLATE_BOTTOM,AREA
C***********************************
C*** CONTACT PATCH ON PLATE
C***********************************
KSEL,S,KP,,31, 33
KSEL,A,KP,,41, 43
KSEL,A,KP,,51, 53
LSLK,S,1
ASLL,S,1
CM,TARGET_SURFACE,AREA
C***********************************
C*** CONTACT PATCH ON PIPE
C***********************************
KSEL,S,KP,,304, 306
KSEL,A,KP,,404, 406
KSEL,A,KP,,504, 506
LSLK,S,1
ASLL,S,1
CM,CONTACT_SURFACE,AREA
C***********************************
C*** LOCAL STRESS REGION ON PIPE
C***********************************
KSEL,S,KP,,203, 207
KSEL,A,KP,,303, 307
KSEL,A,KP,,403, 407
KSEL,A,KP,,503, 507
KSEL,A,KP,,603, 607
LSLK,S,1
ASLL,S,1
CM,LOCAL_STRESS,AREA
!===============================
C**********************************************************************
C*** MESH VOLUMES
C**********************************************************************
ALLSEL
MSHAPE,0 ! MESH WITH QUAD ELEMENTS
MSHKEY,1 ! USE MAPPED MESHING
VMESH,ALL
C**********************************************************************
C*** DEFINE BOUNDARY CONDITIONS
C**********************************************************************
C***********************************
C*** FIX PLATE BOTTOM (FULL)
C***********************************
!N,, 0,0,D1
!N,, 0,0,D7
!KSEL,S,KP,,111, 118
!LSLK,S,1
!NSLL,S,1
!-------------------------------------------!
!-- STAR MESH PIPE END LOAD POINT --!
!-------------------------------------------!
CSYS,4 !
!NSEL,S,LOC,X,PIPE_ID !
!NSEL,R,LOC,Z,D1 !
!*GET,NMIN,NODE,0,NUM,MIN !
!*GET,NCT,NODE,0,COUNT !
!*DEL,NDLIST !
!*DIM,NDLIST,ARRAY,NCT !
!NDLIST(1)=NMIN !
!*DO,I,2,NCT !
! NDLIST(I)=NDNEXT(NDLIST(%I%-1)) !
!*ENDDO !
!TYPE,2 !
!REAL,3 !
!MAT,3 !
!*DO,I,1,NCT !
! E,NODE2,NDLIST(I) !
!*ENDDO !
ALLSEL
CMSEL,S,PLATE_BOTTOM
LSLA,S,1
ASLL,S,1
NSLA,S,1
D,ALL,ALL
CSYS,4 !
CMSEL,S,CONTACT_SURFACE !
LSLA,S,1
ASLL,S,1
NSLA,S,1
ESLN,S,1
!ESURF,,REVE
!AREVERSE,ALL
TYPE,3 !
REAL,1 !
MAT,2 !
AMESH,ALL
ALLSEL
CSYS,0 !
CMSEL,S,TARGET_SURFACE !
LSLA,S,1
ASLL,S,1
NSLA,S,1
ESLN,S,1
!AREVERSE,ALL
TYPE,4 !
REAL,1 !
MAT,1 !
AMESH,ALL !
C***********************************
C*** APPLY LOADS
C***********************************
KSEL,S,KP,,401
NSLK,S,1
F,ALL,FY,-26000
C**********************************************************************
C*** SOLVE MODEL
C**********************************************************************
/SOLU
ALLS
ANTYPE,STATIC
NLGEOM,1
SOLCONTROL,ON,ON
NSUBST,20
TREF,70.01
SOLVE
C*****************************************************************************
C*****************************************************************************
C***
C*** BEARING PAD MODEL PARAMETRIC ARC SUPPORT
C***
C*****************************************************************************
C*****************************************************************************
!
FINI !
/CLE !
/PREP7 !
PI = 3.141592654 !
*AFUN,DEG ! USE DEGREES FOR TRIG FUNCTIONS
!
C*****************************************************************************
C***
C*** INPUT PARAMETERS
C***
C*****************************************************************************
!
PIPE_OD = 16 ! PIPE OUTER DIAMETER
PIPE_WT = 0.500 ! PIPE THICKNESS
!
D_EXT = 1 ! NUMBER OF DIAMETERS TO EXTEND PIPE TO EACH SIDE
!
CMESHDIV = 20 ! LINE DIVISIONS FOR CONTACT REGION
PMESHDIV = 20 ! LINE DIVISIONS FOR REST OF PIPE
!
GAP = 1/64 ! INITIAL GAP BETWEEN PIPE AND SUPPORT
CONTACT_PATCH = 2.000 ! OFFSET FOR MESH REFINEMENT AT CONTACT REGION
CONTACT_SIZE = 30 ! LINE DIVISIONS FOR CONTACT PATCH ON PLATE
PLATE_SIZE = 20 ! LINE DIVISIONS FOR OVERALL PLATE
PLATE_THK_SIZE = 4 !
P_BULK_SIZE = 10 ! LINE DIVISIONS FOR OVERALL PIPE SECITON
P_FINE_SIZE = 40 ! LINE DIVISIONS FOR CONTACT PATCH ON PIPE
P_SIZE_THK = 5 ! LINE DIVISIONS ACROSS PIPE THICKNESS
P_MESH_EXT = 3 ! LINE DIVISIONS FOR PIPE EXTENSION
P_MESH_BEARING = 20 ! LINE DIVISIONS ALONG PIPE AT BEARING REGION
P_MESH_TRANS = 10 ! LINE DIVISIONS ALONG PIPE IN TRANSITION REGION
!
B_LENGTH = 10 ! LENGTH OF BEARING PAD
B_PAD_WIDTH = 10 ! WIDTH OF BEARING PAD
B_PAD_THK = 1 ! WIDTH OF BEARING PAD
!
B_ARC = 15 ! SUPPORTED ARC LENGTH OF BEARING PAD IN DEGREES
ARC_OFF = 15 ! OFFSET FROM PAD SUPPORT FOR MESH REFINEMENT
!
FORCE = 26000 ! APPLIED LOAD IN LBS
!
C*****************************************************************************
C*** CALCULATED PARAMETERS
C*****************************************************************************
PIPE_ID= PIPE_OD-2*PIPE_WT
PIPE_LENGTH = 2*D_EXT*PIPE_OD+B_LENGTH
D1 = 0.000 ! PIPE END
D2 = PIPE_LENGTH/2-B_LENGTH/2-(2.5*SQRT(PIPE_OD/2*PIPE_WT)) ! LOCAL REGION
D3 = PIPE_LENGTH/2-B_LENGTH/2 ! PAD END
D4 = PIPE_LENGTH/2 ! PIPE CENTER
D5 = PIPE_LENGTH/2+B_LENGTH/2 ! PAD END
D6 = PIPE_LENGTH/2+B_LENGTH/2+(2.5*SQRT(PIPE_OD/2*PIPE_WT)) ! LOCAL REGION
D7 = PIPE_LENGTH ! PIPE END
C*****************************************************************************
C*** PARAMETERS USED TO LOCATE CUTS
C*****************************************************************************
C**********************************************************************
C*** ASSIGN MATERIAL PROPERTIES
C**********************************************************************
/INPUT,BEARING_MATERIALS,txt
C*****************************************************************************
C***
C*** MODELING
C***
C*****************************************************************************
/NERR,,100000
/PREP7
C*****************************************************************************
C*** DEFINE ELEMENT TYPES
C*****************************************************************************
!
ET,1,SOLID45 !
ET,2,BEAM4 !
ET,3,CONTA173 !
ET,4,TARGE170 !
!ET,5,PIPE16 !
!
KEYOPT,3, 2,1 ! CONTA173: keyopt 2 : Contact algorithm
!
KEYOPT,3, 5,1 ! CONTA173: keyopt 5 : Close gap with auto CNOF
!
KEYOPT,3, 7,2 ! CONTA173: keyopt 7 : Change in contact predictions made to maintain
! a reasonable time/load increment
KEYOPT,3,10,1 ! CONTA173: keyopt 12: Each substep based on mean stress of underlying
! elements from the previous substep (pair based).
!KEYOPT,3,12,1 ! CONTA173: keyopt 12: Behavior of contact surface
!
C*****************************************************************************
C*** DEFINE KEYPOINTS
C*****************************************************************************
!
CSYS,1 ! Cylindrical CS with z as axis of rotation
!K, KEYPOINT NUMBER, RADIUS, ANGLE, DEPTH
*DO,I,1,7,1
!-----------------------------------------------------------------------------------------
! DEFINE THE PIPE WITH PAD SEGMENT AT BOTTOM
!-----------------------------------------------------------------------------------------
K, %I%01, PIPE_OD/2, 90 , D%I% ! Top of pipe, 12:00 @OD
K, %I%02, PIPE_OD/2, 0 , D%I% ! 3:00 @OD
K, %I%03, PIPE_OD/2, 270+B_ARC+ARC_OFF, D%I% ! Defined distance beyond supported arc @OD
K, %I%04, PIPE_OD/2, 270+B_ARC , D%I% ! Supported region defined by B_ARC @OD
K, %I%05, PIPE_OD/2, 270 , D%I% ! Bottom of pipe, 6:00 @OD
K, %I%06, PIPE_OD/2, 270-B_ARC , D%I% ! Supported region defined by B_ARC @OD
K, %I%07, PIPE_OD/2, 270-B_ARC-ARC_OFF, D%I% ! Defined distance beyond supported arc @OD
K, %I%08, PIPE_OD/2, 180 , D%I% ! 9:00 @OD
K, %I%11, PIPE_ID/2, 90 , D%I% ! Top of pipe, 12:00 @ID
K, %I%12, PIPE_ID/2, 0 , D%I% ! 3:00 @ID
K, %I%13, PIPE_ID/2, 270+B_ARC+ARC_OFF, D%I% ! Defined distance beyond supported arc @ID
K, %I%14, PIPE_ID/2, 270+B_ARC , D%I% ! Supported region defined by B_ARC @ID
K, %I%15, PIPE_ID/2, 270 , D%I% ! Bottom of pipe, 6:00 @ID
K, %I%16, PIPE_ID/2, 270-B_ARC , D%I% ! Supported region defined by B_ARC @ID
K, %I%17, PIPE_ID/2, 270-B_ARC-ARC_OFF, D%I% ! Defined distance beyond supported arc @ID
K, %I%18, PIPE_ID/2, 180 , D%I% ! 9:00 @ID
*ENDDO
!-----------------------------------------------------------------------------------------
!-----------------------------------------------------------------------------------------
! CREATE FLAT INTERMEDIATE PLATE
!-----------------------------------------------------------------------------------------
CSYS,0 ! Default Cartesian CS, +Z is pipe axis
*DO,I,3,5,1 !
K,%I%0, B_PAD_WIDTH/2, -PIPE_OD/2-GAP, D%I%
K,%I%1, CONTACT_PATCH, -PIPE_OD/2-GAP, D%I%
K,%I%2, 0 , -PIPE_OD/2-GAP, D%I%
K,%I%3, -CONTACT_PATCH, -PIPE_OD/2-GAP, D%I%
K,%I%4, -B_PAD_WIDTH/2, -PIPE_OD/2-GAP, D%I%
K,%I%5, B_PAD_WIDTH/2, -PIPE_OD/2-GAP-B_PAD_THK, D%I%
K,%I%6, CONTACT_PATCH, -PIPE_OD/2-GAP-B_PAD_THK, D%I%
K,%I%7, 0 , -PIPE_OD/2-GAP-B_PAD_THK, D%I%
K,%I%8, -CONTACT_PATCH, -PIPE_OD/2-GAP-B_PAD_THK, D%I%
K,%I%9, -B_PAD_WIDTH/2, -PIPE_OD/2-GAP-B_PAD_THK, D%I%
*ENDDO
!-----------------------------------------------------------------------------------------
C*****************************************************************************
C*** DEFINE VOLUMES
C*****************************************************************************
!-----------------------------------------------------------------------------------------
! DEFINE THE PIPE VOLUMES
!-----------------------------------------------------------------------------------------
CSYS,1 ! Cylindrical CS with z as axis of rotation
*DO,I,1,6,1
II=I+1
V, %I%01, %I%11, %I%12, %I%02, %II%01, %II%11, %II%12, %II%02
V, %I%02, %I%12, %I%13, %I%03, %II%02, %II%12, %II%13, %II%03
V, %I%03, %I%13, %I%14, %I%04, %II%03, %II%13, %II%14, %II%04
V, %I%04, %I%14, %I%15, %I%05, %II%04, %II%14, %II%15, %II%05
V, %I%05, %I%15, %I%16, %I%06, %II%05, %II%15, %II%16, %II%06
V, %I%06, %I%16, %I%17, %I%07, %II%06, %II%16, %II%17, %II%07
V, %I%07, %I%17, %I%18, %I%08, %II%07, %II%17, %II%18, %II%08
V, %I%08, %I%18, %I%11, %I%01, %II%08, %II%18, %II%11, %II%01
*ENDDO
!-----------------------------------------------------------------------------------------
!-----------------------------------------------------------------------------------------
! DEFINE FLAT PLATE VOLUMES
!-----------------------------------------------------------------------------------------
CSYS,0 ! Default Cartesian CS, +Z is pipe axis
*DO,I,3,4,1
II=I+1
V, %I%0, %I%1, %I%6, %I%5, %II%0, %II%1, %II%6, %II%5
V, %I%1, %I%2, %I%7, %I%6, %II%1, %II%2, %II%7, %II%6
V, %I%2, %I%3, %I%8, %I%7, %II%2, %II%3, %II%8, %II%7
V, %I%3, %I%4, %I%9, %I%8, %II%3, %II%4, %II%9, %II%8
*ENDDO
!-----------------------------------------------------------------------------------------
C**********************************************************************
C*** SET ELEMENT SIZING
C**********************************************************************
!
KSEL,S,KP,,101, !
KSEL,A,KP,,201, !
LSLK,S,1 !
LESIZE,ALL,,,P_MESH_EXT !
ALLSEL !
!
KSEL,S,KP,,601, !
KSEL,A,KP,,701, !
LSLK,S,1 !
LESIZE,ALL,,,P_MESH_EXT !
ALLSEL !
!
KSEL,S,KP,,201, !
KSEL,A,KP,,301, !
LSLK,S,1 !
LESIZE,ALL,,,P_MESH_TRANS !
ALLSEL !
!
KSEL,S,KP,,501, !
KSEL,A,KP,,601, !
LSLK,S,1 !
LESIZE,ALL,,,P_MESH_TRANS !
ALLSEL !
!
KSEL,S,KP,,301, !
KSEL,A,KP,,401, !
KSEL,A,KP,,501, !
LSLK,S,1 !
LESIZE,ALL,,,P_MESH_BEARING !
!
KSEL,S,KP,,32, !
KSEL,A,KP,,42, !
KSEL,A,KP,,52, !
LSLK,S,1 !
LESIZE,ALL,,,P_MESH_BEARING !
!
KSEL,S,KP,,101, ! MAKE PIPE (P_SIZE_THK) ELEMENTS THICK
KSEL,A,KP,,111, !
LSLK,S,1 !
LESIZE,ALL,,,P_SIZE_THK !
ALLSEL !
!
!
KSEL,S,KP,,103, ! MAKE PIPE (P_BULK_THK) ELEMENTS THICK
KSEL,A,KP,,102, !
KSEL,A,KP,,101, !
KSEL,A,KP,,108, !
KSEL,A,KP,,107, !
LSLK,S,1 !
LESIZE,ALL,,,P_BULK_SIZE !
ALLSEL !
!
!
KSEL,S,KP,,103, ! MAKE PIPE (P_BULK_THK) ELEMENTS THICK
KSEL,A,KP,,104, !
KSEL,A,KP,,105, !
KSEL,A,KP,,106, !
KSEL,A,KP,,107, !
LSLK,S,1 !
LESIZE,ALL,,,P_FINE_SIZE !
ALLSEL !
!
!
KSEL,S,KP,,31, 33 ! ASSIGN LINE DIVISIONS TO CONTACT PATCH ON PLATE
LSLK,S,1 !
LESIZE,ALL,,,CONTACT_SIZE !
ALLSEL !
!
!
KSEL,S,KP,,30, 31 ! ASSIGN LINE DIVISIONS TO CONTACT PATCH ON PLATE
KSEL,A,KP,,33, 34 !
LSLK,S,1 !
LESIZE,ALL,,,PLATE_SIZE !
ALLSEL !
!
!
KSEL,S,KP,,30, ! ASSIGN LINE DIVISIONS TO CONTACT PATCH ON PLATE
KSEL,A,KP,,35 !
LSLK,S,1 !
LESIZE,ALL,,,PLATE_THK_SIZE !
ALLSEL !
C**********************************************************************
C*** CREATE COMPONENTS
C**********************************************************************
C***********************************
C*** PIPE
C***********************************
KSEL,S,KP,,101, 108
KSEL,A,KP,,111, 118
KSEL,A,KP,,201, 208
KSEL,A,KP,,211, 218
KSEL,A,KP,,301, 308
KSEL,A,KP,,311, 318
KSEL,A,KP,,401, 408
KSEL,A,KP,,411, 418
KSEL,A,KP,,501, 508
KSEL,A,KP,,511, 518
KSEL,A,KP,,601, 608
KSEL,A,KP,,611, 618
KSEL,A,KP,,701, 708
KSEL,A,KP,,711, 718
LSLK,S,1
ASLL,S,1
VSLA,S,1
VATT,2,,1
CM,PIPE,VOLU
C***********************************
C*** PLATE
C***********************************
KSEL,S,KP,,30, 39
KSEL,A,KP,,40, 49
KSEL,A,KP,,50, 59
LSLK,S,1
ASLL,S,1
VSLA,S,1
VATT,1,,1
CM,PLATE,VOLU
C***********************************
C*** PLATE BOTTOM
C***********************************
KSEL,S,KP,,35, 39
KSEL,A,KP,,45, 49
KSEL,A,KP,,55, 59
LSLK,S,1
ASLL,S,1
CM,PLATE_BOTTOM,AREA
C***********************************
C*** CONTACT PATCH ON PLATE
C***********************************
KSEL,S,KP,,31, 33
KSEL,A,KP,,41, 43
KSEL,A,KP,,51, 53
LSLK,S,1
ASLL,S,1
CM,TARGET_SURFACE,AREA
C***********************************
C*** CONTACT PATCH ON PIPE
C***********************************
KSEL,S,KP,,304, 306
KSEL,A,KP,,404, 406
KSEL,A,KP,,504, 506
LSLK,S,1
ASLL,S,1
CM,CONTACT_SURFACE,AREA
C***********************************
C*** LOCAL STRESS REGION ON PIPE
C***********************************
KSEL,S,KP,,203, 207
KSEL,A,KP,,303, 307
KSEL,A,KP,,403, 407
KSEL,A,KP,,503, 507
KSEL,A,KP,,603, 607
LSLK,S,1
ASLL,S,1
CM,LOCAL_STRESS,AREA
!===============================
C**********************************************************************
C*** MESH VOLUMES
C**********************************************************************
ALLSEL
MSHAPE,0 ! MESH WITH QUAD ELEMENTS
MSHKEY,1 ! USE MAPPED MESHING
VMESH,ALL
C**********************************************************************
C*** DEFINE BOUNDARY CONDITIONS
C**********************************************************************
C***********************************
C*** FIX PLATE BOTTOM (FULL)
C***********************************
!N,, 0,0,D1
!N,, 0,0,D7
!KSEL,S,KP,,111, 118
!LSLK,S,1
!NSLL,S,1
!-------------------------------------------!
!-- STAR MESH PIPE END LOAD POINT --!
!-------------------------------------------!
CSYS,4 !
!NSEL,S,LOC,X,PIPE_ID !
!NSEL,R,LOC,Z,D1 !
!*GET,NMIN,NODE,0,NUM,MIN !
!*GET,NCT,NODE,0,COUNT !
!*DEL,NDLIST !
!*DIM,NDLIST,ARRAY,NCT !
!NDLIST(1)=NMIN !
!*DO,I,2,NCT !
! NDLIST(I)=NDNEXT(NDLIST(%I%-1)) !
!*ENDDO !
!TYPE,2 !
!REAL,3 !
!MAT,3 !
!*DO,I,1,NCT !
! E,NODE2,NDLIST(I) !
!*ENDDO !
ALLSEL
CMSEL,S,PLATE_BOTTOM
LSLA,S,1
ASLL,S,1
NSLA,S,1
D,ALL,ALL
CSYS,4 !
CMSEL,S,CONTACT_SURFACE !
LSLA,S,1
ASLL,S,1
NSLA,S,1
ESLN,S,1
!ESURF,,REVE
!AREVERSE,ALL
TYPE,3 !
REAL,1 !
MAT,2 !
AMESH,ALL
ALLSEL
CSYS,0 !
CMSEL,S,TARGET_SURFACE !
LSLA,S,1
ASLL,S,1
NSLA,S,1
ESLN,S,1
!AREVERSE,ALL
TYPE,4 !
REAL,1 !
MAT,1 !
AMESH,ALL !
C***********************************
C*** APPLY LOADS
C***********************************
KSEL,S,KP,,401
NSLK,S,1
F,ALL,FY,-26000
C**********************************************************************
C*** SOLVE MODEL
C**********************************************************************
/SOLU
ALLS
ANTYPE,STATIC
NLGEOM,1
SOLCONTROL,ON,ON
NSUBST,20
TREF,70.01
SOLVE