Dave Looman
Ansys Employee

A Shock Response Spectrum can be created with the APDL command, RESP,  using the transient time-history.  A blog on this topic is pasted below.

In the input below the POST26 RESP command is used to compute the shock response spectrum for a 20g triangular acceleration of 10 milli-sec duration.  The time-history includes time after the shock load for the lower frequencies to reach their peak displacement value.  The input assumes that a modal analysis has been done and expanded.

! After a modal analysis...

pi=acos(-1)

amplitude=20                   ! pulse amplitude (20 g)

width=0.01                     ! pulse width (10 milli-secs)

*dim,acel,table,4,1

acel(1,0)=0.0, 0.5*width, width, 5.0*width

acel(1,1)=0.0, amplitude, 0.0, 0.0

/axlab,x,TIME

/axlab,y,ACEL (g)

*vplot,acel(1,0),acel(1,1)     ! verify acceleration input

The table array, acel, can now be used as input to the RESP command in the time-history post-processor.

/post26

store,alloc,10         ! allocate the number of frequencies to be solved for

vput,acel(1,0),1,0     ! variable 1 is time values

vput,acel(1,1),2,0     ! variable 2 is acceleration values

data,5,1,10,1,Frequncy ! variable 5 is frequency list (I love this old command!)

(10F5.1)

10.0 20.0 30.0 40.0 50.0 60.0 70.0 80.0 90.0 100.0

! Use parameters for RESP command input to make more readable

Spec=6             ! variable to contain spectrum output

Freq=5             ! variable with frequencies to be solved for

Inp_Acel=2         ! variable with acceleration input

Out_Type=3         ! create acceleration spectrum

Damp=0.05          ! damping (ratio to critical) to be used

Tinc=0.0005        ! integration time step, 20 pts per cycle at 100 hz

Inp_Type=1         ! acceleration input, new at 14.0

resp,Spec,Freq,Inp_Acel,Out_Type,Damp,Tinc,,,Inp_Type

/title,Response Spectrum for %amplitude%g, %width*1000% m-sec shock load (5% Damping)

/axlab,x,Frequency (Hz)

/axlab,y,Peak Acceleration (g)

xvar,Freq          ! x axis is frequency

plvar,Spec         ! plot acceleration spectrum

So with 15 or 20 lines of APDL input you can create your own shock response spectrum based on any arbitrary shape, peak value or duration of loading.  To provide a complete overview of the spectrum process the commands below retrieve the spectrum values into an array named SRS and input the values in a sample spectrum analysis.

*dim,SRS,,10

vget,SRS,Spec         ! retrieve variable 6 (Spec) into array parameter SRS

*stat,SRS(1)

/solu

antype,spectrum

spopt,sprs

sed,1                           ! x direction

svtype,2,386.4                  ! accel spectrum, factor to convert g values to in/s^2

freq,10,20,30,40,50,60,70,80,90 ! limit of 9 frequencies per line

freq,100

sv,Damp,SRS(1),SRS(2),SRS(3),SRS(4),SRS(5),SRS(6),SRS(7),SRS(8),SRS(9),

sv,Damp,SRS(10)

svplot,,Damp                    ! plot spectrum to verify input