39
40
41
43
44
45
46#include "implicit_f.inc"
47
48
49
50#include "param_c.inc"
51
52
53
54 TYPE (H3D_DATABASE) :: H3D_DATA
55 INTEGER, INTENT(IN) :: IPARI(NPARI,*)
56
57
58
59 INTEGER I,J,II,IUS,IPT,ILAY,CPT_CS_DATA,INTER_ID
60 CHARACTER MES*80,CHINFO*10
61
62 DO i=1,h3d_data%N_OUTP_H3D
63 IF(h3d_data%OUTPUT_LIST(i)%OK == 1 ) THEN
64 IF(h3d_data%OUTPUT_LIST(i)%ETYPE == 1) THEN
65
66 IF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 1) THEN
67
68 IF(h3d_data%OUTPUT_LIST(i)%INTER /= 0 )THEN
69 inter_id = ipari(15,h3d_data%OUTPUT_LIST(i)%INTER)
70 ELSE
71 inter_id = 0
72 ENDIF
73 CALL c_h3d_create_nodal_scalar_datatype(
74 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST(i)%S_STRING1,
75 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%STRING2, h3d_data%OUTPUT_LIST(i)%S_STRING2,
76 . inter_id,h3d_data%OUTPUT_LIST(i)%COMMENT,
77 . h3d_data%OUTPUT_LIST(i)%S_COMMENT)
78 ELSEIF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 2) THEN
79
80 CALL c_h3d_create_nodal_vector_datatype(
81 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST(i)%S_STRING1,
82 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%INFO2, h3d_data%OUTPUT_LIST(i)%STRING2,
83 . h3d_data%OUTPUT_LIST(i)%S_STRING2,h3d_data%OUTPUT_LIST(i)%COMMENT,h3d_data%OUTPUT_LIST(i)%S_COMMENT)
84 ELSEIF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 3) THEN
85
86 CALL c_h3d_create_nodal_tensor_datatype(
87 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST(i)%S_STRING1,
88 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%INFO2, h3d_data%OUTPUT_LIST(i)%STRING2,
89 . h3d_data%OUTPUT_LIST(i)%S_STRING2,h3d_data%OUTPUT_LIST(i)%COMMENT,h3d_data%OUTPUT_LIST(i)%S_COMMENT)
90 ENDIF
91 ELSEIF(h3d_data%OUTPUT_LIST(i)%ETYPE == 4) THEN
92
93 IF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 1) THEN
94
95 CALL c_h3d_create_1d_scalar_datatype(
96 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST(i)%S_STRING1,
97 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%STRING2, h3d_data%OUTPUT_LIST(i)%S_STRING2,
98 . h3d_data%OUTPUT_LIST(i)%COMMENT,h3d_data%OUTPUT_LIST(i)%S_COMMENT,h3d_data%OUTPUT_LIST(i)%IPT)
99 ELSEIF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 2) THEN
100
101 CALL c_h3d_create_1d_vector_datatype(
102 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST(i)%S_STRING1,
103 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%STRING2, h3d_data%OUTPUT_LIST(i)%S_STRING2,
104 . h3d_data%OUTPUT_LIST(i)%COMMENT,h3d_data%OUTPUT_LIST(i)%S_COMMENT)
105 ELSEIF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 3) THEN
106
107 CALL c_h3d_create_1d_tensor_datatype(
108 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST
109 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%STRING2, h3d_data%OUTPUT_LIST
110 . h3d_data%OUTPUT_LIST(i)%COMMENT,h3d_data%OUTPUT_LIST(i)%S_COMMENT,h3d_data%OUTPUT_LIST(i)%IPT
111 ELSEIF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 4) THEN
112
113 CALL c_h3d_create_1d_torsor_datatype(
114 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST(i)%S_STRING1,
115 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%STRING2, h3d_data%OUTPUT_LIST(i)%S_STRING2,
116 . h3d_data%OUTPUT_LIST(i)%COMMENT,h3d_data%OUTPUT_LIST(i)%S_COMMENT)
117 ENDIF
118 ELSEIF(h3d_data%OUTPUT_LIST(i)%ETYPE == 2) THEN
119
120 IF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 1) THEN
121
122 CALL c_h3d_create_shell_scalar_datatype(
123 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST(i)%S_STRING1,
124 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%INFO2, h3d_data%OUTPUT_LIST(i)%STRING2,
125 . h3d_data%OUTPUT_LIST(i)%S_STRING2,
126 . h3d_data%OUTPUT_LIST(i)%LAYER, h3d_data%OUTPUT_LIST(i)%IPT, h3d_data%OUTPUT_LIST(i)%PLY,
127 . h3d_data%OUTPUT_LIST(i)%IUVAR,h3d_data%OUTPUT_LIST(i)%GAUSS,h3d_data%OUTPUT_LIST(i)%IDMDS,
128 . h3d_data%OUTPUT_LIST(i)%IMDSVAR , h3d_data%OUTPUT_LIST(i)%IDMATMDS ,
129 . h3d_data%OUTPUT_LIST(i)%COMMENT , h3d_data%OUTPUT_LIST(i)%S_COMMENT,
130 . h3d_data%OUTPUT_LIST(i)%MDSVAR_NAME , h3d_data%OUTPUT_LIST(i)%SMDSVAR_NAME,
131 . h3d_data%OUTPUT_LIST(i)%OBJECT_ID , h3d_data%OUTPUT_LIST(i)%MODE )
132 ELSEIF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 2) THEN
133
134 CALL c_h3d_create_shell_vector_datatype(
135 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST(i)%S_STRING1,
136 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%INFO2, h3d_data%OUTPUT_LIST(i)%STRING2,
137 . h3d_data%OUTPUT_LIST(i)%S_STRING2,
138 . h3d_data%OUTPUT_LIST(i)%LAYER, h3d_data%OUTPUT_LIST(i)%IPT, h3d_data%OUTPUT_LIST(i)%PLY,
139 . h3d_data%OUTPUT_LIST(i)%IUVAR,h3d_data%OUTPUT_LIST(i)%GAUSS,
140 . h3d_data%OUTPUT_LIST(i)%COMMENT,h3d_data%OUTPUT_LIST(i)%S_COMMENT)
141 ELSEIF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 3) THEN
142
144 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST(i)%S_STRING1,
145 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%INFO2, h3d_data%OUTPUT_LIST(i)%STRING2,
146 . h3d_data%OUTPUT_LIST(i)%S_STRING2,
147 . h3d_data%OUTPUT_LIST(i)%LAYER, h3d_data%OUTPUT_LIST(i)%IPT, h3d_data%OUTPUT_LIST(i)%PLY,
148 . h3d_data%OUTPUT_LIST(i)%IUVAR,h3d_data%OUTPUT_LIST(i)%GAUSS,h3d_data%OUTPUT_LIST(i)%OBJECT_ID,
149 . h3d_data%OUTPUT_LIST(i)%COMMENT,h3d_data%OUTPUT_LIST(i)%S_COMMENT)
150 ENDIF
151 ELSEIF(h3d_data%OUTPUT_LIST(i)%ETYPE == 3) THEN
152
153 IF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 1) THEN
154
155 CALL c_h3d_create_solid_scalar_datatype(
156 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST(i)%S_STRING1,
157 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%STRING2, h3d_data%OUTPUT_LIST(i)%S_STRING2,
158 . h3d_data%OUTPUT_LIST(i)%LAYER, h3d_data%OUTPUT_LIST(i)%IUVAR , h3d_data%OUTPUT_LIST(i)%IR ,
159 . h3d_data%OUTPUT_LIST(i)%IS, h3d_data%OUTPUT_LIST(i)%IT , h3d_data%OUTPUT_LIST(i)%IDMDS ,
160 . h3d_data%OUTPUT_LIST(i)%IMDSVAR , h3d_data%OUTPUT_LIST(i)%IDMATMDS ,
161 . h3d_data%OUTPUT_LIST(i)%COMMENT , h3d_data%OUTPUT_LIST(i)%S_COMMENT ,
162 . h3d_data%OUTPUT_LIST(i)%MDSVAR_NAME , h3d_data%OUTPUT_LIST(i)%SMDSVAR_NAME,
163 . h3d_data%OUTPUT_LIST(i)%OBJECT_ID , h3d_data%OUTPUT_LIST(i)%MODE )
164 ELSEIF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 2) THEN
165
166 CALL c_h3d_create_solid_vector_datatype(
167 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST(i)%S_STRING1,
168 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%STRING2, h3d_data%OUTPUT_LIST(i)%S_STRING2,
169 . h3d_data%OUTPUT_LIST(i)%LAYER, h3d_data%OUTPUT_LIST(i)%IUVAR , h3d_data%OUTPUT_LIST(i)%IR ,
170 . h3d_data%OUTPUT_LIST(i)%IS, h3d_data%OUTPUT_LIST(i)%IT ,
171 . h3d_data%OUTPUT_LIST(i)%COMMENT,h3d_data%OUTPUT_LIST(i)%S_COMMENT)
172 ELSEIF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 3) THEN
173
174 CALL c_h3d_create_solid_tensor_datatype(
175 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST(i)%S_STRING1,
176 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%STRING2, h3d_data%OUTPUT_LIST(i)%S_STRING2,
177 . h3d_data%OUTPUT_LIST(i)%LAYER, h3d_data%OUTPUT_LIST(i)%IUVAR , h3d_data%OUTPUT_LIST(i)%IR ,
178 . h3d_data%OUTPUT_LIST(i)%IS , h3d_data%OUTPUT_LIST(i)%IT ,h3d_data%OUTPUT_LIST(i
179 . h3d_data%OUTPUT_LIST(i)%COMMENT,h3d_data%OUTPUT_LIST(i)%S_COMMENT,
180 . h3d_data%OUTPUT_LIST(i)%IS_CORNER_DATA)
181 ENDIF
182 ELSEIF(h3d_data%OUTPUT_LIST(i)%ETYPE == 5) THEN
183
184 IF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 1) THEN
185
186 CALL c_h3d_create_sph_scalar_datatype(
187 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST
188 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%STRING2, h3d_data%OUTPUT_LIST(i)%S_STRING2,
189 . h3d_data%OUTPUT_LIST(i)%IUVAR,
190 . h3d_data%OUTPUT_LIST(i)%COMMENT,h3d_data%OUTPUT_LIST(i)%S_COMMENT,h3d_data%OUTPUT_LIST(i)%OBJECT_ID,
191 . h3d_data%OUTPUT_LIST(i)%MODE )
192 ELSEIF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 3) THEN
193
194 CALL c_h3d_create_sph_tensor_datatype(
195 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST(i)%S_STRING1,
196 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%STRING2, h3d_data%OUTPUT_LIST(i)%S_STRING2
197 . h3d_data%OUTPUT_LIST(i)%IUVAR,
198 . h3d_data%OUTPUT_LIST(i)%COMMENT,h3d_data%OUTPUT_LIST(i)%S_COMMENT)
199 ENDIF
200 ELSEIF(h3d_data%OUTPUT_LIST(i)%ETYPE == 6) THEN
201
202 IF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 1) THEN
203
204 CALL c_h3d_create_quad_scalar_datatype(
205 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST
206 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%STRING2, h3d_data%OUTPUT_LIST(i)%S_STRING2,
207 . h3d_data%OUTPUT_LIST(i)%IUVAR,
208 . h3d_data%OUTPUT_LIST(i)%COMMENT,h3d_data%OUTPUT_LIST(i)%S_COMMENT,h3d_data%OUTPUT_LIST
209 . h3d_data%OUTPUT_LIST(i)%MODE)
210 ELSEIF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 2) THEN
211
212 CALL c_h3d_create_quad_vector_datatype(
213 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST(i)%S_STRING1,
214 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%STRING2, h3d_data%OUTPUT_LIST(i)%S_STRING2
215 . h3d_data%OUTPUT_LIST(i)%IUVAR,
216 . h3d_data%OUTPUT_LIST
217 ELSEIF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 3) THEN
218
219 CALL c_h3d_create_quad_tensor_datatype(
220 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST(i)%S_STRING1,
221 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%STRING2, h3d_data%OUTPUT_LIST(i)%S_STRING2
222 . h3d_data%OUTPUT_LIST(i)%LAYER, h3d_data%OUTPUT_LIST(i)%IUVAR , h3d_data%OUTPUT_LIST(i
223 . h3d_data%OUTPUT_LIST(i)%IS, h3d_data%OUTPUT_LIST(i)%IT ,
224 . h3d_data%OUTPUT_LIST(i)%COMMENT,h3d_data%OUTPUT_LIST(i)%S_COMMENT)
225 ENDIF
226 ELSEIF(h3d_data%OUTPUT_LIST(i)%ETYPE == 7) THEN
227
228 IF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 1) THEN
229
230 CALL c_h3d_create_skin_scalar_datatype(
231 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST
232 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%STRING2, h3d_data%OUTPUT_LIST(i)%S_STRING2,
233 . h3d_data%OUTPUT_LIST(i)%IUVAR,
234 . h3d_data%OUTPUT_LIST(i)%COMMENT,h3d_data%OUTPUT_LIST(i)%S_COMMENT)
235 ELSEIF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 2) THEN
236
237 CALL c_h3d_create_skin_vector_datatype(
238 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST
239 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%STRING2, h3d_data%OUTPUT_LIST(i)%S_STRING2,
240 . h3d_data%OUTPUT_LIST(i)%IUVAR,
241 . h3d_data%OUTPUT_LIST(i)%COMMENT,h3d_data%OUTPUT_LIST(i)%S_COMMENT)
242 ELSEIF(h3d_data%OUTPUT_LIST(i)%OUTP_TYPE == 3) THEN
243
244 CALL c_h3d_create_skin_tensor_datatype(
245 . h3d_data%OUTPUT_LIST(i)%N_OUTP, h3d_data%OUTPUT_LIST(i)%STRING1, h3d_data%OUTPUT_LIST(i)%S_STRING1,
246 . h3d_data%OUTPUT_LIST(i)%INFO1, h3d_data%OUTPUT_LIST(i)%STRING2, h3d_data%OUTPUT_LIST
247 . h3d_data%OUTPUT_LIST(i)%LAYER, h3d_data%OUTPUT_LIST(i)%IUVAR , h3d_data%OUTPUT_LIST
248 . h3d_data%OUTPUT_LIST(i)%IS, h3d_data%OUTPUT_LIST(i)%IT ,
249 . h3d_data%OUTPUT_LIST(i)%COMMENT,h3d_data%OUTPUT_LIST(i)%S_COMMENT)
250 ENDIF
251 ENDIF
252 ENDIF
253 ENDDO
254
255
262
263
264 RETURN
265
void c_h3d_create_shell_tensor_datatype(int *cpt_data, char *name1, int *size1, int *info1, int *info2, char *name2, int *size2, int *layer, int *ipt, int *ply, int *nuvar, int *gauss, int *id, char *comment, int *s_comment)
void c_h3d_create_oned_eroded(int *cpt_data, char *name, int *size, int *info, char *name1, int *size1)
void c_h3d_create_quad_eroded(int *cpt_data, char *name, int *size, int *info, char *name1, int *size1)
void c_h3d_create_shell_eroded(int *cpt_data, char *name, int *size, int *info, char *name1, int *size1)
void c_h3d_create_skin_eroded(int *cpt_data, char *name, int *size, int *info, char *name1, int *size1)
void c_h3d_create_solid_eroded(int *cpt_data, char *name, int *size, int *info, char *name1, int *size1)
void c_h3d_create_sph_eroded(int *cpt_data, char *name, int *size, int *info, char *name1, int *size1)