40
41
42
49
50
51
52#include "implicit_f.inc"
53
54
55
56#include "units_c.inc"
57#include "com01_c.inc"
58#include "tablen_c.inc"
59
60
61
62 TYPE (UNIT_TYPE_),INTENT(IN) ::UNITAB
63 INTEGER IGEO(*)
64 INTEGER IGTYP,IG
66 . geo(*)
67 CHARACTER(LEN=NCHARTITLE)::IDTITL
68 TYPE(PROP_TAG_) , DIMENSION(0:MAXPROP) :: PROP_TAG
69 TYPE(SUBMODEL_DATA),INTENT(IN)::LSUBMODEL(*)
70
71
72
73 INTEGER ISMSTR,ISHEAR,IHBE,
74 . IHBE_OLD,
75 . IR1X, IR1Y, , IR2X, IR2Y, IR2Z,IRX
77 . pun,cvis
78 CHARACTER(LEN=NCHARFIELD) :: STRING
79 CHARACTER CHROT*7
80 LOGICAL IS_AVAILABLE, IS_ENCRYPTED
81
82
83
84 DATA pun/0.1/
85
86
87 is_encrypted = .false.
88 is_available = .false.
89
90
91
92 ihbe=0
93 ismstr=0
94 cvis=0
95
96
97
99
100
101
102 CALL hm_get_intv(
'Ismstr',ismstr,is_available,lsubmodel)
103 CALL hm_get_intv(
'Translation_Wx1',ir1x,is_available,lsubmodel)
104 CALL hm_get_intv(
'Translation_Wy1',ir1y,is_available,lsubmodel)
105 CALL hm_get_intv(
'Translation_Wz1',ir1z,is_available,lsubmodel)
106 CALL hm_get_intv(
'Translation_Wx2',ir2x,is_available,lsubmodel)
107 CALL hm_get_intv(
'Translation_Wy2',ir2y,is_available,lsubmodel
108 CALL hm_get_intv(
'Translation_Wz2',ir2z,is_available,lsubmodel)
109 CALL hm_get_intv(
'ISHEAR',ishear,is_available,lsubmodel)
110
111
112
113 CALL hm_get_floatv(
'MAT_Dm',geo(16),is_available,lsubmodel,unitab)
114 CALL hm_get_floatv(
'MAT_Df',geo(17),is_available,lsubmodel,unitab)
115 CALL hm_get_floatv(
'AREA',geo(1),is_available,lsubmodel,unitab)
116 CALL hm_get_floatv(
'IYY',geo(2),is_available,lsubmodel,unitab)
117 CALL hm_get_floatv(
'IZZ',geo(18),is_available,lsubmodel,unitab)
118 CALL hm_get_floatv(
'IXX',geo(4),is_available,lsubmodel,unitab)
119
120
121
122 IF(n2d>0.AND.ihbe/=0.AND.ihbe/=2)THEN
123 ihbe_old=ihbe
124 ihbe=0
126 . msgtype=msgwarning,
127 . anmode=aninfo_blind_2,
128 . i1=ig,
129 . c1=idtitl,
130 . i2=ihbe_old,
131 . i3=ihbe)
132 ENDIF
133
134 geo(3)=ismstr
135 IF ((ismstr==3).OR.(ismstr==1)) geo(5)=ep06
136
137 igeo( 1)=ig
138 igeo(10)=ihbe
139 igeo(11)=igtyp
140 geo(12) =igtyp+pun
141 geo(171)=ihbe
142
143
144
145 IF(ismstr==2.OR.ismstr==4)THEN
146 ismstr=0
147 ELSEIF(ismstr==1.OR.ismstr==3)THEN
148 ismstr=1
149 ENDIF
150 IF(geo(17)==zero) geo(17)=em02
151
153 geo(7)= 1.1-irx
154 geo(8)= 1.1-ir1y
155 geo(9)= 1.1-ir1z
156 geo(10)=1.1-ir2y
157 geo(11)=1.1-ir2z
158 IF(ishear/=0) THEN
159 geo(37)=one
160 ELSE
161 geo(37)=zero
162 ENDIF
163
164 IF (geo(1)<=zero) THEN
166 . msgtype=msgerror,
167 . anmode=aninfo_blind_1,
168 . i1=ig,
169 . c1=idtitl,
170 . r1=geo(1))
171 ENDIF
172 IF (geo(2)<=zero) THEN
174 . msgtype=msgerror,
175 . anmode=aninfo_blind_1,
176 . i1=ig,
177 . c1=idtitl,
178 . r1=geo(2))
179 ENDIF
180 IF (geo(18)<=zero) THEN
182 . msgtype=msgerror,
183 . anmode=aninfo_blind_1,
184 . i1=ig,
185 . c1=idtitl,
186 . r1=geo(18))
187 ENDIF
188 IF (geo(4)<=zero) THEN
190 . msgtype=msgerror,
191 . anmode=aninfo_blind_1,
192 . i1=ig,
193 . c1=idtitl,
194 . r1=geo(4))
195 ENDIF
196 IF(.NOT. is_encrypted)THEN
197 WRITE(iout,1300)ig,geo(1),geo(2),geo(18),geo(4),
198 . ir1x,ir1y,ir1z,ir2x,ir2y,ir2z,ishear,
199 . geo(16),geo(17)
200 ELSE
201 WRITE(iout,1399)ig
202 ENDIF
203 geo(3)=ismstr
204
205 ishear = geo(37)
206 IF(ishear==0)THEN
207 geo(37)=0
208 ELSEIF(ishear==1)THEN
209 geo(37)=1
210 ELSEIF(ishear==2)THEN
211 geo(37)=0
212 ENDIF
213 IF(geo(3)/=zero.AND.igeo(5)== 0) igeo(5)=nint(geo(3))
214 IF(geo(171)/=zero.AND.igeo(10)== 0) igeo(10)=nint(geo(171))
215
216
217
218
219
220 prop_tag(igtyp)%G_FOR = 3
221 prop_tag(igtyp)%G_MOM = 3
222 prop_tag(igtyp)%G_EINT = 2
223 prop_tag(igtyp)%G_LENGTH = 1
224 prop_tag(igtyp)%G_SKEW = 3
225 prop_tag(igtyp)%L_STRA = 3
226
227
228
229 RETURN
230
231 1300 FORMAT(
232 & 5x,'BEAM PROPERTY SET'/,
233 & 5x,'PROPERTY SET NUMBER . . . . . . . . . .=',i10/,
234 & 5x,'BEAM AREA . . . . . . . . . . . . . . .=',1pg20.13/,
235 & 5x,'MOMENT OF INERTIA IYY . . . . . . . . .=',1pg20.13/,
236 & 5x,'MOMENT OF INERTIA IZZ . . . . . . . . .=',1pg20.13/,
237 & 5x,'MOMENT OF INERTIA IXX . . . . . . . . .=',1pg20.13/,
238 & 5x,'NODE 1 LOCAL ROTATION RELEASE X DIR.. .=',i10/,
239 & 5x,'NODE 1 LOCAL ROTATION RELEASE Y DIR.. .=',i10/,
240 & 5x,'NODE 1 LOCAL ROTATION RELEASE Z DIR.. .=',i10/,
241 & 5x,'NODE 2 LOCAL ROTATION RELEASE X DIR.. .=',i10/,
242 & 5x,'NODE 2 LOCAL ROTATION RELEASE Y DIR.. .=',i10/,
243 & 5x,'NODE 2 LOCAL ROTATION RELEASE Z DIR.. .=',i10/,
244 & 5x,'SHEAR FORMULATION (0=YES/1=NO). . . . .=',i10/,
245 & 5x,'BEAM STRUCTURAL MEMBRANE DAMPING. . . .=',1pg20.13/,
246 & 5x,'BEAM STRUCTURAL FLEXURAL DAMPING. . . .=',1pg20.13/)
247 1399 FORMAT(
248 & 5x,'BEAM PROPERTY SET'/,
249 & 5x,'PROPERTY SET NUMBER . . . . . . . . . .=',i10/,
250 & 5x,'CONFIDENTIAL DATA'//)
251
subroutine hm_get_floatv(name, rval, is_available, lsubmodel, unitab)
subroutine hm_get_intv(name, ival, is_available, lsubmodel)
subroutine hm_option_is_encrypted(is_encrypted)
integer, parameter nchartitle
integer, parameter ncharfield
subroutine ancmsg(msgid, msgtype, anmode, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13, i14, i15, i16, i17, i18, i19, i20, r1, r2, r3, r4, r5, r6, r7, r8, r9, c1, c2, c3, c4, c5, c6, c7, c8, c9, prmode)