You are on page 1of 3

!--------------------------------------!

>>>> POST-PROCESSING <<<<


!--------------------------------------FINISH
/POST1
ESEL,ALL
EPLOT
ESEL,S,REAL,,1,13

!Select all elements


!Plot all

!Defining parameters
NOH=77
ELEM1=175
ELEM2=176
N_ELEMTS=300
!Parameters for storing plastic strain
*DIM,PL_VEC,,N_ELEMTS,3
! Open output file: NAME='Results'; extension='.txt'
*CFOPEN,Results,txt,,APPEND
!APPEND=status'UNKNOWN' - The file will
be appended to the existing file
*CFOPEN,Results,txt,,
!(blank) - The existing file will be ove
rwritten
*GET,N,ACTIVE,0,SET,NSET,LAST
e

!Retrieves the number of data sets on result fil

*DO,i,0,N
SET,1,i
*GET,TIME_FREQ,ACTIVE,0,SET,TIME
or of substep #i
!*VWRITE,'STEP',i,TIME_FREQ
!STEP;i;+0,00000E+00
!%s,%i,%.5g

!'TIME_FREQ' = Load fact

!*GET,UX_NO,NODE,NOH,U,X
!'UX_NO'
= NODE('NOH'), Displacement(U), component(X)
!
!! Create a table to store AXIAL STRESS (SAXL) of elements
!ETABLE,SAXL,LS,1
!*GET,TEN1,ELEM,ELEM1,ETAB,SAXL
!'TEN1' = ELEM(ELEM1), A
xial Tension (ETAB,SAXL)
!*GET,TEN2,ELEM,ELEM2,ETAB,SAXL
!'TEN2' = ELEM(ELEM2), A
xial Tension (ETAB,SAXL)
!
!! Create a table to store AXIAL ELASTIC STRAIN (EPELxx) of elements
!ETABLE,EPELAXL,LEPEL,1
!Linear elements
strain (LEPEL); 1=Principal Strain
!*GET,DMAX1,ELEM,ELEM1,ETAB,EPELAXL
!'DMAX1' = ELEM(ELEM1),
Axial Strain (ETAB,EPELAXL)
!*GET,DMAX2,ELEM,ELEM2,ETAB,EPELAXL
!'DMAX2' = ELEM(ELEM2),
Axial Strain (ETAB,EPELAXL)
!
!! Create a table to store AXIAL PLASTIC STRAIN (EPPLxx) of elements
ETABLE,EPPLAXL,LEPPL,1
!Linear elements

strain (LEPEL); 1=Principal Strain


!*GET,PLMAX1,ELEM,ELEM1,ETAB,EPPLAXL
Axial Strain (ETAB,EPPLAXL)
!*GET,PLMAX2,ELEM,ELEM2,ETAB,EPPLAXL
Axial Strain (ETAB,EPPLAXL)
*IF,i,NE,0,THEN
*Do,k,1,N_ELEMTS

!'PLMAX1' = ELEM(ELEM1),
!'PLMAX2' = ELEM(ELEM2),

!Loop over #elements

*IF,PL_VEC(k,1),EQ,0,THEN

!Only searches for plast

ic strain
!on elements with no previous strain
*GET,PLAST_STRAIN,ELEM,k,ETAB,EPPLAXL
PLAXL of ELEM(k)

!Gets EP

