Télécharger sormat.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : sormat.dgibi
  2. 'OPTI' echo 0 ;
  3. ************************************************************************
  4. * NOM : SORMAT
  5. * DESCRIPTION : Test basique de la sortie d'une matrice.
  6. * On teste avec une matrice symétrique et une
  7. * non-symétrique
  8. *
  9. *
  10. * LANGAGE : GIBIANE-CAST3M
  11. * AUTEUR : Stephane GOUNAND (CEA/DEN/DM2S/SEMT/LTA)
  12. * mel : stephane.gounand@cea.fr
  13. **********************************************************************
  14. * VERSION : v1, 18/04/2019, version initiale
  15. * HISTORIQUE : v1, 18/04/2019, création
  16. * HISTORIQUE :
  17. * HISTORIQUE :
  18. ************************************************************************
  19. *
  20. *
  21. interact= FAUX ;
  22. *
  23. 'OPTION' 'DIME' 2 'ELEM' 'TRI3' ;
  24. p0 = 0. 0. ; p1 = 1. 0. ; p2 = 2. 0. ;
  25. mt = 'MANU' 'TRI3' p1 p0 p2 ;
  26. 'OPTI' echo 1 ;
  27. *
  28. *
  29. * MATRICE SYMETRIQUE SANS MULTIPLICATEURS SANS NORMALISATION
  30. *
  31. *
  32. 'OPTI' echo 0 ;
  33. 'OPTI' 'NORM' 'ANNU' ;
  34. *
  35. rig = 'MANU' 'RIGI' mt ('MOTS' 'T') ('PROG' 4. -1. 5. 0. -2. 6.) ;
  36. *
  37. mat = rig ;
  38. for = 'NOMC' 'Q' ('+' ('COOR' 1 mt) 1.) 'NATU' 'DISCRET' ;
  39. smb = for ;
  40. mat1 = '*' mat 1. ;
  41. mat2 = '*' mat 1. ;
  42. sol = 'RESO' mat1 smb ;
  43.  
  44. resc1 = '-' smb ('*' mat sol) ;
  45. nresc1 = 'MAXI' resc1 'ABS' ; tol = 1.d-14 ;
  46. cherr = 'CHAI' 'nresc1=' nresc1 ' tol=' tol ;
  47. 'SI' ('>' nresc1 tol) ; 'ERRE' cherr ; 'SINO' ; 'MESS' cherr ; 'FINS' ;
  48.  
  49. nomdir = 'CHAINE' './' ;
  50. nomfic = 'sormatsym' ;
  51. fic = 'CHAINE' nomdir nomfic ;
  52. 'SAUT' 1 'LIGNE' ; 'MESS' 'LA MATRICE SYMETRIQUE' ;'SAUT' 1 'LIGNE' ;
  53. *'LIST' ('VALE' 'NORM') ;
  54. 'LIST' mat2 ;
  55. 'SAUT' 1 'LIGNE' ; 'MESS' 'LE SECOND MEMBRE' ;
  56. 'LIST' smb ;
  57. 'SAUT' 1 'LIGNE' ; 'MESS' 'LA SOLUTION' ;
  58. 'LIST' sol ;
  59. 'SAUT' 1 'LIGNE' ; 'MESSAGE' ('CHAINE' 'SORTIE :' ' ' fic '...') ;
  60. 'OPTI' 'SORTIR' fic ;
  61. 'SORTIR' 'MAT' 'MM' 'ASSE' mat2 'TITR' nomfic 'GEOM' 'INCO' 'FORC' smb
  62. 'RESU' sol ;
  63. 'OPTI' echo 1 ;
  64. *
  65. *
  66. * MATRICE SYMETRIQUE SANS MULTIPLICATEURS AVEC NORMALISATION
  67. * DONC PLUS SYMETRIQUE !!!!!!
  68. * A noter que la normalisation AUTO ne marche pas car l'operateur SORT
  69. * utilise en interne l'assembleur non symétrique (asns1.eso via kres9)
  70. * qui ne gere pas l'option AUTO
  71. *
  72. 'OPTI' echo 0 ;
  73. 'OPTI' 'NORM' ('MOTS' 'T') ('PROG' 11.) ('MOTS' 'Q') ('PROG' 2.) ;
  74. *
  75. riga = 'MANU' 'RIGI' mt ('MOTS' 'T') ('PROG' 4. -1. 5. 0. -2. 6.) ;
  76. *
  77. mata = riga ;
  78. fora = 'NOMC' 'Q' ('+' ('COOR' 1 mt) 1.) 'NATU' 'DISCRET' ;
  79. smba = fora ;
  80. mata1 = '*' mata 1. ;
  81. mata2 = '*' mata 1. ;
  82. sola = 'RESO' mata1 smba ;
  83.  
  84. resc1a = '-' smba ('*' mata sola) ;
  85. nresc1a = 'MAXI' resc1a 'ABS' ; tol = 1.d-14 ;
  86. cherr = 'CHAI' 'nresc1a=' nresc1a ' tol=' tol ;
  87. 'SI' ('>' nresc1a tol) ; 'ERRE' cherr ; 'SINO' ; 'MESS' cherr ; 'FINS' ;
  88.  
  89. nomdir = 'CHAINE' './' ;
  90. nomfic = 'sormatsymnorm' ;
  91. fic = 'CHAINE' nomdir nomfic ;
  92. 'SAUT' 1 'LIGNE' ; 'MESS' 'LA MATRICE EX-SYMETRIQUE NORMALISEE' ;'SAUT' 1 'LIGNE' ;
  93. *'LIST' ('VALE' 'NORM') ;
  94. 'LIST' mata2 ;
  95. 'SAUT' 1 'LIGNE' ; 'MESS' 'LE SECOND MEMBRE' ;
  96. 'LIST' smba ;
  97. 'SAUT' 1 'LIGNE' ; 'MESS' 'LA SOLUTION' ;
  98. 'LIST' sola ;
  99. 'SAUT' 1 'LIGNE' ; 'MESSAGE' ('CHAINE' 'SORTIE :' ' ' fic '...') ;
  100. 'OPTI' 'SORTIR' fic ;
  101. 'SORTIR' 'MAT' 'MM' 'ASSE' mata2 'TITR' nomfic 'GEOM' 'INCO' 'FORC' smba
  102. 'RESU' sola ;
  103.  
  104. 'OPTI' echo 1 ;
  105. *
  106. *
  107. * MATRICE NON SYMETRIQUE SANS MULTIPLICATEURS SANS NORMALISATION
  108. *
  109. *
  110. 'OPTI' echo 0 ;
  111. 'OPTI' 'NORM' 'ANNU' ;
  112. rig11 = 'MANU' 'RIGI' p1 ('MOTS' 'T') ('PROG' 4.) ;
  113. rig22 = 'MANU' 'RIGI' p1 ('MOTS' 'UX') ('PROG' 5.) ;
  114. rig33 = 'MANU' 'RIGI' p1 ('MOTS' 'UY') ('PROG' 6.) ;
  115. rig23 = 'MANU' 'RIGI' p1 ('MOTS' 'UY') 'DUAL' ('MOTS' 'FX') 'QUEL'
  116. ('PROG' 2.) ;
  117. rign = rig11 'ET' rig22 'ET' rig33 'ET' rig23 ;
  118. matn = rign ;
  119. forn = 'MANU' 'CHPO' p1 3 'Q' 1. 'FX' 2. 'FY' 3.
  120. 'NATU' 'DISCRET' ;
  121. smbn = forn ;
  122. matn1 = '*' matn 1. ;
  123. matn2 = '*' matn 1. ;
  124. soln = 'RESO' matn1 smbn ;
  125. *
  126. resc1n = '-' smbn ('*' matn soln) ;
  127. nresc1n = 'MAXI' resc1n 'ABS' ; tol = 1.d-14 ;
  128. cherr = 'CHAI' 'nresc1n=' nresc1n ' tol=' tol ;
  129. 'SI' ('>' nresc1n tol) ; 'ERRE' cherr ; 'SINO' ; 'MESS' cherr ; 'FINS' ;
  130. *
  131. nomdir = 'CHAINE' './' ;
  132. nomfic = 'sormatnosym' ;
  133. fic = 'CHAINE' nomdir nomfic ;
  134. 'SAUT' 1 'LIGNE' ; 'MESS' 'LA MATRICE *NON* SYMETRIQUE' ;'SAUT' 1 'LIGNE' ;
  135. *'LIST' ('VALE' 'NORM') ;
  136. 'LIST' matn2 ;
  137. 'SAUT' 1 'LIGNE' ; 'MESS' 'LE SECOND MEMBRE' ;
  138. 'LIST' smbn ;
  139. 'SAUT' 1 'LIGNE' ; 'MESS' 'LA SOLUTION' ;
  140. 'LIST' soln ;
  141. 'SAUT' 1 'LIGNE' ; 'MESSAGE' ('CHAINE' 'SORTIE :' ' ' fic '...') ;
  142. 'OPTI' 'SORTIR' fic ;
  143. 'SORTIR' 'MAT' 'MM' matn2 'ASSE' 'TITR' nomfic 'GEOM' 'INCO' 'FORC' smbn
  144. 'RESU' soln ;
  145.  
  146. *
  147. * MULTIPLICATEURS DE LAGRANGE NON GERES A CE JOUR PAR SORMAT, voir sormat.eso
  148. *
  149. 'SI' faux ;
  150. *
  151. *
  152. * MATRICE SYMETRIQUE AVEC MULTIPLICATEURS SANS NORMALISATION
  153. *
  154. *
  155. cc = 'MANU' 'CHPO' mt 1 'T' 1. ;
  156. rig = 'MANU' 'RIGI' cc 'DIAG' ;
  157. con1 = 'RELA' p0 'T' '+' 2. p1 'T' '-' p2 'T' ;
  158. vcon1 = 'DEPI' con1 4. ;
  159. con2 = 'RELA' p0 'T' '+' 2. p1 'T' '+' p2 'T' ;
  160. vcon2 = 'DEPI' con2 5. ;
  161. *
  162. matsn = rig 'ET' con1 'ET' con2 ;
  163. forsn = 'NOMC' 'Q' ('+' ('COOR' 1 mt) 1.) 'NATU' 'DISCRET' ;
  164. smbsn = for 'ET' vcon1 'ET' vcon2 ;
  165. *
  166. matsn1 = '*' matsn 1. ;
  167. matsn2 = '*' matsn 1. ;
  168. solsn = 'RESO' matsn1 smbsn ;
  169. *
  170. resc1sn = '-' smbsn ('*' matsn solsn) ;
  171. nresc1sn = 'MAXI' resc1sn 'ABS' ; tol = 1.d-14 ;
  172. cherr = 'CHAI' 'nresc1sn=' nresc1sn ' tol=' tol ;
  173. 'SI' ('>' nresc1sn tol) ; 'ERRE' cherr ; 'SINO' ; 'MESS' cherr ; 'FINS' ;
  174. *
  175. nomdir = 'CHAINE' './' ;
  176. nomfic = 'sormatmulsansnorm' ;
  177. fic = 'CHAINE' nomdir nomfic ;
  178. 'MESSAGE' ('CHAINE' 'Sorting' ' ' fic '...') ;
  179. 'LIST' matsn2 ; 'LIST' smbsn ; 'LIST' solsn ;
  180. 'OPTI' 'NORM' 'ANNU' ;
  181. 'OPTI' 'SORTIR' fic ;
  182. 'SORTIR' 'MAT' 'MM' matsn2 'ASSE' 'TITR' nomfic 'GEOM' 'INCO' 'FORC' smbsn
  183. 'RESU' solsn ;
  184. *
  185. * FIN MULTIPLICATEURS NON GERES A CE JOUR
  186. *
  187. 'FINS' ;
  188. *
  189. 'SI' interact ;
  190. 'OPTI' 'DONN' 5 'ECHO' 1 ;
  191. 'FINS' ;
  192. *
  193. * End of dgibi file SORMAT
  194. *
  195. 'FIN' ;
  196.  
  197.  
  198.  
  199.  

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