# 2.3.6/test33.f

Aller à la documentation de ce fichier.

    00001 C*  This file is part of MED.
    00002 C*
    00003 C*  COPYRIGHT (C) 1999 - 2011  EDF R&D, CEA/DEN
    00004 C*  MED is free software: you can redistribute it and/or modify
    00005 C*  it under the terms of the GNU Lesser General Public License as published by
    00006 C*  the Free Software Foundation, either version 3 of the License, or
    00007 C*  (at your option) any later version.
    00008 C*
    00009 C*  MED is distributed in the hope that it will be useful,
    00010 C*  but WITHOUT ANY WARRANTY; without even the implied warranty of
    00011 C*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    00012 C*  GNU Lesser General Public License for more details.
    00013 C*
    00014 C*  You should have received a copy of the GNU Lesser General Public License
    00015 C*  along with MED.  If not, see <http://www.gnu.org/licenses/>.
    00016 C*
    00017
    00018
    00019 C ******************************************************************************
    00020 C * - Nom du fichier : test33.f
    00021 C *
    00022 C * - Description : lecture d'une numerotation globale inexistante dans un maillage MED
    00023 C *
    00024 C ******************************************************************************
    00025         program test33
    00026
    00027 C
    00028         implicit none
    00029         include 'med.hf'
    00030 C
    00031 C
    00032         integer cret,fid
    00033         character*32 maa
    00034         character*200 desc
    00035         integer nmaa,mdim,type,narr
    00036         integer numglb(100)
    00037
    00038
    00039
    00040
    00041 C  ** Ouverture du fichier test31.med **
    00042         call efouvr(fid,'test31.med',MED_LECTURE, cret)
    00043         print '(I1)',cret
    00044         if (cret .ne. 0 ) then
    00045            print *,'Erreur ouverture du fichier test31.med'
    00046            call efexit(-1)
    00047         endif
    00048
    00049
    00050 C ** lecture du nombre de maillage                      **
    00051
    00052         call efnmaa(fid,nmaa,cret)
    00053         print '(I1)',cret
    00054         if (cret .ne. 0 ) then
    00055            print *,'Erreur lecture du nombre de maillage'
    00056            call efexit(-1)
    00057         endif
    00058         print '(A,I2)','Nombre de maillages = ',nmaa
    00059
    00060 C ** lecture des infos pour le premier maillage
    00061
    00062
    00063         call efmaai(fid,1,maa,mdim,type,desc,cret)
    00064         print '(I1)',cret
    00065         if (cret .ne. 0 ) then
    00066            print *,'Erreur acces au premier maillage'
    00067            call efexit(-1)
    00068         endif
    00069
    00070         call efnema(fid,maa,MED_CONN,MED_ARETE,MED_SEG2,MED_DESC
    00071      1    ,narr,cret)
    00072         if (cret .ne. 0 ) then
    00073            print *,'Erreur acces au nombre d''arretes',
    00074      &             ' du premier maillage'
    00075            call efexit(-1)
    00076         endif
    00077
    00078
    00079          print '(A,I1,A,A4,A,I1,A,I4)','maillage '
    00080      &        ,0,' de nom ',maa,' et de dimension ',mdim,
    00081      &        ' comportant le nombre d''arretes ',narr
    00082
    00083
    00084 C ** lecture de la numerotation globale liée aux arretes
    00085
    00086          call efgnml(fid,maa,numglb,max(narr,100),
    00087      &     MED_ARETE,MED_TRIA3,cret)
    00088
    00089         if (cret .ge. 0 ) then
    00090            print '(A)','Erreur lecture numerotation globale ARRETE'
    00091            print '(A)','cette numerotation devait etre inexistante '
    00092            call efexit(-1)
    00093         endif
    00094
    00095
    00096 C ** Fermeture du fichier                                **
    00097         call efferm (fid,cret)
    00098         print '(I1)',cret
    00099         if (cret .ne. 0 ) then
    00100            print *,'Erreur fermeture du fichier'
    00101            call efexit(-1)
    00102         endif
    00103 C
    00104         end