*IF,PLAST_STRAIN,ABGT,1E-03,THEN
PL_VEC(k,1)=i
!write load step
PL_VEC(k,2)=PLAST_STRAIN
!write plastic strain
*VLEN,1
*VWRITE,'ELEM=',k,'Nstep=',PL_VEC(k,1),'
PlStrain=',PL_VEC(k,2)
%s%i,%s%i,%s%.5g
*ENDIF
*ENDIF
*ENDDO
*ENDIF
!! Reorder plastic strain in descending order
!*DO,j,1,N_ELEMTS,1
!
*IF,PL_VEC(j,1),EQ,i,THEN
!
*DO,k,1,(N_ELEMTS-1)
!
*IF,PL_VEC(k,1),EQ,i,THEN
!
IF (PL_VEC(j,1).GT.PL_VEC(j+1)) Then
!
*IF,a(j),eq,a(k),then
!
count = count+1
!
*ENDIF
!
!
!Bubble Sort
!
*IF,a(j),gt,k,then
!
temp=a(j)
!
a(j)=a(k)
!
a(k)=temp
!
*ENDIF
!
*ENDDO
!*ENDDO
!*DO,j,1,N_ELEMTS,1
!
*IF,PL_VEC(j,1),EQ,i,THEN
!
*VWRITE,'ELEM',j,PL_VEC(j,1),PL_VEC(j,2)
!ELEM;j;i;-0,00000E+00
!
%s,%i,%.5g
!
*ENDIF
!*ENDDO

!
!
!
!
!
+00
!
!
+00
!
!
000E+00
!
!
000E+00
!
!
!
!
!
!
!
!
*ENDDO

*VWRITE,'STEP',i,'FACTOR',TIME_FREQ
!STEP;i;FACTOR;[0-1]
%s,%i,%s,%.5g
*VWRITE,'NODE',NOH,'UX',UX_NO
!NODE;213;UX;4,54517E-03
%s,%i,%s,%.5g
*VWRITE,'ELEM',ELEM1,'STRESS MAX',TEN1 !ELEM;ELEM1;STRESS MAX;+0,00000E
%s,%i,%s,%.5g
*VWRITE,'ELEM',ELEM2,'STRESS MIN',TEN2 !ELEM;ELEM2;STRESS MIN;-0,00000E
%s,%i,%s,%.5g
*VWRITE,'ELEM',ELEM1,'STRAIN',DMAX1

!ELEM;ELEM1;STRAIN;+0,00

%s,%i,%s,%.5g
*VWRITE,'ELEM',ELEM2,'STRAIN',DMAX2

!ELEM;ELEM2;STRAIN;-0,00

%s,%i,%s,%.5g
*VWRITE,'ELEM',ELEM1,'PSTRAIN',PLMAX1
%s,%i,%s,%.5g
*VWRITE,'ELEM',ELEM2,'PSTRAIN',PLMAX2
%s,%i,%s,%.5g

!ELEM;ELEM1;PSTRAIN;-0,00000E+00
!ELEM;ELEM2;PSTRAIN;+0,00000E+00

*VWRITE,'********* END OF LOAD STEP *********'


%s
!End of load steps loop

*DO,jj,1,N_ELEMTS
*VWRITE,'ELEM',jj,PL_VEC(jj,1),PL_VEC(j,2)
000E+00
%s,%i,%.5g
*ENDDO
*CFCLOS

!ELEM;jj;i;-0,00

!Close output file

! ################# LIST OF COMMANDS #################


!%s = String
!%i = Integer
!%.5g = (.5) number of floating numbers. %g = Engineering notation
!#### SET,,,,,,,i, ####
!
!SET, Lstep, Sbstep, Fact, KIMG, TIME, ANGLE, NSET, ORDER
!Lstep: Load step number of the data set to be read (defaults to 1)
!Sbstep: Substep number (within Lstep).
!Fact: Scale factor applied to data read from the file. If zero (or blank), a va
lue of 1.0 is used.
!KIMG: Used only with complex results (harmonic and complex modal analyses).
!TIME: Time-point identifying the data set to be read.
!ANGLE: Circumferential location (0.0 to 360). Defines the circumferential locatio
n for the harmonic calculations used when reading from the results file.
!NSET: Data set number of the data set to be read. If a positive value for NSET
is entered, Lstep, Sbstep, KIMG, and TIME are ignored.
!ORDER: Sorts the harmonic index results in ascending order of eigenfrequencies
or buckling load multipliers.

You might also like