MED fichier: f/test21.f

MED fichier

- Documentation MED
- Guides d'utilisation
- Guides de référence

f/test21.f
1 C* This file is part of MED.
2 C*
3 C* COPYRIGHT (C) 1999 - 2017 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 C******************************************************************************
19 C* - Nom du fichier : test21.f
20 C*
21 C* - Description : ecriture de valeurs scalaires numeriques dans un fichier MED
22 C*
23 C ******************************************************************************
24 program test21
25 C
26 implicit none
27 include 'med.hf'
28 C
29 integer cret, fid
30 character*16 edtuni,dtunit1
31 character*64 nom1, nom2
32 character*200 desc1, desc2
33 integer vali1, vali2
34 real*8 valr1,dt
35 C
36 parameter(nom1="VariableEntiere")
37 parameter(nom2="VariableFlottante")
38 data desc1 / "Une premiere description" /
39 data desc2 / "Une seconde description" /
40 parameter(vali1 = 56,vali2 = -789)
41 parameter(valr1 = 67.98d0)
42
43 parameter(edtuni=" "
44 1 ,dtunit1="ms")
45 C
46 C
47 C Creation du fichier test21.med
48 C
49 call mfiope(fid,'test21.med',med_acc_rdwr, cret)
50 print *,cret
51 if (cret .ne. 0 ) then
52 print *,'Erreur creation du fichier'
53 call efexit(-1)
54 endif
55 print *,'Creation du fichier test21.med'
56 C
57 C Creation d'une variable scalaire entiere
58 C
59 call mprcre(fid,nom1,med_int,desc1,dtunit1,
60 & cret)
61 print *,cret
62 if (cret .ne. 0 ) then
63 print *,'Erreur creation variable scalaire'
64 call efexit(-1)
65 endif
66 print *,'Creation d une variable scalaire entiere'
67 C
68 C Ecriture d'une valeur sans pas de temps ni numero d'ordre
69 C
70 call mprivw(fid,nom1,med_no_dt,med_no_it,med_undef_dt,
71 & vali1,cret)
72 print *,cret
73 if (cret .ne. 0 ) then
74 print *,'Erreur ecriture valeur scalaire'
75 call efexit(-1)
76 endif
77 print *,'Ecriture valeur entiere sans pas de temps'
78 C
79 C Ecriture d'une valeur avec pas de temps et sans numero d'ordre
80 C
81 dt = 5.5d0
82 call mprivw(fid,nom1,1,med_no_it,dt,vali2,cret)
83 print *,cret
84 if (cret .ne. 0 ) then
85 print *,'Erreur ecriture valeur scalaire'
86 call efexit(-1)
87 endif
88 print *,'Ecriture valeur entiere avec pas de temps'
89 C
90 C Creation d'une variable scalaire flottante
91 C
92 call mprcre(fid,nom2,med_float64,desc2,dtunit1,
93 & cret)
94 print *,cret
95 if (cret .ne. 0 ) then
96 print *,'Erreur creation variable sclaire'
97 call efexit(-1)
98 endif
99 print *,'Creation d une variable scalaire flottante'
100 C
101 C Ecriture d'une valeur flottante avec pas de temps et numero d'ordre
102 C
103 call mprrvw(fid,nom2,1,2,dt,valr1,cret)
104 print *,cret
105 if (cret .ne. 0 ) then
106 print *,'Erreur ecriture valeur scalaire'
107 call efexit(-1)
108 endif
109 print *,'Ecriture valeur entiere avec pas de temps'
110 C
111 C Fermeture du fichier
112 C
113 call mficlo(fid,cret)
114 if (cret .ne. 0 ) then
115 print *,'Erreur fermeture du fichier'
116 call efexit(-1)
117 endif
118 print *,cret
119 print *,'Fermeture du fichier test21.med'
120 C
121 end
122 C