You are on page 1of 2

!

This program combines real and imaginary parts of BEAM188 forces from a harmonic
analysis.
!Select only the elements from which beam forces are being extracted
!This program must be run after the harmonic analysis is done.
!The results file must be chosen before running this program.
!
*GET,NumActiveElems,ELEM,0,COUNT !Get number of active elements
*DIM,ElemNumbers,ARRAY,NumActiveElems
*DIM,ElemNumbers,ARRAY,NumActiveElems
*DIM,RealValueX,ARRAY,NumActiveElems
*DIM,RealValueY,ARRAY,NumActiveElems
*DIM,RealValueZ,ARRAY,NumActiveElems
*DIM,ImagValueX,ARRAY,NumActiveElems
*DIM,ImagValueY,ARRAY,NumActiveElems
*DIM,ImagValueZ,ARRAY,NumActiveElems
*DIM,SRSSValueX,ARRAY,NumActiveElems
*DIM,SRSSValueY,ARRAY,NumActiveElems
*DIM,SRSSValueZ,ARRAY,NumActiveElems
*GET,ElemNumbers(1),ELEM,0,NUM,MIN !First Element Number
*DO,i,2,NumActiveElems,1 !Get all element numbers
ElemNumbers(i)=ELNEXT(ElemNumbers(i-1))
*ENDDO
MULTIPRO,'start'
*CSET,1,3,LoadStep,'Enter load step'
*CSET,4,6,Substep,'Enter substep'
MULTIPRO,'end'
SET,LoadStep,Substep,1,0 !Read in real portion of results
file
*DO,j,1,NumActiveElems,1
*GET,RealValueX(j),ELEM,ElemNumbers(j),SMISC,1 !Store real value forces for
each element
*GET,RealValueY(j),ELEM,ElemNumbers(j),SMISC,6
*GET,RealValueZ(j),ELEM,ElemNumbers(j),SMISC,5
*ENDDO
SET,LoadStep,Substep,1,1 !Read in imag portion of results
file
*DO,j,1,NumActiveElems,1
*GET,ImagValueX(j),ELEM,ElemNumbers(j),SMISC,1 !Store imag value of forces
for each element
*GET,ImagValueY(j),ELEM,ElemNumbers(j),SMISC,6
*GET,ImagValueZ(j),ELEM,ElemNumbers(j),SMISC,5
*ENDDO
*DO,j,1,NumActiveElems,1
SRSSValueX(j)=SQRT(RealValueX(j)**2+ImagValueX(j)**2) !Calculate combined
value for each element
SRSSValueY(j)=SQRT(RealValueY(j)**2+ImagValueY(j)**2)
SRSSValueZ(j)=SQRT(RealValueZ(j)**2+ImagValueZ(j)**2)
*ENDDO
!
!
!
*ASK,FileName,'file name (without extension) in single quotes to store results.'
*ASK,Extens,'file extension in single quotes.'
*CFOPEN,FileName,Extens
!*DO,m,1,NumModes,1
*VWRITE
('ElemNum',' ','FX',' ','FY',' ','FZ')
*VWRITE,ElemNumbers(1),SRSSValueX(1),SRSSValueY(1),SRSSValueZ(1)
(F8.0,' ',F15.3, F15.3, F15.3)
!*ENDDO
*CFCLOSE

You might also like