33 integer mdim,nequ,ncor,sdim
34 integer,
allocatable,
dimension(:) :: cor
36 character*200 desc,des
39 integer,
parameter :: MY_NOF_DESCENDING_FACE_TYPE = 5
40 integer,
parameter :: MY_NOF_DESCENDING_EDGE_TYPE = 2
43 integer,
parameter :: MED_NBR_MAILLE_EQU = 8
44 integer,
parameter :: typmai(med_nbr_maille_equ) = (/ med_point1,med_seg2, &
45 & med_seg3,med_tria3, &
46 & med_tria6,med_quad4, &
47 & med_quad8,med_polygon/)
49 integer,
parameter :: typfac(my_nof_descending_face_type) = (/med_tria3,med_tria6, &
50 & med_quad4,med_quad8, med_polygon/)
51 integer,
parameter ::typare(my_nof_descending_edge_type) = (/med_seg2,med_seg3/)
53 character(16) :: dtunit
54 integer nstep, stype, atype
55 character*16 nomcoo(3)
56 character*16 unicoo(3)
61 call mfiope(fid,
'test12.med',med_acc_rdonly, cret)
67 call mmhmii(fid,1,maa,sdim,mdim,
type,desc,dtunit,stype,nstep,atype,nomcoo,unicoo,cret)
68 print *,
"Maillage de nom : ",maa,
" et de dimension : ", mdim
75 call meqneq(fid,maa,nequ,cret)
77 print *,
"Nombre d'equivalence : ",nequ
85 print *,
"Equivalence numero : ",i
88 call meqeqi(fid,maa,i,equ,des,nstepc,nctcor,cret)
92 print *,
"Nom de l'equivalence : ",equ
93 print *,
"Description de l'equivalence : ",des
94 print *,
"Nombre de pas de temps sur l'equivalence : ",nstepc
95 print *,
"Nombre de correspondance sur MED_NO_IT, MED_NO_DT : ", nctcor
101 call meqcsz(fid,maa,equ,med_no_dt,med_no_it,med_node,med_none,ncor,cret)
103 print *,
"Il y a ",ncor,
" correspondances sur les noeuds "
105 allocate(cor(ncor*2),stat=ret)
106 call meqcor(fid,maa,equ,med_no_dt,med_no_it,med_node,med_none,cor,cret)
108 print *,
"Correspondance ",j+1,
" : ",cor(2*j+1),
" et ",cor(2*j+2)
115 do j=1,med_nbr_maille_equ
116 call meqcsz(fid,maa,equ,med_no_dt,med_no_it,med_cell,typmai(j),ncor,cret)
117 print *,
"Il y a ",ncor,
" correspondances sur les mailles ",typmai(j)
119 allocate(cor(2*ncor),stat=ret)
120 call meqcor(fid,maa,equ,med_no_dt,med_no_it,med_cell,typmai(j),cor,cret)
122 print *,
"Correspondance ",k+1,
" : ",cor(2*k+1),
" et ",cor(2*k+2)
129 do j=1,my_nof_descending_face_type
130 call meqcsz(fid,maa,equ,med_no_dt,med_no_it,med_descending_face,typmai(j),ncor,cret)
131 print *,
"Il y a ",ncor,
" correspondances sur les faces ",typfac(j)
133 allocate(cor(2*ncor),stat=ret)
134 call meqcor(fid,maa,equ,med_no_dt,med_no_it,med_descending_face,typfac(j),cor,cret)
136 print *,
"Correspondance ",k+1,
" : ",cor(2*k+1),
" et ",cor(2*k+2)
143 do j=1,my_nof_descending_edge_type
144 call meqcsz(fid,maa,equ,med_no_dt,med_no_it,med_descending_edge,typare(j),ncor,cret)
145 print *,
"Il y a ",ncor,
" correspondances sur les aretes ",typare(j)
147 allocate(cor(2*ncor),stat=ret)
148 call meqcor(fid,maa,equ,med_no_dt,med_no_it,med_descending_edge,typare(j),cor,cret)
150 print *,
"Correspondance ",k+1,
" : ",cor(2*k+1),
" et ",cor(2*k+2)
subroutine mficlo(fid, cret)
Fermeture d'un fichier MED.
subroutine meqcor(fid, maa, eq, numdt, mumit, typent, typgeo, corr, cret)
Cette routine permet de lire un tableau de correspondances entre les entités d'un maillage dans une é...
subroutine meqeqi(fid, maa, ind, eq, des, nstep, nctcor, cret)
Cette routine permet lire les informations d'une équivalence portant sur les entités d'un maillage...
subroutine mmhmii(fid, it, name, sdim, mdim, mtype, desc, dtunit, stype, nstep, atype, aname, aunit, cret)
Cette routine permet de lire les informations relatives à un maillage dans un fichier.
subroutine meqneq(fid, maa, n, cret)
Cette routine permet de lire le nombre d'équivalence dans un fichier.
subroutine mfiope(fid, name, access, cret)
Ouverture d'un fichier MED.
subroutine meqcsz(fid, maa, eq, numdt, numit, typent, typgeo, n, cret)
Cette routine permet de lire le nombre de correspondances dans une équivalence pour une séquence de c...