MED fichier: Fichier source de test11b.f90

MED fichier

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

test11b.f90
Aller à la documentation de ce fichier.
1 !* This file is part of MED.
2 !*
3 !* COPYRIGHT (C) 1999 - 2017 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
med_float64
double med_float64
Definition: med.h:330
mlclor
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...
Definition: medlocalization.f:102
mlcnlc
subroutine mlcnlc(fid, n, cret)
Cette routine permet de lire le nombre de localisations de points d'intégration contenues dans un fic...
Definition: medlocalization.f:40
getfieldson
integer function getfieldson(fid, nomcha, typcha, ncomp, entite, stockage, ncst)
Definition: test11.f90:274
mfdnfd
subroutine mfdnfd(fid, n, cret)
Cette fonction permet de lire le nombre de champs dans un fichier.
Definition: medfield.f:173
mficlo
subroutine mficlo(fid, cret)
Fermeture d'un fichier MED.
Definition: medfile.f:80
mfdorr
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
mfdonv
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
test11
program test11
Definition: test11.f90:26
mmhmii
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
mlnlni
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
mfdonp
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
mlnlir
subroutine mlnlir(fid, mname, lname, cret)
Cette routine permet de lire un lien dans un fichier MED.
Definition: medlink.f:98
mlnnln
subroutine mlnnln(fid, n, cret)
Cette routine permet la lecture du nombre de lien dans un fichier MED.
Definition: medlink.f:37
mpfpfi
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
mfdoir
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
mfdnfc
subroutine mfdnfc(fid, ind, n, cret)
Cette fonction lit le nombre de composantes d'un champ.
Definition: medfield.f:194
mfdfdi
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
mfdoci
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
mpfpsn
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
mpfprr
subroutine mpfprr(fid, pname, profil, cret)
Cette routine permet de lire un profil dans un fichier MED.
Definition: medprofile.f:93
mlclci
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...
Definition: medlocalization.f:62
mpfnpf
subroutine mpfnpf(fid, n, cret)
Cette routine permet de lire le nombre de profil dans un fichier MED.
Definition: medprofile.f:38
mfiope
subroutine mfiope(fid, name, access, cret)
Ouverture d'un fichier MED.
Definition: medfile.f:41