Screamer Project
V3.3.1
Screamer Structure
Main Page
Files
File List
File Members
All
Files
Functions
Variables
cylflprm.f
Go to the documentation of this file.
1
subroutine
cylfoilparm
(parms, nparms)
2
c
3
c Define passed variables
4
c
5
real
parms(*)
6
integer
nparms
7
c
8
c December 10, 1992; hnw
9
c 2014-02-06 RBS: Changed real*4 to real
10
c
11
c Include the common block for plotting so that we can set some
12
c initial plotting values.
13
c
14
include
'zdemmax.h'
15
include
'zdemout.h'
16
c
17
c Sets up the parameters needed for the foil implosion model and
18
c returns them in parms(i).
19
c nparms is the number of parameters in parms.
20
c
21
c parms is sent with the basic parameters needed to rearrange and fill
22
c the actual parms array.
23
c
24
real
temp(4)
25
c
26
c Internal parameter
27
c
28
real
mu
29
parameter(mu = 2.0e-7)
30
c
31
c Fill temp with parms, then rearrange parms and fill it in.
32
c
33
do
i = 1, nparms
34
temp(i) = parms(i)
35
end do
36
c ***********************************************************************
37
c In parms we want:
38
c 1: initrad (does not change)
39
c = initial foil radius
40
c 2: minrad (does not change)
41
c = minimum foil radius
42
c 3: mass (does not change)
43
c = foil mass
44
c 4: aconst (does not change)
45
c = -(mu * length) / (2 * mass)
46
c 5: lconst (does not change)
47
c = mu * length
48
c 6: lminrad (does not change)
49
c = lconst * ln(initrad/minrad)
50
c 7: lt3 (initially = 0)
51
c = inductance from last half time step
52
c 8: radt3 (initially = initrad)
53
c = radius from last half time step
54
c 9: velt3 (initially = 0)
55
c = velocity from last half time step
56
c 10: testimpl (initially = 0, which is imploding, set to 1 when radius
57
c shrinks to minrad)
58
c = value to test to see if foil is still imploding or has stagnated at
59
c the minimum radius
60
c
61
c In temp:
62
c 1: initrad
63
c 2: length
64
c 3: mass
65
c 4: minrad
66
c ***********************************************************************
67
c
68
nparms = 12
69
parms(1) = temp(1)
70
parms(2) = temp(4)
71
parms(3) = temp(3)
72
parms(4) = - (mu * temp(2)) / (2.0 * temp(3))
73
parms(5) = mu * temp(2)
74
parms(6) = (mu * temp(2)) * log(temp(1)/temp(4))
75
parms(7) = 0.0
76
parms(8) = temp(1)
77
parms(9) = 0.0
78
parms(10) = 0.0
79
parms(11) = temp(2)
!foil length in m
80
parms(12) = temp(3)*1.0e3
!mass in grams
81
c
82
c Set initial plotting values for foil radius, velocity,
83
c acceleration, kinetic energy.
84
c
85
foilrad = parms(1)
86
foilvel = 0.0
87
foilacc = 0.0
88
foilke = 0.0
89
c
90
return
91
end
cylfoilparm
subroutine cylfoilparm(parms, nparms)
Definition:
cylflprm.f:1
release_3.3.1_beta
src
cylflprm.f
Generated on Mon May 5 2014 15:41:48 for Screamer Project by
1.8.7