FrontISTR  5.7.0
Large-scale structural analysis program with finit element method
hecmw_dist_print_f.f90
Go to the documentation of this file.
1 !-------------------------------------------------------------------------------
2 ! Copyright (c) 2019 FrontISTR Commons
3 ! This software is released under the MIT License, see LICENSE.txt
4 !-------------------------------------------------------------------------------
6 
8  use hecmw_util
9  implicit none
10 
11 contains
12 
13  subroutine hecmw_dist_print(mesh)
14  type(hecmwst_local_mesh) :: mesh
15 
16  call hecmw_dist_print_etc(mesh)
17  write(*,*)
18  call hecmw_dist_print_node(mesh)
19  write(*,*)
20  call hecmw_dist_print_elem(mesh)
21  write(*,*)
22  call hecmw_dist_print_pe(mesh)
23  write(*,*)
24  call hecmw_dist_print_adapt(mesh)
25  write(*,*)
26  call hecmw_dist_print_sect(mesh%section)
27  write(*,*)
28  call hecmw_dist_print_mat(mesh%material)
29  write(*,*)
30  call hecmw_dist_print_mpc(mesh%mpc)
31  write(*,*)
32  call hecmw_dist_print_amp(mesh%amp)
33  write(*,*)
34  call hecmw_dist_print_ngrp(mesh%node_group)
35  write(*,*)
36  call hecmw_dist_print_egrp(mesh%elem_group)
37  write(*,*)
38  call hecmw_dist_print_sgrp(mesh%surf_group)
39  end subroutine hecmw_dist_print
40 
41 
42  subroutine hecmw_dist_print_etc(mesh)
43  type(hecmwst_local_mesh) :: mesh
44 
45  write(*,*) 'FLAGS:'
46  write(*,*) 'hecmw_flag_adapt:'
47  write(*,*) mesh%hecmw_flag_adapt
48  write(*,*) 'hecmw_flag_initcon:'
49  write(*,*) mesh%hecmw_flag_initcon
50  write(*,*) 'hecmw_flag_prattype:'
51  write(*,*) mesh%hecmw_flag_parttype
52  write(*,*) 'hecmw_flag_version:'
53  write(*,*) mesh%hecmw_flag_version
54  write(*,*) 'hecmw_flag_partcontact:'
55  write(*,*) mesh%hecmw_flag_partcontact
56  write(*,*) 'END of FLAGS'
57  write(*,*)
58  write(*,*) 'HEADER:'
59  write(*,*) trim(mesh%header)
60  write(*,*) 'END of HEADER'
61  write(*,*)
62  write(*,*) 'GRIDFILE:'
63  write(*,*) trim(mesh%gridfile)
64  write(*,*) 'END of GRIDFILE'
65  write(*,*)
66  write(*,*) 'FILES:'
67  write(*,*) 'mesh%hecmw_n_file:'
68  write(*,*) mesh%hecmw_n_file
69  if(associated(mesh%files)) then
70  write(*,*) mesh%files
71  endif
72  write(*,*) 'END of FILES'
73  write(*,*)
74  write(*,*) 'ZERO:'
75  write(*,*) mesh%zero_temp
76  write(*,*) 'END of ZERO'
77  end subroutine hecmw_dist_print_etc
78 
79 
80  subroutine hecmw_dist_print_node(mesh)
81  type(hecmwst_local_mesh) :: mesh
82 
83  write(*,*) 'NODE:'
84  write(*,*) 'n_node:'
85  write(*,*) mesh%n_node
86  write(*,*) 'nn_internal:'
87  write(*,*) mesh%nn_internal
88  write(*,*) 'node_internal_list:'
89  if(associated(mesh%node_internal_list)) then
90  write(*,*) mesh%node_internal_list
91  endif
92  write(*,*) 'node_ID:'
93  write(*,*) mesh%node_ID
94  write(*,*) 'global_node_ID:'
95  write(*,*) mesh%global_node_ID
96  write(*,*) 'node:'
97  write(*,*) mesh%node
98  write(*,*) 'n_dof:'
99  write(*,*) mesh%n_dof
100  write(*,*) 'n_dof_grp:'
101  write(*,*) mesh%n_dof_grp
102  write(*,*) 'n_dof_tot:'
103  write(*,*) mesh%n_dof_tot
104  write(*,*) 'node_dof_index:'
105  if(associated(mesh%node_dof_index)) then
106  write(*,*) mesh%node_dof_index
107  endif
108  write(*,*) 'node_dof_item:'
109  if(associated(mesh%node_dof_item)) then
110  write(*,*) mesh%node_dof_item
111  endif
112  write(*,*) 'node_val_index:'
113  if(associated(mesh%node_val_index)) then
114  write(*,*) mesh%node_val_index
115  endif
116  write(*,*) 'node_val_item:'
117  if(associated(mesh%node_val_item)) then
118  write(*,*) mesh%node_val_item
119  endif
120  write(*,*) 'node_init_val_index:'
121  if(associated(mesh%node_init_val_index)) then
122  write(*,*) mesh%node_init_val_index
123  endif
124  write(*,*) 'node_init_val_item:'
125  if(associated(mesh%node_init_val_item)) then
126  write(*,*) mesh%node_init_val_item
127  endif
128  write(*,*) 'END of NODE'
129  end subroutine hecmw_dist_print_node
130 
131 
132  subroutine hecmw_dist_print_elem(mesh)
133  type(hecmwst_local_mesh) :: mesh
134 
135  write(*,*) 'ELEMENT:'
136  write(*,*) 'n_elem:'
137  write(*,*) mesh%n_elem
138  write(*,*) 'ne_internal:'
139  write(*,*) mesh%ne_internal
140  write(*,*) 'elem_internal_list:'
141  if(associated(mesh%elem_internal_list)) then
142  write(*,*) mesh%elem_internal_list
143  endif
144  write(*,*) 'elem_ID:'
145  write(*,*) mesh%elem_ID
146  write(*,*) 'global_elem_ID:'
147  write(*,*) mesh%global_elem_ID
148  write(*,*) 'elem_type:'
149  write(*,*) mesh%elem_type
150  write(*,*) 'n_elem_type:'
151  write(*,*) mesh%n_elem_type
152  write(*,*) 'elem_type_index:'
153  write(*,*) mesh%elem_type_index
154  write(*,*) 'elem_type_item:'
155  write(*,*) mesh%elem_type_item
156  write(*,*) 'elem_node_index:'
157  write(*,*) mesh%elem_node_index
158  write(*,*) 'elem_node_item:'
159  write(*,*) mesh%elem_node_item
160  write(*,*) 'section_ID:'
161  write(*,*) mesh%section_ID
162  write(*,*) 'n_elem_mat_ID:'
163  write(*,*) mesh%n_elem_mat_ID
164  write(*,*) 'elem_mat_ID_index:'
165  write(*,*) mesh%elem_mat_ID_index
166  write(*,*) 'elem_mat_ID_item:'
167  write(*,*) mesh%elem_mat_ID_item
168  write(*,*) 'elem_mat_int_index:'
169  if(associated(mesh%elem_mat_int_index)) then
170  write(*,*) mesh%elem_mat_int_index
171  endif
172  write(*,*) 'elem_mat_int_val:'
173  if(associated(mesh%elem_mat_int_val)) then
174  write(*,*) mesh%elem_mat_int_val
175  endif
176  write(*,*) 'elem_val_index:'
177  if(associated(mesh%elem_val_index)) then
178  write(*,*) mesh%elem_val_index
179  endif
180  write(*,*) 'elem_val_item:'
181  if(associated(mesh%elem_val_item)) then
182  write(*,*) mesh%elem_val_item
183  endif
184  write(*,*) 'END of ELEMENT'
185  end subroutine hecmw_dist_print_elem
186 
187 
188  subroutine hecmw_dist_print_pe(mesh)
189  type(hecmwst_local_mesh) :: mesh
190 
191  write(*,*) 'PE:'
192  write(*,*) 'zero:'
193  write(*,*) mesh%zero
194  write(*,*) 'MPI_COMM:'
195  write(*,*) mesh%MPI_COMM
196  write(*,*) 'PETOT:'
197  write(*,*) mesh%PETOT
198  write(*,*) 'PEsmpTOT:'
199  write(*,*) mesh%PEsmpTOT
200  write(*,*) 'my_rank:'
201  write(*,*) mesh%my_rank
202  write(*,*) 'errnof:'
203  write(*,*) mesh%errnof
204  write(*,*) 'n_subdomain:'
205  write(*,*) mesh%n_subdomain
206  write(*,*) 'n_neighbor_pe:'
207  write(*,*) mesh%n_neighbor_pe
208  write(*,*) 'neighbor_pe:'
209  if(associated(mesh%neighbor_pe)) then
210  write(*,*) mesh%neighbor_pe
211  endif
212  write(*,*) 'import_index:'
213  if(associated(mesh%import_index)) then
214  write(*,*) mesh%import_index
215  endif
216  write(*,*) 'import_item:'
217  if(associated(mesh%import_item)) then
218  write(*,*) mesh%import_item
219  endif
220  write(*,*) 'export_index:'
221  if(associated(mesh%export_index)) then
222  write(*,*) mesh%export_index
223  endif
224  write(*,*) 'export_item:'
225  if(associated(mesh%export_item)) then
226  write(*,*) mesh%export_item
227  endif
228  write(*,*) 'shared_index:'
229  if(associated(mesh%shared_index)) then
230  write(*,*) mesh%shared_index
231  endif
232  write(*,*) 'shared_item:'
233  if(associated(mesh%shared_item)) then
234  write(*,*) mesh%shared_item
235  endif
236  write(*,*) 'END of PE'
237  end subroutine hecmw_dist_print_pe
238 
239 
240  subroutine hecmw_dist_print_adapt(mesh)
241  type(hecmwst_local_mesh) :: mesh
242 
243  write(*,*) 'ADAPTATION:'
244  write(*,*) 'coarse_grid_level:'
245  write(*,*) mesh%coarse_grid_level
246  write(*,*) 'when_i_was_refined_node:'
247  if(associated(mesh%when_i_was_refined_node)) then
248  write(*,*) mesh%when_i_was_refined_node
249  endif
250  write(*,*) 'when_i_was_refined_elem:'
251  if(associated(mesh%when_i_was_refined_elem)) then
252  write(*,*) mesh%when_i_was_refined_elem
253  endif
254  write(*,*) 'adapt_parent_type:'
255  if(associated(mesh%adapt_parent_type)) then
256  write(*,*) mesh%adapt_parent_type
257  endif
258  write(*,*) 'adapt_type:'
259  if(associated(mesh%adapt_type)) then
260  write(*,*) mesh%adapt_type
261  endif
262  write(*,*) 'adapt_level:'
263  if(associated(mesh%adapt_level)) then
264  write(*,*) mesh%adapt_level
265  endif
266  write(*,*) 'adapt_parent:'
267  if(associated(mesh%adapt_parent)) then
268  write(*,*) mesh%adapt_parent
269  endif
270  write(*,*) 'adapt_children_index:'
271  if(associated(mesh%adapt_children_index)) then
272  write(*,*) mesh%adapt_children_index
273  endif
274  write(*,*) 'adapt_children_item:'
275  if(associated(mesh%adapt_children_item)) then
276  write(*,*) mesh%adapt_children_item
277  endif
278  write(*,*) 'END of ADAPTATION'
279  end subroutine hecmw_dist_print_adapt
280 
281 
282  subroutine hecmw_dist_print_sect(sect)
283  type(hecmwst_section) :: sect
284 
285  write(*,*) 'SECTION:'
286  write(*,*) 'n_sect'
287  write(*,*) sect%n_sect
288  write(*,*) 'sect_type'
289  if(associated(sect%sect_type)) then
290  write(*,*) sect%sect_type
291  endif
292  write(*,*) 'sect_opt'
293  if(associated(sect%sect_opt)) then
294  write(*,*) sect%sect_opt
295  endif
296  write(*,*) 'sect_mat_ID_index'
297  if(associated(sect%sect_mat_ID_index)) then
298  write(*,*) sect%sect_mat_ID_index
299  endif
300  write(*,*) 'sect_mat_ID_item'
301  if(associated(sect%sect_mat_ID_item)) then
302  write(*,*) sect%sect_mat_ID_item
303  endif
304  write(*,*) 'sect_I_index'
305  if(associated(sect%sect_I_index)) then
306  write(*,*) sect%sect_I_index
307  endif
308  write(*,*) 'sect_I_item'
309  if(associated(sect%sect_I_item)) then
310  write(*,*) sect%sect_I_item
311  endif
312  write(*,*) 'sect_R_index'
313  if(associated(sect%sect_R_index)) then
314  write(*,*) sect%sect_R_index
315  endif
316  write(*,*) 'sect_R_item'
317  if(associated(sect%sect_R_item)) then
318  write(*,*) sect%sect_R_item
319  endif
320  write(*,*) 'END of SECTION'
321  end subroutine hecmw_dist_print_sect
322 
323 
324  subroutine hecmw_dist_print_mat(mat)
325  type(hecmwst_material) :: mat
326 
327  write(*,*) 'MATERIAL:'
328  write(*,*) 'n_mat'
329  write(*,*) mat%n_mat
330  write(*,*) 'n_mat_item'
331  write(*,*) mat%n_mat_item
332  write(*,*) 'n_mat_subitem'
333  write(*,*) mat%n_mat_subitem
334  write(*,*) 'n_mat_table'
335  write(*,*) mat%n_mat_table
336  write(*,*) 'mat_name'
337  if(associated(mat%mat_name)) then
338  write(*,*) mat%mat_name
339  endif
340  write(*,*) 'mat_item_index'
341  if(associated(mat%mat_item_index)) then
342  write(*,*) mat%mat_item_index
343  endif
344  write(*,*) 'mat_subitem_index'
345  if(associated(mat%mat_subitem_index)) then
346  write(*,*) mat%mat_subitem_index
347  endif
348  write(*,*) 'mat_table_index'
349  if(associated(mat%mat_table_index)) then
350  write(*,*) mat%mat_table_index
351  endif
352  write(*,*) 'mat_val'
353  if(associated(mat%mat_val)) then
354  write(*,*) mat%mat_val
355  endif
356  write(*,*) 'mat_temp'
357  if(associated(mat%mat_temp)) then
358  write(*,*) mat%mat_temp
359  endif
360  write(*,*) 'END of MATERIAL'
361  end subroutine hecmw_dist_print_mat
362 
363 
364  subroutine hecmw_dist_print_mpc(mpc)
365  type(hecmwst_mpc) :: mpc
366 
367  write(*,*) 'MPC:'
368  write(*,*) 'n_mpc'
369  write(*,*) mpc%n_mpc
370  write(*,*) 'mpc_index'
371  if(associated(mpc%mpc_index)) then
372  write(*,*) mpc%mpc_index
373  endif
374  write(*,*) 'mpc_item'
375  if(associated(mpc%mpc_item)) then
376  write(*,*) mpc%mpc_item
377  endif
378  write(*,*) 'mpc_dof'
379  if(associated(mpc%mpc_dof)) then
380  write(*,*) mpc%mpc_dof
381  endif
382  write(*,*) 'mpc_val'
383  if(associated(mpc%mpc_val)) then
384  write(*,*) mpc%mpc_val
385  endif
386  write(*,*) 'END of MPC'
387  end subroutine hecmw_dist_print_mpc
388 
389 
390  subroutine hecmw_dist_print_amp(amp)
391  type(hecmwst_amplitude) :: amp
392 
393  write(*,*) 'AMPLITUDE:'
394  write(*,*) 'n_amp'
395  write(*,*) amp%n_amp
396  write(*,*) 'amp_name'
397  if(associated(amp%amp_name)) then
398  write(*,*) amp%amp_name
399  endif
400  write(*,*) 'amp_type_definition'
401  if(associated(amp%amp_type_definition)) then
402  write(*,*) amp%amp_type_definition
403  endif
404  write(*,*) 'amp_type_time'
405  if(associated(amp%amp_type_time)) then
406  write(*,*) amp%amp_type_time
407  endif
408  write(*,*) 'amp_type_value'
409  if(associated(amp%amp_type_value)) then
410  write(*,*) amp%amp_type_value
411  endif
412  write(*,*) 'amp_index'
413  if(associated(amp%amp_index)) then
414  write(*,*) amp%amp_index
415  endif
416  write(*,*) 'amp_table'
417  if(associated(amp%amp_table)) then
418  write(*,*) amp%amp_table
419  endif
420  write(*,*) 'END of AMPLITUDE'
421  end subroutine hecmw_dist_print_amp
422 
423 
424  subroutine hecmw_dist_print_ngrp(grp)
425  type(hecmwst_node_grp) :: grp
426 
427  write(*,*) 'NGROUP:'
428  write(*,*) 'n_grp'
429  write(*,*) grp%n_grp
430  write(*,*) 'grp_name'
431  if(associated(grp%grp_name)) then
432  write(*,*) grp%grp_name
433  endif
434  write(*,*) 'grp_index'
435  if(associated(grp%grp_index)) then
436  write(*,*) grp%grp_index
437  endif
438  write(*,*) 'grp_item'
439  if(associated(grp%grp_item)) then
440  write(*,*) grp%grp_item
441  endif
442  write(*,*) 'n_bc'
443  write(*,*) grp%n_bc
444  write(*,*) 'bc_grp_ID'
445  if(associated(grp%bc_grp_ID)) then
446  write(*,*) grp%bc_grp_ID
447  endif
448  write(*,*) 'bc_grp_type'
449  if(associated(grp%bc_grp_type)) then
450  write(*,*) grp%bc_grp_type
451  endif
452  write(*,*) 'bc_grp_index'
453  if(associated(grp%bc_grp_index)) then
454  write(*,*) grp%bc_grp_index
455  endif
456  write(*,*) 'bc_grp_dof'
457  if(associated(grp%bc_grp_dof)) then
458  write(*,*) grp%bc_grp_dof
459  endif
460  write(*,*) 'bc_grp_val'
461  if(associated(grp%bc_grp_val)) then
462  write(*,*) grp%bc_grp_val
463  endif
464  write(*,*) 'END of NGROUP'
465  end subroutine hecmw_dist_print_ngrp
466 
467 
468  subroutine hecmw_dist_print_egrp(grp)
469  type(hecmwst_elem_grp) :: grp
470 
471  write(*,*) 'EGROUP:'
472  write(*,*) 'n_grp'
473  write(*,*) grp%n_grp
474  write(*,*) 'grp_name'
475  if(associated(grp%grp_name)) then
476  write(*,*) grp%grp_name
477  endif
478  write(*,*) 'grp_index'
479  if(associated(grp%grp_index)) then
480  write(*,*) grp%grp_index
481  endif
482  write(*,*) 'grp_item'
483  if(associated(grp%grp_item)) then
484  write(*,*) grp%grp_item
485  endif
486  write(*,*) 'n_bc'
487  write(*,*) grp%n_bc
488  write(*,*) 'bc_grp_ID'
489  if(associated(grp%bc_grp_ID)) then
490  write(*,*) grp%bc_grp_ID
491  endif
492  write(*,*) 'bc_grp_type'
493  if(associated(grp%bc_grp_type)) then
494  write(*,*) grp%bc_grp_type
495  endif
496  write(*,*) 'bc_grp_index'
497  if(associated(grp%bc_grp_index)) then
498  write(*,*) grp%bc_grp_index
499  endif
500  write(*,*) 'bc_grp_val'
501  if(associated(grp%bc_grp_val)) then
502  write(*,*) grp%bc_grp_val
503  endif
504  write(*,*) 'END of EGROUP'
505  end subroutine hecmw_dist_print_egrp
506 
507 
508  subroutine hecmw_dist_print_sgrp(grp)
509  type(hecmwst_surf_grp) :: grp
510 
511  write(*,*) 'SGROUP:'
512  write(*,*) 'n_grp'
513  write(*,*) grp%n_grp
514  write(*,*) 'grp_name'
515  if(associated(grp%grp_name)) then
516  write(*,*) grp%grp_name
517  endif
518  write(*,*) 'grp_index'
519  if(associated(grp%grp_index)) then
520  write(*,*) grp%grp_index
521  endif
522  write(*,*) 'grp_item'
523  if(associated(grp%grp_item)) then
524  write(*,*) grp%grp_item
525  endif
526  write(*,*) 'n_bc'
527  write(*,*) grp%n_bc
528  write(*,*) 'bc_grp_ID'
529  if(associated(grp%bc_grp_ID)) then
530  write(*,*) grp%bc_grp_ID
531  endif
532  write(*,*) 'bc_grp_type'
533  if(associated(grp%bc_grp_type)) then
534  write(*,*) grp%bc_grp_type
535  endif
536  write(*,*) 'bc_grp_index'
537  if(associated(grp%bc_grp_index)) then
538  write(*,*) grp%bc_grp_index
539  endif
540  write(*,*) 'bc_grp_val'
541  if(associated(grp%bc_grp_val)) then
542  write(*,*) grp%bc_grp_val
543  endif
544  write(*,*) 'END of SGROUP'
545  end subroutine hecmw_dist_print_sgrp
546 
547 end module hecmw_dist_print_f
hecmw_util::hecmwst_amplitude
Definition: hecmw_util_f.F90:110
hecmw_dist_print_f::hecmw_dist_print_node
subroutine hecmw_dist_print_node(mesh)
Definition: hecmw_dist_print_f.f90:81
hecmw_util::hecmwst_material
Definition: hecmw_util_f.F90:76
hecmw_dist_print_f::hecmw_dist_print
subroutine hecmw_dist_print(mesh)
Definition: hecmw_dist_print_f.f90:14
hecmw_util::hecmwst_mpc
Definition: hecmw_util_f.F90:95
hecmw_dist_print_f::hecmw_dist_print_elem
subroutine hecmw_dist_print_elem(mesh)
Definition: hecmw_dist_print_f.f90:133
hecmw_dist_print_f::hecmw_dist_print_mat
subroutine hecmw_dist_print_mat(mat)
Definition: hecmw_dist_print_f.f90:325
hecmw_dist_print_f::hecmw_dist_print_mpc
subroutine hecmw_dist_print_mpc(mpc)
Definition: hecmw_dist_print_f.f90:365
hecmw_dist_print_f::hecmw_dist_print_adapt
subroutine hecmw_dist_print_adapt(mesh)
Definition: hecmw_dist_print_f.f90:241
hecmw_util
I/O and Utility.
Definition: hecmw_util_f.F90:7
hecmw_util::hecmwst_local_mesh
Definition: hecmw_util_f.F90:234
hecmw_dist_print_f
I/O and Utility.
Definition: hecmw_dist_print_f.f90:7
hecmw_util::hecmwst_elem_grp
Definition: hecmw_util_f.F90:158
hecmw_dist_print_f::hecmw_dist_print_amp
subroutine hecmw_dist_print_amp(amp)
Definition: hecmw_dist_print_f.f90:391
hecmw_util::hecmwst_section
Definition: hecmw_util_f.F90:44
hecmw_dist_print_f::hecmw_dist_print_ngrp
subroutine hecmw_dist_print_ngrp(grp)
Definition: hecmw_dist_print_f.f90:425
hecmw_dist_print_f::hecmw_dist_print_egrp
subroutine hecmw_dist_print_egrp(grp)
Definition: hecmw_dist_print_f.f90:469
hecmw_dist_print_f::hecmw_dist_print_sgrp
subroutine hecmw_dist_print_sgrp(grp)
Definition: hecmw_dist_print_f.f90:509
hecmw_util::hecmwst_node_grp
Definition: hecmw_util_f.F90:135
hecmw_dist_print_f::hecmw_dist_print_sect
subroutine hecmw_dist_print_sect(sect)
Definition: hecmw_dist_print_f.f90:283
hecmw_util::hecmwst_surf_grp
Definition: hecmw_util_f.F90:180
hecmw_dist_print_f::hecmw_dist_print_etc
subroutine hecmw_dist_print_etc(mesh)
Definition: hecmw_dist_print_f.f90:43
hecmw_dist_print_f::hecmw_dist_print_pe
subroutine hecmw_dist_print_pe(mesh)
Definition: hecmw_dist_print_f.f90:189