Télécharger proi2.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : proi2.dgibi
  2. ************************************************************************
  3. ************************************************************************
  4. 'OPTI' 'ECHO' 0 ;
  5. ************************************************************************
  6. * NOM : PROI2
  7. * DESCRIPTION : Petit cas-test qui ne fonctionnait pas avant la fiche
  8. * 5791.
  9. * Pour l'élément linéaire et quadratique, OK
  10. * Pour l'élément QUAF, la subroutine qsijs convergeait
  11. * vers un point à l'extérieur de l'élément, alors que
  12. * p1 est bien à l'intérieur.
  13. *
  14. * Diagnostic : mauvais point de départ pour le Newton
  15. * dans qsijs et minimums locaux externes au QUAF du aux
  16. * fonctions de forme du TRI7
  17. *
  18. * Remède appliqué : dans zoneg2, d'abord utiliser les
  19. * fonctions de forme linéaires correspondantes pour
  20. * trouver un meilleur point de départ pour le Newton
  21. * avec les fonctions de forme QUAF.
  22. *
  23. * LANGAGE : GIBIANE-CAST3M
  24. * AUTEURS : Sébastien CADALEN (CEA/DEN/DM2S/SFME/MTMS)
  25. * : Stéphane GOUNAND (CEA/DEN/DM2S/SFME/LTMF)
  26. * mél : gounand@semt2.smts.cea.fr
  27. **********************************************************************
  28. * VERSION : v1, 17/07/2007, version initiale
  29. * HISTORIQUE : v1, 17/07/2007, création
  30. * HISTORIQUE :
  31. * HISTORIQUE :
  32. ************************************************************************
  33. * Prière de PRENDRE LE TEMPS de compléter les commentaires
  34. * en cas de modification de ce sous-programme afin de faciliter
  35. * la maintenance !
  36. ************************************************************************
  37. *
  38. 'SAUTER' 2 'LIGNE' ;
  39. 'MESSAGE' ' Execution de proi2.dgibi' ;
  40. 'SAUTER' 2 'LIGNE' ;
  41. *
  42. interact= FAUX ;
  43. graph = FAUX ;
  44. *
  45. 'OPTION' 'DIME' 2 'ELEM' 'TRI6' ;
  46. 'SI' ('NON' interact) ;
  47. 'OPTION' 'TRAC' 'PS' ;
  48. 'SINON' ;
  49. 'OPTION' 'TRAC' 'X' ;
  50. 'FINSI' ;
  51. *
  52. lok = VRAI ;
  53. * le point de projection
  54. p1 = 1.994096174677 0.250764704078 ;
  55. p1 = 'MANUEL' 'POI1' p1 ;
  56. * le triangle
  57. a1 = 2.000000000000 0.246676917055 ;
  58. a2 = 2.000000000000 0.251339919124 ;
  59. a3 = 2.000000000000 0.259936440173 ;
  60. a4 = 1.991898333835 0.254935379427 ;
  61. a5 = 1.983261903334 0.247161839055 ;
  62. a6 = 1.994853332086 0.246695009358 ;
  63. a7 = 1.995340470147 0.251134301758 ;
  64. * projection LINE
  65. 'MESSAGE' 'Projection LINE' ;
  66. tri1 = 'MANUEL' 'TRI3' a1 a3 a5 ;
  67. $tri1 = 'MODELISER' tri1 'THERMIQUE' ;
  68. chp1 = 'MANUEL' 'CHPO' tri1 1 'SCAL' 1. ;
  69. che1 = 'CHANGER' 'CHAM' chp1 $tri1 ;
  70. 'SI' graph ;
  71. 'TRACER' ('ET' tri1 p1) ;
  72. 'FINSI' ;
  73. pp1 = 'PROI' p1 che1 ;
  74. *
  75. * Le test effectué repose sur le fait que si le chpoint renvoyé par PROI
  76. * est vide, mp1 vaut 0. et pas 1.
  77. *
  78. mp1 = 'MAXIMUM' pp1 ;
  79. tst = ('EGA' mp1 1. 0.001) ;
  80. 'SI' ('NON' tst) ;
  81. cherr = 'CHAINE' '!!! Erreur, on aurait voulu mp1 = 1 et non ' mp1 ;
  82. 'MESSAGE' cherr ;
  83. 'FINSI' ;
  84. lok = lok 'ET' tst ;
  85. * projection QUAD
  86. 'MESSAGE' 'Projection QUAD' ;
  87. tri2 = 'MANUEL' 'TRI6' a1 a2 a3 a4 a5 a6 ;
  88. $tri2 = 'MODELISER' tri2 'THERMIQUE' ;
  89. chp1 = 'MANUEL' 'CHPO' tri2 1 'SCAL' 1. ;
  90. che1 = 'CHANGER' 'CHAM' chp1 $tri2 ;
  91. pp1 = 'PROI' p1 che1 ;
  92. 'SI' graph ;
  93. 'TRACER' ('ET' tri2 p1) ;
  94. 'FINSI' ;
  95. mp1 = 'MAXIMUM' pp1 ;
  96. tst = ('EGA' mp1 1. 0.001) ;
  97. 'SI' ('NON' tst) ;
  98. cherr = 'CHAINE' '!!! Erreur, on aurait voulu mp1 = 1 et non ' mp1 ;
  99. 'MESSAGE' cherr ;
  100. 'FINSI' ;
  101. lok = lok 'ET' tst ;
  102. * projection QUAF
  103. 'MESSAGE' 'Projection QUAF' ;
  104. tri3 = 'MANUEL' 'TRI7' a1 a2 a3 a4 a5 a6 a7 ;
  105. *$tri3 = 'MODELISER' tri3 'NAVIER_STOKES' 'QUAF' ;
  106. $tri3 = 'MODELISER' tri3 'THERMIQUE' ;
  107. chp1 = 'MANUEL' 'CHPO' tri3 1 'SCAL' 1. ;
  108. che1 = 'CHANGER' 'CHAM' chp1 $tri3 ;
  109. 'SI' graph ;
  110. 'TRACER' ('ET' tri3 p1) ;
  111. 'FINSI' ;
  112. pp1 = 'PROI' p1 che1 ;
  113. mp1 = 'MAXIMUM' pp1 ;
  114. tst = ('EGA' mp1 1. 0.001) ;
  115. 'SI' ('NON' tst) ;
  116. cherr = 'CHAINE' '!!! Erreur, on aurait voulu mp1 = 1 et non ' mp1 ;
  117. 'MESSAGE' cherr ;
  118. 'FINSI' ;
  119. lok = lok 'ET' tst ;
  120. *
  121. * Fin du jeu de donnees
  122. *
  123. 'SAUTER' 2 'LIGNE' ;
  124. 'SI' lok ;
  125. 'MESSAGE' 'Tout sest bien passe' ;
  126. 'SINON' ;
  127. 'MESSAGE' 'Il y a eu des erreurs' ;
  128. 'FINSI' ;
  129. 'SAUTER' 2 'LIGNE' ;
  130. 'SI' interact ;
  131. 'OPTION' 'DONN' 5 'ECHO' 1 ;
  132. 'FINSI' ;
  133. 'SI' ('NON' lok) ;
  134. 'ERREUR' 5 ;
  135. 'FINSI' ;
  136. *
  137. * End of dgibi file PROI2
  138. *
  139. 'FIN' ;
  140.  
  141.  
  142.  
  143.  
  144.  
  145.  

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