Télécharger numfor.eso

Retour à la liste

Numérotation des lignes :

numfor
  1. C NUMFOR SOURCE OF166741 26/02/23 21:15:26 12480
  2. C----------------------------------------------------------------------
  3. C
  4. C Associer a chaque formulation disponible dans l'operateur MODE un
  5. C identifiant. Vient en complement du numero de formulation (NUMMFR)
  6. C
  7. C Entree
  8. C ------
  9. C IPMODL : Pointeur sur le modele elementaire (IMODEL)
  10. C
  11. C Sortie
  12. C ------
  13. C NUMFOR : Entier identifiant le modele elementaire
  14. C Vaut 0 si le modele n'est pas identifie parmi ceux
  15. C disponible
  16. C----------------------------------------------------------------------
  17. C
  18. FUNCTION NUMFOR(IPMODL)
  19. C
  20. IMPLICIT INTEGER(I-N)
  21. IMPLICIT REAL*8(A-H,O-Z)
  22. C
  23. -INC PPARAM
  24. -INC CCOPTIO
  25. C
  26. -INC SMMODEL
  27. C
  28. CHARACTER*16 FORFO1,FORFO2
  29. C
  30. NUMFOR=0
  31. IMODEL=IPMODL
  32. NFOR =IMODEL.FORMOD(/2)
  33. FORFO1=IMODEL.FORMOD(1)
  34. IF (NFOR.EQ.1) THEN
  35. IF (FORFO1.EQ.'MECANIQUE' ) THEN
  36. NUMFOR=2
  37. ELSE IF (FORFO1.EQ.'LIQUIDE' ) THEN
  38. NUMFOR=11
  39. ELSE IF (FORFO1.EQ.'POREUX' ) THEN
  40. NUMFOR=33
  41. ELSE IF (FORFO1.EQ.'CONTACT' ) THEN
  42. NUMFOR=4
  43. ELSE IF (FORFO1.EQ.'CONTRAINTE' ) THEN
  44. NUMFOR=6
  45. ELSE IF (FORFO1.EQ.'THERMIQUE' ) THEN
  46. NUMFOR=29
  47. ELSE IF (FORFO1.EQ.'CHANGEMENT_PHASE') THEN
  48. NUMFOR=30
  49. ELSE IF (FORFO1.EQ.'METALLURGIE' ) THEN
  50. NUMFOR=32
  51. ELSE IF (FORFO1.EQ.'DARCY' ) THEN
  52. NUMFOR=34
  53. ELSE IF (FORFO1.EQ.'MAGNETODYNAMIQUE') THEN
  54. NUMFOR=69
  55. ELSE IF (FORFO1.EQ.'NAVIER_STOKES' ) THEN
  56. NUMFOR=52
  57. ELSE IF (FORFO1.EQ.'EULER' ) THEN
  58. NUMFOR=36
  59. ELSE IF (FORFO1.EQ.'MELANGE' ) THEN
  60. NUMFOR=38
  61. ELSE IF (FORFO1.EQ.'FISSURE' ) THEN
  62. NUMFOR=40
  63. ELSE IF (FORFO1.EQ.'THERMOHYDRIQUE' ) THEN
  64. NUMFOR=65
  65. ELSE IF (FORFO1.EQ.'LIAISON' ) THEN
  66. NUMFOR=24
  67. ELSE IF (FORFO1.EQ.'DIFFUSION' ) THEN
  68. NUMFOR=73
  69. ELSE IF (FORFO1.EQ.'CHARGEMENT' ) THEN
  70. NUMFOR=72
  71. ELSE IF (FORFO1.EQ.'ELECTROSTATIQUE' ) THEN
  72. NUMFOR=71
  73. ENDIF
  74. ELSE IF (NFOR.EQ.2) THEN
  75. FORFO2=IMODEL.FORMOD(2)
  76. IF ((FORFO1.EQ.'MECANIQUE'.AND.FORFO2.EQ.'LIQUIDE' ) .OR.
  77. & (FORFO1.EQ.'LIQUIDE' .AND.FORFO2.EQ.'MECANIQUE')) THEN
  78. NUMFOR=44
  79. ENDIF
  80. ENDIF
  81. C
  82. END
  83.  
  84.  
  85.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales