MED fichier
test11b.f90
Aller à la documentation de ce fichier.
1 !* This file is part of MED.
2 !*
3 !* COPYRIGHT (C) 1999 - 2016 EDF R&D, CEA/DEN
4 !* MED is free software: you can redistribute it and/or modify
5 !* it under the terms of the GNU Lesser General Public License as published by
6 !* the Free Software Foundation, either version 3 of the License, or
7 !* (at your option) any later version.
8 !*
9 !* MED is distributed in the hope that it will be useful,
10 !* but WITHOUT ANY WARRANTY; without even the implied warranty of
11 !* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 !* GNU Lesser General Public License for more details.
13 !*
14 !* You should have received a copy of the GNU Lesser General Public License
15 !* along with MED. If not, see <http://www.gnu.org/licenses/>.
16 !*
17 
18 
19 ! ******************************************************************************
20 ! * - Nom du fichier : test11.f90
21 ! *
22 ! * - Description : lecture de champs de resultats MED
23 ! *
24 ! *****************************************************************************
25 
26 program test11
27 
28  implicit none
29  include 'med.hf90'
30 
31 
32  integer cret,ret,lret,retmem, fid
33  integer USER_INTERLACE,USER_MODE
34  character*64 :: maa,nomcha,pflname,nomlien,locname
35  character*200 desc
36  character*255 argc
37  character*16, allocatable, dimension(:) :: comp,unit
38  character*16 dtunit
39  integer mdim,ncomp,ncha,npro,nln,pflsize,nval
40  integer, allocatable, dimension(:) :: pflval
41  integer ngauss,nloc
42  integer t1,t2,t3,typcha,type,type_geo
43  real*8, allocatable, dimension(:) :: refcoo, gscoo, wg
44  character*255 lien
45  integer i,j
46  integer getFieldsOn
47  integer nstep, stype, atype,sdim
48  character*16 nomcoo(3)
49  character*16 unicoo(3)
50  integer lmesh, ncst
51  character*64 :: giname, isname
52  integer nsmc, sgtype
53 
54  parameter(user_interlace = med_full_interlace)
55  parameter(user_mode = med_compact_stmode)
56 
57  cret=0;ret=0;lret=0;retmem=0
58  print *,"Indiquez le fichier med a decrire : "
59  !!read(*,'(A)') argc
60  argc="test10.med"
61 
62  ! ** ouverture du fichier **
63  call mfiope(fid,argc,med_acc_rdonly, ret)
64  if (ret .ne. 0) call efexit(-1)
65 
66  ! ** info sur le premier maillage **
67  if (ret.eq.0) then
68  call mmhmii(fid,1,maa,sdim,mdim,type,desc,dtunit,stype,nstep,atype,nomcoo,unicoo,ret)
69  endif
70  if (ret.ne.0) then
71  print *, "Erreur a la lecture des informations sur le maillage : ", &
72  & maa,mdim,type,desc
73  call efexit(-1)
74  endif
75 
76  write (*,'(/A,A,A,I1)') "Maillage de nom |",trim(maa),"| et de dimension ",mdim
77 
78  ! ** combien de champs dans le fichier **
79  call mfdnfd(fid,ncha,ret)
80  if (ret.ne.0) then
81  print *, "Impossible de lire le nombre de champs : ",ncha
82  call efexit(-1)
83  endif
84 
85  write (*,'(A,I1/)') "Nombre de champs : ",ncha
86 
87 
88  ! ** lecture de tous les champs associes a <maa> **
89  do i=1,ncha
90  lret = 0
91  write(*,'(A,I5)') "- Champ numero : ",i
92 
93  ! ** combien de composantes **
94  call mfdnfc(fid,i,ncomp,ret)
95  ! print *,ncomp,ret
96  if (ret.ne.0) then
97  print *, "Erreur a la lecture du nombre de composantes : ",ncomp
98  cret = -1
99  endif
100 
101  ! ** allocation memoire de comp et unit **
102  allocate(comp(ncomp),unit(ncomp),stat=retmem)
103  if (retmem .ne. 0) then
104  print *, "Erreur a l'allocation mémoire de comp et unit : "
105  call efexit(-1)
106  endif
107 
108  ! ** Info sur les champs
109  call mfdfdi(fid,i,nomcha,maa,lmesh,typcha,comp,unit,dtunit,ncst,ret)
110  if (ret .ne. 0) then
111  print *, "Erreur a la demande d'information sur les champs : ",nomcha,typcha,comp,unit,ncomp,ncst
112  cret = -1
113  continue
114  endif
115 
116  write(*,'(/5X,A,A)') 'Nom du champ : ', trim(nomcha)
117  write(*,'(/5X,A,A)') 'Nom du maillage : ',trim(maa)
118  write(*,'(5X,A,I5)') 'Type du champ : ', typcha
119  do j=1,ncomp
120  write(*,'(5X,A,I1,A,A,A,A)') 'Composante ',j,' : ',trim(comp(j)),' ',trim(unit(j))
121  enddo
122  write(*,'(5X,A,I1)') 'Nombre de pas de temps = ',ncst
123  print *,""
124 
125  deallocate(comp,unit)
126 
127  lret = getfieldson(fid, nomcha, typcha, ncomp, med_node, user_interlace, ncst)
128  ! print *,lret
129 
130  if (lret .eq. 0) then
131  lret = getfieldson(fid, nomcha, typcha, ncomp, med_cell, user_interlace, ncst)
132  else
133  print *, "Erreur a la lecture des champs aux noeuds "; cret = -1; continue
134  endif
135 
136  if (lret .eq. 0) then
137  lret = getfieldson(fid, nomcha, typcha, ncomp, med_descending_face,user_interlace, ncst)
138  else
139  print *,"Erreur a la lecture des champs aux mailles "; cret = -1; continue
140  endif
141 
142  if (lret .eq. 0) then
143  lret = getfieldson(fid, nomcha, typcha, ncomp, med_descending_edge,user_interlace, ncst)
144  else
145  print *,"Erreur a la lecture des champs aux faces "; cret = -1; continue
146  endif
147 
148  if (lret .eq. 0) then
149  lret = getfieldson(fid, nomcha, typcha, ncomp, med_node_element,user_interlace, ncst)
150  else
151  print *,"Erreur a la lecture des champs aux aretes "; cret = -1; continue
152  endif
153 
154  if (lret .ne. 0) then
155  print *,"Erreur a la lecture des champs aux noeuds des mailles "; cret = -1
156  endif
157 
158  enddo
159 
160 
161  call mpfnpf(fid,nval,ret)
162  write (*,'(5X,A,I2)') 'Nombre de profils stockés : ', nval
163 
164  if (nval .gt. 0 ) then
165  do i=1,nval
166  call mpfpfi(fid,i,pflname,nval,ret)
167  write (*,'(5X,A,I2,A,A,A,I2)') 'Profil n ',i,' : ',pflname, ' et de taille',nval
168  enddo
169  endif
170 
171 
172  ! ** Interrogation des liens **
173  call mlnnln(fid,nln,ret)
174  if (ret.ne.0) then
175  print *,"Erreur a la lecture du nombre de liens : " &
176  & ,nln
177  cret = -1;
178  else
179  print *,""
180  write (*,'(5X,A,I5)') "Nombre de liens stockes : ",nln;print *,"";print *,""
181  do i=1,nln
182  call mlnlni(fid, i, nomlien, nval, ret)
183  if (ret.ne.0) then
184  print *,"Erreur a la demande d'information sur le lien n° : ",i
185  cret = -1;continue;
186  endif
187  write (*,'(5X,A,I4,A,A,A,I4)') "- Lien n°",i," de nom |",trim(nomlien),"| et de taille ",nval
188  !! allocate
189  lien = ""
190  call mlnlir(fid,nomlien,lien,ret)
191  if (ret.ne.0) then
192  print *,"Erreur a la lecture du lien : ", lien,nval,nomlien
193  ret = -1;
194  else
195  write (*,'(5X,A,A,A)') "|",trim(lien),"|";print *,"";print *,""
196  endif
197  !!deallocate
198  end do
199  endif
200 
201 
202  ! ** Interrogation des localisations des points de GAUSS **
203  call mlcnlc(fid,nloc,ret)
204  if (ret.ne.0) then
205  print *,"Erreur a la lecture du nombre de points de Gauss : " &
206  & ,nloc
207  cret = -1;
208  else
209  print *,"Nombre de localisations stockees : ",nloc;print *,"";print *,""
210  do i=1,nloc
211  call mlclci(fid, i, locname, type_geo, sdim, ngauss, giname, isname, nsmc, sgtype, ret)
212  if (ret.ne.0) then
213  print *,"Erreur a la demande d'information sur la localisation n° : ",i
214  cret = -1;continue;
215  endif
216  write (*,'(5X,A,I4,A,A,A,I4,A,I4)') "- Loc n°",i," de nom |",trim(locname) &
217  &,"| à",ngauss, " points d'intégration dans un espace de dimension ",sdim
218  t1 = mod(type_geo,100)*sdim
219  t2 = ngauss*sdim
220  t3 = ngauss
221  allocate(refcoo(t1),stat=retmem)
222  if (retmem .ne. 0) then
223  print *, "Erreur a l'allocation mémoire de refcoo : "
224  call efexit(-1)
225  endif;
226  allocate(gscoo(t2),stat=retmem)
227  if (retmem .ne. 0) then
228  print *, "Erreur a l'allocation mémoire de gscoo : "
229  call efexit(-1)
230  endif;
231  allocate(wg(t3),stat=retmem)
232  if (retmem .ne. 0) then
233  print *, "Erreur a l'allocation mémoire de wg : "
234  call efexit(-1)
235  endif;
236  call mlclor(fid, locname,user_interlace,refcoo,gscoo,wg, ret )
237  if (ret.ne.0) then
238  print *,"Erreur a la lecture des valeurs de la localisation : " &
239  & ,locname
240  cret = -1;
241  else
242  write (*,'(5X,A,I4)') "Coordonnees de l'element de reference de type ",type_geo
243  do j=1,t1
244  write (*,'(5X,E20.8)') refcoo(j)
245  enddo
246  print *,""
247  write (*,'(5X,A)') "Localisation des points de GAUSS : "
248  do j=1,t2
249  write (*,'(5X,E20.8)') gscoo(j)
250  enddo
251  print *,""
252  write (*,'(5X,A)') "Poids associes aux points de GAUSS "
253  do j=1,t3
254  write (*,'(5X,E20.8)') wg(j)
255  enddo
256  print *,""
257  endif
258  deallocate(refcoo)
259  deallocate(gscoo)
260  deallocate(wg)
261  enddo
262  endif
263 
264  call mficlo(fid,ret)
265  !print *,ret
266 
267  call efexit(cret)
268 
269 end program test11
270 
271 
272 integer function getfieldson(fid, nomcha, typcha, ncomp, entite, stockage, ncst)
273  implicit none
274  include 'med.hf90'
275 
276  integer ::fid,typcha,ncomp,entite,stockage, ncst
277  character(LEN=*) nomcha
278 
279  integer :: itm,j,k,l,m,n,nb_geo,cret,ret,retmem,nvl,nref
280  integer :: nbpdtnor,pflsize,ngauss,ngroup,nent,nprofile
281  integer, allocatable, dimension(:) :: pflval
282  integer, allocatable, dimension(:) :: vale
283  integer :: numdt,numo,lnsize,nbrefmaa
284  real*8, allocatable, dimension(:) :: valr
285  real*8 dt
286  logical local
287  character*64 :: pflname,locname,maa_ass,mname
288  character*16 :: dt_unit
289  character*255:: lien
290  integer USER_MODE
291  integer :: nmesh,lmesh, mnumdt, mnumit
292 
293  integer,pointer,dimension(:) :: type_geo
294  integer,target :: typ_noeud(1) = (/ med_none /)
295 
296  integer :: MY_NOF_CELL_TYPE = 17
297  integer :: MY_NOF_DESCENDING_FACE_TYPE = 5
298  integer :: MY_NOF_DESCENDING_EDGE_TYPE = 2
299 
300  integer,target :: typmai(17) = (/ med_point1,med_seg2, &
301  & med_seg3,med_tria3, &
302  & med_quad4,med_tria6, &
303  & med_quad8,med_tetra4, &
304  & med_pyra5,med_penta6, &
305  & med_hexa8,med_tetra10, &
306  & med_pyra13,med_penta15, &
307  & med_hexa20,med_polygon,&
308  & med_polyhedron/)
309 
310  integer,target :: typfac(5) = (/med_tria3,med_tria6, &
311  & med_quad4,med_quad8,med_polygon/)
312  integer,target ::typare(2) = (/med_seg2,med_seg3/)
313 
314  character(LEN=15),pointer,dimension(:) :: AFF
315  character(LEN=15),target,dimension(17) :: FMED_GEOMETRIE_MAILLE_AFF = (/&
316  & "MED_POINT1 ",&
317  & "MED_SEG2 ",&
318  & "MED_SEG3 ",&
319  & "MED_TRIA3 ",&
320  & "MED_QUAD4 ",&
321  & "MED_TRIA6 ",&
322  & "MED_QUAD8 ",&
323  & "MED_TETRA4 ",&
324  & "MED_PYRA5 ",&
325  & "MED_PENTA6 ",&
326  & "MED_HEXA8 ",&
327  & "MED_TETRA10 ",&
328  & "MED_PYRA13 ",&
329  & "MED_PENTA15 ",&
330  & "MED_HEXA20 ",&
331  & "MED_POLYGON ",&
332  & "MED_POLYHEDRON " /)
333 
334  character(LEN=15),target,dimension(5) :: FMED_GEOMETRIE_FACE_AFF = (/&
335  & "MED_TRIA3 ",&
336  & "MED_TRIA6 ",&
337  & "MED_QUAD4 ",&
338  & "MED_QUAD8 ",&
339  & "MED_POLYGON " /)
340 
341  character(LEN=15),target,dimension(2) :: FMED_GEOMETRIE_ARETE_AFF = (/&
342  & "MED_SEG2 ",&
343  & "MED_SEG3 " /)
344 
345  character(LEN=15),target,dimension(1) :: FMED_GEOMETRIE_NOEUD_AFF = (/ &
346  & "(AUCUN) "/)
347 
348 
349  character(LEN=20),target,dimension(0:4) :: FMED_ENTITE_MAILLAGE_AFF =(/ &
350  & "MED_CELL ", &
351  & "MED_DESCENDING_FACE ", &
352  & "MED_DESCENDING_EDGE ", &
353  & "MED_NODE ", &
354  & "MED_NODE_ELEMENT "/)
355 
356  parameter(user_mode = med_compact_stmode )
357 
358  !! write (*,'(A0)') FMED_GEOMETRIE_NOEUD_AFF(1)
359  !! write (*,'(A0)') FMED_GEOMETRIE_MAILLE_AFF(1)
360  !! write (*,'(A0)') FMED_GEOMETRIE_FACE_AFF(1)
361  !! write (*,'(A0)') FMED_GEOMETRIE_ARETE_AFF(1)
362 
363  locname=''
364  nbpdtnor=0;pflsize=0;ngauss=0;nent=0
365  numdt = 0;numo=0;retmem=0
366  cret=0;ret=0
367 
368  nullify(type_geo)
369  nullify(aff)
370 
371 
372  select case (entite)
373  case (med_node)
374  type_geo => typ_noeud
375  nb_geo = 1
376  aff => fmed_geometrie_noeud_aff
377  case (med_cell)
378  type_geo => typmai
379  nb_geo = 17
380  aff => fmed_geometrie_maille_aff
381  case (med_node_element)
382  type_geo => typmai
383  nb_geo = 17
384  aff => fmed_geometrie_maille_aff
385  case (med_descending_face)
386  type_geo => typfac;
387  nb_geo = 5
388  aff => fmed_geometrie_face_aff
389  case (med_descending_edge)
390  type_geo => typare
391  nb_geo = my_nof_descending_edge_type
392  aff => fmed_geometrie_arete_aff
393  end select
394 
395  do k=1,nb_geo
396 
397  ! ** Combien de (PDT,NOR) a lire **
398  nbpdtnor = ncst
399  if(nbpdtnor < 1 ) continue
400 
401  do j=1,ncst
402 
403  call mfdoci(fid,nomcha,j,numdt,numo,dt, nmesh, mname, lmesh, mnumdt, mnumit, ret)
404  ! print *,'ret=',ret
405  if (ret.ne.0) then
406  print *, "Erreur a la demande d'information sur (pdt,nor) : " &
407  & ,nomcha,entite, numdt, numo, dt
408  cret = -1
409  end if
410 
411  do itm=1,nmesh
412 
413  call mfdonp(fid,nomcha,numdt,numo,entite,type_geo(k),itm,mname,pflname,locname,nprofile,ret)
414  ! print *,'ret=',ret
415  if (ret.ne.0) then
416  print *, "Erreur a la lecture du nombre de profil : " &
417  & ,nomcha,entite, type_geo(k),numdt, numo
418  cret = -1
419  call efexit(cret)
420  end if
421 
422  do l=1,nprofile
423 
424  ! ** Combien de valeurs à lire ? **
425  call mfdonv(fid,nomcha,numdt,numo,entite,type_geo(k),mname,l, &
426  & user_mode,pflname,pflsize,locname,ngauss,nent,ret)
427 
428  ! print *,'ret=',ret
429  if (ret.ne.0) then
430  print *,"Erreur a la lecture du nombre de valeurs du champ : " &
431  & ,nomcha,entite,type_geo(k), &
432  & numdt, numo
433  cret = -1; continue
434  endif
435  !write(*,'(5X,A,I5,A)') 'Il y a ', nent ,' valeurs a lire '
436 
437  write(*,'(5X,A,I2,A,I2,A,I2,A,E10.5,A)') 'Séquence de calcul n° ',l,' (',numdt,',',numo,'), dt=(',dt,')'
438  write(*,'(5X,A,I5,A,I2,A,A,A,A,A,A,I2,A,A)') &
439  & 'Il y a ',nent,' valeurs en mode ',user_mode, &
440  & '. Chaque entite ',trim(fmed_entite_maillage_aff(entite)), &
441  & ' de type geometrique ',trim(aff(k)),' associes au profil |',&
442  & trim(pflname)//'| a ',ngauss,' valeur(s) par entité une localization de nom |',trim(locname)//'|'
443  print *,'Le maillage associe est ', mname
444 
445  ! **Lecture des valeurs du champ **
446  if (typcha .eq. med_float64) then
447  allocate(valr(ncomp*nent*ngauss),stat=retmem)
448 
449  call mfdorr(fid,nomcha,numdt,numo,entite,type_geo(k),mname,user_mode, &
450  & pflname,stockage,med_all_constituent,valr,ret)
451  ! print *,'ret=',ret
452  if (ret.ne.0) then
453  print *,"Erreur a la lecture des valeurs du champ : ", &
454  & nomcha,valr,stockage,med_all_constituent, &
455  & pflname,user_mode,entite,type_geo(k),numdt,numo
456  cret = -1;
457  call efexit(cret)
458  endif
459  else
460  allocate(vale(ncomp*nent*ngauss),stat=retmem)
461 
462  call mfdoir(fid,nomcha,numdt,numo,entite,type_geo(k),mname,user_mode, &
463  & pflname,stockage,med_all_constituent,vale,ret)
464  ! print *,'ret=',ret
465  if (ret.ne.0) then
466  print *,"Erreur a la lecture des valeurs du champ : ",&
467  & nomcha,vale,stockage,med_all_constituent, &
468  & pflname,user_mode,entite,type_geo(k),numdt,numo
469  cret = -1;
470  endif
471 
472  endif
473 
474  if (ngauss .gt. 1 ) then
475  write (*,'(5X,A,A,A)') "- Modèle de localisation des ", &
476  & "points de Gauss de nom ", trim(locname)
477  end if
478 
479  if ( entite .eq. med_node_element ) then
480  ngroup = mod(type_geo(k),100)
481  else
482  ngroup = ngauss
483  end if
484 
485  select case (stockage)
486  case (med_full_interlace)
487  write(*,'(5X,A)') "- Valeurs :"; write(*,'(5X,A)') ""
488  do m=0,nent-1
489  write(*,*) "|"
490  do n=0,(ngroup*ncomp-1)
491  if (typcha .eq. med_float64) then
492  write (*,'(1X,E20.5,1X)') valr( m*ngroup*ncomp+n +1 )
493  else
494  write (*,'(1X,I8,1X)') vale( m*ngroup*ncomp+n +1 )
495  end if
496  enddo
497  enddo
498  case (med_no_interlace)
499  write(*,'(5X,A)') "- Valeurs :"; write(*,'(5X,A)') ""
500  do m=0,ncomp-1
501  write(*,*) "|"
502  do n=0,nent-1
503  if (typcha .eq. med_float64) then
504  write (*,'(1X,E20.5,1X)') valr(m*nent+n +1)
505  else
506  write (*,'(1X,I8,1X)') vale(m*nent+n +1)
507  endif
508  enddo
509  enddo
510  end select
511 
512  write(*,*) "|"
513  if (typcha .eq. med_float64) then
514  deallocate(valr)
515  else
516  deallocate(vale)
517  endif
518 
519  !* Profils
520  if (pflname .eq. med_no_profile) then
521  !write(*,'(5X,A)') 'Pas de profil'
522  else
523  write(*,'(5X,A,A)') 'Profil :',pflname
524  call mpfpsn(fid,pflname,pflsize,ret)
525  if (ret .ne. 0) then
526  print *,"Erreur a la lecture du nombre de valeurs du profil : ", &
527  & pflname,pflsize
528  cret = -1;continue
529  endif
530  write(*,'(5X,A,I5)') 'Taille du profil : ',pflsize
531 
532  ! ** allocation memoire de pflval **
533  allocate(pflval(pflsize),stat=retmem)
534  if (retmem .ne. 0) then
535  print *, "Erreur a l'allocation mémoire de pflsize : "
536  call efexit(-1)
537  endif
538 
539  call mpfprr(fid,pflname,pflval,ret)
540  if (cret .ne. 0) write(*,'(I1)') cret
541  if (ret .ne. 0) then
542  print *,"Erreur a la lecture du profil : ", &
543  & pflname,pflval
544  cret = -1;continue
545  endif
546  write(*,'(5X,A)') 'Valeurs du profil : '
547  do m=1,pflsize
548  write (*,'(5X,I6)') pflval(m)
549  enddo
550 
551  deallocate(pflval)
552 
553  endif
554 
555  enddo
556 
557  enddo
558 
559  enddo
560 
561  enddo
562 
563 
564  print *,""
565  getfieldson=ret
566 
567 end function getfieldson
subroutine mficlo(fid, cret)
Fermeture d'un fichier MED.
Definition: medfile.f:80
subroutine mfdonv(fid, fname, numdt, numit, etype, gtype, mname, pit, stm, pname, psize, lname, nip, n, cret)
Cette fonction permet de lire le nombre de valeurs à lire dans un champ pour une séquence de calcul...
Definition: medfield.f:676
subroutine mfdoci(fid, fname, it, numdt, numit, dt, nmesh, mname, lmesh, mnumdt, mnumit, cret)
Cette fonction permet de lire les informations caractérisant une séquence de calcul : numéro de pas d...
Definition: medfield.f:625
subroutine mfdonp(fid, fname, numdt, numit, etype, gtype, it, mname, dpname, dlname, n, cret)
Cette fonction permet de lire le nombre de profils référencés dans un champ pour une séquence de calc...
Definition: medfield.f:649
integer function getfieldson(fid, nomcha, typcha, ncomp, entite, stockage, ncst)
Definition: test11.f90:274
subroutine mpfprr(fid, pname, profil, cret)
Cette routine permet de lire un profil dans un fichier MED.
Definition: medprofile.f:93
subroutine mlclor(fid, lname, swm, ecoo, ipcoo, wght, cret)
Cette routine permet la lecture d'une localisation localizationname de points d'intégration dans/auto...
subroutine mfdnfc(fid, ind, n, cret)
Cette fonction lit le nombre de composantes d'un champ.
Definition: medfield.f:194
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.
Definition: medmesh.f:106
subroutine mfdorr(fid, fname, numdt, numit, etype, gtype, mname, stm, pname, swm, cs, val, cret)
Cette fonction permet de lire les valeurs d'un champ définies sur des entités d'un maillage pour une ...
Definition: medfield.f:707
subroutine mlnnln(fid, n, cret)
Cette routine permet la lecture du nombre de lien dans un fichier MED.
Definition: medlink.f:37
subroutine mlcnlc(fid, n, cret)
Cette routine permet de lire le nombre de localisations de points d'intégration contenues dans un fic...
subroutine mlnlir(fid, mname, lname, cret)
Cette routine permet de lire un lien dans un fichier MED.
Definition: medlink.f:98
program test11
Definition: test11.f90:26
subroutine mfdnfd(fid, n, cret)
Cette fonction permet de lire le nombre de champs dans un fichier.
Definition: medfield.f:173
subroutine mfdoir(fid, fname, numdt, numit, etype, gtype, mname, stm, pname, swm, cs, val, cret)
Cette fonction permet de lire les valeurs d'un champ définies sur des entités d'un maillage pour une ...
Definition: medfield.f:731
subroutine mlclci(fid, it, lname, gtype, sdim, nip, giname, isname, nsmc, sgtype, cret)
Cette routine permet d'obtenir la description de la localisation de points d'intégration n° localizat...
subroutine mpfpfi(fid, it, pname, psize, cret)
Cette routine permet de lire les informations sur un profil dans un fichier MED.
Definition: medprofile.f:59
subroutine mpfpsn(fid, pname, psize, cret)
Cette routine permet de lire la taille d'un profil dont on connait le nom.
Definition: medprofile.f:76
subroutine mfiope(fid, name, access, cret)
Ouverture d'un fichier MED.
Definition: medfile.f:41
subroutine mfdfdi(fid, it, fname, mname, lmesh, type, cname, cunit, dtunit, nc, cret)
Cette fonction permet de lire les informations concernant le champ d'indice ind . ...
Definition: medfield.f:238
subroutine mlnlni(fid, it, mname, lsize, cret)
Cette routine permet de lire les informations sur un lien dans un fichier MED.
Definition: medlink.f:58
subroutine mpfnpf(fid, n, cret)
Cette routine permet de lire le nombre de profil dans un fichier MED.
Definition: medprofile.f:38