- * fichier :  t_HISTOG.dgibi 
- ************************************************************************ 
- ************************************************************************ 
- *---------------------------------------------------------------------* 
- * Cas-test de l'operateur 'HIST' :                                    * 
- *                                                                     * 
- * Description : HIST renvoie une EVOLUTIOn de type HISTogramme repre- * 
- *               sentant la densite de distribution des valeurs d'un   * 
- *               MCHALM sur un maillage.                               * 
- *                                                                     * 
- * Synthaxe : HIST1 = HIST (COUL) MOD1 CHAM1 (ABS) PROG1 |(MOT1) | ;   * 
- *                                                       |(LMOT1)|     * 
- *                                                                     * 
- * Options : Pas defaut, ce cas-test verifie le fonctionnement de      * 
- *           l'operateur sur 2 cas (2D et 3D). En options :            * 
- *     - l'indicateur logique IDESS1 permet d'activer les traces ;     * 
- *     - l'indicateur logique ITEST1 permet d'activer le test du trai- * 
- *       tement des erreurs ;                                          * 
- *     - l'indicateur logique ILIST1 permet d'afficher la valeur cou-  * 
- *       rante de l'erreur ;                                           * 
- *     - l'indicateur logique IPETI1 permet d'effectuer une serie de   * 
- *       test elementaires de fonctionnement de l'operateur.           * 
- *                                                                     * 
- *---------------------------------------------------------------------* 
- *                                                                     * 
- * IDESS1 = VRAI => trace des EVOLUTIOns :                             * 
- IDESS1   = FAUX ; 
- * ITEST1 = VRAI => test messages d'erreur :                           * 
- ITEST1   = FAUX ; 
- * ILIST1 = VRAI => on liste la valeur de l'erreur :                   * 
- ILIST1   = FAUX ; 
- * IPETI1 = VRAI => test elementaires :                                * 
- IPETI1   = FAUX ; 
- *                                                                     * 
- *                                                                     * 
- * Tables pour trace dessins :                                         * 
- TDESS1 .  1 =-  ' MOT- ' 'MARQ CARR PLEI NOLI'  ;
- TDESS2 .  1 =-  ' MOT- ' 'MARQ CARR PLEI NOLI'  ;
- TDESS2 .  2 =-  ' MOT- ' 'MARQ LOSA PLEI NOLI'  ;
- *                                                                     * 
- ERR1     = 0. ; 
- *                                                                     * 
- *---------------------- TEST TYPAGE EVOLUTIONS -----------------------* 
- *                                                                     * 
- *                                                                     * 
- EV0      = EV1 + EV3 ; 
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV0  --  EV0REF )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- EV0      = (EV1 'ET' EV4) + (EV2 'ET' EV3) ; 
- EV0REF   = EV0REF 'ET' (EV2 + EV4) ; 
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV0  --  EV0REF )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- 'SI' IDESS1 ; 
-   ' TITR- ' 'Test dessin d une courbe  et-  de  2-  histogrammes'  ;
- 'FINS' ; 
- 'SI' ITEST1 ; 
- * Addition d'une courbe et d'un histogramme ?                         * 
-   EV0      = EV1 + EV2 ; 
- * Addition de 2 courbes avec une courbe et un histogramme ?           * 
-   EV0      = (EV1 'ET' EV3) + (EV2 'ET' EV1) ; 
- * Si pas meme nombre de courbe ?                                      * 
-   EV0      = (EV1 'ET' EV5) + EV1 ; 
- * Test addition 2 EVOL dont une de Type pas autorise pour l'addition ?* 
-   EV0      = EV1 + EV5 ; 
- 'FINS' ; 
- *                                                                     * 
- *---------------------------------------------------------------------* 
- *                                                                     * 
- *                       TESTS OPERATEUR "HIST"                        * 
- *                                                                     * 
- *---------------------------------------------------------------------* 
- *                                                                     * 
- 'SI' IPETI1 ; 
- *                                                                     * 
- *---------------------------------------------------------------------* 
- *                                                                     * 
- *                         <<~PETITS TESTS~>>                          * 
- *                                                                     * 
- *---------------------------------------------------------------------* 
- *                                                                     * 
- *-------------------------------- 1D ---------------------------------* 
- *                                                                     * 
- *                                                                     * 
- MOD1      =-  ' MODE- ' L1 'MECANIQUE'  ;
- *                                                                     * 
- * Champ a 1 composante :                                              * 
- CH1       =-  ' MANU- ' 'CHML' MOD1 'SCAL'  -1.0-  'STRESSES'  ;
- *                                                                     * 
- * Test fonctionnement :                                               * 
- EV1       =-  ' HIST- ' MOD1 CH1  (- ' PROG- '  -2- .  PAS 0.25 0- . ) ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV1REF  --  EV1 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- 'SI' IDESS1 ; 
-   ' TITR- ' 'test valeurs negatives'  ;
-   ' DESS- ' TDESS1  (- EV1REF ' ET- ' EV1 ) ;
- 'FINS' ; 
- *                                                                     * 
- * Test affectation couleur :                                          * 
- CH1       =-  ' MANU- ' 'CHML' MOD1 'SCAL'  -0.5-  'STRESSES'  ;
- EV1       =-  ' HIST- ' 'ROUG' MOD1 CH1  (- ' PROG- '  -1- .  PAS 0.25 0- . ) ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV1REF  --  EV1 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- * Ca marche partout ? 
- EV1       =-  ' HIST- ' MOD1 'ROUG' CH1  (- ' PROG- '  -1- .  PAS 0.25 0- . ) ;
- EV1       =-  ' HIST- ' MOD1 CH1 'ROUG'  (- ' PROG- '  -1- .  PAS 0.25 0- . ) ;
- EV1       =-  ' HIST- ' MOD1 CH1  (- ' PROG- '  -1- .  PAS 0.25 0- . )-  'ROUG'  ;
- *                                                                     * 
- 'SI' IDESS1 ; 
-   ' TITR- ' 'Affectation couleur rouge a l"histogramme'  ;
-   ' DESS- ' TDESS1  (- EV1REF ' ET- ' EV1 ) ;
- 'FINS' ; 
- *                                                                     * 
- * Test option 'ABS' :                                                 * 
- EV1       =-  ' HIST- ' MOD1 CH1 ' ABS- '  (- ' PROG- '  0- .  PAS 0.25 1- . ) ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV1REF  --  EV1 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- * Ca marche avec couleur ? 
- EV1       =-  ' HIST- ' 'VERT' MOD1 CH1 ' ABS- '  (- ' PROG- '  0- .  PAS 0.25 1- . ) ;
- *                                                                     * 
- 'SI' IDESS1 ; 
-   ' TITR- ' 'Test mot -- cle  ABS +-  affectation couleur VERTE'  ;
-   ' DESS- ' TDESS1  (- EV1REF ' ET- ' EV1 ) ;
- 'FINS' ; 
- *                                                                     * 
- * Test donnee nom de composante ? 
- EV1       =-  ' HIST- ' MOD1 CH1  (- ' PROG- '  -1- .  PAS 0.25 0- . )-  'SCAL'  ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV1REF  --  EV1 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- * Avec un listmots ? 
- EV1       =-  ' HIST- ' MOD1 CH1  (- ' PROG- '  -1- .  PAS 0.25 0- . ) (- ' MOTS- ' 'SCAL' ) ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV1REF  --  EV1 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- * Si plusieurs Mots ? 
- EV1       =-  ' HIST- ' MOD1 CH1  (- ' PROG- '  -1- .  PAS 0.25 0- . ) (- ' MOTS- ' 'SCAL' 'YOUN' ) ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV1REF  --  EV1 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- * Avec couleur ? 
- EV1       =-  ' HIST- ' 'ORAN' MOD1 CH1  (- ' PROG- '  -1- .  PAS 0.25 0- . )-  'SCAL'  ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV1REF  --  EV1 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- * Et Mot-cle ABS ? 
- EV1       =-  ' HIST- ' MOD1 CH1 ' ABS- '  (- ' PROG- '  0- .  PAS 0.25 1- . )-  'SCAL'  ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV1REF  --  EV1 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- * Toutes options MOT ? 
- EV1       =-  ' HIST- ' 'ORAN' MOD1 CH1 ' ABS- '  (- ' PROG- '  0- .  PAS 0.25 1- . )-  'SCAL'  ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV1REF  --  EV1 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- * Toutes options + LISTMOTS ? 
- EV1       =-  ' HIST- ' 'ORAN' MOD1 CH1 ' ABS- '  (- ' PROG- '  0- .  PAS 0.25 1- . ) (- ' MOTS- ' 'SCAL' 'NU' ) ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV1REF  --  EV1 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- 'SI' IDESS1 ; 
-   ' TITR- ' 'Test donnee nom composante  +-  couleur ORANGE  +-  mot -- cle  ABS- '  ;
-   ' DESS- ' TDESS1  (- EV1REF ' ET- ' EV1 ) ;
- 'FINS' ; 
- *                                                                     * 
- * Tests Hachage :                                                     * 
- CH1       =-  ' MANU- ' 'CHML' MOD1 'SCAL'  0.5-  'RIGIDITE'  ;
- EV1       =-  ' HIST- ' 'ROUG' MOD1 CH1  (- ' PROG- '  0- .  0.3 0.5 0.52 0.67 0.93) ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV1REF  --  EV1 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- CH1       =-  ' MANU- ' 'CHML' MOD1 'SCAL'  -0.5-  'RIGIDITE'  ;
- EV1       =-  ' HIST- ' 'ROUG' MOD1 CH1 ' ABS- '  (- ' PROG- '  0- .  0.3 0.5 0.52 0.67 0.93) ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV1REF  --  EV1 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- 'SI' IDESS1 ; 
-   ' DESS- ' TDESS1  (- EV1REF ' ET- ' EV1 ) ;
- 'FINS' ; 
-   
- CH1       =-  ' MANU- ' 'CHML' MOD1 'SCAL'  -0.5-  'RIGIDITE'  ;
- EV1       =-  ' HIST- ' 'ROUG' MOD1 CH1  (- ' PROG- '  -1.1 -0.67 -0.52 -0.5 0.22) ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV1REF  --  EV1 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- 'SI' IDESS1 ; 
-   ' DESS- ' TDESS1  (- EV1REF ' ET- ' EV1 ) ;
- 'FINS' ; 
- *                                                                     * 
- *-------------------------------- 2D ---------------------------------* 
- *                                                                     * 
- *                                                                     * 
- * Maillage :                                                          * 
- P0       = 0. 0. ; 
- P1       = 1. 0. ; 
- P2       = 0. 1. ; 
- P3       = 1. 1. ; 
- *                                                                     * 
- *---------------- Test sur un champ a une composante -----------------* 
- *                                                                     * 
- S1        =-  ' MANU- ' 'TRI3' P0 P1 P2  ;
- MOD1      =-  ' MODE- ' S1 'MECANIQUE'  ;
- *                                                                     * 
- * Par defaut, definir aux rigidites car pas d'appel a CHASUP :        * 
- CHE1      =-  ' MANU- ' 'CHML' MOD1 'SCAL'  1- . 'RIGIDITE'  ;
- EV1       =-  ' HIST- ' 'ROUG' MOD1 CHE1  (- ' PROG- '  0.9-  PAS  0.02 1.1) ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EVREF1  --  EV1 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- * Aux stresses ? 
- CHE1      =-  ' MANU- ' 'CHML' MOD1 'SCAL'  1- . 'STRESSES'  ;
- EV2       =-  ' HIST- ' 'ORAN' MOD1 CHE1  (- ' PROG- '  0.9-  PAS  0.02 1.1)-  'SCAL'  ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EVREF1  --  EV2 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- * Au centre de gravite ? 
- CHE1      =-  ' MANU- ' 'CHML' MOD1 'SCAL'  1- . 'GRAVITE'  ;
- EV3       =-  ' HIST- ' 'VERT' MOD1 CHE1  (- ' PROG- '  0.9-  PAS  0.02 1.1)-  'SCAL'  ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EVREF1  --  EV3 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- * Aux noeuds ? 
- CHE1      =-  ' MANU- ' 'CHML' MOD1 'SCAL'  1- . 'NOEUD'  ;
- EV4       =-  ' HIST- ' 'BLEU' MOD1 CHE1  (- ' PROG- '  0.9-  PAS  0.02 1.1) ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EVREF1  --  EV4 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- CHE1      =-  ' MANU- ' 'CHML' MOD1 'SCAL'  1- . 'MASSE'  ;
- EV5       =-  ' HIST- ' 'JAUN' MOD1 CHE1  (- ' PROG- '  0.9-  PAS  0.02 1.1) ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EVREF1  --  EV5 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- 'SI' IDESS1 ; 
-   ' TITR- ' 'Champ avec  1-  composante : aux points supports des RIGIDITEs'  ;
-   ' DESS- ' TDESS1  (- EVREF1 ' ET- ' EV1 )-  'XBOR'  0.88 1.12-  'YBOR'  -5.0 55- .  ;
-   ' TITR- ' 'Champ avec  1-  composante : aux points supports des STRESSES'  ;
-   ' DESS- ' TDESS1  (- EVREF1 ' ET- ' EV2 )-  'XBOR'  0.88 1.12-  'YBOR'  -5.0 55- .  ;
-   ' TITR- ' 'Champ avec  1-  composante : au centre de GRAVITE'  ;
-   ' DESS- ' TDESS1  (- EVREF1 ' ET- ' EV3 )-  'XBOR'  0.88 1.12-  'YBOR'  -5.0 55- .  ;
-   ' TITR- ' 'Champ avec  1-  composante : aux NOEUDs'  ;
-   ' DESS- ' TDESS1  (- EVREF1 ' ET- ' EV4 )-  'XBOR'  0.88 1.12-  'YBOR'  -5.0 55- .  ;
-   ' TITR- ' 'Champ avec  1-  composante : aux points supports de la MASSE'  ;
-   ' DESS- ' TDESS1  (- EVREF1 ' ET- ' EV5 )-  'XBOR'  0.88 1.12-  'YBOR'  -5.0 55- .  ;
- 'FINS' ; 
- *                                                                     * 
- *------------- Test sur un champ a plusieurs composantes -------------* 
- *                                                                     * 
- * On en profite pour tester sur des elements TRI6 :                   * 
- MOD1      =-  ' MODE- ' S1 'MECANIQUE'  ;
- *                                                                     * 
- CHE1      =-  ' MANU- ' 'CHML' MOD1 'TOTO'  1.1-  'TITI'  0.5-  'RIGIDITE'  ;
- *                                                                     * 
- * Traitement de toutes les composantes ? 
- EV1       =-  ' HIST- ' 'ROUG' MOD1 CHE1  (- ' PROG- '  0- .  PAS 0.2 2- . ) ;
- *                                                                     * 
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- * Avec un LISMOTS : 
- CHE1      =-  ' MANU- ' 'CHML' MOD1 'TOTO'  1- . 'GRAVITE'  ;
- CHE1      =-  CHE1 ' ET- '  (- ' MANU- ' 'CHML' MOD1 'TITI'  0.5-  'GRAVITE' ) ;
- EV2       =-  ' HIST- ' 'GRIS' MOD1 CHE1  (- ' PROG- '  0- .  PAS 0.2 2- . ) (- ' MOTS- ' 'TITI' 'TOTO' 'TATA' ) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- EVREF1   = EVREF1 + EVREF2 ; 
- *                                                                     * 
- * Une seule composante demande avec un MOT :                          * 
- CHE1      =-  ' MANU- ' 'CHML' MOD1 'TOTO'  1- . 'NOEUD'  ;
- CHE1      =-  CHE1 ' ET- '  (- ' MANU- ' 'CHML' MOD1 'TITI'  0.5-  'NOEUD' ) ;
- EV3       =-  ' HIST- ' 'AZUR' MOD1 CHE1  (- ' PROG- '  0- .  PAS 0.1 1- . )-  'TITI'  ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EVREF2  --  EV3 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- * Une seule composante demande avec un LISTMOTS :                     * 
- CHE1      =-  ' MANU- ' 'CHML' MOD1 'TOTO'  1- . 'MASSE'  ;
- CHE1      =-  CHE1 ' ET- '  (- ' MANU- ' 'CHML' MOD1 'TITI'  0.5-  'MASSE' ) ;
- EV4       =-  ' HIST- ' 'VIOL' MOD1 CHE1  (- ' PROG- '  0- .  PAS 0.1 1- . ) (- ' MOTS- ' 'TITI' 'SCAL' ) ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EVREF2  --  EV4 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- 'SI' IDESS1 ; 
-   ' TITR- ' 'Champ a  2-  composantes : sans les preciser'  ;
-   ' DESS- ' TDESS1  (- EVREF1 ' ET- ' EV1 ) ;
-   ' TITR- ' 'Champ a  2-  composantes : en les precisant avec un Listmots'  ;
-   ' DESS- ' TDESS1  (- EVREF1 ' ET- ' EV2 ) ;
-   ' TITR- ' 'Champ a  2-  composantes : composante demandee avec  MOT- '  ;
-   ' DESS- ' TDESS1  (- EVREF2 ' ET- ' EV3 ) ;
-   ' TITR- ' 'Champ a  2-  composantes : composante demandee avec LISTMOTS'  ;
-   ' DESS- ' TDESS1  (- EVREF2 ' ET- ' EV4 ) ;
- 'FINS' ; 
- *                                                                     * 
- *-------------------- Test sur element quadrangle --------------------* 
- *                                                                     * 
- S1        =-  ' MANU- ' 'QUA4' P0 P1 P3 P2  ;
- MOD1      =-  ' MODE- ' S1 'MECANIQUE'  ;
- CHE1      =-  ' MANU- ' 'CHML' MOD1 'TOTO'  1- . 'TITI'  0.5-  'STRESSES'  ;
- EV1       =-  ' HIST- ' 'ROSE' MOD1 CHE1  (- ' PROG- '  0- .  PAS 0.5 2- . )-  'TOTO'  ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EVREF1  --  EV1 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- 'SI' IDESS1 ; 
-   ' TITR- ' 'Avec QUA4 aux points supports des STRESSES'  ;
-   ' DESS- ' TDESS1  (- EVREF1 ' ET- ' EV1 ) ;
- 'FINS' ; 
- *                                                                     * 
- MOD1      =-  ' MODE- ' S1 'THERMIQUE'  ;
- CHE1      =-  ' MANU- ' 'CHML' MOD1 'TOTO'  -1- . 'TITI'  0.5-  'GRAVITE'  ;
- EV1       =-  ' HIST- ' 'VERT' MOD1 CHE1  (- ' PROG- '  -2- .  PAS 0.08 0- . )-  'TOTO'  ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EVREF1  --  EV1 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- 'SI' IDESS1 ; 
-   ' TITR- ' 'Thermique avec QUA4 au centre de gravite'  ;
-   ' DESS- ' TDESS1  (- EVREF1 ' ET- ' EV1 ) ;
- 'FINS' ; 
- *                                                                     * 
- MOD1      =-  ' MODE- ' S1 'THERMIQUE'  ;
- CHE1      =-  ' MANU- ' 'CHML' MOD1 'TOTO'  1- . 'TITI'  0.5-  'RIGIDITE'  ;
- EV1       =-  ' HIST- ' 'JAUN' MOD1 CHE1  (- ' PROG- '  0- .  PAS 0.25 1- . )-  'TITI'  ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EVREF1  --  EV1 )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- 'SI' IDESS1 ; 
-   ' TITR- ' 'Thermique avec QUA8 aux points supports de la RIGIDITE'  ;
-   ' DESS- ' TDESS1  (- EVREF1 ' ET- ' EV1 ) ;
- 'FINS' ; 
- *                                                                     * 
- *-------------- Test sur maillages a plusieurs elements --------------* 
- *                                                                     * 
- *                                                                     * 
- S0       = S1 'ET' S2 ; 
- 'SI' IDESS1 ; 
-   ' TITR- ' 'Maillage a plusieurs elements'  ;
- 'FINS' ; 
- *                                                                     * 
- MOD1      =-  ' MODE- ' S1 'THERMIQUE'  ;
- MOD2      =-  ' MODE- ' S2 'THERMIQUE'  ;
- MOD0     = MOD1 'ET' MOD2 ; 
- *                                                                     * 
- * Champ constant sur modele a 2 sous-zones :                          * 
- CH1       =-  ' MANU- ' 'CHML' MOD0 'SCAL'  1- . 'STRESSES'  ;
- EV1       =-  ' HIST- ' 'ROUG' CH1 MOD0  (- ' PROG- '  0- .  PAS 0.5 2- . )-  'SCAL'  ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV1  --  EV1REF )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- * Champ constant a partir de 2 champs :                               * 
- CH1       = (- ' MANU- ' 'CHML' MOD1 'SCAL'  1- . 'NOEUD' )-  ' ET- '  (- ' MANU- ' 'CHML' MOD2 'SCAL'  1- . 'NOEUD' )  ;
- EV1       =-  ' HIST- ' 'ROUG' CH1 MOD0  (- ' PROG- '  0- .  PAS 0.5 2- . )-  'SCAL'  ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV1  --  EV1REF )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- * Composantes differentes dans chaque zone :                          * 
- CH2       = (- ' MANU- ' 'CHML' MOD1 'SCAL'  1- . 'STRESSES' )-  ' ET- '  (- ' MANU- ' 'CHML' MOD2 'TEST'  3- . 'STRESSES' )  ;
- EV2       =-  ' HIST- ' 'ROUG' CH2 MOD0  (- ' PROG- '  0- .  PAS 0.5 2- . )-  'SCAL'  ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV2  --  EV2REF )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- * Idem mais Listmots en argument :                                    * 
- EV2       =-  ' HIST- ' 'ROUG' CH2 MOD0  (- ' PROG- '  0- .  PAS 0.5 2- . ) (- ' MOTS- ' 'SCAL' 'TITI' ) ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV2  --  EV2REF )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- * Idem mais on veut toutes les composantes :                          * 
- EV3       =-  ' HIST- ' 'VERT' CH2 MOD0  (- ' PROG- '  0- .  PAS 1- .  4- . ) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- * Idem en donnant un Listmots :                                       * 
- EV3       =-  ' HIST- ' 'VERT' CH2 MOD0  (- ' PROG- '  0- .  PAS 1- .  4- . ) (- ' MOTS- ' 'SCAL' 'TEST' ) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- * Une composante sur tout le maillage, un que sur 1 zone :            * 
- CH4       = (- ' MANU- ' 'CHML' MOD0 'SCAL'  1- . 'STRESSES' )-  ' ET- '  (- ' MANU- ' 'CHML' MOD2 'TEST'  3- . 'STRESSES' )  ;
- EV4       =-  ' HIST- ' CH4 MOD0  (- ' PROG- '  0- .  PAS 1- .  4- . )-  'SCAL'  ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV4  --  EV4REF )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- * Idem mais uniquement compsante 1 zone :                             * 
- EV4       =-  ' HIST- ' CH4 MOD0  (- ' PROG- '  0- .  PAS 1- .  4- . )-  'TEST'  ;
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV4  --  EV4REF )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- * Sur 2 composantes :                                                 * 
- EV4       =-  ' HIST- ' 'BLEU' CH4 MOD0  (- ' PROG- '  0- .  PAS 1- .  4- . ) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- 'SI' IDESS1 ; 
-   ' TITR- ' 'Resultats sur maillage a plusieurs elts.'  ;
-   ' DESS- ' TDESS1  (- EV1REF ' ET- ' EV1 ) ;
-   ' DESS- ' TDESS1  (- EV2REF ' ET- ' EV2 ) ;
-   ' DESS- ' TDESS2  (- EV3REF ' ET- ' EV3 ) ;
-   ' DESS- ' TDESS2  (- EV4REF ' ET- ' EV4 ) ;
- 'FINS' ; 
- *                                                                     * 
- * Avec 2 modeles Meca. :                                              * 
- MOD1      =-  ' MODE- ' S1 'MECANIQUE'  ;
- MOD2      =-  ' MODE- ' S2 'MECANIQUE'  ;
- MOD0     = MOD1 'ET' MOD2 ; 
- *                                                                     * 
- * Melange de points supports :                                        * 
- CH1       = (- ' MANU- ' 'CHML' MOD0 'SCAL'  1- . 'MASSE' )-  ' ET- '  (- ' MANU- ' 'CHML' MOD2 'TEST'  3- . 'MASSE' )  ;
- EV1       =-  ' HIST- ' 'ROUG' CH1 MOD0  (- ' PROG- '  0- .  PAS 0.6 3- .  PAS 1.4 10- . ) (- ' MOTS- ' 'SCAL' 'TEST' ) ;
- EV2REF    =-  ' EVOL- ' 'ROSE' ' MANU- ' ' TYPE- ' ' HIST- '  (- ' PROG- '  0- .  PAS 0.6 3- .  PAS 1.4 10- . )-  'SCAL'  (- ' PROG- '  5 * 0- .  (1- .  / 1.4) 5 * 0- . ) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- 'SI' IDESS1 ; 
-    ' DESS- ' TDESS1  ((- EV1REF  +-  EV2REF )-  ' ET- ' EV1 ) ;
- 'FINS' ; 
- *                                                                     * 
- *---------------------------------------------------------------------* 
- *                                                                     * 
- *                        FIN <<~PETITS TESTS~>>                       * 
- *                                                                     * 
- *---------------------------------------------------------------------* 
- *                                                                     * 
- 'SINO' ; 
-   P0       = 0. 0. ; 
-   P1       = 1. 0. ; 
-   P2       = 0. 1. ; 
-   P3       = 1. 1. ; 
- 'FINS' ; 
- *                                                                     * 
- *------------------------ "Vrai Gros Maillage" -----------------------* 
- *                                                                     * 
- S0       = S1 'ET' S2 ; 
- *                                                                     * 
- * Avec 2 modeles Meca. :                                              * 
- MOD1      =-  ' MODE- ' S1 'MECANIQUE'  ;
- MOD2      =-  ' MODE- ' S2 'MECANIQUE'  ;
- MOD0     = MOD1 'ET' MOD2 ; 
- *                                                                     * 
- * Creation d'un champ de variable aleatoires :                        * 
- CHPO1     =-  ' BRUI- ' 'BLAN' 'UNIF'  5- .  6.66-  S0  ;
- CHAM1     =-  ' CHAN- ' 'CHAM' CHPO1 MOD0 'GRAVITE'  ;
- 'SI' IDESS1 ; 
-   ' TITR- ' ' Champ d"une variable scalaire aleatoire  (- ditrib.  uniforme)- '  ;
- 'FINS' ; 
- *                                                                     * 
- * ATTENTION : X1 + grand que le MINI de CHAM1, LX1 ne couvre donc pas * 
- *             tout l'intervalle de valeurs :                          * 
- X1       = -4.5 ; 
- X2       = 19. ; 
- XPAS1    = 0.5 ; 
- LX1       =-  ' PROG- ' X1 PAS XPAS1 X2  ;
- 'REPE' BOU1 NB1 ; 
-   XI1       =-  ' EXTR- '  (- ' REDU- ' CHAM1 ELI1 )-  'SCAL'  1 1 1 ;
-   'SI' (XI1 '<' X1) ; 
-     'ITER' BOU1 ; 
-   'FINS' ; 
-   NI1      = ('ENTI' ((XI1 - X1) / XPAS1)) + 1 ; 
-   'SI' (NI1 'EGA' 0) ; 
-     'ITER' BOU1 ; 
-   'FINS' ; 
-   YI1       = (- ' MESU- ' ELI1 ) /-  XPAS1  ;
-   'SI' (NI1 '>' 1) ; 
-     LYI1      = (- ' PROG- '  (- NI1  - 1) * 0- . )-  ' ET- '  (- ' PROG- ' YI1 )-  ' ET- '  (- ' PROG- '  (- N1  --  NI1 ) * 0- . ) ;
-   'SINO' ; 
-     LYI1      = (- ' PROG- ' YI1 )-  ' ET- '  (- ' PROG- '  (- N1  --  NI1 ) * 0- . ) ;
-   'FINS' ; 
-   LY1      = LY1 + LYI1 ; 
- 'FIN' BOU1 ; 
- 'REPE' BOU1 NB1 ; 
-   XI1       =-  ' EXTR- '  (- ' REDU- ' CHAM1 ELI1 )-  'SCAL'  1 1 1 ;
-   'SI' (XI1 '<' X1) ; 
-     'ITER' BOU1 ; 
-   'FINS' ; 
-   NI1      = ('ENTI' ((XI1 - X1) / XPAS1)) + 1 ; 
-   'SI' (NI1 'EGA' 0) ; 
-     'ITER' BOU1 ; 
-   'FINS' ; 
-   YI1       = (- ' MESU- ' ELI1 ) /-  XPAS1  ;
-   'SI' (NI1 '>' 1) ; 
-     LYI1      = (- ' PROG- '  (- NI1  - 1) * 0- . )-  ' ET- '  (- ' PROG- ' YI1 )-  ' ET- '  (- ' PROG- '  (- N1  --  NI1 ) * 0- . ) ;
-   'SINO' ; 
-     LYI1      = (- ' PROG- ' YI1 )-  ' ET- '  (- ' PROG- '  (- N1  --  NI1 ) * 0- . ) ;
-   'FINS' ; 
-   LY1      = LY1 + LYI1 ; 
- 'FIN' BOU1 ; 
- EV1REF    =-  EV1REF  / (- ' MESU- ' S0 ) ;
- *                                                                     * 
- EV1       =-  ' HIST- ' 'VERT' CHAM1 MOD0 LX1  (- ' MOTS- ' 'TITI' 'SCAL' ' GREE- ' ) ;
- *                                                                     * 
- ERR1      =-  ERR1  + (- ' MAXI- ' ' ABS- '  (- ' EXTR- '  (- EV1  --  EV1REF )-  ' ORDO- ' )) ;
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- * Verification que l'integrale de la densite de distribution sur      * 
- * sur l'intervalle d'echantillonnage vaut la fraction surfacique des  * 
- * valeurs du champ concernees :                                       * 
- MESU1REF  = (- ' INTG- ' MOD0  (- ' MASQ- ' CHAM1 'EGSUPE'  -4.5)) / (- ' MESU- '  S0 ) ;
- ERR1     = ERR1 + (MESU1REF - MESU1) ; 
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- 'SI' IDESS1 ; 
-   ' DESS- ' TDESS1  (- EV1REF ' ET- ' EV1 ) ;
- 'FINS' ; 
- *                                                                     * 
- *-------------------------------- 3D ---------------------------------* 
- *                                                                     * 
- *                                                                     * 
- V0        =-  ' ELIM- '  (- V1 ' ET- ' V2 ) 0.001 ;
- MOD1      =-  ' MODE- ' V1 'MECANIQUE'  ;
- MOD2      =-  ' MODE- ' V2 'MECANIQUE'  ;
- MOD0     = MOD1 'ET' MOD2 ; 
- *                                                                     * 
- * Construction d'un champ de variables aleatoires ;                   * 
- CHPO1     =-  ' BRUI- ' 'BLAN' 'UNIF' PI  (- ' EXP- '  1.9)-  V0  ;
- CHPO1     =-  CHPO1 ' NOMC- ' 'VAR1'  ;
- CHPO2     =-  ' BRUI- ' 'BLAN' 'GAUS'  (-4- .  / 3- . ) (- ' LOG- '  29- . )-  V0  ;
- CHPO2     =-  CHPO2 ' NOMC- ' 'VAR2'  ;
- CHAM1     =-  ' CHAN- ' 'CHAM'  (- CHPO1 ' ET- ' CHPO2 )-  MOD0 'GRAVITE'  ;
- 'SI' IDESS1 ; 
-   ' TITR- ' ' Champ de  2-  variables scalaires aleatoires'  ;
- 'FINS' ; 
- *                                                                     * 
- X1       = -15. ; 
- X2       = 17. ; 
- XPAS1    = 0.8 ; 
- LX1       =-  ' PROG- ' X1 PAS XPAS1 X2  ;
- *                                                                     * 
- 'REPE' BOU1 NB1 ; 
-   XI1       =-  ' EXTR- '  (- ' REDU- ' CHAM1 ELI1 )-  'VAR1'  1 1 1 ;
-   'SI' (XI1 '<' X1) ; 
-     'ITER' BOU1 ; 
-   'FINS' ; 
-   NI1      = ('ENTI' ((XI1 - X1) / XPAS1)) + 1 ; 
-   'SI' (NI1 'EGA' 0) ; 
-     'ITER' BOU1 ; 
-   'FINS' ; 
-   YI1       = (- ' MESU- ' ELI1 ) /-  XPAS1  ;
-   'SI' (NI1 '>' 1) ; 
-     LYI1      = (- ' PROG- '  (- NI1  - 1) * 0- . )-  ' ET- '  (- ' PROG- ' YI1 )-  ' ET- '  (- ' PROG- '  (- N1  --  NI1 ) * 0- . ) ;
-   'SINO' ; 
-     LYI1      = (- ' PROG- ' YI1 )-  ' ET- '  (- ' PROG- '  (- N1  --  NI1 ) * 0- . ) ;
-   'FINS' ; 
-   LY1      = LY1 + LYI1 ; 
- 'FIN' BOU1 ; 
- 'REPE' BOU1 NB1 ; 
-   XI1       =-  ' EXTR- '  (- ' REDU- ' CHAM1 ELI1 )-  'VAR1'  1 1 1 ;
-   'SI' (XI1 '<' X1) ; 
-     'ITER' BOU1 ; 
-   'FINS' ; 
-   NI1      = ('ENTI' ((XI1 - X1) / XPAS1)) + 1 ; 
-   'SI' (NI1 'EGA' 0) ; 
-     'ITER' BOU1 ; 
-   'FINS' ; 
-   YI1       = (- ' MESU- ' ELI1 ) /-  XPAS1  ;
-   'SI' (NI1 '>' 1) ; 
-     LYI1      = (- ' PROG- '  (- NI1  - 1) * 0- . )-  ' ET- '  (- ' PROG- ' YI1 )-  ' ET- '  (- ' PROG- '  (- N1  --  NI1 ) * 0- . ) ;
-   'SINO' ; 
-     LYI1      = (- ' PROG- ' YI1 )-  ' ET- '  (- ' PROG- '  (- N1  --  NI1 ) * 0- . ) ;
-   'FINS' ; 
-   LY1      = LY1 + LYI1 ; 
- 'FIN' BOU1 ; 
- EV1REF    =-  EV1REF  / (- ' MESU- ' V0 ) ;
- *                                                                     * 
- 'REPE' BOU1 NB1 ; 
-   XI1       =-  ' EXTR- '  (- ' REDU- ' CHAM1 ELI1 )-  'VAR2'  1 1 1 ;
-   'SI' (XI1 '<' X1) ; 
-     'ITER' BOU1 ; 
-   'FINS' ; 
-   NI1      = ('ENTI' ((XI1 - X1) / XPAS1)) + 1 ; 
-   'SI' (NI1 'EGA' 0) ; 
-     'ITER' BOU1 ; 
-   'FINS' ; 
-   YI1       = (- ' MESU- ' ELI1 ) /-  XPAS1  ;
-   'SI' (NI1 '>' 1) ; 
-     LYI1      = (- ' PROG- '  (- NI1  - 1) * 0- . )-  ' ET- '  (- ' PROG- ' YI1 )-  ' ET- '  (- ' PROG- '  (- N1  --  NI1 ) * 0- . ) ;
-   'SINO' ; 
-     LYI1      = (- ' PROG- ' YI1 )-  ' ET- '  (- ' PROG- '  (- N1  --  NI1 ) * 0- . ) ;
-   'FINS' ; 
-   LY2      = LY2 + LYI1 ; 
- 'FIN' BOU1 ; 
- 'REPE' BOU1 NB1 ; 
-   XI1       =-  ' EXTR- '  (- ' REDU- ' CHAM1 ELI1 )-  'VAR2'  1 1 1 ;
-   'SI' (XI1 '<' X1) ; 
-     'ITER' BOU1 ; 
-   'FINS' ; 
-   NI1      = ('ENTI' ((XI1 - X1) / XPAS1)) + 1 ; 
-   'SI' (NI1 'EGA' 0) ; 
-     'ITER' BOU1 ; 
-   'FINS' ; 
-   YI1       = (- ' MESU- ' ELI1 ) /-  XPAS1  ;
-   'SI' (NI1 '>' 1) ; 
-     LYI1      = (- ' PROG- '  (- NI1  - 1) * 0- . )-  ' ET- '  (- ' PROG- ' YI1 )-  ' ET- '  (- ' PROG- '  (- N1  --  NI1 ) * 0- . ) ;
-   'SINO' ; 
-     LYI1      = (- ' PROG- ' YI1 )-  ' ET- '  (- ' PROG- '  (- N1  --  NI1 ) * 0- . ) ;
-   'FINS' ; 
-   LY2      = LY2 + LYI1 ; 
- 'FIN' BOU1 ; 
- EV2REF    =-  EV2REF  / (- ' MESU- ' V0 ) ;
- ' MESS- ' '  ****-  Duree Gibiane en 3D  =-   '  (0.001 *-  TABTPS.'TEMPS_CPU'.'INITIAL' )-  '  (- s )- '  ;
- *                                                                     * 
- EV1       =-  ' HIST- ' 'VERT' CHAM1 MOD0 LX1  (- ' MOTS- ' 'VAR2' 'VAR1' 'CHUE' );
- ' MESS- ' '  ****-  Duree d"execution  HIST-  en 3D  =-  '  (0.001 *-  TABTPS.'TEMPS_CPU'.'INITIAL' )-  '  (- s )- '  ;
- *                                                                     * 
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- * Verification que la somme des ordonnees vaut 1 :                    * 
- ERR1     = ERR1 + (1. - MESU1) ; 
- 'SI' ILIST1 ; 
- 'FINS' ; 
- ERR1     = ERR1 + (1. - MESU1) ; 
- 'SI' ILIST1 ; 
- 'FINS' ; 
- *                                                                     * 
- 'SI' IDESS1 ; 
-   ' DESS- ' TDESS2  (- EV1REF ' ET- ' EV2REF ' ET- ' EV1 ) ;
- 'FINS' ; 
- *                                                                     * 
- * Tests raffinement pas d'echantillonnage :                           * 
- 'SI' FAUX ; 
-   XPAS2    = 0.4 ; 
-   LX2       =-  ' PROG- ' X1 PAS XPAS2 X2  ;
-   EV2       =-  ' HIST- ' 'ROUG' MOD0 CHAM1 LX2  (- ' MOTS- ' 'VAR2' ) ;
-   XPAS3    = 0.8 / 3. ; 
-   LX3       =-  ' PROG- ' X1 PAS XPAS3 X2  ;
-   EV3       =-  ' HIST- ' 'JAUN' MOD0 CHAM1 LX3  (- ' MOTS- ' 'VAR2' ) ;
- 'FINS' ; 
- *                                                                     * 
- *--------------------------- Tests erreurs ---------------------------* 
- *                                                                     * 
- 'SI' ITEST1 ; 
-   CHE1      =-  ' MANU- ' 'CHML' MOD1 'SCAL'  1- . 'STRESSES'  ;
-   LR1       = PROG 0- .  PAS 0.5 2- .  ;
- * Si on passe un CHPO ? :                                             * 
- * Si on ne passe pas le modele ? :                                    * 
- * Si on ne passe pas le "bon" modele ? :                              * 
-   EV0       =-  ' HIST- ' CHE1 MOD2 LR1  ;
- * Si on ne passe pas le LISTREEL ; 
- * Si une composante demandee n'existe pas ?                           * 
-   EV0       =-  ' HIST- ' MOD1 CHE1 LR1 'TEST'  ;
- * Si aucune composante de la liste n'existe ?                         * 
-   EV0       =-  ' HIST- ' MOD1 CHE1 LR1  (- ' MOTS- ' 'TEST' 'TOTO' ) ;
- * Si on donne un CHAML de MOT ? * 
-   CHE1      =-  ' MANU- ' 'CHML' MOD1 'TITI' xxx 'STRESSES'  ;
-   EV0       =-  ' HIST- ' MOD1 CHE1 LR1  ;
- 'FINS' ; 
- *                                                                     * 
- 'SI' (ERR1 > 1.E-10) ; 
-   ' MESS- ' '  ****-  Erreur  =-  ' ERR1  ;
- 'FINS' ; 
- *                                                                     * 
- 'FIN' ; 
-   
-   
-   
-   
-   
-   
-   
-   
-   
-   
-   
-   
-   
-   
-