Tordus
Mechanical
- Oct 27, 2010
- 6
Hi all. My problem is simple, i want to run a non linear analysis on ANSYS. I am using MISO props, but when i try to use a curve compression-extension with yield curve (right side of the picture), solution does not converge. The reason is because MISO doesn't accept negative loops on the graphic.
Resume: The solution converge with a curve with positive or zero loops but not with a curve with negative loops (yield curve from a real compression test).
I will show the APDL FILE for you to see. It's simple, a rectangular specimen with an hole. Displacement UY=0 above (in two node UX=UZ=UY=0 and UX=UY=0 to avoid free body motion), and displacement UY=yieldstrain*height on the oposite side).
APDL FILE:
/PREP7
ET,1,45
MP,EX,1,290
MP,PRXY,1,0.3
TB,MELAS,1
TBPT,DEFI,0.01,2.9
TBPT,DEFI,0.05,11
TBPT,DEFI,0.06,11.4
TBPT,DEFI,0.07,11.8
TBPT,DEFI,0.08,12
TBPT,DEFI,0.09,12.2
TBPT,DEFI,0.1,12.3
TBPT,DEFI,0.11,12.3
TBPT,DEFI,0.12,12.3
TBPT,DEFI,0.13,12.31
TBPT,DEFI,0.14,12.32
TBPT,DEFI,0.15,12.33
TBPT,DEFI,0.16,12.35
TBPT,DEFI,0.17,12.36
TBPT,DEFI,0.18,12.37
TBPT,DEFI,0.19,12.38
TBPT,DEFI,0.20,12.39
TBPT,DEFI,0.21,12.40
TBPT,DEFI,0.22,12.41
TBPT,DEFI,0.23,12.42
TBPT,DEFI,0.24,12.43
!I want this
!TBPT,DEFI,0.01,2.9
!TBPT,DEFI,0.05,11
!TBPT,DEFI,0.06,11.4
!TBPT,DEFI,0.07,11.8
!TBPT,DEFI,0.08,12
!TBPT,DEFI,0.09,12.2
!TBPT,DEFI,0.1,12.4
!TBPT,DEFI,0.11,12.3
!TBPT,DEFI,0.12,12.2
!TBPT,DEFI,0.13,12.1
!TBPT,DEFI,0.14,12
!TBPT,DEFI,0.15,11.9
!TBPT,DEFI,0.16,11.8
!TBPT,DEFI,0.17,11.7
!TBPT,DEFI,0.18,11.6
!TBPT,DEFI,0.19,11.5
!TBPT,DEFI,0.20,11.4
!TBPT,DEFI,0.21,11.3
!TBPT,DEFI,0.22,11.2
!TBPT,DEFI,0.23,11.1
!
BLC4,,,20,40,20
LSEL,s,LOC,y,40-0.0001,40
LSEL,A,LOC,y,0+0.0001,0
LESIZE,ALL,,,25
LSEL,INVE
LESIZE,ALL,,,50
LSEL,ALL
VMESH,ALL
!
MODMSH,DETACH
NSEL,S,LOC,x,12,17
NSEL,R,LOC,y,20,25
ESLN,all
EDELE,all
ESEL,all
NSEL,ALL
NDELE,ALL
VDELE,ALL
ADELE,ALL
LDELE,ALL
KDELE,ALL
NUMCMP,ALL
MODMSH
!
!
*GET,nomaximo,NODE,0,MXLOC,y
*GET,nominimo,NODE,0,MNLOC,y
*GET,nomaximoz,NODE,0,MXLOC,z
*GET,nominimoz,NODE,0,MNLOC,z
*GET,nomaximoX,NODE,0,MXLOC,X
*GET,nominimoX,NODE,0,MNLOC,X
ComprimentoTotal=nomaximo-(nominimo)
ExpYieldStrain=0.1
Desl=ComprimentoTotal*ExpYieldStrain
AREA=(nomaximoz-(nominimoz))*(nomaximoX-(nominimoX))
!*****************Condicões fronteira*********************
NSEL,S,LOC,y,nomaximo-0.0000001,nomaximo
D,ALL,UY,0
*GET,nomaximoZ,NODE,0,MXLOC,Z
NSEL,R,LOC,z,nomaximoZ-0.000001,nomaximoZ
*GET,nominimoX,NODE,0,MNLOC,X
NSEL,U,LOC,X,nominimoX,nominimoX+0.000001
*GET,nominimoX,NODE,0,MNLOC,X
NSEL,R,LOC,X,nominimoX,nominimoX+0.000001
D,ALL,UZ,0
NSEL,S,LOC,y,nomaximo-0.0000001,nomaximo
*GET,nomaximoZ,NODE,0,MXLOC,Z
NSEL,R,LOC,z,nomaximoZ-0.000001,nomaximoZ
*GET,nominimoX,NODE,0,MNLOC,X
NSEL,R,LOC,X,nominimoX,nominimoX+0.000001
D,ALL,UX,0,,,,UZ
NSEL,ALL
*GET,nominimoX,NODE,0,MNLOC,X
*GET,nomaximoZ,NODE,0,MXLOC,Z
!**********Deslocamento imposto para simular compressão**********
NSEL,S,LOC,y,nominimo+0.0000001,nominimo
D,ALL,Uy,Desl
NSEL,ALL
/SOLU
SOLCONTROL,ON
NLGEOM,ON
!TIME,1
NSUBST,15,17,13
OUTRES,ALL,ALL
NSUBST,50,55,45
!CNVTOL,U,,,0
!NROPT,FULL
!AUTOTS,ON
!LNSRCH,AUTO
SOLVE
/POST1
*GET,SUBSTEPS,ACTIVE,0,SET,SBST
K=1
*DIM,RT,ARRAY,SUBSTEPS+1,,,I
*DIM,UT,ARRAY,SUBSTEPS+1,,,I
SET,FIRST
*DO,I,1,SUBSTEPS,1
NSEL,S,LOC,y,nomaximo-0.0000001,nomaximo
FSUM
*GET,R,FSUM,0,ITEM,FY
*VFILL,RT(K+1,1,1),DATA,R
NSEL,S,LOC,y,nominimo+0.0000001,nominimo
NSEL,R,LOC,X,nomaximoX-0.0000001,nomaximoX
NSEL,R,LOC,Z,nomaximoZ-0.0000001,nomaximoZ
*GET,NODEM,NODE,0,NUM,MAX
*GET,U,NODE,NODEM,U,Y
*VFILL,UT(K+1,1,1),DATA,U
K=K+1
set,NEXT
*ENDDO
NSEL,ALL
SET,LAST
NSORT,S,EQV
*GET,MAXVONM,SORT,0,MAX
NSORT,EPTO,EQV
*GET,EXTOTAL,SORT,0,MAX
NSORT,EPPL,EQV
*GET,EXTENP,SORT,0,MAX
NSORT,EPEL,EQV
*GET,EXTENE,SORT,0,MAX
PARSAV,ALL,PEDRO,txt
*MWRITE,RT,TotalReaction,dat,,IJK,SUBSTEPS+1
(E20.8)
*MWRITE,UT,Displacement,dat,,IJK,SUBSTEPS+1
(E20.8)
FINISH
/POST26
!NUMVAR,4
NSOL,2,NODEM,U,Y
VPUT,UT,3
VPUT,RT,4
XVAR,3
PLVAR,4
FINISH
Resume: The solution converge with a curve with positive or zero loops but not with a curve with negative loops (yield curve from a real compression test).
I will show the APDL FILE for you to see. It's simple, a rectangular specimen with an hole. Displacement UY=0 above (in two node UX=UZ=UY=0 and UX=UY=0 to avoid free body motion), and displacement UY=yieldstrain*height on the oposite side).
APDL FILE:
/PREP7
ET,1,45
MP,EX,1,290
MP,PRXY,1,0.3
TB,MELAS,1
TBPT,DEFI,0.01,2.9
TBPT,DEFI,0.05,11
TBPT,DEFI,0.06,11.4
TBPT,DEFI,0.07,11.8
TBPT,DEFI,0.08,12
TBPT,DEFI,0.09,12.2
TBPT,DEFI,0.1,12.3
TBPT,DEFI,0.11,12.3
TBPT,DEFI,0.12,12.3
TBPT,DEFI,0.13,12.31
TBPT,DEFI,0.14,12.32
TBPT,DEFI,0.15,12.33
TBPT,DEFI,0.16,12.35
TBPT,DEFI,0.17,12.36
TBPT,DEFI,0.18,12.37
TBPT,DEFI,0.19,12.38
TBPT,DEFI,0.20,12.39
TBPT,DEFI,0.21,12.40
TBPT,DEFI,0.22,12.41
TBPT,DEFI,0.23,12.42
TBPT,DEFI,0.24,12.43
!I want this
!TBPT,DEFI,0.01,2.9
!TBPT,DEFI,0.05,11
!TBPT,DEFI,0.06,11.4
!TBPT,DEFI,0.07,11.8
!TBPT,DEFI,0.08,12
!TBPT,DEFI,0.09,12.2
!TBPT,DEFI,0.1,12.4
!TBPT,DEFI,0.11,12.3
!TBPT,DEFI,0.12,12.2
!TBPT,DEFI,0.13,12.1
!TBPT,DEFI,0.14,12
!TBPT,DEFI,0.15,11.9
!TBPT,DEFI,0.16,11.8
!TBPT,DEFI,0.17,11.7
!TBPT,DEFI,0.18,11.6
!TBPT,DEFI,0.19,11.5
!TBPT,DEFI,0.20,11.4
!TBPT,DEFI,0.21,11.3
!TBPT,DEFI,0.22,11.2
!TBPT,DEFI,0.23,11.1
!
BLC4,,,20,40,20
LSEL,s,LOC,y,40-0.0001,40
LSEL,A,LOC,y,0+0.0001,0
LESIZE,ALL,,,25
LSEL,INVE
LESIZE,ALL,,,50
LSEL,ALL
VMESH,ALL
!
MODMSH,DETACH
NSEL,S,LOC,x,12,17
NSEL,R,LOC,y,20,25
ESLN,all
EDELE,all
ESEL,all
NSEL,ALL
NDELE,ALL
VDELE,ALL
ADELE,ALL
LDELE,ALL
KDELE,ALL
NUMCMP,ALL
MODMSH
!
!
*GET,nomaximo,NODE,0,MXLOC,y
*GET,nominimo,NODE,0,MNLOC,y
*GET,nomaximoz,NODE,0,MXLOC,z
*GET,nominimoz,NODE,0,MNLOC,z
*GET,nomaximoX,NODE,0,MXLOC,X
*GET,nominimoX,NODE,0,MNLOC,X
ComprimentoTotal=nomaximo-(nominimo)
ExpYieldStrain=0.1
Desl=ComprimentoTotal*ExpYieldStrain
AREA=(nomaximoz-(nominimoz))*(nomaximoX-(nominimoX))
!*****************Condicões fronteira*********************
NSEL,S,LOC,y,nomaximo-0.0000001,nomaximo
D,ALL,UY,0
*GET,nomaximoZ,NODE,0,MXLOC,Z
NSEL,R,LOC,z,nomaximoZ-0.000001,nomaximoZ
*GET,nominimoX,NODE,0,MNLOC,X
NSEL,U,LOC,X,nominimoX,nominimoX+0.000001
*GET,nominimoX,NODE,0,MNLOC,X
NSEL,R,LOC,X,nominimoX,nominimoX+0.000001
D,ALL,UZ,0
NSEL,S,LOC,y,nomaximo-0.0000001,nomaximo
*GET,nomaximoZ,NODE,0,MXLOC,Z
NSEL,R,LOC,z,nomaximoZ-0.000001,nomaximoZ
*GET,nominimoX,NODE,0,MNLOC,X
NSEL,R,LOC,X,nominimoX,nominimoX+0.000001
D,ALL,UX,0,,,,UZ
NSEL,ALL
*GET,nominimoX,NODE,0,MNLOC,X
*GET,nomaximoZ,NODE,0,MXLOC,Z
!**********Deslocamento imposto para simular compressão**********
NSEL,S,LOC,y,nominimo+0.0000001,nominimo
D,ALL,Uy,Desl
NSEL,ALL
/SOLU
SOLCONTROL,ON
NLGEOM,ON
!TIME,1
NSUBST,15,17,13
OUTRES,ALL,ALL
NSUBST,50,55,45
!CNVTOL,U,,,0
!NROPT,FULL
!AUTOTS,ON
!LNSRCH,AUTO
SOLVE
/POST1
*GET,SUBSTEPS,ACTIVE,0,SET,SBST
K=1
*DIM,RT,ARRAY,SUBSTEPS+1,,,I
*DIM,UT,ARRAY,SUBSTEPS+1,,,I
SET,FIRST
*DO,I,1,SUBSTEPS,1
NSEL,S,LOC,y,nomaximo-0.0000001,nomaximo
FSUM
*GET,R,FSUM,0,ITEM,FY
*VFILL,RT(K+1,1,1),DATA,R
NSEL,S,LOC,y,nominimo+0.0000001,nominimo
NSEL,R,LOC,X,nomaximoX-0.0000001,nomaximoX
NSEL,R,LOC,Z,nomaximoZ-0.0000001,nomaximoZ
*GET,NODEM,NODE,0,NUM,MAX
*GET,U,NODE,NODEM,U,Y
*VFILL,UT(K+1,1,1),DATA,U
K=K+1
set,NEXT
*ENDDO
NSEL,ALL
SET,LAST
NSORT,S,EQV
*GET,MAXVONM,SORT,0,MAX
NSORT,EPTO,EQV
*GET,EXTOTAL,SORT,0,MAX
NSORT,EPPL,EQV
*GET,EXTENP,SORT,0,MAX
NSORT,EPEL,EQV
*GET,EXTENE,SORT,0,MAX
PARSAV,ALL,PEDRO,txt
*MWRITE,RT,TotalReaction,dat,,IJK,SUBSTEPS+1
(E20.8)
*MWRITE,UT,Displacement,dat,,IJK,SUBSTEPS+1
(E20.8)
FINISH
/POST26
!NUMVAR,4
NSOL,2,NODEM,U,Y
VPUT,UT,3
VPUT,RT,4
XVAR,3
PLVAR,4
FINISH