MED fichier
f/test16.f
1 C* This file is part of MED.
2 C*
3 C* COPYRIGHT (C) 1999 - 2016 EDF R&D, CEA/DEN
4 C* MED is free software: you can redistribute it and/or modify
5 C* it under the terms of the GNU Lesser General Public License as published by
6 C* the Free Software Foundation, either version 3 of the License, or
7 C* (at your option) any later version.
8 C*
9 C* MED is distributed in the hope that it will be useful,
10 C* but WITHOUT ANY WARRANTY; without even the implied warranty of
11 C* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 C* GNU Lesser General Public License for more details.
13 C*
14 C* You should have received a copy of the GNU Lesser General Public License
15 C* along with MED. If not, see <http://www.gnu.org/licenses/>.
16 C*
17 
18 
19 C ******************************************************************************
20 C * - Nom du fichier : test16.f
21 C *
22 C * - Description : ecriture d'elements d'un maillage MED
23 C * via les routines de niveau 2
24 C * - equivalent a test6.f
25 C *
26 C ******************************************************************************
27  program test16
28 C
29  implicit none
30  include 'med.hf'
31 C
32 C
33  integer cret, fid, mdim, nse2, ntr3, sdim
34  character*64 maa
35  parameter(mdim = 2,nse2 = 5,maa = "maa1", ntr3 = 2, sdim=2)
36  integer se2 (2*nse2)
37  character*16 nomse2(nse2)
38  integer numse2(nse2),nufase2(nse2)
39  integer tr3 (3*ntr3)
40  character*16 nomtr3(ntr3)
41  integer numtr3(ntr3), nufatr3(ntr3)
42  data se2 /1,2,1,3,2,4,3,4,2,3/
43  data nomse2 /"se1","se2","se3","se4","se5"/
44  data numse2 /1,2,3,4,5/, nufase2 /-1,-1,0,-2,-3/
45  data tr3 /1,2,-5,-5,3,-4/
46  data nomtr3 /"tr1","tr2"/,numtr3/4,5/,nufatr3/0,-1/
47  character*16 nomcoo(2)
48  character*16 unicoo(2)
49  real*8 dt
50  data nomcoo /"x","y"/, unicoo /"cm","cm"/
51  parameter(dt=0.0)
52 
53 C ** Creation du fichier test16.med **
54  call mfiope(fid,'test16.med',med_acc_rdwr, cret)
55  print *,cret
56  if (cret .ne. 0 ) then
57  print *,'Erreur creation du fichier'
58  call efexit(-1)
59  endif
60 
61 C ** Creation du maillage **
62  call mmhcre(fid,maa,mdim,sdim,med_unstructured_mesh,
63  & 'Un maillage pour test16',"",
64  & med_sort_dtit,med_cartesian,nomcoo,unicoo,cret)
65  print *,cret
66  if (cret .ne. 0 ) then
67  print *,'Erreur creation du maillage'
68  call efexit(-1)
69  endif
70 
71 C ** Ecriture des aretes segments MED_SEG2 :
72 C - Connectivite
73 C - Noms (optionnel)
74 C - Numeros (optionnel)
75 C - Numeros des familles **
76  call mmhelw(fid,maa,med_no_dt,med_no_it,dt,med_descending_edge,
77  & med_seg2,med_descending,med_no_interlace,nse2,se2,
78  & med_true,nomse2,med_true,numse2,med_true,nufase2,
79  & cret)
80  print *,cret
81  if (cret .ne. 0 ) then
82  print *,'Erreur des elements'
83  call efexit(-1)
84  endif
85 
86 C ** Ecriture des mailles MED_TRIA3 :
87 C - Connectivite
88 C - Noms (optionnel)
89 C - Numeros (optionnel)
90 C - Numeros des familles **
91  call mmhelw(fid,maa,med_no_dt,med_no_it,dt,med_cell,
92  & med_tria3,med_descending,med_no_interlace,ntr3,tr3,
93  & med_true,nomtr3,med_true,numtr3,med_true,nufatr3,
94  & cret)
95  print *,cret
96  if (cret .ne. 0 ) then
97  print *,'Erreur ecriture des elements'
98  call efexit(-1)
99  endif
100 
101 C ** Fermeture du fichier **
102  call mficlo(fid,cret)
103  print *,cret
104  if (cret .ne. 0 ) then
105  print *,'Erreur fermeture du fichier'
106  call efexit(-1)
107  endif
108 C
109  end
110