Download dynamod3.procedur

Back to the list

   1 : * DYNAMOD3  PROCEDUR  NOBODY    92/01/01    00:00:00     001                    
   2 : 'DEBPROC'  DYNAMOD3    BASMOD*'BASEMODA'  SOLUDY*'SOLUTION'                     
   3 :                      TABL_MAX*'TABLE   '  ;                                     
   4 : ************************************************************************        
   5 : *                                                                               
   6 : *                           D Y N A M O D 3                                     
   7 : *                           ---------------                                     
   8 : *                                                                               
   9 : * FONCTION:                                                                     
  10 : * ---------                                                                     
  11 : *                                                                               
  12 : *     RECHERCHE D'UN MAXIMUM D'UNE COMPOSANTE EN VALEUR ABSOLUE AU              
  13 : *     COURS DU TEMPS APRES RECOMBINAISON DES MODES.                             
  14 : *                                                                               
  15 : * PHRASE D'APPEL (EN GIBIANE):                                                  
  16 : * ----------------------------                                                  
  17 : *                                                                               
  18 : *     RESUTAB  =  DYNAMOD3  BASMOD  SOLUDY  TABLMAX  ;                          
  19 : *                                                                               
  20 : * OPERANDES:                                                                    
  21 : * ----------                                                                    
  22 : *                                                                               
  23 : *   BASMOD   :  OBJET BASEMODA.                                                 
  24 : *                                                                               
  25 : *   SOLUDY   :  OBJET SOLUTION.                                                 
  26 : *                                                                               
  27 : *   TABLMAXI :  TABLE CONTENANT AUTANT DE TABLES (N) QUE DE MAXIMUM             
  28 : *               DEMANDE.                                                        
  29 : *               I VARIANT DE 1 A N                                              
  30 : *               TABLMAXI I 'TYPE' : UN MOT, TYPE DU MAXIMUM                     
  31 : *                        (DEPL,ACCE,VITE,LIAI,CONT).                            
  32 : *               TABLMAXI I 'STRUCTURE' : OBJET BASEMODA, (FACULTATIF)           
  33 : *                        SOUS-STRUCTURE OU DOIT S'EFFECTUER LA                  
  34 : *                        RECOMBINAISON.                                         
  35 : *               TABLMAXI I 'NUMERO' : OBJET ENTIER, (FACULTATIF)                
  36 : *                        NUMERO DE LA SOUS-STRUCTURE OU DOIT                    
  37 : *                        S'EFFECTUER LA RECOMBINAISON.                          
  38 : *               PUIS,                                                           
  39 : *               TABLMAXI I 'POINT' : OBJET CHPOINT,MAILLAGE,ATTACHE.            
  40 : *                        POINT OU DOIT S'EFFECTUER LA DEMANDE DE                
  41 : *                        MAXIMUM.                                               
  42 : *               TABLMAXI I 'COMPOSANTE' : UN MOT, NOM DE LA COMPOSANTE          
  43 : *                        DU POINT.                                              
  44 : *               OU,                                                             
  45 : *               TABLMAXI I 'CHPOINT' : OBJET CHPOINT, CHAMP CONTENANT           
  46 : *                        LES POINTS ET LES COMPOSANTES OU DOIT                  
  47 : *                        S'EFFECTUER LA DEMANDE DU MAXIMUM.                     
  48 : *                                                                               
  49 : *                                                                               
  50 : * RESULTATS:                                                                    
  51 : * ----------                                                                    
  52 : *                                                                               
  53 : *   RESUTAB  :  OBJET TABLE, INDICEE DE 1 A N                                   
  54 : *               I VARIANT DE 1 A N                                              
  55 : *               RESUTAB I : UN FLOTTANT, RESULTAT DE LA RECHERCHE               
  56 : *                           DEMANDEE.                                           
  57 : *                                                                               
  58 : * VARIABLES:                                                                    
  59 : * ----------                                                                    
  60 : *                                                                               
  61 : *   NBTABLE   : NOMBRE DE TABLES CONTENANT LE MAXIMUM A RECHERCHER.             
  62 : *   NBINDICE  : NOMBRE D'INDICES DANS UNE TABLE.                                
  63 : *                                                                               
  64 : *                                                                               
  65 : *                                                                               
  66 : * AUTEUR, DATE DE CREATION:                                                     
  67 : * -------------------------                                                     
  68 : *                                                                               
  69 : *     P.M.    L.V.      30 MARS 1988                                            
  70 : *                                                                               
  71 : ************************************************************************        
  72 : *                                                                               
  73 : SI = 'MOT' 'SI' ;SINON = 'MOT' 'SINON' ;FINSI = 'MOT' 'FINSI' ;                 
  74 : *                                                                               
  75 : RESUMAXI = 'TABLE' ;                                                            
  76 : NBTABLE = 'DIMENSION' TABL_MAX ;                                                
  77 : INDICE1 = 0 ;                                                                   
  78 : *                                                                               
  79 : 'REPETER' BOUCLE1 NBTABLE ;                                                     
  80 :     INDICE1 = INDICE1 '+' 1 ;                                                   
  81 :     TAB_MAXI = TABL_MAX.INDICE1 ;                                               
  82 : *                                                                               
  83 : *    ------ LECTURE DE LA TABLE ------                                          
  84 : *                                                                               
  85 :     TYP_MAX = 'MOT' TAB_MAXI.'TYPE' ;                                           
  86 :     SI ('EXISTE' TAB_MAXI 'POINT') ;                                            
  87 :        PTS_MAX = TAB_MAXI.'POINT' ;                                             
  88 :        COMP_MAX = 'MOT' TAB_MAXI.'COMPOSANTE' ;                                 
  89 :     SINON ;                                                                     
  90 :        'ERREUR' 'OPTION MAXI INDISPONIBLE POUR UN CHPOINT' ;                    
  91 :        CHP_MAX = TAB_MAXI.'CHPOINT' ;                                           
  92 :     FINSI ;                                                                     
  93 :     TXT_MAXI = 'TEXTE' ' ' ;                                                    
  94 :     SI ('EXISTE' TAB_MAXI 'STRUCTURE') ;                                        
  95 :        _MSTRUC_ = TAB_MAXI.'STRUCTURE' ;                                        
  96 :        TXT_MAXI = 'TEXTE' TXT_MAXI '_MSTRUC_' ;                                 
  97 :     FINSI ;                                                                     
  98 :     SI ('EXISTE' TAB_MAXI 'NUMERO') ;                                           
  99 :        _MNUME_ = TAB_MAXI.'NUMERO' ;                                            
 100 :        TXT_MAXI = 'TEXTE' TXT_MAXI '_MNUME_' ;                                  
 101 :     FINSI ;                                                                     
 102 : *                                                                               
 103 : *       ------- OPERATEUR  MAXI -------                                         
 104 : *                                                                               
 105 :      SI ('EXISTE' PTS_MAX) ;                                                    
 106 :         MONTYPE = 'TYPE' PTS_MAX ;                                              
 107 :         SI ('EGA' MONTYPE 'ATTACHE ') ;                                         
 108 :            'ERREUR' 'OPTION MAXI INDISPONIBLE POUR UN OBJET ATTACHE';           
 109 :            MAXI1 = 'EVOL' 'SOLU' SOLUDY TYP_MAX PTS_MAX COMP_MAX ;              
 110 :         SINON ;                                                                 
 111 :            MAXI1 = 'EVOL' 'RECO' BASMOD TXT_MAXI SOLUDY TYP_MAX                 
 112 :                    PTS_MAX COMP_MAX ;                                           
 113 :            LISTORD = 'EXTR' MAXI1 'ORDO' ;                                      
 114 :            LISTORD2 = 'ABS' LISTORD ;                                           
 115 :            XMAXI = 'MAXI' LISTORD2 ;                                            
 116 :            'DETR' LISTORD2 ;                                                    
 117 :         FINSI ;                                                                 
 118 : *+*  A DEVELOPPER ULTERIEUREMENT.                                               
 119 : *    SINON ;                                                                    
 120 : *       MAXI1 = 'EVOL' 'RECO' BASMOD TXT_MAXI SOLUDY TYP_MAX CHP_MAX ;          
 121 :      FINSI ;                                                                    
 122 : *                                                                               
 123 : *       ---------- RESULTAT -----------                                         
 124 : *                                                                               
 125 :      RESUMAXI.INDICE1 = XMAXI ;                                                 
 126 :      'DETR' MAXI1 ;                                                             
 127 : *                                                                               
 128 : 'FIN' BOUCLE1 ;                                                                 
 129 : *                                                                               
 130 : 'FINPROC' RESUMAXI ;                                                            

© Cast3M 2003 - All rights reserved.
Disclaimer