* @LISPA16 PROCEDUR ALANIER 95/06/13 21:33:48 1710 'MESS' ' ' ; 'MESS' ' ' ; 'SI' (('EXISTE' DON REPRISE) 'EGA' VRAI) ; TABCON = DON.'EVCON' ; TABCAR = DON.'EVCAR' ; TABNCY = DON.'EVNCY' ; 'SINON' ; TABCAR = 'TABLE' ; TABNCY = 'TABLE' ; TABCON = 'TABLE' ; TABCAR.'TOTAL' = 'TABLE' ; TABCAR.'FATIGUE' = 'TABLE' ; TABCAR.'FLUAGE' = 'TABLE' ; TABCON.'DELTSIG' = 'TABLE' ; TABCON.'CHSIG_A' = 'TABLE' ; TABCON.'CHSIG_B' = 'TABLE' ; TABCON.'DELTSIG1' = 'TABLE' ; TABCON.'CHSIG_A1' = 'TABLE' ; TABCON.'CHSIG_B1' = 'TABLE' ; TABCON.'SDEFRAS' = 'TABLE' ; TABCON.'SDEFRBS' = 'TABLE' ; TABCON.'SDEFR' = 'TABLE' ; TABCON.'VALR' = 'TABLE' ; TABCON.'VALQ' = 'TABLE' ; TABCON.'VALPSI' = 'TABLE' ; TABCON.'VALKDJ' = 'TABLE' ; TABCON.'VALDJ' = 'TABLE' ; TABCON.'VALDKEFF' = 'TABLE' ; TABCON.'VALDAFAT' = 'TABLE' ; TABCON.'EPSILON' = 'TABLE' ; 'FINSI' ; 'SI' (('EXISTE' DON FATUNI) 'EGA' VRAI) ; 'SI' ((DON.FATUNI) 'EGA' VRAI) ; CALFAT = 1 ; 'SINON' ; CALFAT = 0 ; 'FINSI' ; 'SINON' ; CALFAT = 0 ; 'FINSI' ; 'SI' (('EXISTE' DON A316) 'EGA' VRAI) ; 'SI' ((DON.A316) 'EGA' VRAI) ; A316 = 1 ; 'SINON' ; A316 = 0 ; 'FINSI' ; 'SINON' ; A316 = 0 ; 'FINSI' ; 'SI' (('EXISTE' DON RELAX) 'EGA' VRAI) ; 'SI' ((DON.RELAX) 'EGA' VRAI ) ; RELAX = 1 ; 'SINON' ; RELAX = 0 ; 'FINSI' ; 'SINON' ; RELAX = 0 ; 'FINSI' ; 'SI' (('EXISTE' DON NREA) 'EGA' VRAI) ; KREA = DON.'NREA' ; 'SINON' ; KREA = 0 ; 'FINSI' ; REA = DON.'NBREA'; 'REPETER' BOUREA REA ; 'SI' (('EXISTE' DON AMAX) 'EGA' VRAI) ; 'SI' ((DON.'AMAX') 'EGA' VRAI) ; 'MESS' 'ARRET DU CALCUL' ; 'QUIT' BOUREA ; 'FINSI' ; 'FINSI' ; KREA = KREA + 1 ; **************************************************************** * RESTITUTION DES DONNEES * **************************************************************** ** -- MAILLAGES FISS1 = DON.'MFIS' ; PREMA = FAUX ; ** -- DELTA-CHARGEMENT POUR LA FATIGUE 'SI' ('EXISTE' CHARG DP) ; DCHA1 = CHARG.'DP' ; 'SINON' ; CHARGI = CHARG.'DC' ; DCHA1 = CHARGI * 1.E-6 ; 'FINSI' ; DCHA = CHARG.'DC' ; ****** CHARGEMENT POUR LE FLUAGE CHAA = CHARG.'CA' ; CHAB = CHARG.'CB' ; 'SI' ('EXISTE' CHARG PA) ; CHAA1 = CHARG.'PA' ; 'SINON' ; CHARGI = CHARG.'CA' ; CHAA1 = CHARGI * 1.E-6 ; 'FINSI' ; 'SI' ('EXISTE' CHARG PB) ; CHAB1 = CHARG.'PB' ; 'SINON' ; CHARGI = CHARG.'CB' ; CHAB1 = CHARGI * 1.E-6 ; 'FINSI' ; ****** DIMENSIONS DE LA FISSURE ** -- MATERIAU OBJF = DON.'OBJ' ; MATF = DON.'MAT' ; CARF = DON.'CAR' ; MATFC = MATF 'ET' CARF ; OBJ = DON.'OBJT' ; MAT = DON.'MATT' ; CAR = DON.'CART' ; MAT = MAT 'ET' CAR ; 'SI' ('NON' ('EXISTE' DON REPRISE)) ; ************************************************************* * RE-ECRITURE DES CHAMPS MODELE MATERIAU ET CARACTERISTIQUE * ************************************************************* 'MESS' ' '; CARACTERISTIQUE'; KR = 0 ;KRF = 0. ; 'REPETER' BOUCR NBFI ; KR = KR + 1 ;KRF = KRF + 1. ; 'STRESSES' ; 'VX' XV 'VY' YV 'VZ' ZV ; 'VX' XV 'VY' YV 'VZ' ZV ; 'SI' (KR 'EGA' 1) ; CAR1 = CARNE ; MOD1 = MONE ; MAT1 = MANE ; CAR0 = CAR0E ; CHFIC1 = CHFIC ; 'SINON'; CAR1 = CAR1 'ET' CARNE ; MOD1 = MOD1 'ET' MONE ; MAT1 = MAT1 'ET' MANE ; CAR0 = CAR0 'ET' CAR0E ; CHFIC1 = CHFIC1 'ET' CHFIC ; 'FINSI'; 'FIN' BOUCR ; SELEC = 'TABLE' ; KJ = 0 ;KJF = 0. ; 'REPETER' BOUCJ NBFI ; KJ = KJ + 1 ;KJF = KJF + 1. ; SELECC = SELECS + SELECI ; 'FIN' BOUCJ ; OBJF = MOD1 ; CARF = CAR1 ; 'SI' (CALFAT 'EGA' 0) ; CARF1 = CAR1 ;CARF2 = CAR1 ; TABCAR.'FATIGUE'. 0 = CAR1 ; TABCAR.'FLUAGE'. 0 = CAR1 ; 'FINSI' ; TABCAR.'TOTAL'. 0 = CAR1 ; MATF = MAT1 ; MATFC = MATF 'ET' CARF ; MATF0 = MATF 'ET' CAR0 ; DON.'SEL' = SELEC ; 'SINON' ; SELEC = DON.'SEL' ; 'SI' (CALFAT 'EGA' 0) ; CARF1 = DON.'CAR1' ;CARF2 = DON.'CAR2' ; 'FINSI' ; 'FINSI' ; **************************************************************** * CREATION DES RIGIDITES * **************************************************************** BLOCA = DON.'BLO' ; OBJTF = OBJ 'ET' OBJF ; MATTF = MAT 'ET' MATFC ; 'SI' ('NON' ('EXISTE' DON REPRISE)) ; MATT0 = MAT 'ET' MATF0 ; RIGK0 = RIGIK0 'ET' BLOCA ; 'FINSI' ; RIGK = RIGIK 'ET' BLOCA ; **************************************************************** * RESOLUTIONS * **************************************************************** 'SI' ('NON' ('EXISTE' DON REPRISE)) ; 'MESS' ' ' ; * RE_A0 = 'RESO' RIGK0 CHAA ; D_RE01 = D_RE0 ; 'SINON' ; 'FINSI' ; * RE_A01 = RE_A0 ; 'SINON' ; * RE_A01 = 'RESO' RIGK0 CHAA1 ; 'FINSI' ; RE_B01 = RE_B0 ; 'SINON' ; 'FINSI' ; 'FINSI' ; * 'MESS' 'RESOLUTIONS DU CHARGEMENT' ; D_RE1 = D_RE ; 'SINON' ; 'FINSI' ; RE_A1 = RE_A ; 'SINON' ; 'FINSI' ; RE_B1 = RE_B ; 'SINON' ; 'FINSI' ; **************************************************************** * CALCULS DES CHAMPS DE CONTRAINTES * **************************************************************** 'SI' ('NON' ('EXISTE' DON REPRISE)) ; 'OUBLIER' RIGIK0 ; 'OUBLIER' RIGK0 ; SIGNO = 'SIGMA' OBJF MATF0 D_RE0 ; * SIGANO = 'SIGMA' OBJF MATF0 RE_A0 ; SIGBNO = 'SIGMA' OBJF MATF0 RE_B0 ; SIGNO1 = 'SIGMA' OBJF MATF0 D_RE01 ; * SIGANO1 = 'SIGMA' OBJF MATF0 RE_A01 ; SIGBNO1 = 'SIGMA' OBJF MATF0 RE_B01 ; 'OUBLIER' D_RE0 ; 'OUBLIER' RE_B0 ; 'OUBLIER' D_RE01 ; 'OUBLIER' RE_B01 ; DON.'DNOP' = SIGNO1 ; DON.'DNO' = SIGNO ; * DON.'NO1' = SIGANO1 ; * DON.'NO' = SIGANO ; DON.'NOB1' = SIGBNO1 ; DON.'NOB' = SIGBNO ; 'SINON' ; SIGNO1 = DON.'DNOP' ; SIGNO = DON.'DNO' ; * SIGANO1 = DON.'NO1' ; * SIGANO = DON.'NO' ; SIGBNO1 = DON.'NOB1' ; SIGBNO = DON.'NOB' ; 'FINSI' ; 'OUBLIER' RIGIK ; 'OUBLIER' RIGK ; DSIG = 'SIGMA' OBJF MATFC D_RE ; SIGA = 'SIGMA' OBJF MATFC RE_A ; SIGB = 'SIGMA' OBJF MATFC RE_B ; DSIG1 = 'SIGMA' OBJF MATFC D_RE1 ; SIGA1 = 'SIGMA' OBJF MATFC RE_A1 ; SIGB1 = 'SIGMA' OBJF MATFC RE_B1 ; 'OUBLIER' D_RE ; 'OUBLIER' D_RE1 ; 'OUBLIER' RE_A ; 'OUBLIER' RE_A1 ; 'OUBLIER' RE_B ; 'OUBLIER' RE_B1 ; ** -- FISSURE 'SI' (('EXISTE' DON ALIMIT) 'EGA' VRAI) ; COEFIMP = DON.ALIMIT ; 'SINON' ; COEFIMP = 0.7 ; 'FINSI' ; 'SI' (('EXISTE' DON REACTUA) 'EGA' VRAI) ; COEFREA = 1. + ((DON.REACTUA) / 100.) ; 'SINON' ; COEFREA = 1.1 ; 'FINSI' ; 'SI' ((COEFIMP > 1.) 'OU' (COEFIMP < 0.)) ; 'MESS' 'LE CONTENU DE DON.ALIMIT DOIT ETRE COMPRIS ENTRE 0 ET 1' ; 'FINSI' ; 'SI' ('EXISTE' DON ATOT) ; ADEB = DON.ATOT ; 'SINON' ; ADEB = A ; 'FINSI' ; 'SI' (CALFAT 'EGA' 0) ; 'SI' (('EXISTE' DON ATOT1) 'ET' ('EXISTE' DON ATOT2)) ; ADEB1 = DON.ATOT1 ;ADEB2 = DON.ATOT2 ; 'SINON' ; 'FINSI' ; 'FINSI' ; AFIN = ADEB * COEFREA ; WIMP = W * COEFIMP ; ****** LOIS DE COMPORTEMENT ****** LOIS DE PROPAGATION 'SI' (A316 'EGA' 1) ; * LOI DE PROPAGATION EN FATIGUE CFAT = 1.4E-10 ; NFAT = 3. ; * LOI DE PROPAGATION EN FLUAGE CFLU = 2.17E-2 ; NFLU = 0.81 ; * LOI DE COMPORTEMENT * COURBE DE TRACTION ( A 525 °C ) * COURBE CYCLIQUE PROGCE = (100. * (PROGCS * ((2. * (1. + 0.3)) / (3. * EY)))) + ((PROGCS / 718.) ** (1. / 0.319)) ; PROGCE = PROGCE * (1. / 100.) ; * MODULE D'YOUNG CYCLIQUE ECYCL = (3. * EY) / (2. * ( 1. + 0.3)) ; * LIMITE D'ELASTICITE R002 = 114. ; * COEFFICIENT DE FLUAGE C1 = 1.8803E-12; C2 = 0.40053 ; C3 = 6.1073E23 ; N1 = 4.125 ; N3 = -8.2276 ; KFP = 2.1218E-30 ; XFP = -1.4967 ; YFP = 10.2217 ; CFS = 4.1482E-29 ; NFS = 9.06 ; 'SINON' ; * LOI DE PROPAGATION EN FATIGUE CFAT = DON.FAT.'COEFFICIENT' ; NFAT = DON.FAT.'EXPOSANT' ; * COURBE CYCLIQUE PROGCE = DON.CC.'EPS' ;PROGCS = DON.CC.'SIG' ; * MODULE D'YOUNG CYCLIQUE * COURBE DE TRACTION OU CYCLIQUE REDUITE PROGTE = DON.CT.'EPS' ; PROGTS = DON.CT.'SIG' ; * LIMITE D'ELASTICITE R002 = DON.'R002' ; 'SI' (CALFAT 'EGA' 0) ; * LOI DE PROPAGATION EN FLUAGE CFLU = DON.FLU.'COEFFICIENT' ; NFLU = DON.FLU.'EXPOSANT' ; CEPSS = DON.EPS.'COEFFSEC' ; NEPSS = DON.EPS.'EXPSEC' ; 'FINSI' ; 'FINSI' ; **** COURBES POUR LA LOI DE NEUBER * CYCLIQUE PROGNS = PROGCS ; PROGNSE = PROGCS * PROGCE ; * TRACTION PROGNST = PROGTS ; PROGNSET = PROGTS * PROGTE ; ****** PARAMETRES TM = DON.TPSM ; 'SI' ('EXISTE' DON TPSTOT ) ; TTOTAL = DON.TPSTOT ; 'SINON' ; TTOTAL = 0. ; 'FINSI' ; 'SI' ('EXISTE' DON NBCYCLE ) ; NBCYT = DON.NBCYCLE ; 'SINON' ; NBCYT = 0 ; 'FINSI' ; 'SI' (('EXISTE' DON AMAX) 'EGA' VRAI) ; 'SI' ((DON.AMAX) 'EGA' VRAI ) ; 'MESS' 'LA FISSURE EST TRAVERSANTE' ; 'QUIT' BOUREA ; 'FINSI' ; 'FINSI' ; ****** INITIALISATION DES CHAMPS CONSTANTS 'STRESSES' ; 'STRESSES' ; 'STRESSES' ; **************************************************************** * EXTRACTION DES COMPOSANTES DES CHAMPS * **************************************************************** *** FATIGUE *** 'SI' ('NON' ('EXISTE' DON REPRISE)) ; *---- DELTA-CHARGEMENT NOMINAL COMPLET 'OUBLIER' SIGNO ; *---- DELTA-CHARGEMENT NOMINAL PRIMAIRE 'OUBLIER' SIGNO1 ; 'FINSI' ; *---- DELTA-CHARGEMENT PRIMAIRE DSIG1FIS = CH_NZZ 'ET' CH_MXX 'ET' CH_KI ; *---- DELTA-CHARGEMENT DSIGFIS = CH_NZZ 'ET' CH_MXX 'ET' CH_KI ; 'OUBLIER' DSIG ; *** FLUAGE *** 'SI' ('NON' ('EXISTE' DON REPRISE)) ; *---- CHARGEMENT NOMINAL B COMPLET 'OUBLIER' SIGBNO ; *---- CHARGEMENT NOMINAL B PRIMAIRE 'OUBLIER' SIGBNO1 ; 'FINSI' ; *---- CHARGEMENT A COMPLET SIGAFIS = CH_NZZ 'ET' CH_MXX 'ET' CH_KI ; 'OUBLIER' SIGA ; *---- CHARGEMENT B COMPLET SIGBFIS = CH_NZZ 'ET' CH_MXX 'ET' CH_KI ; 'OUBLIER' SIGB ; *---- CHARGEMENT A PRIMAIRE SIGA1FIS = CH_NZZ 'ET' CH_MXX 'ET' CH_KI ; 'OUBLIER' SIGA1 ; *---- CHARGEMENT B PRIMAIRE SIGB1FIS = NB1 'ET' MB1 'ET' CH_KI ; 'OUBLIER' SIGB1 ; 'MENAGE' ; **************************************************************** * VALEURS DE FATIGUE (CALCULS PRELIMINAIRES) * **************************************************************** **** CALCUL DU SIGMA NOMINAL REEL 'SI' ('NON' ('EXISTE' DON REPRISE)) ; DS_NO = 'ABS' DS_NOS ; DS_NO1 = 'ABS' DS_NO1S ; DE_NOR = (DS_NO - DS_NO1 + (ECYCL * DE_NO1)) * (ECYCL ** -1); DON.'DELSIGNO' = DS_NO ; DON.'DELSIGNOR' = DS_NOR ; 'SINON' ; DS_NO = DON.'DELSIGNO' ; DS_NOR = DON.'DELSIGNOR' ; 'FINSI' ; ** -- CALCUL DES CONTRAINTES PRIMAIRES PRES DU DEFAUT DS_DEF1 = 'ABS' DS_DEF1S ; ** -- CALCUL DES CONTRAINTES RELLES PRES DU DEFAUT DS_DEF = 'ABS' DS_DEFS ; DE_DEFP = (DS_DEF - DS_DEF1 + (ECYCL * DE_DEF1)) * (ECYCL ** -1) ; SE = DS_DEF * DE_DEFP ; **************************************************************** * VALEURS DE FLUAGE (CALCULS PRELIMINAIRES) * **************************************************************** 'SI' ('NON' ('EXISTE' DON REPRISE)) ; ** -- CALCUL DE LA CONTRAINTE NOMINALE PRIMAIRE EN B S_NOB1 = 'ABS' S_NOB1S ; ** -- CALCUL DE LA CONTRAINTE NOMINALE REELLE S_NOB = 'ABS' S_NOBS ; E_NORB = (S_NOB - S_NOB1 + (E * E_NOB1)) * (E ** -1) ; DON.'SIGNOB' = S_NOB ; DON.'SIGNORB' = S_NORB ; 'SINON' ; S_NOB = DON.'SIGNOB' ; S_NORB = DON.'SIGNORB' ; 'FINSI' ; ** -- CALCUL DES CONTRAINTES PRIMAIRES EN A SIGA1S = SIGA1P + SIGA1N ; TESTA11 = S_DEFA1S * SIGA1S ; 'SI' ((TESTA12 / NB_PGAUS) > 0.05) ; 'MESS' 'LES SIGNES ISSUS DES S_REFA1 ET DES KA1 NE SONT PAS COHERENTS SUR ' TESTA12 'POINTS DE GAUSS' ; 'FINSI' ; S_DEFA1 = 'ABS' S_DEFA1S ; ** -- CALCUL DES CONTRAINTES DEFAUT REEL EN A SIGAS = SIGAP + SIGAN ; TESTA1 = S_DEFAS * SIGAS ; 'SI' ((TESTA2 / NB_PGAUS) > 0.05) ; 'MESS' 'LES SIGNES ISSUS DES S_REFA ET DES KA NE SONT PAS COHERENTS SUR ' TESTA2 'POINTS DE GAUSS' ; 'FINSI' ; S_DEFA = 'ABS' S_DEFAS ; E_DEFA = (S_DEFA - S_DEFA1 + (E * E_DEFA1)) * (E ** -1) ; SE = S_DEFA * E_DEFA ; ** -- CALCUL DES CONTRAINTES PRIMAIRES EN B SIGB1S = SIGB1P + SIGB1N ; TESTB11 = S_DEFB1S * SIGB1S ; 'SI' ((TESTB12 / NB_PGAUS) > 0.05) ; 'MESS' 'LES SIGNES ISSUS DES S_REFB1 ET DES KB1 NE SONT PAS COHERENTS SUR ' TESTB12 'POINTS DE GAUSS' ; 'FINSI' ; S_DEFB1 = 'ABS' S_DEFB1S ; ** -- CALCUL DES CONTRAINTES DEFAUT REEL EN B SIGBS = SIGBP + SIGBN ; TESTB1 = S_DEFBS * SIGBS ; 'SI' ((TESTB2 / NB_PGAUS) > 0.05) ; 'MESS' 'LES SIGNES ISSUS DES S_REFB ET DES KB NE SONT PAS COHERENTS SUR ' TESTB2 'POINTS DE GAUSS' ; 'FINSI' ; S_DEFB = 'ABS' S_DEFBS ; E_DEFB = (S_DEFB - S_DEFB1 + (E * E_DEFB1)) * (E ** -1) ; SE = S_DEFB * E_DEFB ; **************************************************************** * CONTRIBUTION DE LA FATIGUE (SUR 1 CYCLE) * **************************************************************** *- CORRECTION DE PLASTICITE : DS2DEFR = DS_DEFR ** 2 ;CHR022 = CHR02 ** 2 ; CHR022 = CHR022 * 4. ; PSI_DNO = (DS2DEFR + CHR022) ;PSI_DNO = PSI_DNO ** -1 ; PSI = 0.5 * DS2DEFR * PSI_DNO ; *- METHODE 'JS' : DEDS = DS_DEFR ** -1 ;DEDS = DE_DEFR * DEDS ; DEDSE = ECYCL * DEDS ;PSIDEDS = PSI + DEDSE ; NORNO = DS_NO ** -1 ;NORNO = DS_NOR * NORNO ; NORNO2 = NORNO ** 2 ; K_DJ = PSIDEDS * NORNO2 ; *- ON PREND LA VALEUR ABSOLUE DES 'DELTA-FACTEUR D INTENSITE DE CONTRAINTE' * DKI = CHKI 'MASQ' 'SUPERIEUR' 0. ; * DKI = CHKI * DKI ; DKI = 'ABS' CHKI ; DKI2 = DKI ** 2 ; DJ_EL = DKI2 * (ECYCL ** -1); DJ = DJ_EL * K_DJ ; **** CALCUL DE R ET CHOIX DE Q **** ---- CALCUL DE R S_DEFRAS = S_DEFRA * SIGAS ;S_DEFRBS = S_DEFRB * SIGBS ; DSOMM = S_DEFRAS + S_DEFRBS ;DSOMM = DSOMM / 2. ; DS2DEFR = 0.5 * DS_DEFR ; RESU1 = DSOMM - DS2DEFR ; RESU2 = DSOMM + DS2DEFR ; *- LES ALTERNANCES NEGATIF/NEGATIF SONT MISES A ZERO R = RESU1 * (RESU2 ** (-1)) ; **** ---- CHOIX DE Q RS2 = 0.5 * R ;RS2 = CHAM1 - RS2 ; RS1 = CHAM1 - R ;RS1 = RS1 ** -1 ; QPOS = (RS2 ** -1) * CHRPOS ; QNEG = (RS2 * RS1) * CHRNEG ; Q = QPOS + QNEG ;Q = Q * RESUF ; **** CALCUL DE DELTA-K EFFICACE MULTI = 1.E-3 ** 0.5 ;DJCY = ECYCL * DJ ;DJCY = DJCY ** 0.5 ; DK_EFF = Q * DJCY * MULTI ; **** CALCUL DE LA PROPAGATION EN FATIGUE PRIMAIRE SUR 1 CYCLE DA_FAT1 = DK_EFF ** NFAT ; DA_FAT = CFAT * DA_FAT1 * 1000. ; **************************************************************** * CALCUL DE PROPAGATION SUR N CYCLE * **************************************************************** * INITIALISATION D'ACTUALISATION ATOTAL = ADEB ; ATOTAL1 = ADEB1 ;ATOTAL2 = ADEB2 ; NBCY = 0. ; EF = CHAM0 ;EFP = CHAM0 ;EFS = CHAM0 ;EF1 = CHAM0 ; KAC = 1 ; ACC = 1. ; KCRIT = 0 ; 'SI' ('EXISTE' DON LR_NBCYT) ; L_NBCYT = DON.LR_NBCYT ; 'SINON' ; 'FINSI' ; 'SI' ('EXISTE' DON LR_DAFAT) ; L_DA_FAT = DON.LR_DAFAT ; 'SINON' ; 'FINSI' ; 'SI' ('EXISTE' DON LR_ATOT) ; L_ATOT = DON.LR_ATOT ; 'SINON' ; 'FINSI' ; 'SI' ('EXISTE' DON LR_SEFB) ; L_SEFB = DON.LR_SEFB ; 'SINON' ; 'FINSI' ; 'SI' ('EGA' CALFAT 0) ; 'SI' (('EXISTE' DON LR_ATOT1) 'ET' ('EXISTE' DON LR_ATOT2)) ; L_ATOT1 = DON.LR_ATOT1 ; L_ATOT2 = DON.LR_ATOT2 ; 'SINON' ; 'FINSI' ; 'SI' ('EXISTE' DON LR_DAFLU) ; L_DA_FLU = DON.LR_DAFLU ; 'SINON' ; 'FINSI' ; 'SI' ('EXISTE' DON LR_EPFLU) ; L_EP_FLU = DON.LR_EPFLU ; 'SINON' ; 'FINSI' ; *--------------------------------------------------------------* * CALCUL EN FATIGUE/FLUAGE * *--------------------------------------------------------------* *- MISE A ZERO DES FACTEUR D INTENSITE DE CONTRAINTE NULS DU AU CHARGT B KIB = KIB * RKI ; COEF = (KIB ** 2) * ((S_NORB * (S_NOB ** -1)) ** 2) ; *- CALCUL DE SIG-EFFICACE-B ET MISE A 'EPSILON' DES VALEURS NEGATIVES S_EFFBC = ((S_DEFRAS + S_DEFRBS) / 2.) + (0.5 * DS_DEFR) ; S_EFFBCP = S_EFFBC * CHEFFBP ; S_EFFBCN = SEFLIM * CHEFFBN ; S_EFFBC = S_EFFBCP + S_EFFBCN ; 'SI' ('EXISTE' DON PROPA) ; NBFISS = DON.PROPA ; 'SINON' ; NBFISS = 500 ; 'FINSI' ; 'SI' ('EXISTE' DON EPSF1) ; EF1 = DON.EPSF1 ; 'SINON' ; EF1 = CHAM0 ; 'FINSI' ; 'SI' (WARN > 0.5) ; ALIM = WIMP ;TRAV = VRAI ; 'SINON' ; ALIM = AFIN ;TRAV = FAUX ; 'FINSI' ; S_EFFB = S_EFFBC ; CPTG = 0 ; 'REPETER' CYCLAGE NBFISS ; CPTG = CPTG + 1 ;KCRIT = KCRIT + 1 ; TMV = ACC * TM ; 'MENAGE' ; **** CALCUL DE LA PROPAGATION EN FLUAGE 'SI' (A316 'EGA' 1) ; NEPSP = YFP ; CEPSS = CFS ; NEPSS = NFS ; TFP = C3 * (S_EFFBC ** N3) ; ****** CALCUL AVEC RELAXATION - A316 (FLUAGE PRIMAIRE ET SECONDAIRE) 'SI' ('EGA' RELAX 1) ; INDIC = 1 ; NBR = 100 ;SUBD = TMV / NBR ;TIC = NBCY * TM ; 'SI' (NBCY < 0.1) ; S_EFFBDP = S_EFFB ; S_EFFBDS = S_EFFB ; 'FINSI' ; 'SI' (NBP 'NEG' 0) ; CPT = 0 ;AC = 1. ;TC = 0. ;KA = 1 ;STA = 0 ;QT = 0 ; S_EFFBD = S_EFFBDP ; 'REPETER' RELAX1 NBR ; 'SI' (QT 'EGA' 0) ; DT = SUBD * AC ; 'FINSI' ; CPT = CPT + 1 ;TC = TC + DT ;STA = STA + 1 ; EFEI = S_EFFBD ** N1 ; TTC = TIC + TC ;C2P = C2 - 1. ;EFTT1 = TTC ** C2P ; EFE = C1 * C2 * EFTT1 * EFEI * DT ; EFP = EFP + EFE ; EFPCUM = EFP ; CEPSP1 = EFPCUM ** XFP ; CEPSP = KFP * CEPSP1 * 0.01 ;YFPP = 1. - YFP ; YFPPI = 1. / YFPP ; S_EFFBF1 = S_EFFBD ** YFPP ; S_EFFBF2 = YFPP * EY * CEPSP * DT ; S_EFFBF3 = S_EFFBF1 - S_EFFBF2 ; S_EFFBF = S_EFFBF3 ** YFPPI ; S_EFFBI1 = S_EFFBD + S_EFFBF ; S_EFFBI = S_EFFBI1 / 2. ;S_EFFBI2 = S_EFFBI ** NEPSP ; EPS_PT = CEPSP * S_EFFBI2 ;S_EFFBI1 = S_EFFBI ** -1 ; CSTAR1 = EPS_PT * S_EFFBI1 ; CSTAR = COEF * CSTAR1 * 1.E-3 ; DA_FLUEI = CSTAR ** NFLU ; DA_FLUE = CFLU * DA_FLUEI * DT * 1000. ; 'SI' (CPT 'EGA' 1) ; DA_FLU = DA_FLUE ; DEFP = EFE ; 'SINON'; DA_FLU = DA_FLU + DA_FLUE ; DEFP = DEFP + EFE ; 'FINSI'; 'SI' (QT 'EGA' 1) ; 'QUIT' RELAX1 ; 'FINSI' ; RESID = TMV - TC ; 'SI' (RESID < DT) ; DT = RESID ;QT = 1 ; 'FINSI' ; 'SI' (STA > 1.1) ; MDAFLUE2 = MDAFLUE2 ** -1 ; CONTIMI = MDA_FLUE * MDAFLUE2 ; M_EFE2 = M_EFE2 ** -1 ; EFETIMI = M_EFE * M_EFE2 ; MSEFFBI2 = MSEFFBI2 ** -1 ; SIGTIMI = MS_EFFBI * MSEFFBI2 ; 'SI' ((CONTIMI > 0.99) 'ET' (SIGTIMI > 0.99) 'ET' (EFETIMI > 0.99)) ; KA = KA + 1 ; AC = KA ** 2; STA = 0 ; 'FINSI' ; 'FINSI' ; DA_FLUE2 = DA_FLUE ; S_EFFB2 = S_EFFBI ; EFE2 = EFE ; S_EFFBD = S_EFFBF ; 'FIN' RELAX1 ; 'SI' (CPT 'EGA' NBR) ; MESS 'RELAXATION SEVERE' ; 'FINSI' ; S_EFFBDP = S_EFFBF ; 'SINON' ; EPS_PT = CHAM1 ; DA_FLU = CHAM1 ; EFP = CHAM1 ; DEFP = CHAM1 ; S_EFFBDP = S_EFFB ; 'FINSI' ; S_EFBDP = S_EFFBDP * CHP ; EPS_PTP = EPS_PT * CHP ; DA_FLUP = DA_FLU * CHP ; EF_P = EFP * CHP ; DEF_P = DEFP * CHP ; 'SI' (NBS 'NEG' 0) ; CPT = 0 ;AC = 1. ;TC = 0. ;KA = 1 ;STA = 0 ;QT = 0 ; S_EFFBD = S_EFFB ;NEPSSP = 1. - NEPSS ; NEPSSPP = NEPSSP ** -1 ; 'REPETER' RELAX2 NBR ; 'SI' (QT 'EGA' 0) ; DT = SUBD * AC ; 'FINSI' ; CPT = CPT + 1 ;TC = TC + DT ; STA = STA + 1 ;VALCH2 = EY * CEPSS * NEPSSP * DT ; CH2 = 'MANU' 'CHML' OBJF 'SCAL' VALCH2 'TYPE' 'SCALAIRE' 'STRESSES' ; EFEI = S_EFFBD ** NEPSS ; EFE = 100. * CEPSS * EFEI * DT ; EFS = EFS + EFE ;S_EFFBF1 = S_EFFBD ** NEPSSP ; S_EFFBF2 = S_EFFBF1 - CH2 ; S_EFFBF = S_EFFBF2 ** NEPSSPP; S_EFFBI1 = S_EFFBD + S_EFFBF ; S_EFFBI = S_EFFBI1 / 2. ;S_EFFBI2 = S_EFFBI ** NEPSS ; EPS_PT = CEPSS * S_EFFBI2 ;S_EFFBI1 = S_EFFBI ** -1 ; CSTAR1 = EPS_PT * S_EFFBI1 ; CSTAR = COEF * CSTAR1 * 1.E-3 ;DA_FLUEI = CSTAR ** NFLU ; DA_FLUE = CFLU * DA_FLUEI * DT * 1000. ; 'SI' (CPT 'EGA' 1) ; DA_FLU = DA_FLUE ; DEFS = EFE ; 'SINON'; DA_FLU = DA_FLU + DA_FLUE ; DEFS = DEFS + EFE ; 'FINSI'; 'SI' (QT 'EGA' 1) ; 'QUIT' RELAX2 ; 'FINSI' ; RESID = TMV - TC ; 'SI' (RESID < DT) ; DT = RESID ;QT = 1 ; 'FINSI' ; 'SI' (STA > 1.1) ; MDAFLUE2 = MDAFLUE2 ** -1 ; CONTIMI = MDA_FLUE * MDAFLUE2 ; M_EFE2 = M_EFE2 ** -1 ; EFETIMI = M_EFE * M_EFE2 ; M_EFFB2 = M_EFFB2 ** -1 ; SIGTIMI = M_EFFBI * M_EFFB2 ; 'SI' ((CONTIMI > 0.99) 'ET' (SIGTIMI > 0.99) 'ET' (EFETIMI > 0.99)) ; KA = KA + 1 ; AC = KA ** 2; STA = 0 ; 'FINSI' ; 'FINSI' ; DA_FLUE2 = DA_FLUE ; S_EFFB2 = S_EFFBI ; EFE2 = EFE ; S_EFFBD = S_EFFBF ; 'FIN' RELAX2 ; 'SI' (CPT 'EGA' NBR) ; MESS 'RELAXATION SEVERE' ; 'FINSI' ; S_EFFBDS = S_EFFBF ; 'SINON' ; EPS_PT = CHAM1 ; DA_FLU = CHAM1 ; EFS = CHAM1 ; DEFS = CHAM1 ; S_EFFBDS = S_EFFB ; 'FINSI'; S_EFBDS = S_EFFBDS * CHS ; EPS_PTS = EPS_PT * CHS ; DA_FLUS = DA_FLU * CHS ; EF_S = EFS * CHS ; DEF_S = DEFS * CHS ; S_EFFB = S_EFBDP + S_EFBDS ; EPS_PT = EPS_PTP + EPS_PTS ; DA_FLU = DA_FLUP + DA_FLUS ; EF = EF_P + EF_S ; DEF = DEF_P + DEF_S ; EFS = EF ; 'SINON' ; ******** CALCUL SANS RELAXATION - FLUAGE PRIMAIRE ET SECONDAIRE - A316 INDIC = 2 ; NBR = 100 ;S_EFFBM1 = S_EFFB ** -1 ; 'SI' (NBP 'NEG' 0) ; TIC = NBCY * TM ;SUBD = TMV / NBR ; EFT2 = S_EFFB ** N1 ;EPS_PT1 = S_EFFB ** NEPSP ; CPT = 0 ;AC = 1. ;TC = 0. ;KA = 1 ;STA = 0 ;QT = 0 ; 'REPETER' FLUA1 NBR ; 'SI' (QT 'EGA' 0) ; DT = SUBD * AC ; 'FINSI' ; CPT = CPT + 1 ;STA = STA + 1 ;TC = TC + DT ; TTC = TIC + TC ;EFT1 = TTC ** C2 ; EF = C1 * EFT1 * EFT2 ;EFCUM = EF ; CEPSP1 = EFCUM ** XFP ; CEPSP = KFP * CEPSP1 * 0.01 ; EPS_PT = CEPSP * EPS_PT1 ; CSTAR = COEF * EPS_PT * S_EFFBM1 * 1.E-3 ; DA_FLUEI = CSTAR ** NFLU ; DA_FLUE = CFLU * DA_FLUEI * DT * 1000. ; 'SI' (CPT 'EGA' 1) ; DA_FLU = DA_FLUE ; 'SINON'; DA_FLU = DA_FLU + DA_FLUE ; 'FINSI'; 'SI' (QT 'EGA' 1) ; 'QUIT' FLUA1 ; 'FINSI' ; RESID = TMV - TC ; 'SI' (RESID < DT) ; DT = RESID ;QT = 1 ; 'FINSI' ; 'SI' (STA > 1.1) ; CONTIMI = DA_FLMA1 * DA_FLMA2 ; 'SI' (CONTIMI > 0.99) ; KA = KA + 1 ; AC = KA ** 2; STA = 0 ; 'FINSI' ; 'FINSI' ; DA_FLUE2 = DA_FLUE ; 'FIN' FLUA1 ; 'SINON'; EPS_PT = S_EFFB ; DA_FLU = S_EFFB ; EF = S_EFFB ; 'FINSI'; S_EFFBP = S_EFFB * CHP ; EPS_PTP = EPS_PT * CHP ; DA_FLUP = DA_FLU * CHP ; EF_P = EF * CHP ; 'SI' (NBS 'NEG' 0) ; EPS_PT1 = S_EFFB ** NEPSS ; EPS_PT = CEPSS * EPS_PT1 ; CSTAR = COEF * EPS_PT * S_EFFBM1 * 1.E-3 ; DA_FLUI = CSTAR ** NFLU ; DA_FLU = CFLU * DA_FLUI * TMV * 1000. ; EFT1 = S_EFFB ** NEPSS ;EFT1 = 100. * CEPSS * EFT1 * TMV ; EF = EF1 + EFT1 ; 'SINON' ; EPS_PT1 = S_EFFB ; EPS_PT = S_EFFB ; DA_FLU = S_EFFB ; EF = S_EFFB ; 'FINSI'; S_EFFBS = S_EFFB * CHS ; EPS_PTS = EPS_PT * CHS ; DA_FLUS = DA_FLU * CHS ; EF_S = EF * CHS ; S_EFFB = S_EFFBP + S_EFFBS ; EPS_PT = EPS_PTP + EPS_PTS ; DA_FLU = DA_FLUP + DA_FLUS ; EF = EF_P + EF_S ; EF1 = EF ; 'FINSI' ; 'SINON' ; 'SI' (RELAX 'EGA' 1) ; INDIC = 3 ; ******** CALCUL AVEC RELAXATION - FLUAGE SECONDAIRE 'SI' (NBCY < 0.1) ; S_EFFBD = S_EFFB ; 'FINSI' ; NBR = 100 ; SUBD = TMV / NBR ;NEPSSP = 1. - NEPSS ; NEPSSPP = 1. /NEPSSP ; CPT = 0 ;AC = 1. ;TC = 0. ;KA = 1 ;STA = 0 ;QT = 0 ; 'REPETER' RELAX2 NBR ; 'SI' (QT 'EGA' 0) ; DT = SUBD * AC ; 'FINSI' ; CPT = CPT + 1 ;TC = TC + DT ;STA = STA + 1 ; VALCH2 = EY * CEPSS * NEPSSP * DT ; CH2 = 'MANU' 'CHML' OBJF 'SCAL' VALCH2 'TYPE' 'SCALAIRE' 'STRESSES' ; EFEI = S_EFFBD ** NEPSS ; EFE = 100. * CEPSS * EFEI * DT ; EF = EF + EFE ;S_EFFBF1 = S_EFFBD ** NEPSSP ; S_EFFBF2 = S_EFFBF1 - CH2 ; S_EFFBF = S_EFFBF2 ** NEPSSPP ; S_EFFBI1 = S_EFFBD + S_EFFBF ; S_EFFB = S_EFFBI1 / 2. ; EPS_PT1 = S_EFFB ** NEPSS ; EPS_PT = CEPSS * EPS_PT1 ;S_EFFB1 = S_EFFB ** -1 ; CSTAR1 = EPS_PT * S_EFFB1 ; CSTAR = COEF * CSTAR1 * 1.E-3 ; DA_FLUE1 = CSTAR ** NFLU ; DA_FLUE = CFLU * DA_FLUE1 * DT * 1000. ; 'SI' (CPT 'EGA' 1) ; DA_FLU = DA_FLUE ; DEF = EFE ; 'SINON'; DA_FLU = DA_FLU + DA_FLUE ; DEF = DEF + EFE ; 'FINSI'; 'SI' (QT 'EGA' 1) ; 'QUIT' RELAX2 ; 'FINSI' ; RESID = TMV - TC ; 'SI' (RESID < DT) ; DT = RESID ;QT = 1 ; 'FINSI' ; 'SI' (STA > 1.1) ; MDAFLUE2 = MDAFLUE2 ** -1 ; CONTIMI = MDA_FLUE * MDAFLUE2 ; M_EFE2 = M_EFE2 ** -1 ; EFETIMI = M_EFE * M_EFE2 ; M_EFFB2 = M_EFFB2 ** -1 ; SIGTIMI = M_EFFB * M_EFFB2 ; 'SI' ((CONTIMI > 0.99) 'ET' (SIGTIMI > 0.99) 'ET' (EFETIMI > 0.99)) ; KA = KA + 1 ; AC = KA ** 2; STA = 0 ; 'FINSI' ; 'FINSI' ; DA_FLUE2 = DA_FLUE ; S_EFFB2 = S_EFFB ; EFE2 = EFE ; S_EFFBD = S_EFFBF ; 'FIN' RELAX2 ; S_EFFBD = S_EFFBF ; 'SINON' ; ******** CALCUL SANS RELAXATION - FLUAGE SECONDAIRE INDIC = 4 ; EPS_PT1 = S_EFFB ** NEPSS ; EPS_PT = CEPSS * EPS_PT1 ; S_EFFB1 = S_EFFB ** -1 ; CSTAR1 = EPS_PT * S_EFFB1 ; CSTAR = COEF * CSTAR1 * 1.E-3 ; DA_FLU1 = CSTAR ** NFLU ; DA_FLU = CFLU * DA_FLU1 * TMV * 1000. ; EFT1 = S_EFFB ** NEPSS ; EFT2 = NBCY + ACC ;EFT2 = EFT2 * TM ; EF = 100. * CEPSS * EFT1 * EFT2 ; 'FINSI' ; 'FINSI' ; *** INCREMENTATION DES VALEURS DA_FATC = ACC * DA_FAT ; ATOTAL = ATOTAL + DA_FATC + DA_FLU ; *list-reel de la profondeur courante maxi L_ATOT = L_ATOT 'ET' PATOTAL ; ATOTAL1 = ATOTAL1 + DA_FATC ; *list-reel de la profondeur courante maxi L_ATOT1 = L_ATOT1 'ET' PATOT1 ; ATOTAL2 = ATOTAL2 + DA_FLU ; *list-reel de la profondeur courante maxi L_ATOT2 = L_ATOT2 'ET' PATOT2 ; TTOTAL = TTOTAL + TMV ; NBCY = NBCY + ACC ; NBCYT = NBCYT + ACC ; *list-reel des numero de cycle L_NBCYT = L_NBCYT 'ET' PNBCYT ; 'SI' (KCRIT > 1.1) ; 'SI' (A316 'EGA' 1) ; 'SINON' ; 'FINSI' ; 'SINON'; 'FINSI'; *list-reel des CONTRAINTES EFFICACES maxi L_SEFB = L_SEFB 'ET' PS_EFFBM ; *list-reel des DA_FATIGUE maxi L_DA_FAT = L_DA_FAT 'ET' PDA_FAT ; *list-reel des DA_FLUAGE maxi DA_FLUO = DA_FLU ; L_DA_FLU = L_DA_FLU 'ET' PDA_FLU ; *list-reel des EPSILON-FLUAGE maxi EFCML = EF ; L_EP_FLU = L_EP_FLU 'ET' PEFCMLM ; 'SI' (NBCY < 1.1) ; 'MESS' ' ' ; 'SI' (INDIC 'EGA' 1) ; NBFI3 = NBFI * 3. ;RAT3 = NBP / NBFI3 ;RAT300 = RAT3 * 100. ; NBP% = ENTI RAT300 ; 'MESS' 'POURCENTAGE DE POINTS DE GAUSS EN FLUAGE PRIMAIRE :' NBP% '%' ; 'FINSI'; 'SI' (INDIC 'EGA' 2) ; NBFI3 = NBFI * 3. ;RAT3 = NBP / NBFI3 ;RAT300 = RAT3 * 100. ; NBP% = ENTI RAT300 ; 'MESS' 'POURCENTAGE DE POINTS DE GAUSS EN FLUAGE PRIMAIRE :' NBP% '%' ; 'FINSI'; 'SI' (INDIC 'EGA' 3) ; 'FINSI'; 'SI' (INDIC 'EGA' 4) ; 'FINSI'; 'MESS' ' ' ; 'MESS' 'VALEUR MAXIMUM DE D_A DONNEE POUR' ACC 'CYCLES' ; 'MESS' ' ' ; ATOTAL' ; 'MESS' ' ' ; 'SINON' ; 'SI' (KCRIT 'EGA' 1) ; 'MESS' ' ' ; ATOTAL' ; 'MESS' ' ' ; 'FINSI' ; 'SI' ((INDIC 'EGA' 1) 'OU' (INDIC 'EGA' 2)) ; 'SI' (NBP 'NEG' NBPP) ; NBFI3 = NBFI * 3. ;RAT3 = NBP / NBFI3 ;RAT300 = RAT3 * 100.; NBP% = ENTI RAT300 ; 'MESS' 'POURCENTAGE DE POINTS DE GAUSS EN FLUAGE PRIMAIRE :' NBP% '%' ; 'MESS' ' ' ; ATOTAL' ; 'MESS' ' ' ; 'FINSI' ; 'FINSI' ; 'FINSI' ; NBPP = NBP ; ENBCYT = 'ENTI' NBCYT ;ENBCY = 'ENTI' NBCY ; BB = CHAIN ENBCYT*7 ENBCY*17 S_EFFBM*30 DA_FATM*43 DA_FLUM*56 ATOTAM*69 ; 'MESS' BB ; 'MESS' ' ' ; *- TEST DE REACTUALISATION OU DE PERCEMENT 'SI' (RA > 0.5) ; DA_TOTM1 = DA_TOTM ** -1 ; NBCYF = NBCY ;NBCYFT = NBCYT ; NBCYS = ACC * A_DEPASM * DA_TOTM1 ; NBCY = NBCY - NBCYS ;NBCYT = NBCYT - NBCYS ; L_NBCYT = D_NBCYT 'ET' P_NBCYT ; TTROP = NBCYS * TM ; TTOTAL = TTOTAL - TTROP ; DA_FATRO = NBCYS * DA_FAT ;NBAC = NBCYS / ACC ; DA_FLURO = NBAC * DA_FLU ;DA_TROP = DA_FATRO + DA_FLURO ; ATOTAL = ATOTAL - DA_TROP ; L_ATOT = D_ATOT 'ET' P_ATOT ; ATOTAL1 = ATOTAL1 - DA_FATRO ; L_ATOT1 = D_ATOT1 'ET' P_ATOT1 ; ATOTAL2 = ATOTAL2 - DA_FLURO ; L_ATOT2 = D_ATOT2 'ET' P_ATOT2 ; 'SI' (INDIC 'EGA' 1) ; 'SI' (NBCY > 1.1) ; D_EFFBP = S_EFFBP0 - S_EFFBDP ;C_EFFBP = D_EFFBP * NBAC ; D_EFFBS = S_EFFBS0 - S_EFFBDS ;C_EFFBS = D_EFFBS * NBAC ; S_EFFBDP = S_EFFBDP + C_EFFBP ; S_EFFBDS = S_EFFBDS + C_EFFBS ; 'FINSI' ; TTROP1 = NBCYF * TM ;TTROP2 = NBCY * TM ; TTROC1 = TTROP1 ** C2 ;TTROC2 = TTROP2 ** C2 ; DTROC = TTROC1 - TTROC2 ;S_EFBDP1 = S_EFFBDP ** N1 ; CORECP = C1 * DTROC * S_EFBDP1 ;CORECP = CORECP * CHP ; CORECS = DEFS * NBAC ;CORECS = CORECS * CHS ; COREC = CORECP + CORECS ; EF = EF - COREC ; S_EFFBDP = S_EFFBDP * CHP ;S_EFFBDS = S_EFFBDS * CHS ; S_EFFB = S_EFFBDP + S_EFFBDS ; 'FINSI' ; 'SI' (INDIC 'EGA' 2) ; TMF = NBCYF * TM ;TMN = NBCY * TM ; TMF1 = TMF ** C2 ;TMN1 = TMN ** C2 ;D_TM = TMF1 - TMN1 ; D_NBCY = NBCYFT - NBCYT ;T_NBCY = D_NBCY * TM ; EFT2 = S_EFFB ** N1 ;EPS_PT1 = S_EFFB ** NEPSS ; CORECP = C1 * D_TM * EFT2 ;CORECP = CORECP * CHP ; CORECS = 100. * CEPSS * EPS_PT1 * T_NBCY ; CORECS = CORECS * CHS ; COREC = CORECP + CORECS ; EF = EF - COREC ; 'FINSI' ; 'SI' (INDIC 'EGA' 3) ; D_EFFBD = S_EFFB0 - S_EFFBD ;D_EFFBD = D_EFFBD * NBAC ; S_EFFB = S_EFFBD + D_EFFBD ; COREC = DEF * NBAC ; EF = EF - COREC ; 'FINSI' ; 'SI' (INDIC 'EGA' 4) ; S_EFFB1 = S_EFFB ** NEPSS ;N_TROP = NBCYF - NBCY ; TTROP = N_TROP * TM COREC = 100. * CEPSS * S_EFFB1 * TTROP ; EF = EF - COREC ; 'FINSI' ; L_EP_FLU = D_EP_FLU 'ET' P_EFTNM ; L_SEFB = D_L_SEFB 'ET' P_S_EFFB ; 'QUIT' CYCLAGE ; 'FINSI' ; 'SI' (INDIC 'EGA' 1) ; S_EFFBP0 = S_EFFBDP ;S_EFFBS0 = S_EFFBDS ; 'FINSI' ; 'SI' (INDIC 'EGA' 3) ; S_EFFB0 = S_EFFBD ; 'FINSI' ; *- TEST POUR ACCELERATION DU CALCUL PAR ACCROISSEMENT DES ITERATIONS KAC = KAC + 1 ; ACC = KAC ** 2 ; 'MESS' ' ' ; 'MESS' 'VALEUR MAXIMUM DE D_A DONNEE POUR' ACC 'CYCLES' ; 'MESS' ' ' ; KCRIT = 0 ; 'FINSI' ; 'FIN' CYCLAGE ; DON.'EPSF1' = EF ; TABCON.'EPSILON' . (KREA) = DON.'EPSF1' ; DON.LR_ATOT1 = L_ATOT1 ; DON.LR_ATOT2 = L_ATOT2 ; DON.LR_DAFLU = L_DA_FLU ; DON.LR_EPFLU = L_EP_FLU ; DON.LR_SEFB = L_SEFB ; DON.ATOT1 = ATOTAL1 ; DON.ATOT2 = ATOTAL2 ; 'SI' (NBFISS 'EGA' CPTG) ; 'MESS' 'LE NOMBRE D ITERATIONS DOIT ETRE AUGMENTE EN FLUAGE'; 'QUIT' BOUREA ; DON.'AMAX' = VRAI ; 'FINSI'; 'SI' ('EGA' TRAV VRAI) ; BB = CHAIN ('ENTI' NBCYT)*7 ('ENTI' NBCY)*17 ATOTAM*31 EPSM*47 ; 'MESS' ' '; 'MESS' BB ; 'MESS' ' ' ; 'MESS' ' ' ; 'MESS' ' ' ; 'MESS' ' ' ; 'MESS' ' ' ; DON.'AMAX' = VRAI ; 'SINON'; BB = CHAIN ('ENTI' NBCYT)*7 ('ENTI' NBCY)*17 ATOTAM*31 EPSM*47 ; 'MESS' ' '; 'MESS' BB ; 'MESS' ' ' ; 'MESS' ' ' ; 'MESS' ' ' ; 'MESS' ' ' ; 'MESS' ' ' ; 'MESS' ' ' ; 'MESS' ' ' ; 'MESS' KREA 'EME ACTUALISATION DE FISSURE EFFECTIVE' ; 'MESS' ' ' ; DON.'AMAX' = FAUX ; 'FINSI'; 'FINSI' ; 'SINON'; *--------------------------------------------------------------* * CALCUL EN FATIGUE (EN L'ABSENCE DE FLUAGE) * *--------------------------------------------------------------* DA_STABL = DA_FAT ; DA_STABL = ((CHAM1 * 1.E-20) * DA_STAF) + DA_STABL ; 'SI' (WARN > 0) ; ALIM = WIMP ; TRAV = VRAI ; 'SINON'; ALIM = AFIN ; TRAV = FAUX ; 'FINSI'; 'SI' (('ENTI' NBCYR) 'EGA' 0) ; 'MESS' 'IL CONVIENDRAIT D AUGMENTER LE COEFFICIENT DE REACTUALISATION' ; 'FINSI' ; ATOTAL = ATOTAL + (DA_STABL * NBCYR) ; *list-reel des profondeurs maxi NBCY = NBCYR ; NBCYT = NBCYT + NBCYR ; *list-reel des numero de cycle *list-reel des DA_FATIGUE TTOTAL = TTOTAL + (NBCYR * TM) ; 'SI' TRAV ; 'MESS' ' ' ; BB = CHAIN ('ENTI' NBCYT)*7 ('ENTI' NBCY)*17 DA_STABM*32 ATOTAM*45 ; 'MESS' BB ; 'MESS' ' ' ; DON.'AMAX' = VRAI ; 'SINON'; 'MESS' ' ' ; BB = CHAIN ('ENTI' NBCYT)*7 ('ENTI' NBCY)*17 DA_STABM*32 ATOTAM*45 ; 'MESS' BB ; 'MESS' ' ' ; 'MESS' ' ' ; 'MESS' ' ' ; 'MESS' ' ' ; 'MESS' ' ' ; 'MESS' ' ' ; 'MESS' KREA 'EME ACTUALISATION DE FISSURE EFFECTIVE' ; DON.'AMAX' = FAUX ; 'FINSI'; 'FINSI'; DON.LR_NBCYT = L_NBCYT ; DON.LR_DAFAT = L_DA_FAT ; DON.LR_ATOT = L_ATOT ; DON.ATOT = ATOTAL ; *** --- NOUVEL OBJET CARACTERISTIQUE 'MESS' ' ' ; 'MESS' 'CONSTRUCTION D UN NOUVEL OBJET CARACTERISTIQUE' ; 'MESS' ' ' ; DON.'NREA' = KREA ; KF = 0 ;ATOTALE = CHAM0 ;ATOTALE1 = CHAM0 ;ATOTALE2 = CHAM0 ; 'REPETER' BOUCF NBFI ; KF = KF + 1 ; PROFM = (PROF1 + PROF2 + PROF3) / 3. ; 'SI' (PROFM > EP) ; PROFM = EP - 1.E-8 ; 'FINSI'; 'SI' (CALFAT 'EGA' 0) ; PROFM1 = (PROF11 + PROF12 + PROF13) / 3. ; ATOTE1 = SELEC.KF * PROFM1 ; ATOTALE1 = ATOTALE1 + ATOTE1 ; PROFM2 = (PROF21 + PROF22 + PROF23) / 3. ; ATOTE2 = SELEC.KF * PROFM2 ; ATOTALE2 = ATOTALE2 + ATOTE2 ; 'FINSI' ; ATOTE = SELEC.KF * PROFM ; ATOTALE = ATOTALE + ATOTE ; 'FIN' BOUCF ; 'SI' (CALFAT 'EGA' 0) ; 'CARACTERISTIQUES' 'RIGIDITE' ; CAR11 = CHFIS0 + CHFISS1 ; DON.'CAR1' = CAR11 ; TABCAR.'FATIGUE'. KREA = CAR11 ; 'CARACTERISTIQUES' 'RIGIDITE' ; CAR12 = CHFIS0 + CHFISS2 ; DON.'CAR2' = CAR12 ; TABCAR.'FLUAGE'. KREA = CAR12 ; 'FINSI' ; 'CARACTERISTIQUES' 'RIGIDITE' ; CAR1 = CHFIS0 + CHFISS ; DON.'TPSTOT' = TTOTAL ; DON.'NBCYCLE' = NBCYT ; DON.'CAR' = CAR1 ; DON.'MAT' = MATF ; DON.'OBJ' = OBJF ; DON.'REPRISE' = VRAI ; TABCAR.'TOTAL'. KREA = CAR1 ; TABNCY.KREA = NBCY ; TABCON.'DELTSIG'. (KREA - 1) = DSIGFIS ; TABCON.'CHSIG_A'. (KREA - 1) = SIGAFIS ; TABCON.'CHSIG_B'. (KREA - 1) = SIGBFIS ; TABCON.'DELTSIG1'. (KREA - 1) = DSIG1FIS ; TABCON.'CHSIG_A1'. (KREA - 1) = SIGA1FIS ; TABCON.'CHSIG_B1'. (KREA - 1) = SIGB1FIS ; TABCON.'SDEFRAS'. (KREA - 1) = S_DEFRAS ; TABCON.'SDEFRBS'. (KREA - 1) = S_DEFRBS ; TABCON.'SDEFR'. (KREA - 1) = DS_DEFR ; TABCON.'VALR' . (KREA - 1) = R ; TABCON.'VALQ' . (KREA - 1) = Q ; TABCON.'VALPSI' . (KREA - 1) = PSI ; TABCON.'VALKDJ' . (KREA - 1) = K_DJ ; TABCON.'VALDJ' . (KREA - 1) = DJ ; TABCON.'VALDKEFF' . (KREA - 1) = DK_EFF ; TABCON.'VALDAFAT' . (KREA - 1) = DA_FAT ; DON.'EVNCY' = TABNCY ; DON.'EVCAR' = TABCAR ; DON.'EVCON' = TABCON ; 'FIN' BOUREA ; * * *--------------------------------------------------------------* * TRACES * *--------------------------------------------------------------* * *--- Maxi des champs CHSIG-B * nn = don.lr_nbcyt ; ff = done.lr_sefb ; DESS EVCHSIGB ; * *--- da maxi de fluage * fu = don.lr_daflu ; DESS EVDAFLU ; * *--- profondeur maxi * tatot = don.lr_atot ; DESS EVDAATOT ; *--- epsfluage cumulé maxi * eps = don.lr_epflu ; DESS EVEPFLU ; * MENAGE ; 'FINP' DON ;
© Cast3M 2003 - Tous droits réservés.
Mentions légales