Download coq2mas.procedur

Back to the list

   1 : * COQ2MAS   PROCEDUR  PASCAL    14/01/23    21:15:02     7911           
   2 : *************************************************************************
   3 : *
   4 : *
   5 : *  Génère un maillage volumique à partir d'un modèle 
   6 : *            de coques multicouches
   7 : *
   8 : **************************************************************************
   9 : DEBPROC COQ2MAS MOD1*MMODEL MAT1*MCHAML MOTCLE/MOT TAB1*TABLE; 
  10 : *
  11 : OPTI ELEM CUB8;
  12 : *
  13 : ZONMOD = extr MOD1 ZONE;
  14 : *
  15 : FLAGDEFO = FAUX;
  16 : FLAGCONT = FAUX;
  17 : FLAGVARI = FAUX;
  18 : FLAGRELA = FAUX;
  19 : *
  20 : SI (NEG (TYPE TAB1) TABLE);
  21 :   TAB1 = TABLE;
  22 : FINSI;
  23 : *
  24 : * On regarde si la table TAB1 existe sinon on la crée
  25 : * On la complète le cas échéant
  26 : *
  27 : SI (EXISTE TAB1);
  28 : *
  29 :     SI (EXISTE TAB1 'DEPLACEMENTS');
  30 :       FLAGDEFO = VRAI;
  31 :       NDEFO = DIME (TAB1.'DEPLACEMENTS');
  32 :      SINON;
  33 :       FLAGDEFO = FAUX;
  34 :       NDEFO = 0;
  35 :     FINSI;
  36 : *
  37 :     SI (EXISTE TAB1 'CONTRAINTES');
  38 :       FLAGCONT = VRAI;
  39 :       NCONT = DIME (TAB1.'CONTRAINTES');
  40 :      SINON;
  41 :       FLAGCONT = FAUX;
  42 :       NCONT = 0;
  43 :     FINSI;
  44 : *
  45 : *
  46 :     SI (EXISTE TAB1 'VARIABLES_INTERNES');
  47 :       FLAGVARI = VRAI;
  48 :       NVARI = DIME (TAB1.'VARIABLES_INTERNES');
  49 :      SINON;
  50 :       FLAGVARI = FAUX;
  51 :       NVARI = 0;
  52 :     FINSI;
  53 : *
  54 : *
  55 : * Si on veut creer les relations pour les sections au droit des noeuds
  56 : *
  57 :     BLCOQ3D = MOT 'BLCOQ3D';
  58 :     SI (EXISTE TAB1 'RELATION_3D');
  59 :       SI (EGA (TAB1.'RELATION_3D') VRAI);
  60 :         FLAGRELA = VRAI;
  61 :       SINON; 
  62 :         FLAGRELA = FAUX;      
  63 :       FINSI;
  64 :     SINON;
  65 :       FLAGRELA = FAUX;
  66 :     FINSI;
  67 : *
  68 :     SI (NON (EXISTE TAB1 'MODELE'));
  69 :       TAB1. 'MODELE' = TABLE;
  70 :     FINSI; 
  71 : *
  72 :     SI (NON (EXISTE TAB1 'MATERIAU'));
  73 :       TAB1. 'MATERIAU' = TABLE;
  74 :     FINSI; 
  75 : *
  76 :     SI (NON (EXISTE TAB1 'MAILLAGE_FIBRE_MOYENNE'));
  77 :       TAB1. 'MAILLAGE_FIBRE_MOYENNE' = TABLE;
  78 :     FINSI; 
  79 : *
  80 :     SI (NON (EXISTE TAB1 'MAILLAGE_FIBRE_INFERIEURE'));
  81 :       TAB1. 'MAILLAGE_FIBRE_INFERIEURE' = TABLE;
  82 :     FINSI; 
  83 : *
  84 :     SI (NON (EXISTE TAB1 'MAILLAGE_FIBRE_SUPERIEURE'));
  85 :       TAB1. 'MAILLAGE_FIBRE_SUPERIEURE' = TABLE;
  86 :     FINSI;    
  87 : *
  88 :     SI (NON (EXISTE TAB1 'MAILLAGE_VOLUMIQUE'));
  89 :       TAB1. 'MAILLAGE_VOLUMIQUE' = TABLE;
  90 :     FINSI; 
  91 : *
  92 :     SI (NON (EXISTE TAB1 'DEPLACEMENTS_FIBRE_MOYENNE'));
  93 :       TAB1. 'DEPLACEMENTS_FIBRE_MOYENNE' = TABLE;
  94 :     FINSI; 
  95 : *
  96 :     SI (NON (EXISTE TAB1 'VARI_FIBRE_MOYENNE'));
  97 :       TAB1. 'VARI_FIBRE_MOYENNE' = TABLE;
  98 :     FINSI;   
  99 : *
 100 :     SI (NON (EXISTE TAB1 'CONTRAINTES_FIBRE_MOYENNE'));
 101 :       TAB1. 'CONTRAINTES_FIBRE_MOYENNE' = TABLE;
 102 :     FINSI;  
 103 : *
 104 :     SI (NON (EXISTE TAB1 'CONTRAINTES_FIBRE_SUPERIEURE'));
 105 :       TAB1. 'CONTRAINTES_FIBRE_SUPERIEURE' = TABLE;
 106 :     FINSI;   
 107 : *
 108 :     SI (NON (EXISTE TAB1 'CONTRAINTES_FIBRE_INFERIEURE'));
 109 :       TAB1. 'CONTRAINTES_FIBRE_INFERIEURE' = TABLE;
 110 :     FINSI;   
 111 : *
 112 :     SI (NON (EXISTE TAB1 'CONTRAINTES_VOLUMIQUE'));
 113 :       TAB1. 'CONTRAINTES_VOLUMIQUE' = TABLE;
 114 :     FINSI;                      
 115 : *
 116 :     SI (NON (EXISTE TAB1 'DEPLACEMENTS_FIBRE_INFERIEURE'));
 117 :       TAB1. 'DEPLACEMENTS_FIBRE_INFERIEURE' = TABLE;
 118 :     FINSI; 
 119 : *
 120 :     SI (NON (EXISTE TAB1 'DEPLACEMENTS_FIBRE_SUPERIEURE'));
 121 :       TAB1. 'DEPLACEMENTS_FIBRE_SUPERIEURE' = TABLE;
 122 :     FINSI;    
 123 : *
 124 :     SI (NON (EXISTE TAB1 'DEPLACEMENTS_VOLUMIQUE'));
 125 :       TAB1. 'DEPLACEMENTS_VOLUMIQUE' = TABLE;
 126 :     FINSI;       
 127 : *
 128 :     SI (NON (EXISTE TAB1 'NORMALE'));
 129 :       TAB1. 'NORMALE' = TABLE;
 130 :     FINSI;       
 131 : *
 132 : SINON;
 133 : *
 134 :  TAB1 = TABLE;
 135 :  TAB1. 'MODELE' = TABLE;
 136 :  TAB1. 'MATERIAU' = TABLE;
 137 :  TAB1. 'MAILLAGE_FIBRE_MOYENNE' = TABLE; 
 138 :  TAB1. 'MAILLAGE_FIBRE_INFERIEURE' = TABLE; 
 139 :  TAB1. 'MAILLAGE_FIBRE_SUPERIEURE' = TABLE; 
 140 :  TAB1. 'MAILLAGE_VOLUMIQUE' = TABLE; 
 141 :  TAB1. 'DEPLACEMENTS_FIBRE_MOYENNE' = TABLE; 
 142 :  TAB1. 'DEPLACEMENTS_FIBRE_INFERIEURE' = TABLE; 
 143 :  TAB1. 'DEPLACEMENTS_FIBRE_SUPERIEURE' = TABLE; 
 144 :  TAB1. 'DEPLACEMENTS_VOLUMIQUE' = TABLE; 
 145 :  TAB1. 'NORMALE' = TABLE;
 146 :  TAB1. 'VARI_FIBRE_MOYENNE' = TABLE;
 147 :  TAB1. 'CONTRAINTES_FIBRE_MOYENNE' = TABLE;
 148 :  TAB1. 'CONTRAINTES_FIBRE_INFERIEURE' = TABLE;
 149 :  TAB1. 'CONTRAINTES_FIBRE_SUPERIEURE' = TABLE;
 150 :  TAB1. 'CONTRAINTES_VOLUMIQUE' = TABLE;
 151 : *
 152 : FINSI; 
 153 : *
 154 : SI FLAGDEFO;
 155 :  REPETER LAB3 NDEFO;
 156 :    i3 = (INDEX (TAB1. 'DEPLACEMENTS')) . &lab3 ; 
 157 :    TAB1. 'DEPLACEMENTS_FIBRE_MOYENNE' . i3 = TABLE;
 158 :    TAB1. 'DEPLACEMENTS_FIBRE_INFERIEURE' . i3 = TABLE; 
 159 :    TAB1. 'DEPLACEMENTS_FIBRE_SUPERIEURE' . i3 = TABLE; 
 160 :    TAB1. 'DEPLACEMENTS_VOLUMIQUE' . i3 = TABLE; 
 161 :  FIN LAB3;
 162 : FINSI;
 163 : SI FLAGCONT;
 164 :  REPETER LAB3 NCONT;
 165 :    i3 = (INDEX (TAB1. 'CONTRAINTES')) . &lab3 ; 
 166 :   TAB1. 'CONTRAINTES_FIBRE_MOYENNE' . i3 = TABLE;  
 167 :   TAB1. 'CONTRAINTES_FIBRE_INFERIEURE' . i3 = TABLE;
 168 :   TAB1. 'CONTRAINTES_FIBRE_SUPERIEURE' . i3 = TABLE;  
 169 :   TAB1. 'CONTRAINTES_VOLUMIQUE' . i3 = TABLE;  
 170 :  FIN LAB3;
 171 : FINSI;
 172 : SI FLAGVARI;
 173 :  REPETER LAB3 NVARI;
 174 :    i3 = (INDEX (TAB1. 'VARIABLES_INTERNES')) . &lab3 ; 
 175 :    TAB1. 'VARI_FIBRE_MOYENNE' . i3 = TABLE;    
 176 :  FIN LAB3;
 177 : FINSI;
 178 : *
 179 : * Fin de la lecture de la table d'entrée
 180 : *
 181 : * Génération du maillage
 182 : *
 183 : 
 184 : NBZONE = ENTIER ((DIME ZONMOD)/2.);
 185 : *
 186 : * On boucle sur les zones
 187 : *
 188 : REPETER LAB1 NBZONE;
 189 : *
 190 :   I1= &LAB1;
 191 : *
 192 : * On ne crée les maillages que s'ils n'existent pas
 193 : *
 194 :   SI (NON (EXISTE  TAB1.'MAILLAGE_FIBRE_MOYENNE'  I1));
 195 : *
 196 :    MESHCOUI =  ZONMOD.(2*I1);
 197 :    MODCOUI = ZONMOD.((2*I1) - 1);
 198 :    MATCOUI = REDU MAT1 MODCOUI;
 199 : *
 200 :    VVJ = VSUR MODCOUI NORM;
 201 :    VVJP = EXCO (CHAN VVJ CHPO MODCOUI)
 202 :         (mots 'VX' 'VY' 'VZ') (mots 'UX' 'UY' 'UZ') NATURE DIFFUS;
 203 :    EPAP = CHAN (EXCO MATCOUI 'EPAI' SCAL) CHPO MODCOUI;        
 204 :    SI (EXISTE MATCOUI 'EXCE');        
 205 :      EXCP = CHAN (EXCO MATCOUI 'EXCE' SCAL) CHPO MODCOUI;
 206 :    SINON;
 207 :      EXCP = 0.*EPAP;
 208 :    FINSI;
 209 : 
 210 :    MESHMOY = MESHCOUI PLUS (excp*vvjp);
 211 :    MESHINF = (MESHCOUI PLUS ((excp - (0.5*epap))*vvjp)); 
 212 :    MESHSUP = (MESHCOUI PLUS ((excp + (0.5*epap))*vvjp));
 213 :    MESHVOL  = VOLU 1 MESHSUP MESHINF; 
 214 : *           
 215 :    TAB1. 'MODELE'  . I1 = MODCOUI;
 216 :    TAB1. 'MATERIAU' . I1 = MATCOUI; 
 217 :    TAB1. 'NORMALE' . I1 = VVJP;
 218 :    TAB1. 'MAILLAGE_FIBRE_MOYENNE' . I1 = MESHMOY;
 219 :    TAB1. 'MAILLAGE_FIBRE_INFERIEURE' . I1 = MESHINF;
 220 :    TAB1. 'MAILLAGE_FIBRE_SUPERIEURE' . I1 = MESHSUP;
 221 :    TAB1. 'MAILLAGE_VOLUMIQUE'. I1 = MESHVOL;
 222 : *
 223 :   SI FLAGRELA;
 224 :     NNN1 = NBNO MESHCOUI;   
 225 :     REPETER LAB100 NNN1;
 226 :        I100 = &LAB100;
 227 :        MESHINF2 = CHAN POI1 MESHINF; 
 228 :        MESHSUP2 = CHAN POI1 MESHSUP; 
 229 :        MESHCOU2 = CHAN POI1 MESHCOUI; 
 230 :        PSUPJ = MESHINF2 POIN I100;
 231 :        PINFJ = MESHSUP2 POIN I100;
 232 :        PCOQJ = MESHCOU2 POIN I100;
 233 :        BLCOQJ = RELA CORI DEPL ROTA PCOQJ (PSUPJ ET PINFJ);
 234 :        SI (EGA (TYPE BLCOQ3D) MOT);
 235 :          BLCOQ3D = BLCOQJ;
 236 :        SINON;
 237 :          BLCOQ3D = BLCOQ3D ET BLCOQJ;
 238 :        FINSI; 
 239 :     FIN LAB100;
 240 :   FINSI;
 241 : *
 242 :    SI (I1 EGA 1);
 243 :     TAB1. 'MODELE'  . 'TOTAL' = MODCOUI;
 244 :     TAB1. 'MATERIAU' . 'TOTAL' = MATCOUI; 
 245 : *    TAB1. 'NORMALE' . 'TOTAL' = VVJP;
 246 :     TAB1. 'MAILLAGE_FIBRE_MOYENNE' . 'TOTAL' = MESHMOY;
 247 :     TAB1. 'MAILLAGE_FIBRE_INFERIEURE' . 'TOTAL' = MESHINF;
 248 :     TAB1. 'MAILLAGE_FIBRE_SUPERIEURE' . 'TOTAL' = MESHSUP;
 249 :     TAB1. 'MAILLAGE_VOLUMIQUE'. 'TOTAL' = MESHVOL;
 250 :    SINON;
 251 :     TAB1. 'MODELE'  . 'TOTAL' = 
 252 :      TAB1. 'MODELE'  . 'TOTAL'  et MODCOUI;
 253 :     TAB1. 'MATERIAU' . 'TOTAL' = 
 254 :      TAB1. 'MATERIAU' . 'TOTAL' et MATCOUI; 
 255 : *    TAB1. 'NORMALE' . 'TOTAL' = 
 256 : *    TAB1. 'NORMALE' . 'TOTAL' et VVJP;
 257 :     TAB1. 'MAILLAGE_FIBRE_MOYENNE' . 'TOTAL' = 
 258 :       TAB1. 'MAILLAGE_FIBRE_MOYENNE' . 'TOTAL'  
 259 :        et MESHMOY;
 260 :     TAB1. 'MAILLAGE_FIBRE_INFERIEURE' . 'TOTAL' = 
 261 :      TAB1. 'MAILLAGE_FIBRE_INFERIEURE' . 'TOTAL'  
 262 :      et MESHSUP;
 263 :     TAB1. 'MAILLAGE_FIBRE_SUPERIEURE' . 'TOTAL' = 
 264 :      TAB1. 'MAILLAGE_FIBRE_SUPERIEURE' . 'TOTAL'  
 265 :      et MESHINF;
 266 :     TAB1. 'MAILLAGE_VOLUMIQUE'. 'TOTAL' = 
 267 :      TAB1. 'MAILLAGE_VOLUMIQUE'. 'TOTAL' et MESHVOL;
 268 :    FINSI;
 269 : *
 270 :   FINSI;
 271 : *
 272 : * Transport des contraintes
 273 : *
 274 :   SI FLAGCONT;
 275 :    MESHORI = (EXTR (TAB1 . 'MODELE' . I1) MAILLAGE) ;
 276 :    MODCOUI = TAB1 . 'MODELE' . I1;
 277 :    MATCOUI = TAB1 . 'MATERIAU' . I1;   
 278 :    REPETER LAB21 NCONT;
 279 :      i21 = (INDEX (TAB1.'CONTRAINTES')). &LAB21; 
 280 :      CONJ = REDU ((TAB1.'CONTRAINTES'). i21) MODCOUI;
 281 :      CONJM = CALP CONJ MODCOUI MATCOUI MOYE;
 282 :      CONJS = CALP CONJ MODCOUI MATCOUI SUPE;
 283 :      CONJI = CALP CONJ MODCOUI MATCOUI INFE;
 284 :      CONJMB = CHAN CHPO CONJM MODCOUI;
 285 :      CONJSB = CHAN CHPO CONJS MODCOUI;
 286 :      CONJIB = CHAN CHPO CONJI MODCOUI;  
 287 : *        
 288 :      CONJM3D = DEDU CONJMB TRAN MESHORI
 289 :          (TAB1. 'MAILLAGE_FIBRE_MOYENNE' . I1);
 290 :      TAB1. 'CONTRAINTES_FIBRE_MOYENNE' . i21 . I1 = CONJM3D;
 291 :      SI (I1 EGA 1);
 292 :        TAB1. 'CONTRAINTES_FIBRE_MOYENNE' . i21 . 'TOTAL' 
 293 :          = CONJM3D;
 294 :      SINON;
 295 :        TAB1. 'CONTRAINTES_FIBRE_MOYENNE' . i21 . 'TOTAL' = 
 296 :          (TAB1. 'CONTRAINTES_FIBRE_MOYENNE' . i21 . 'TOTAL') 
 297 :          ET CONJM3D;    
 298 :      FINSI;  
 299 :      CONJS3D = DEDU CONJSB TRAN MESHORI
 300 :          (TAB1. 'MAILLAGE_FIBRE_SUPERIEURE' . I1);
 301 :      TAB1. 'CONTRAINTES_FIBRE_SUPERIEURE' . i21 . I1 = CONJS3D;
 302 :      SI (I1 EGA 1);
 303 :        TAB1. 'CONTRAINTES_FIBRE_SUPERIEURE' . i21 . 'TOTAL' 
 304 :          = CONJS3D;
 305 :      SINON;
 306 :        TAB1. 'CONTRAINTES_FIBRE_SUPERIEURE' . i21 . 'TOTAL' = 
 307 :          (TAB1. 'CONTRAINTES_FIBRE_SUPERIEURE' . i21 . 'TOTAL') 
 308 :          ET CONJS3D;    
 309 :      FINSI;  
 310 :      CONJI3D = DEDU CONJIB TRAN MESHORI
 311 :          (TAB1. 'MAILLAGE_FIBRE_INFERIEURE' . I1);
 312 :      TAB1. 'CONTRAINTES_FIBRE_INFERIEURE' . i21 . I1 = CONJi3D;
 313 :      SI (I1 EGA 1);
 314 :        TAB1. 'CONTRAINTES_FIBRE_INFERIEURE' . i21 . 'TOTAL' 
 315 :          = CONJi3D;
 316 :      SINON;
 317 :        TAB1. 'CONTRAINTES_FIBRE_INFERIEURE' . i21 . 'TOTAL' = 
 318 :          (TAB1. 'CONTRAINTES_FIBRE_INFERIEURE' . i21 . 'TOTAL') 
 319 :          ET CONJI3D;    
 320 :      FINSI;  
 321 : *
 322 :      TAB1. 'CONTRAINTES_VOLUMIQUE' . i21 . I1 
 323 :           = CONJS3D ET CONJI3D;
 324 :      SI (I1 EGA 1);
 325 :        TAB1. 'CONTRAINTES_VOLUMIQUE' . i21 . 'TOTAL' 
 326 :          = CONJS3D ET CONJI3D;
 327 :      SINON;
 328 :        TAB1. 'CONTRAINTES_VOLUMIQUE' . i21. 'TOTAL' = 
 329 :          (TAB1. 'CONTRAINTES_VOLUMIQUE' . i21 . 'TOTAL') 
 330 :          ET CONJS3D ET CONJI3D;    
 331 :      FINSI;          
 332 :    FIN LAB21;       
 333 :   FINSI;
 334 : *
 335 : *
 336 : * Transport des variables internes
 337 : *
 338 :   SI FLAGVARI;
 339 :    MESHORI = (EXTR (TAB1 . 'MODELE' . I1) MAILLAGE) ;
 340 :    MODCOUI = TAB1 . 'MODELE' . I1;
 341 :    MATCOUI = TAB1 . 'MATERIAU' . I1;      
 342 :    REPETER LAB22 NVARI;
 343 :      i22 = (INDEX (TAB1.'VARIABLES_INTERNES')). &LAB22; 
 344 :      VARJ = REDU ((TAB1.'VARIABLES_INTERNES'). i22) MODCOUI;
 345 :      VARJB = CHAN CHPO VARJ MODCOUI;
 346 :      VARJ3D = DEDU VARJB TRAN MESHORI
 347 :          (TAB1. 'MAILLAGE_FIBRE_MOYENNE' . I1);
 348 :      TAB1. 'VARI_FIBRE_MOYENNE' . i22 . I1 = VARJ3D;
 349 :      SI (I1 EGA 1);
 350 :        TAB1. 'VARI_FIBRE_MOYENNE' . i22 . 'TOTAL' 
 351 :          = VARJ3D;
 352 :      SINON;
 353 :        TAB1. 'VARI_FIBRE_MOYENNE' . i22 . 'TOTAL' = 
 354 :          (TAB1. 'VARI_FIBRE_MOYENNE' . i22 . 'TOTAL') 
 355 :          ET VARJ3D;    
 356 :      FINSI;  
 357 :    FIN LAB22;       
 358 :   FINSI;
 359 : *
 360 : * Calcul des deformees sur le 3D
 361 : *
 362 :   SI FLAGDEFO;
 363 : *
 364 :      VECOP = TAB1. 'NORMALE' . I1;
 365 :      MESHORI = (EXTR (TAB1 . 'MODELE' . I1) MAILLAGE) ;
 366 :      MODCOUI = TAB1 . 'MODELE' . I1;
 367 :      MATCOUI = TAB1 . 'MATERIAU' . I1; 
 368 :      EPAP = CHAN (EXCO MATCOUI EPAI SCAL) CHPO MODCOUI;     
 369 :      SI (EXISTE MATCOUI 'EXCE');        
 370 :        EXCP = CHAN (EXCO MATCOUI 'EXCE' SCAL) CHPO MODCOUI;
 371 :      SINON;
 372 :        EXCP = 0.*EPAP;
 373 :      FINSI;       
 374 :      VECOPM= (DEDU (EXCP* VECOP) TRAN MESHORI
 375 :             (TAB1. 'MAILLAGE_FIBRE_MOYENNE' . I1));  
 376 :      VECOPI= (DEDU ((excp - (0.5*epap))*VECOP)
 377 :               TRAN MESHORI
 378 :             (TAB1. 'MAILLAGE_FIBRE_INFERIEURE' . I1));  
 379 :      VECOPS= (DEDU ((excp + (0.5*epap))*VECOP)
 380 :               TRAN MESHORI
 381 :             (TAB1. 'MAILLAGE_FIBRE_SUPERIEURE' . I1)); 
 382 : *
 383 :    REPETER LAB2 NDEFO;
 384 :      i2 = (INDEX (TAB1.'DEPLACEMENTS')). &LAB2; 
 385 :      DEPJ = REDU ((TAB1.'DEPLACEMENTS'). i2) MESHORI;
 386 : *
 387 :      DEPT = EXCO DEPJ (mots UX UY UZ) (mots UX UY UZ)
 388 :              NATURE DIFFUS;
 389 :      DEPR = EXCO DEPJ (mots RX RY RZ) (mots RX RY RZ)
 390 :              NATURE DIFFUS;
 391 : *
 392 :      DEPTM DEPRM = DEDU DEPT DEPR TRAN MESHORI
 393 :             (TAB1. 'MAILLAGE_FIBRE_MOYENNE' . I1);
 394 :      DEPMOY =  DEPTM +
 395 :         ((EXCO DEPRM RY SCAL)*(EXCO VECOPM UZ UX))
 396 :       - ((EXCO DEPRM RZ SCAL)*(EXCO VECOPM UY UX))
 397 :       + ((EXCO DEPRM RZ SCAL)*(EXCO VECOPM UX UY))
 398 :       - ((EXCO DEPRM RX SCAL)*(EXCO VECOPM UZ UY));
 399 :      DEPMOY =  DEPMOY +
 400 :         ((EXCO DEPRM RX SCAL)*(EXCO VECOPM UY UZ))
 401 :       - ((EXCO DEPRM RY SCAL)*(EXCO VECOPM UX UZ));
 402 :      DEPMOY = CHAN ATTRIBUT DEPMOY NATURE   DIFFUS;
 403 :      TAB1. 'DEPLACEMENTS_FIBRE_MOYENNE' . i2 . I1 = DEPMOY;
 404 :      SI (I1 EGA 1);
 405 :        TAB1. 'DEPLACEMENTS_FIBRE_MOYENNE' . i2 . 'TOTAL' 
 406 :          = DEPMOY;
 407 :      SINON;
 408 :        TAB1. 'DEPLACEMENTS_FIBRE_MOYENNE' . i2. 'TOTAL' = 
 409 :          (TAB1. 'DEPLACEMENTS_FIBRE_MOYENNE' . i2 . 'TOTAL') 
 410 :          ET DEPMOY;    
 411 :      FINSI;
 412 : *
 413 : *
 414 :      DEPTI DEPRI = DEDU DEPT DEPR TRAN MESHORI
 415 :             (TAB1. 'MAILLAGE_FIBRE_INFERIEURE' . I1);
 416 :      DEPINF =  DEPTI +
 417 :         ((EXCO DEPRI RY SCAL)*(EXCO VECOPI UZ UX))
 418 :       - ((EXCO DEPRI RZ SCAL)*(EXCO VECOPI UY UX))
 419 :       + ((EXCO DEPRI RZ SCAL)*(EXCO VECOPI UX UY))
 420 :       - ((EXCO DEPRI RX SCAL)*(EXCO VECOPI UZ UY));
 421 :      DEPINF =  DEPINF +
 422 :         ((EXCO DEPRI RX SCAL)*(EXCO VECOPI UY UZ))
 423 :       - ((EXCO DEPRI RY SCAL)*(EXCO VECOPI UX UZ));
 424 :      DEPINF = CHAN ATTRIBUT DEPINF NATURE   DIFFUS;
 425 :      TAB1. 'DEPLACEMENTS_FIBRE_INFERIEURE' . i2 . I1 = DEPINF;
 426 :      SI (I1 EGA 1);
 427 :        TAB1. 'DEPLACEMENTS_FIBRE_INFERIEURE' . i2 . 'TOTAL' 
 428 :          = DEPINF;
 429 :      SINON;
 430 :        TAB1. 'DEPLACEMENTS_FIBRE_INFERIEURE' . i2. 'TOTAL' = 
 431 :          (TAB1. 'DEPLACEMENTS_FIBRE_INFERIEURE' . i2 . 'TOTAL') 
 432 :          ET DEPINF;    
 433 :      FINSI;
 434 : *
 435 : *
 436 :      DEPTS DEPRS = DEDU DEPT DEPR TRAN MESHORI
 437 :             (TAB1. 'MAILLAGE_FIBRE_SUPERIEURE' . I1);
 438 :      DEPSUP =  DEPTS +
 439 :         ((EXCO DEPRS RY SCAL)*(EXCO VECOPS UZ UX))
 440 :       - ((EXCO DEPRS RZ SCAL)*(EXCO VECOPS UY UX))
 441 :       + ((EXCO DEPRS RZ SCAL)*(EXCO VECOPS UX UY))
 442 :       - ((EXCO DEPRS RX SCAL)*(EXCO VECOPS UZ UY));
 443 :      DEPSUP =  DEPSUP +
 444 :         ((EXCO DEPRS RX SCAL)*(EXCO VECOPS UY UZ))
 445 :       - ((EXCO DEPRS RY SCAL)*(EXCO VECOPS UX UZ));
 446 :      DEPSUP = CHAN ATTRIBUT DEPSUP NATURE   DIFFUS;
 447 :      TAB1. 'DEPLACEMENTS_FIBRE_SUPERIEURE' . i2 . I1 = DEPSUP;
 448 :      SI (I1 EGA 1);
 449 :        TAB1. 'DEPLACEMENTS_FIBRE_SUPERIEURE' . i2 . 'TOTAL' 
 450 :          = DEPSUP;
 451 :      SINON;
 452 :        TAB1. 'DEPLACEMENTS_FIBRE_SUPERIEURE' . i2. 'TOTAL' = 
 453 :          (TAB1. 'DEPLACEMENTS_FIBRE_SUPERIEURE' . i2 . 'TOTAL') 
 454 :          ET DEPSUP;    
 455 :      FINSI;
 456 : *
 457 :      TAB1. 'DEPLACEMENTS_VOLUMIQUE' . i2 . I1 
 458 :           = DEPSUP ET DEPINF;
 459 :      SI (I1 EGA 1);
 460 :        TAB1. 'DEPLACEMENTS_VOLUMIQUE' . i2 . 'TOTAL' 
 461 :          = DEPSUP ET DEPINF;
 462 :      SINON;
 463 :        TAB1. 'DEPLACEMENTS_VOLUMIQUE' . i2. 'TOTAL' = 
 464 :          (TAB1. 'DEPLACEMENTS_VOLUMIQUE' . i2 . 'TOTAL') 
 465 :          ET DEPSUP ET DEPINF;    
 466 :      FINSI;
 467 : *
 468 :    FIN LAB2; 
 469 : *
 470 :   FINSI;
 471 : *
 472 : * Fin de la boucle sur la sous-zone
 473 : *
 474 : FIN LAB1;
 475 : *
 476 : MESH3D = TAB1. 'MAILLAGE_VOLUMIQUE'. 'TOTAL';
 477 : *
 478 : SI FLAGRELA;
 479 :      TAB1.'RELATION_3D' = BLCOQ3D;
 480 : FINSI;
 481 : *
 482 : 'FINPROC' MESH3D;
 483 : *
 484 :                                                                                 
 485 :  
 486 :  
 487 :  
 488 :  
 489 :  
 490 :  

© Cast3M 2003 - All rights reserved.
Disclaimer