Skip to content

Instantly share code, notes, and snippets.

@skipme
Last active November 1, 2018 18:53
Show Gist options
  • Save skipme/47ec01f0f123bf41043939290637a21c to your computer and use it in GitHub Desktop.
Save skipme/47ec01f0f123bf41043939290637a21c to your computer and use it in GitHub Desktop.
INSTANTANEOUS DRAG AREA, VELOCITY, OPENING SHOCK FORCE, AND DISTANCE OF FALL OF A PARACHUTE DEPLOYED IN VERTICAL FALL.
* AD-A180 901
* NOTES ON A PARACHUTE OPENING FORCE
* ANALYSIS APPLIED TO A VERTICAL
* TOWARD-THE-EARTH TRAJECTORY
* BY WILLIAM P. LUDTKE
* UNDERWATER SYSTEMS DEPARTMENT
* 28 MAY 1987
* inputs:
* 1
* 0.0022
* 340
* 722
* 0.91
* 200
* 6
* 400
* 962
* 1.46
* 1.15
* 0.632
* 4700
C cctbx_project/compcomm/newsletter09/sf_times.py, svn rev. 9983
C cos_wrapper, exp_wrapper replaced with COS, SIN, EXP
program run
REAL*4 N
t0den=100.000
5 print *, 'INPUT IOPT'
read(5,*,END=100) IOPT
print *, 'input rho, vs, cdso, t0, w, j'
read(5,*)rho,vs,cdso,t0,w,j
if(iopt .eq. 2) go to 3
print *, 'input amo,aso,xk,cp,n,v0'
read(5,*)amo,aso,xk,cp,n,v0
3 dt=t0/t0den
tau=0
g=32.2
s=0.
x=tau
cds=tau*cdso
fs=.5*rho*vs**2*cdso
f=tau*fs
vol=0
ipass=0
dt=10.*dt
if(iopt .eq. 2) go to 8
7 v=vs
vol=0
t=0
xm=(2.*w)/(rho*g*cdso*vs*t0)
6 dv=(g-v**2/(xm*vs*t0)*(t/t0)**j)*dt
dvol=(v*amo*(t/t0)**j-aso*(t/t0)**j*xk*(cp*rho/2)**n *v**(2.
& *n))*dt
vol=vol+dvol
v=v+dv
t=t+dt
if(t .ge. t0) go to 4
go to 6
4 write(6, '(2(1x,f12.6))') t0, vol
if(vol .gt. (v0-10.) .and. vol .lt. (v0+10.)) go to 8
t0=t0*(v0/vol)
! write(6, '(2(1x,f12.6))') t0, vol
if(ipass .gt. 500) stop
ipass=ipass+1
go to 7
8 continue
t=0
v=vs
dt=dt/10
write(6,10) rho,vs,cdso,w,t0,xm,j,fs
10 format(1H1, 'density='1PE12. 5, 2X,'v(s)='0PF8. 1, 2X, 'cdso='0PF8. 2
1 ,2X, 'w='F7. 1, 2X,'t(0)='F6. 3, 2X, 'M='1PE12. 5, 2X, 'J='I2,2x
2 ,'FS='1PE12. 5)
if(IOPT .eq. 1) write(6,11) amo,aso,xk,cp,n,v0,vol
11 format(1H0,4x,'amo=',0PF8. 2, 7x,'aso=', 0PF8.2, 5x,'k=',0pf8.3
4 ,1x,'CP=',0PF7.3, 5x, 'n=',0pf6.3,1x,'v0=',1pe12. 5,7x
5 ,'vol='1pe1 2.5)
write(6,20)
20 format(1H0,2x,'time='2x,'time ratio',2x,'vel ratio',2x
1 ,'drag area ratio',2x,'shock factor',3x,'shock force',2x,'dist of
2 fall')
30 format(1x,f6.2,2f12.5,f17.7,1p2e14.5,0pf15.2)
lcount=5
35 if(t/t0 .gt. 1.51) GO TO 5
if(lcount .lt. 54) go to 38
write(6,37)
37 format(1h1)
write(6,20)
lcount=3
38 lcount=lcount+1
write(6,30) t,t/t0,v/vs,cds/cdso,x,f,s
told=t+.02
if(dt .gt. 0.02) told=t+dt
40 t=t+dt
if(t .gt. told)t=told
tovto=(1-tau)*(t/t0)**j+tau
cds=cdso*tovto
dv=(g-v**2*tovto/(xm*vs*t0))*dt
ds=v*dv/(g-v**2*tovto/(xm*vs*t0))
v=v+dv
s=s+ds
x=(v/vs)**2*cds/cdso
f=x*fs
if(t .lt. told) go to 40
go to 35
100 STOP
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment