5 &(fformat,nfic,title,nvar,npoin,typ_elem,nelem,nptfr,nptir,
6 & ndp,nplan,x_orig,y_orig,typ_bnd_elem,nelebd)
41 USE bief, ONLY: ncsize
48 CHARACTER(LEN=8),
INTENT(IN) :: FFORMAT
49 CHARACTER(LEN=80),
INTENT(OUT) :: TITLE
50 INTEGER,
INTENT(OUT) :: NVAR
51 INTEGER,
INTENT(OUT) :: NPOIN
52 INTEGER,
INTENT(OUT) :: TYP_ELEM
53 INTEGER,
INTENT(OUT) :: NELEM
54 INTEGER,
INTENT(OUT) :: NDP
55 INTEGER,
INTENT(OUT) :: NPLAN
56 INTEGER,
INTENT(OUT) :: NPTFR
57 INTEGER,
INTENT(OUT) :: NPTIR
58 INTEGER,
INTENT(OUT) :: X_ORIG
59 INTEGER,
INTENT(OUT) :: Y_ORIG
60 INTEGER,
INTENT(IN) :: NFIC
61 INTEGER,
OPTIONAL,
INTENT(OUT) :: TYP_BND_ELEM
62 INTEGER,
OPTIONAL,
INTENT(OUT) :: NELEBD
67 INTEGER NNELEBD, TYP, TYP_BND
73 CALL check_call(ierr,
'READ_MESH_INFO:GET_MESH_TITLE')
76 CALL check_call(ierr,
'READ_MESH_INFO:GET_DATA_NVAR')
81 CALL check_call(ierr,
'READ_MESH_INFO:GET_MESH_DIMENSION')
87 &
'READ_MESH_INFO:GET_MESH_NELEM:TETRAHEDRON')
93 &
'READ_MESH_INFO:GET_MESH_NELEM:PRISM')
95 WRITE(
lu,*)
'NO 3D ELEMENTS IN A 3D MESH' 103 CALL check_call(ierr,
'READ_MESH_INFO:GET_MESH_NELEM:TRIANGLE')
108 CALL check_call(ierr,
109 &
'READ_MESH_INFO:GET_MESH_NELEM:QUADRANGLE')
111 WRITE(
lu,*)
'NO 2D ELEMENTS IN A 2D MESH' 125 CALL check_call(ierr,
126 &
'READ_MESH_INFO:GET_MESH_NELEM:TRIANGLE_BND')
127 IF(nnelebd.EQ.0)
THEN 128 WRITE(
lu,*)
'NO BND ELEMENTS IN A 3D MESH' 135 CALL check_call(ierr,
136 &
'READ_MESH_INFO:GET_MESH_NELEM:EDGE')
137 IF(nnelebd.EQ.0)
THEN 141 CALL check_call(ierr,
142 &
'READ_MESH_INFO:GET_MESH_NELEM:POINT')
143 IF(nnelebd.EQ.0)
THEN 144 WRITE(
lu,*)
'NO BND ELEMENTS IN A 2D MESH' 150 IF(
PRESENT(nelebd)) nelebd = nnelebd
151 IF(
PRESENT(typ_bnd_elem)) typ_bnd_elem = typ_bnd
154 CALL check_call(ierr,
'READ_MESH_INFO:GET_MESH_NPOIN')
157 CALL check_call(ierr,
'READ_MESH_INFO:GET_MESH_NPOIN_PER_ELEMENT')
160 CALL check_call(ierr,
'READ_MESH_INFO:GET_MESH_NPLAN')
168 CALL check_call(ierr,
'READ_MESH_INFO:GET_MESH_NPOIN:NPTFR')
174 CALL check_call(ierr,
'READ_MESH_INFO:GET_MESH_NPTIR')
178 CALL check_call(ierr,
'READ_MESH_INFO:GET_MESH_ORIG')
187 WRITE(
lu,301) title(1:72)
188 WRITE(
lu,501) nelem,npoin
189 IF(title(73:80).EQ.
'SERAFIN ')
THEN 190 WRITE(
lu,*)
' SINGLE PRECISION FORMAT (R4)' 191 ELSEIF(title(73:80).EQ.
'SERAFIND')
THEN 192 WRITE(
lu,*)
' DOUBLE PRECISION FORMAT (R8)' 194 WRITE(
lu,*)
' FORMAT NOT INDICATED IN TITLE' 204 24
FORMAT(1x,
'READ_MESH_INFO : NUMBER OF POINTS IN THE MESH: ',
206 &
' NUMBER OF BOUNDARY POINTS: ',1i8,/,1x,
207 &
' WRONG DATA, PROGRAMME STOPPED')
208 301
FORMAT(1x,//,1x,
'READ_MESH_INFO: TITLE= ',a72)
209 501
FORMAT(12x,
'NUMBER OF ELEMENTS:',1i9,/,
210 & 12x,
'NUMBER OF POINTS:',1i9,/)
subroutine get_mesh_nptir(FFORMAT, FID, NPTIR, IERR)
subroutine get_mesh_npoin(FFORMAT, FID, TYP_ELEM, NPOIN, IERR)
subroutine get_bnd_npoin(FFORMAT, FID, TYPE_BND_ELEM, NPTFR, IERR)
subroutine get_mesh_orig(FFORMAT, FID, X_ORIG, Y_ORIG, IERR)
integer, parameter prism_elt_type
subroutine get_data_nvar(FFORMAT, FID, NVAR, IERR)
integer, parameter triangle_elt_type
subroutine get_bnd_nelem(FFORMAT, FID, TYPE_BND_ELEM, NELEM, IERR)
integer, parameter point_bnd_elt_type
subroutine read_mesh_info(FFORMAT, NFIC, TITLE, NVAR, NPOIN, TYP_ELEM, NELEM, NPTFR, NPTIR, NDP, NPLAN, X_ORIG, Y_ORIG, TYP_BND_ELEM, NELEBD)
subroutine get_mesh_nelem(FFORMAT, FID, TYP_ELEM, NELEM, IERR)
subroutine get_mesh_npoin_per_element(FFORMAT, FID, TYP_ELEM, NDP, IERR)
subroutine get_mesh_dimension(FFORMAT, FID, NDIM, IERR)
integer, parameter edge_bnd_elt_type
subroutine get_mesh_title(FFORMAT, FID, TITLE, IERR)
integer, parameter triangle_bnd_elt_type
integer, parameter tetrahedron_elt_type
integer, parameter quadrangle_elt_type
subroutine get_mesh_nplan(FFORMAT, FID, NPLAN, IERR)
integer, parameter type_null