1 : * PHASAGE PROCEDUR CHAT 12/08/07 21:15:09 7481 2 : ************************************************************************ 3 : * Procedure de calcul du phasage de mise en tension des cables 4 : ************************************************************************ 5 : DEBPROC PHASAGE TABPHAS ; 6 : MESS 'ENTREE dans phasage' ; 7 : *------------------------------------------------------------------ 8 : * 9 : LDEPOU=FAUX; 10 : 'SI' ( 'EXISTE' TABPHAS 'DEPOU') ; 11 : LDEPOU=TABPHAS . 'DEPOU' ; 12 : 'FINSI' ; 13 : 'SI' LDEPOU;TABPHAS . 'COURBES' = TABLE ; 'FINSI' ; 14 : LPRECO=VRAI ; 15 : SI (NON ( EXISTE TABPHAS 'PRECONTRAINTE' )) ; 16 : MESS 'TABLE DES ETAPES DE MISE EN PRECONTRAINTE ABSENTE' ; 17 : LPRECO=FAUX ; 18 : SINON ; 19 : SI (NEG (TYPE (TABPHAS . 'PRECONTRAINTE')) 'TABLE ') ; 20 : MESS 'INDICE ETAPE DOIT ETRE UNE TABLE' ; 21 : QUITTER PHASAGE ; 22 : FINSI ; 23 : FINSI ; 24 : SI (NON ( EXISTE TABPHAS 'LEVEES' )) ; 25 : MESS 'TABLE DES LEVEES ABSENTE' ; 26 : QUITTER PHASAGE ; 27 : FINSI ; 28 : SI (NEG (TYPE (TABPHAS . 'LEVEES')) 'TABLE ') ; 29 : MESS 'INDICE LEVEES DOIT ETRE UNE TABLE' ; 30 : QUITTER PHASAGE ; 31 : FINSI ; 32 : SI (NON ( EXISTE TABPHAS 'BLOCAGES' ) ) ; 33 : MESS 'BLOCAGES MECANIQUES ABSENTS' ; 34 : QUITTER PHASAGE ; 35 : SINON ; 36 : CLTOT=TABPHAS . 'BLOCAGES' ; 37 : FINSI ; 38 : NSOUSL=1 ; 39 : SI (EXISTE TABPHAS 'SOUS_LEVEES') ; 40 : NSOUSL= TABPHAS.'SOUS_LEVEES' ; 41 : FINSI ; 42 : NSOUSL = MAXI ( LECT 1 NSOUSL) ; 43 : NSOUSP=1 ; 44 : SI (EXISTE TABPHAS 'SOUS_PRECONTRAINTES') ; 45 : NSOUSP= TABPHAS.'SOUS_PRECONTRAINTES' ; 46 : FINSI ; 47 : NSOUSP = MAXI ( LECT 1 NSOUSP) ; 48 : LFLUAGE=FAUX ; 49 : SI ( EXISTE TABPHAS 'FLUAGE') ;LFLUAGE=VRAI ; FINSI ; 50 : LRETRAIT=FAUX ; 51 : SI ( EXISTE TABPHAS 'RETRAIT'); LRETRAIT=VRAI ; FINSI ; 52 : LRESTE=FAUX ; 53 : SI ( EXISTE TABPHAS 'MOD_RESTE'); LRESTE=VRAI ; 54 : SI (NON ( EXISTE TABPHAS 'MAT_RESTE' )) ; 55 : MESS 'MATERIAU DU RESTE NON INDIQUE' ; 56 : QUITTER PHASAGE ; 57 : FINSI ; 58 : FINSI ; 59 : TLEVEE = TABPHAS . 'LEVEES' ; 60 : NPRECO=0 ; 61 : SI LPRECO;TETAP=TABPHAS.'PRECONTRAINTE';NPRECO=DIME TETAP;FINSI ; 62 : NBLEVE= DIME TLEVEE ; 63 : 'SI'('EXIS' TABPHAS 'TEMPS_FINAL') ; 64 : TEMPSFI = TABPHAS.'TEMPS_FINAL' ; 65 : TEMPSGRA= TEMPSFI*100. ; 66 : 'SINON' ; 67 : 'MESS' 'IL MANQUE LE TEMPS FINAL'; QUITTER PHASAGE ; 68 : 'FINSI' ; 69 : 'SI'('EXIS' TABPHAS 'TEMPS_MAX');TEMPSGRA=TABPHAS.'TEMPS_MAX' ; 70 : 'FINSI' ; 71 : * preparation du stockage de résultats de fluage et retrait 72 : SI LFLUAGE ; 73 : EPFLUAGE=TABLE ; 74 : TABPHAS . 'DFLUAGE' = EPFLUAGE ; 75 : NOMREGF= TABPHAS . 'FLUAGE' ; 76 : TFLUTE=TABLE; TFLUEP=TABLE ; COMTFLU=0 ; 77 : TABPHAS . 'TFLUTE' = TFLUTE; 78 : TABPHAS . 'TFLUEP' = TFLUEP; 79 : FINSI ; 80 : SI LRETRAIT ; 81 : EPRETRAI=TABLE ; 82 : TABPHAS . 'DRETRAIT' = EPRETRAI ; 83 : NOMREGR = TABPHAS . 'RETRAIT' ; 84 : TRETTE=TABLE; TRETEP=TABLE ; 85 : TABPHAS . 'TRETTE' = TRETTE; 86 : TABPHAS . 'TRETEP' = TRETEP; 87 : FINSI ; 88 : * 89 : * calcul des differents chargement correspondant à chacune 90 : * des levées. on les stocke dans la table poilevee 91 : * MOTOUT sera le modele total sans les cables id MATOUT 92 : * GEOBET sera le maillage du beton 93 : POILEVEE=TABLE ; 94 : 'REPETER' FOR NBLEVE ; 95 : MO= TLEVEE . &FOR . 'MODELE' ; 96 : MA= TLEVEE . &FOR . 'MATERIAU' ; 97 : GEO= 'EXTR' MO 'MAILLAGE' ; 98 : 'SI' (( 'EGA' &FOR NBLEVE) 'ET' LRESTE) ; 99 : MO = MO 'ET' TABPHAS. 'MOD_RESTE' ; 100 : MA = MA 'ET' TABPHAS. 'MAT_RESTE' ; 101 : 'FINSI' ; 102 : MAS= 'MASSE' MO MA ; 103 : 'SI' ('EGA' &FOR 1) ; 104 : GEOBET=GEO ; 105 : MOTOUT = MO ; 106 : MATOUT = MA ; 107 : 'SINON' ; 108 : GEOBET = GEOBET 'ET' GEO ; 109 : MOTOUT = MOTOUT 'ET' MO ; 110 : MATOUT = MATOUT 'ET' MA ; 111 : 'FINSI' ; 112 : GG = 'MANU' 'CHPO' GEO 1 'UZ' -9.81 ; 113 : FPO= MAS * GG ; 114 : POILEVEE . &FOR = FPO ; 115 : FIN FOR ; 116 : * 117 : * calcul de la premiere levée 118 : * On introduit le poids propre de la levee 1 et c'est tout. 119 : * seule la premiere levée a une resistance, les autres sont divisées 120 : * par 1000 121 : * pendant les levees on ne prend pas en compte le poids du reste 122 : MATCAL= TLEVEE . 1 . 'MATERIAU' ; 123 : CLCAL = CLTOT ; 124 : 'SI' ( NBLEVE > 1) ; 125 : * on fabrique un materiau bidon 126 : 'REPETER' ADDIMO ( NBLEVE - 1 ) ; 127 : MA = TLEVEE . ( &ADDIMO + 1 ) . 'MATERIAU' ; 128 : YOU = (EXCO MA 'YOUNG') * -0.9999 ; 129 : MOMA= MA + YOU ; 130 : MATCAL= MATCAL et MOMA ; 131 : 'FIN' ADDIMO ; 132 : 'FINSI' ; 133 : 'SI' LRESTE;MATCAL= MATCAL 'ET' TABPHAS . 'MAT_RESTE'; 'FINSI' ; 134 : * on accroche aussi les cables en leur donnant un module nul 135 : SI ( NPRECO > 0) ;IDETAP=0 ; 136 : REPETER BOETAP NPRECO ; 137 : IDETAP = IDETAP + 1 ; 138 : NDZONE = (DIME (TETAP . IDETAP) - 1) ; 139 : IDZON = 0 ; 140 : REPETER BOZONE NDZONE ; 141 : IDZON = IDZON + 1 ; 142 : MOBID = TETAP . IDETAP . IDZON . 'MODELE' ; 143 : mabid = TETAP . IDETAP . IDZON . 'MATERIAU' ; 144 : listcomp= 'EXTR' mabid 'COMP' ; 145 : COEFBID = 1.e-3 ; 146 : sectbid='EXCO' 'SECT' TETAP . IDETAP . IDZON . 'MATERIAU' ; 147 : sectbid= sectbid*COEFBID ; 148 : YOUNBID='EXCO' 'YOUN' TETAP . IDETAP . IDZON . 'MATERIAU' ; 149 : YOUNBID = COEFBID * YOUNBID ; 150 : 'SI' ( 'EXIS' listcomp 'TRACTION ') ; 151 : TRACBIO = COEFBID * 152 : (EXTR (TETAP . IDETAP . IDZON . 'TRACTION') 'ORDO') ; 153 : TRACBID = EVOL MANU 'EPS' 154 : (EXTR (TETAP . IDETAP . IDZON . 'TRACTION') 'ABSC') 155 : 'SIG (PA)' TRACBIO ; 156 : MATBID = MATE MOBID 'YOUN' YOUNBID 'NU' 0.3 157 : 'SECT' sectbid RHO 0.0000001 'TRAC' TRACBID ; 158 : 'SINON' ; 159 : MATBID = MATE MOBID 'YOUN' YOUNBID 'NU' 0.3 160 : 'SECT' sectbid RHO 0.0000001 ; 161 : 'FINSI' ; 162 : 'SI' (( IDZON + IDETAP) EGA 2) ; 163 : MODCABL=MOBID ; 164 : MATCABL=MATBID ; 165 : CLCABL= RELA 'ACCRO' (EXTR MOBID 'MAILLAGE') GEOBET ; 166 : 'SINON' ; 167 : MODCABL = MODCABL ET MOBID ; 168 : MATCABL = MATCABL ET MATBID ; 169 : CLTOT1 = RELA 'ACCRO' (EXTR MOBID 'MAILLAGE') GEOBET ; 170 : CLCABL = CLCABL ET CLTOT1 ; 171 : 'FINSI' ; 172 : FIN BOZONE ; 173 : FIN BOETAP ; 174 : MODCAL = MOTOUT ET MODCABL ; 175 : MATCAL = MATCAL ET MATCABL ; 176 : CLCAL= CLCABL ET CLTOT ; 177 : SINON ; 178 : MODCAL= MOTOUT ; 179 : CLCAL=CLTOT ; 180 : FINSI ; 181 : * determination d'un temps de calcul 182 : DTEMPS=0. ; 183 : SI ( nbleve > 1) ; dtemps = tlevee . 2 . 'INSTANT' * 0.001 ; 184 : SINON; SI (NPRECO > 0);DTEMPS= (TETAP . 1 . 'TPS') * 0.001; FINSI; 185 : FINSI ; 186 : 'SI' ('EGA' DTEMPS 0.) ; 'MESS' ' PROBLEME DE PAS DE TEMPS' ; 187 : 'QUITTER' PHASAGE ; 188 : 'FINSI' ; 189 : LTE = prog 0. DTEMPS TEMPSGRA ; 190 : LCOE= PROG 0. 1. 1. ; 191 : EVCH= EVOL MANU 'TEMPS' LTE 'COEF' LCOE ; 192 : FPO= poilevee.1 ; 193 : CHAPOI = CHARGE 'MECA' FPO EVCH ; 194 : 195 : * appel a pasapas pour calculer la premiere levee ; 196 : 197 : TABRES= TABLE ; 198 : TABPHAS.'TABRES' = TABRES ; 199 : TABRES . 'MODELE' = MODCAL ; 200 : TABRES . 'CARACTERISTIQUES' = MATCAL ; 201 : LISTTEMP = prog 0. dtemps ; 202 : TABRES . 'TEMPS_CALCULES'=LISTTEMP ; 203 : TABRES . 'BLOCAGES_MECANIQUES' = CLCAL ; 204 : TABRES . 'CHARGEMENT' = CHAPOI ; 205 : 'SI' ('EXIS' TABPHAS 'RIGIDITE_ADDITIONELLE' ) ; 206 : 'MESS' 'PRISE EN COMPTE DE RIGIDITE_ADDITIONELLE' ; 207 : TABRES . 'RIGIDITE_CONSTANTE' = 208 : TABPHAS . 'RIGIDITE_ADDITIONELLE' ; 209 : 'FINSI' ; 210 : PASAPAS TABRES ; 211 : TDER= DTEMPS ; 212 : 213 : NUMLEV = 1 ; 214 : *messs ' fin premier appel a pasaspas'; 215 : * 216 : * calcul du retrait pour tous les temps des levees 217 : * 218 : 'SI' LRETRAIT ; 219 : DEFONUL= 'ZERO' MODCAL 'DEFORMAT' ; 220 : TRETTE . 0 = 0.; TRETEP . 0 = DEFONUL ; COMRETR=0 ; 221 : 'SI' (NBLEVE > 1) ; 222 : REPETER BOURET ( NBLEVE - 1) ; 223 : NUMLEV=&BOURET + 1 ; 224 : TEMPCOUR= TLEVEE . NUMLEV . 'INSTANT' ; 225 : REPETER SOUSLEV ( NUMLEV - 1) ; 226 : MODBET=TLEVEE . &SOUSLEV . 'MODELE' ; 227 : RAYSECH=TLEVEE . &SOUSLEV . 'SECHAGE' ; 228 : TCOFFR= TLEVEE . &SOUSLEV . 'INSTANT' ; 229 : COEF1 = TLEVEE . &SOUSLEV . 'COEF1' ; 230 : COEF2 = TLEVEE . &SOUSLEV . 'COEF2' ; 231 : RET=RETRAIT NOMREGR MODBET RAYSECH 232 : TCOFFR TEMPCOUR COEF1 COEF2 ; 233 : 'SI' ( 'EGA' 1 &SOUSLEV) ; 234 : EPRETRAI. (&BOURET + 1)= RET +DEFONUL ; 235 : 'SINON' ; 236 : EPRETRAI. (&BOURET + 1)= EPRETRAI. (&BOURET + 1)+RET ; 237 : 'FINSI' ; 238 : 'FIN' SOUSLEV ; 239 : 'FIN' BOURET ; 240 : 'FINSI' ; 241 : 'FINSI' ; 242 : *messs ' fin travail sur le retrait ' ; 243 : * 244 : * calcul mecanique des autres levees 245 : * on calcule le temps précedent la levée à dtemps prés puis le 246 : * temps de la levée 247 : * Pour le premier des deux temps seul le fluage retrait est à 248 : * introduire si besoin est . Le materiau de la levee est remis 249 : * normalement pour le second temps et il faut aussi ajouter le poids 250 : * de la levée. 251 : TCONT= TABRES. 'CONTRAINTES' ; 252 : TTEMP= TABRES . 'TEMPS' ; 253 : 254 : FLUAG1=ZERO MODCAL 'DEFORMAT' ; 255 : 'SI' LFLUAGE; 256 : TFLUTE . 0 = 0. ; 257 : TFLUEP . 0 = FLUAG1 ; 258 : COMTFLU = 0 ; 259 : 'FINSI'; 260 : 261 : 'SI' ( NBLEVE > 1) ; 262 : 'REPETER' COULEE ( NBLEVE - 1) ; 263 : 264 : NUMLEV=&COULEE + 1 ; 265 : 266 : * temps des calcul 267 : TCAL= TLEVEE . NUMLEV . 'INSTANT' - dtemps ; 268 : * mess ' travail sur la coulée numero ' numlev 'tcal ' tcal; 269 : CHACAL= CHAPOI ; 270 : * definition du chargement 271 : * recuperation du retrait 272 : 'SI' LRETRAIT ; 273 : COMRETR=COMRETR + 1 ; 274 : TRETTE . COMRETR = TCAL * 1. ; 275 : TRETEP . COMRETR = EPRETRAI . NUMLEV ; 276 : COMRETR=COMRETR + 1 ; 277 : TRETTE . COMRETR = TLEVEE . NUMLEV . 'INSTANT' * 1. ; 278 : TRETEP . COMRETR = EPRETRAI . NUMLEV ; 279 : CHARRET = CHAR 'DEFI' TRETTE TRETEP ; 280 : CHACAL = CHACAL ET CHARRET ; 281 : 'FINSI' ; 282 : * calcul du fluage 283 : 'SI' LFLUAGE ; 284 : 285 : FLUAG1=ZERO MODCAL 'DEFORMAT' ; 286 : COMTFLU = COMTFLU + 1 ; 287 : TFLUTE . COMTFLU = TCAL * 1. ; 288 : 'REPETER' BOUFLU (NUMLEV - 1) ; 289 : 290 : MOLE= TLEVEE . &BOUFLU . 'MODELE' ; 291 : TCOUL=TLEVEE . &BOUFLU . 'INSTANT' ; 292 : MALE= TLEVEE . &BOUFLU . 'MATERIAU' ; 293 : RAYSECH= TLEVEE . &BOUFLU . 'SECHAGE' ; 294 : COEF1 = TLEVEE . &BOUFLU . 'COEF1' ; 295 : COEF2 = TLEVEE . &BOUFLU . 'COEF2' ; 296 : NF= NUMLEV - &BOUFLU; NDE=(&BOUFLU - 1)*(1+NSOUSL) + 1 ; 297 : * mess ' on travaille sur levee ' &BOUFLU ' nf ' nf ' nde ' nde; 298 : 'REPETER' BOPAS NF ; 299 : NSI = ( &BOPAS - 1 ) * (1+NSOUSL) + NDE ; 300 : SIG1 =TCONT . NSI ; 301 : SIG0 =TCONT . (NSI - 1) ; 302 : DSIG= REDU ( SIG1 - SIG0) MOLE ; 303 : TCOUR = TTEMP . NSI ; 304 : *aa=maxi (abs dsig); mess ' maxi des cont ' aa ' nsi ' nsi ; 305 : FLUAG1 = FLUAG1 + ( PFLUAGE NOMREGF MOLE MALE DSIG 306 : RAYSECH TCOUR TCAL COEF2 TCOUL COEF1 ) ; 307 : 'FIN' BOPAS ; 308 : 'FIN' BOUFLU ; 309 : TFLUEP . COMTFLU = FLUAG1 ; 310 : COMTFLU = COMTFLU + 1 ; 311 : TFLUTE . COMTFLU = TLEVEE . NUMLEV . 'INSTANT' * 1.0 ; 312 : TFLUEP . COMTFLU = FLUAG1 ; 313 : CHARFLU = CHAR 'DEFINI' TFLUTE TFLUEP ; 314 : EPFLUAGE.NUMLEV=FLUAG1 ; 315 : CHACAL = CHACAL ET CHARFLU ; 316 : 'FINSI' ; 317 : 'SI' ( 'EGA' NSOUSL 1) ; 318 : LC= 'PROG' TCAL ; 319 : 'SINON' ; 320 : TPAS= (TCAL - TDER) / NSOUSL ; 321 : 'SI' ( 'EGA' NSOUSL 2) ; 322 : LC= 'PROG' (TDER+TPAS) TCAL ; 323 : 'SINON' ; 324 : LC= 'PROG' (TDER+TPAS) 'PAS' TPAS TCAL ; 325 : 'FINSI' ; 326 : 'FINSI' ; 327 : LISTTEMP=LISTTEMP 'ET' LC ; 328 : TABRES.'TEMPS_CALCULES'= LC ; 329 : TABRES.'CHARGEMENT' = CHACAL ; 330 : PASAPAS TABRES ; 331 : * redefinition des materiaux et du poids pour le temps exact 332 : * correspondant à la levée 333 : 'REPETER' ADDIMO NBLEVE ; 334 : MA = TLEVEE . &ADDIMO . 'MATERIAU' ; 335 : 'SI' ( &ADDIMO <EG NUMLEV ) ; 336 : 'SI' ( 'EGA' 1 &ADDIMO) ; MATCAL=MA; 'SINON' ; 337 : MATCAL=MATCAL ET MA ; 338 : 'FINSI' ; 339 : 'SINON' ; 340 : YOU = (EXCO MA 'YOUNG') * -0.99999 ; 341 : MOMA= MA + YOU ; 342 : MATCAL= MATCAL ET MOMA ; 343 : 'FINSI' ; 344 : 'FIN' ADDIMO ; 345 : 'SI' LRESTE ; MATCAL=MATCAL 'ET' TABPHAS.'MAT_RESTE'; 'FINSI'; 346 : 'SI' LPRECO; MATCAL=MATCAL 'ET' MATCABL ;'FINSI' ; 347 : * calcul du poids 348 : FPO = FPO + POILEVEE.NUMLEV ; 349 : * determination d'un temps de calcul 350 : TNOUCAL = TLEVEE . NUMLEV . 'INSTANT' ; 351 : LTE = prog 0. TCAL TNOUCAL TEMPSGRA ; 352 : LCOE= PROG 0. 0. 1. 1. ; 353 : EVCH= EVOL MANU 'TEMPS' LTE 'COEF' LCOE ; 354 : CHAPOI = CHARGE 'MECA' FPO EVCH ; 355 : CHACAL = CHAPOI ; 356 : 'SI' LRETRAIT ; CHACAL= CHACAL ET CHARRET; 'FINSI' ; 357 : 'SI' LFLUAGE ; CHACAL= CHACAL ET CHARFLU; 'FINSI' ; 358 : * mise a jour de la table 359 : tabres .'CARACTERISTIQUES' = MATCAL ; 360 : LISTTEMP=LISTTEMP 'ET' ( 'PROG' TNOUCAL) ; 361 : tabres.'TEMPS_CALCULES' = 'PROG' TNOUCAL ; 362 : tabres.'CHARGEMENT' = CHACAL ; 363 : pasapas tabres ; 364 : TDER = TNOUCAL ; 365 : 'FIN' COULEE ; 366 : 'FINSI' ; 367 : * 368 : * fin du traitement des coulées on passe à la précontrainte 369 : * On calcule le temps juste avant la mise en précontrainte 370 : * puis la mise en précontrainte. Pour la i eme precontrainte 371 : * on prend en compte la raideur des (i-1) premiers groupes de 372 : * cables 373 : 'SI' LPRECO; 374 : * on calcule d'abord le retrait pour tous les temps de 375 : * precontraintes 376 : *mess ' debut des precontraintes traitement du retrait'; 377 : 'SI' LRETRAIT; NRET = EPRETRAI 'DIME' ; 378 : 'REPETER' BOURET NPRECO ; 379 : TEMPCOUR= TETAP . &BOURET . 'TPS' ; 380 : 'REPETER' SOUSLEV NUMLEV ; 381 : MODBET=TLEVEE . &SOUSLEV . 'MODELE' ; 382 : RAYSECH=TLEVEE . &SOUSLEV . 'SECHAGE' ; 383 : TCOFFR= TLEVEE . &SOUSLEV . 'INSTANT' ; 384 : COEF1 = TLEVEE . &SOUSLEV . 'COEF1' ; 385 : COEF2 = TLEVEE . &SOUSLEV . 'COEF2' ; 386 : RET = RETRAIT NOMREGR MODBET RAYSECH TCOFFR TEMPCOUR 387 : COEF1 COEF2 ; 388 : 'SI' ( 'EGA' 1 &SOUSLEV) ; 389 : EPRETRAI. (&BOURET + NRET)=RET + DEFONUL ; 390 : 'SINON' ; 391 : EPRETRAI.(&BOURET+NRET)=EPRETRAI.(&BOURET+NRET)+RET ; 392 : 'FINSI' ; 393 : 'FIN' SOUSLEV ; 394 : 'FIN' BOURET ; 395 : 'FINSI' ; 396 : * on calcule maintenant les chargements dues à la precontrainte, 397 : * on les mets dans les tables chpreco et sipreco 398 : CHPRECO=TABLE ;SIPRECO=TABLE ; 399 : 'REPETER' CAFO NPRECO ; 400 : NDZONE = ('DIME' TETAP . &CAFO ) - 1 ; 401 : IDZON = 0 ; 402 : 'REPETER' BOZONE NDZONE ; 403 : IDZON = IDZON + 1 ; 404 : 'SI' (EGA IDZON 1) ; 405 : FOPREC = (-1.) * ('BSIG' 406 : TETAP . &CAFO . IDZON . 'PREC' 407 : TETAP . &CAFO . IDZON . 'MODELE' 408 : TETAP . &CAFO . IDZON . 'MATERIAU') ; 409 : SIPREC = TETAP . &CAFO . IDZON . PREC ; 410 : 'SINON' ; 411 : FOPREC = FOPREC ET ((-1.) * (BSIG 412 : TETAP . &CAFO . IDZON . 'PREC' 413 : TETAP . &CAFO . IDZON . 'MODELE' 414 : TETAP . &CAFO . IDZON . 'MATERIAU')) ; 415 : SIPREC = SIPREC ET (TETAP .&CAFO. IDZON . PREC) ; 416 : 'FINSI' ; 417 : 'FIN' BOZONE ; 418 : EVPTOT = EVOL 'MANU' 'TPS' (PROG 0 TETAP.&CAFO.'TPS' TEMPSGRA) 419 : 'COEF' (PROG 0 1 1) ; 420 : CHPRECO . &CAFO = CHARG 'MECA' FOPREC EVPTOT ; 421 : SIPRECO . &CAFO= SIPREC ; 422 : 'FIN' CAFO ; 423 : * boucle sur la mise en precontrainte 424 : *mess ' debut de boucle sur precontrainte ' npreco; 425 : nfinlev= numlev * 2 + 1 ; 426 : 'REPETER' BOUPREC NPRECO ; 427 : *mess ' traitement de la precontrainte ' &bouprec; 428 : TCAL= TETAP . &BOUPREC . 'TPS' * 1. ; 429 : * calcul du chargement 430 : CHCAL= CHAPOI ; 431 : * on commence par le fluage jusqu'a (temps -dtemps) 432 : 'SI' LFLUAGE ; 433 : COMTFLU = COMTFLU + 1 ; 434 : FLUAG1=ZERO MODCAL 'DEFORMAT' ; 435 : TFLUTE . COMTFLU = TCAL - DTEMPS * 1. ; 436 : REPETER BOUFLU NUMLEV ; 437 : MOLE= TLEVEE . &BOUFLU . 'MODELE' ; 438 : MALE= TLEVEE . &BOUFLU . 'MATERIAU' ; 439 : TCOUL=TLEVEE . &BOUFLU . 'INSTANT' ; 440 : RAYSECH= TLEVEE . &BOUFLU . 'SECHAGE' ; 441 : COEF1 = TLEVEE . &BOUFLU . 'COEF1' ; 442 : COEF2 = TLEVEE . &BOUFLU . 'COEF2' ; 443 : NF= NUMLEV - &BOUFLU + &BOUPREC ; 444 : NDE=(&BOUFLU - 1) * (1+NSOUSL) + 1 ; 445 : NSI=NDE - (1+NSOUSL) ; 446 : NTES=NUMLEV - &BOUFLU + 2 ; 447 : *mess ' numero de levées ' &bouflu ' nf ' nf ' nde ' nde ' nsi ' nsi; 448 : REPETER BOPAS NF ; 449 : 'SI' ( < &BOPAS nfinlev ) ; 450 : NSI = NSI + 1 + NSOUSL ; 451 : 'SINON' ; 452 : NSI = NSI + 1 + NSOUSP ; 453 : 'FINSI' ; 454 : SIG1 =TCONT . NSI ; 455 : SIG0= TCONT . (NSI - 1) ; 456 : DSIG= REDU ( SIG1 - SIG0) MOLE ; 457 : TCOUR = TTEMP . NSI ; 458 : *aa= maxi ( abs dsig); mess 'maxi des cont ' aa ' nsi ' nsi; 459 : FLUAG1 = FLUAG1 + ( PFLUAGE NOMREGF MOLE MALE DSIG 460 : RAYSECH TCOUR TCAL COEF2 TCOUL COEF1 ) ; 461 : FIN BOPAS ; 462 : FIN BOUFLU ; 463 : TFLUEP . COMTFLU = FLUAG1 ; 464 : COMTFLU = COMTFLU + 1 ; 465 : TFLUTE . COMTFLU = TCAL ; 466 : TFLUEP . COMTFLU = FLUAG1 ; 467 : CHARFLU = CHAR 'DEFINI' TFLUTE TFLUEP ; 468 : CHCAL=CHCAL 'ET' CHARFLU ; 469 : 'FINSI' ; 470 : *mess ' fin calcul fluage prise en compte du retrait sans calcul' ; 471 : 'SI' LRETRAIT ; 472 : COMRETR = COMRETR + 1 ; 473 : TRETTE . COMRETR = TCAL - DTEMPS * 1. ; 474 : TRETEP . COMRETR = EPRETRAI .(NRET + &BOUPREC) ; 475 : COMRETR = COMRETR + 1 ; 476 : TRETTE . COMRETR = TCAL * 1. ; 477 : TRETEP . COMRETR = EPRETRAI .(NRET + &BOUPREC) ; 478 : CHRE= 'CHAR' 'DEFI' TRETTE TRETEP ; 479 : CHCAL = CHCAL 'ET' CHRE ; 480 : 'FINSI' ; 481 : MATCAL=MATOUT ; 482 : IDETAP=0 ; 483 : idecab=0; 484 : * on tue les groupes de cable non deja tendus 485 : *mess ' precontrainte du gropue &bouprec' &bouprec; 486 : 'REPETER' BOETAP NPRECO ; 487 : IDETAP = IDETAP + 1 ; 488 : NDZONE = (DIME TETAP . IDETAP) - 1 ; 489 : IDZON = 0 ; 490 : 'REPETER' BOZONE NDZONE ; 491 : IDZON = IDZON + 1 ; 492 : MOBID = (TETAP . IDETAP . IDZON . 'MODELE') ; 493 : 'SI' (< IDETAP (&BOUPREC - 0.01) ) ; 494 : MATBID = TETAP . IDETAP . IDZON . 'MATERIAU' ; 495 : 'SINON ' ; 496 : COEFBID = 1E-3 ; 497 : sectbid= EXCO 'SECT' TETAP.IDETAP.IDZON . 'MATERIAU' ; 498 : sectbid=sectbid * coefbid ; 499 : mabid= TETAP . IDETAP . IDZON . 'MATERIAU' ; 500 : LISTCOMP= 'EXTR' MABID 'COMP' ; 501 : 502 : YOUNBID = EXCO 'YOUN' 503 : (TETAP . IDETAP . IDZON . 'MATERIAU'); 504 : YOUNBID = COEFBID * YOUNBID ; 505 : 'SI' ('EXIS' LISTCOMP 'TRACTION' ) ; 506 : TRACBIO = COEFBID * 507 : (EXTR (TETAP . IDETAP . IDZON . 'TRACTION') 'ORDO') ; 508 : TRACBID = EVOL MANU 'EPS' 509 : (EXTR (TETAP . IDETAP . IDZON . 'TRACTION') 'ABSC') 510 : 'SIG (PA)' TRACBIO ; 511 : MATBID = MATE MOBID 'YOUN' YOUNBID 'NU' 0.3 512 : 'SECT' sectbid 'TRAC' TRACBID RHO 1. ; 513 : 'SINON' ; 514 : MATBID = MATE MOBID 'YOUN' YOUNBID 'NU' 0.3 515 : 'SECT' sectbid RHO 1. ; 516 : 'FINSI' ; 517 : 'FINSI' ; 518 : si (idecab ega 0); mmcabl=matbid;mmocab= mobid;idecab=1;sinon; 519 : mmcabl=mmcabl et matbid ;mmocab=mmocab et mobid;finsi; 520 : MATCAL = MATCAL ET MATBID ; 521 : 'FIN' BOZONE ; 522 : 'FIN' BOETAP ; 523 : * on ajoute la contrainte du dernier groupe tendu 524 : 'SI' ( 'NEG' &BOUPREC 1) ; 525 : NA = ('DIME' TCONT ) - 1 ; 526 : TCONT.NA= TCONT . NA + SIPRECO.(&BOUPREC - 1) ; 527 : TABRES.'CONTINUATION'.'CONTRAINTES'= 528 : TABRES.'CONTINUATION'.'CONTRAINTES' + SIPRECO.(&BOUPREC - 1); 529 : 'FINSI' ; 530 : * appel a Pasapas pour le temps (tcal - dtemps) 531 : TCALA=TCAL - DTEMPS ; 532 : 'SI' ( 'EGA' NSOUSP 1) ; 533 : LC= 'PROG' TCALA ; 534 : 'SINON' ; 535 : TPAS = (TCALA - TDER ) / NSOUSP ; 536 : 'SI' ( 'EGA' NSOUSP 2) ; 537 : LC = 'PROG' (TDER + TPAS) TCALA ; 538 : 'SINON' ; 539 : LC = 'PROG' (TDER + TPAS) 'PAS' TPAS TCALA ; 540 : 'FINSI' ; 541 : 'FINSI' ; 542 : tabres.'macable'=mmcabl; tabres.'mmocable'=mmocab; 543 : LISTTEMP=LISTTEMP 'ET' LC ; 544 : TABRES.'TEMPS_CALCULES' = LC ; 545 : TABRES.'CARACTERISTIQUES' = MATCAL ; 546 : TABRES.'CHARGEMENT' = CHCAL ; 547 : PASAPAS TABRES ; 548 : * on va calculer le temps TCAL 549 : * on ajoute le chargement du a la precontrainte 550 : CHCAL = CHCAL 'ET' CHPRECO.&BOUPREC ; 551 : 552 : LISTTEMP = LISTTEMP 'ET' ( 'PROG' TCAL) ; 553 : TABRES.'TEMPS_CALCULES' = 'PROG' TCAL ; 554 : TABRES.'CHARGEMENT' = CHCAL ; 555 : PASAPAS TABRES ; 556 : TDER=TCAL ; 557 : 'FIN' BOUPREC ; 558 : * Il ne rest plus qu'a ajouter la raideur du dernier groupe 559 : * et la contrainte 560 : MATCAL=MATOUT ; 561 : IDETAP = 0 ; 562 : 'REPETER' BOETAP NPRECO ; 563 : IDETAP = IDETAP + 1 ; 564 : NDZONE = DIME TETAP . IDETAP - 1 ; 565 : IDZON = 0 ; 566 : 'REPETER' BOZONE NDZONE ; 567 : IDZON = IDZON + 1 ; 568 : MATCAL = MATCAL 'ET' TETAP . IDETAP . IDZON . 'MATERIAU' ; 569 : 'FIN' BOZONE ; 570 : 'FIN' BOETAP ; 571 : NA = ('DIME' TCONT ) - 1 ; 572 : TCONT.NA=TCONT . NA + SIPRECO. NPRECO ; 573 : TABRES.'CONTINUATION'.'CONTRAINTES'= 574 : TABRES.'CONTINUATION'.'CONTRAINTES' + SIPRECO. NPRECO ; 575 : * le finsi suivant est celui correspondant a 'SI' LPRECO 576 : 'FINSI' ; 577 : * 578 : * calcul du dernier temps tempsfi 579 : * chargement 580 : CHCAL=CHAPOI ; 581 : 'SI' LRETRAIT;NRET = (EPRETRAI 'DIME' ) + 1 ; 582 : TEMPCOUR= TEMPSFI ; 583 : 'REPETER' SOUSLEV NBLEVE ; 584 : MODBET=TLEVEE . &SOUSLEV . 'MODELE' ; 585 : RAYSECH=TLEVEE . &SOUSLEV . 'SECHAGE' ; 586 : TCOFFR= TLEVEE . &SOUSLEV . 'INSTANT' ; 587 : COEF1 = TLEVEE . &SOUSLEV . 'COEF1' ; 588 : COEF2 = TLEVEE . &SOUSLEV . 'COEF2' ; 589 : RET=RETRAIT NOMREGR MODBET RAYSECH 590 : TCOFFR TEMPCOUR COEF1 COEF2 ; 591 : 'SI' ('EGA' 1 &SOUSLEV) ; 592 : EPRETRAI. NRET= RET + DEFONUL ; 593 : 'SINON' ; 594 : EPRETRAI. NRET = EPRETRAI. NRET + RET ; 595 : 'FINSI' ; 596 : 'FIN' SOUSLEV ; 597 : COMRETR = COMRETR + 1 ; 598 : TRETTE . COMRETR = TEMPSFI * 1. ; 599 : TRETEP . COMRETR = EPRETRAI . NRET ; 600 : COMRETR = COMRETR + 1 ; 601 : TRETTE . COMRETR = TEMPSGRA * 1. ; 602 : TRETEP . COMRETR = EPRETRAI . NRET ; 603 : CHRE= 'CHAR' 'DEFINI' TRETTE TRETEP ; 604 : CHCAL = CHCAL 'ET' CHRE ; 605 : 'FINSI' ; 606 : 'SI' LFLUAGE ; 607 : COMTFLU = COMTFLU + 1 ; 608 : FLUAG1=ZERO MODCAL 'DEFORMAT' ; 609 : TFLUTE . COMTFLU = TEMPSFI * 1. ; 610 : 'REPETER' BOUFLU NBLEVE ; 611 : MOLE= TLEVEE . &BOUFLU . 'MODELE' ; 612 : MALE= TLEVEE . &BOUFLU . 'MATERIAU' ; 613 : TCOUL=TLEVEE . &BOUFLU . 'INSTANT' ; 614 : RAYSECH= TLEVEE . &BOUFLU . 'SECHAGE' ; 615 : COEF1 = TLEVEE . &BOUFLU . 'COEF1' ; 616 : COEF2 = TLEVEE . &BOUFLU . 'COEF2' ; 617 : NF= NUMLEV - &BOUFLU + NPRECO + 1 ; 618 : NDE=(&BOUFLU - 1) * (1+NSOUSL) + 1 ; 619 : NSI=NDE - (1+NSOUSL) ; 620 : NTES=NUMLEV - &BOUFLU + 2 ; 621 : REPETER BOPAS NF ; 622 : 'SI' ( < &BOPAS NTES ) ; 623 : NSI = NSI + 1 + NSOUSL ; 624 : 'SINON' ; 625 : NSI = NSI + 1 + NSOUSP ; 626 : 'FINSI' ; 627 : SIG1 =TCONT . NSI ; 628 : SIG0 =TCONT . (NSI - 1) ; 629 : DSIG= REDU ( SIG1 - SIG0) MOLE ; 630 : TCOUR = TTEMP . NSI ; 631 : *aa = maxi ( abs dsig) ;mess ' maxi cont ' aa ' nsi ' nsi; 632 : FLUAG1 = FLUAG1 + ( PFLUAGE NOMREGF MOLE MALE DSIG 633 : RAYSECH TCOUR TEMPSFI COEF2 TCOUL COEF1 ) ; 634 : 'FIN' BOPAS ; 635 : 'FIN' BOUFLU ; 636 : TFLUEP . COMTFLU = FLUAG1 ; 637 : COMTFLU = COMTFLU + 1 ; 638 : TFLUTE . COMTFLU = TEMPSGRA * 1. ; 639 : TFLUEP . COMTFLU = FLUAG1 ; 640 : CHARFLU = 'CHAR' 'DEFI' TFLUTE TFLUEP ; 641 : CHCAL=CHCAL 'ET' CHARFLU ; 642 : 'FINSI' ; 643 : 'SI' ( 'EGA' NSOUSP 1) ; 644 : LC= 'PROG' TEMPSFI ; 645 : 'SINON' ; 646 : TPAS= (TEMPSFI - TDER) / NSOUSP ; 647 : 'SI' ( 'EGA' NSOUSP 2) ; 648 : LC= 'PROG' (TDER+TPAS) TEMPSFI ; 649 : 'SINON' ; 650 : LC= 'PROG' (TDER+TPAS) 'PAS' TPAS TEMPSFI ; 651 : 'FINSI' ; 652 : 'FINSI' ; 653 : LISTTEMP=LISTTEMP 'ET' LC ; 654 : TABRES.'TEMPS_CALCULES' = LC ; 655 : TABRES.'CARACTERISTIQUES' = MATCAL ; 656 : TABRES.'CHARGEMENT' = CHCAL ; 657 : PASAPAS TABRES ; 658 : 659 : TABPHAS.'TABLE_SUITE' = TABRES ; 660 : 661 : FINPROC TABPHAS ; 662 : 663 : 664 : 665 : 666 : 667 : 668 : 669 :
© Cast3M 2003 - All rights reserved.
Disclaimer