* fichier : gatt_dpg.dgibi
*
* Test gatt_dpg.dgibi: Jeux de données
* ---------------------------------------
*
'OPTI' 'DIME' 2 'MODE' 'PLAN' 'GENE' ;
'OPTI' 'ELEM' 'QUA8' ;
'OPTI' 'TRAC' 'PSC' ;
'TEMPS' 'ZERO' ;
L = 'MOT' LIST ; F = 'MOT' FIN ;
*
***********************************************************
* TEST DE VALIDATION *
* ------------------ *
* MODELE GATT_MONERIE *
* AFA3GLAA INCOMPRESSIBLE AVEC COUPLAGE DYNAMIQUE *
* *
* MAILLAGE: *
* EPROUVETTE CARRE *
* *
* CHARGEMENT: *
* CONTRAINTE DE COMPRESSION IMPOSEE (ESSAI DE FLUAGE) *
* TEMPERATURE CONSTANTE *
* DENSITE DE FISSIONS CONSTANTE *
* PRIMAIRE - MECANISMES 1 ET 2 - IRRADIATION *
* DENSIFICATION - GONFLEMENT *
***********************************************************
*
GRAPH = FAUX ;
LISTCOUR = VRAI ;
*
NE = 1 ;
H = 1. ;
*
OO = 0. 0. ;
A1 = H 0. ;
A2 = H H ;
A3 = 0. H ;
*
LB = 'DROIT' NE OO A1 ;
LD = 'DROIT' NE A1 A2 ;
LH = 'DROIT' NE A2 A3 ;
LG = 'DROIT' NE A3 OO ;
*
SU1 = 'DALL' LB LD LH LG 'PLAN' ;
*
MODL1= MODE SU1 MECANIQUE ELASTIQUE
VISCOPLASTIQUE GATT_MONERIE 'DPGE' OO ;
*
* ----------------------*
* Materiau GATT_MONERIE *
* ----------------------*
TE1 = 1300. + 273. ;
PO = 4.9E-2 ;
DF1 = 1.E18 ;
*
TA = @GATTPAR '/u2/castem/divers/fichier_gatt' ;
*
TA.'BP' = 0. ;
TA.'POR0' = PO ;
TA.'CR' = 0.16E-2 ;
*
MATREE = MATE MODL1 'YOUN' (TA.'YOUN') ;
PP = 'MANU' 'CHML' MODL1 'T' TE1 'PORO' PO RIGIDITE ;
EE = 'VARI' 'NUAG' MODL1 MATREE PP ;
*
MATR11 = 'MATE' MODL1 'YOUN' EE 'NU' 0. 'RHO' 10950. 'ALPH' 0. ;
*
MATR12 = 'MATE' MODL1
'R' (TA.'R') 'DG0' (TA.'DG0') 'DG' (TA.'DGCR')
'K1' (TA.'K1') 'M1' (TA.'M1') 'Q1' (TA.'Q1') 'N1' (TA.'N1')
'K2' (TA.'K2') 'M2' (TA.'M2') 'Q2' (TA.'Q2') 'N2' (TA.'N2')
'OMEG' (TA.'OMEG') 'H' (TA.'H') 'Q' (TA.'Q') 'BETA' (TA.'BETA')
'K' (TA.'K') 'A' (TA.'A') 'Q3' (TA.'Q3') 'N3' (TA.'N3')
'CR' (TA.'CR') 'CR1' (TA.'CR1') 'CR2' (TA.'CR2') 'CR3' (TA.'CR3');
*
MATR13 = 'MATE' MODL1
'KP' (TA.'KPAF') 'AP' (TA.'AP') 'BP' (TA.'BP') 'QP' (TA.'QP') ;
*
MATR14 = 'MATE' MODL1
'ADEN' TA.'ADEN' 'KGON' TA.'KGON'.
'POR0' (TA.'POR0') 'BUMI' (TA.'BUMI') 'EFIS' (TA.'EFIS') ;
*
* TYPE = 0. combustible UO2 sinon combustible AFA3GLAA
* COMP = 0. combustible incompressible sinon compressible
* DYN = 0. couplage dynamique sinon statique
*
MATR15 = 'MATE' MODL1 'TYPE' 1. 'COMP' 1. 'DYN' 1. ;
*
MATR16 = 'MATE' MODL1
'DYN1' (TA.'DYN1') 'DYN2' (TA.'DYN2') 'DYN3' (TA.'DYN3') ;
*
MATR1 = MATR11 'ET' MATR12 'ET' MATR13 'ET' MATR14 'ET'
MATR15 'ET' MATR16 ;
*
* -----------------------*
* Conditions aux limites *
* -----------------------*
CLYB = 'BLOQ' 'UY' LB ;
CLXG = 'BLOQ' 'UX' LG ;
CLT = CLYB 'ET' CLXG ;
*
TMIL = 1.E6 ;
TFIN = 2.E6 ;
*
RHO0 = 1. - TA.'POR0' ;
AKBU = TA.'EFIS'*270./238./10950./RHO0*DF1 ;
* CE QUI SUIT EST VRAI CAR LE FLUX DE FISSIONS EST CONSTANT
TBU = (TA.'BUMI' / AKBU) - 1. ;
TTBU = ('ENTI' (TBU/10000.)) * 10000. ;
*-------------------*
* Instants calcules *
*-------------------*
'SI' LISTCOUR ;
*--------------
LIST1 = 'PROG' 0 'PAS' 0.1 1 'PAS' 1 10 'PAS' 10 100 'PAS' 100 1000
'PAS' 500 15000 ;
'SINON' ;
*--------
LIST1 = 'PROG' 0 'PAS' 0.1 1 'PAS' 1 10 'PAS' 10 100 'PAS' 100 1000
'PAS' 500 30000 ;
'FINSI' ;
*--------
* ------------------------------*
* Chargement cte en temperature *
* ------------------------------*
CHTEMP = 'MANU' 'CHPO' SU1 1 'T' 1. ;
EVT = 'EVOL' 'MANU' ('PROG' 0. (2.*TFIN))
('PROG' TE1 TE1) ;
CHARTEMP = 'CHAR' 'T' CHTEMP EVT ;
* -------------------------------------*
* Chargement cte en densite de fission *
* -------------------------------------*
CHFISS = 'MANU' 'CHPO' SU1 1 'DFIS' 1. ;
EVF = 'EVOL' 'MANU' ('PROG' 0. (2.*TFIN))
('PROG' DF1 DF1) ;
CHARFISS = 'CHAR' 'DFIS' CHFISS EVF ;
* -----------------------*
* Chargement en pression *
* -----------------------*
valpres = 60E6 ;
compr = 'PRES' 'MASS' MODL1 valpres LH ;
EVP = 'EVOL' 'MANU' ('PROG' 0. 1. (2.*TFIN))
('PROG' 0. 1. 1.) ;
CHARMECA = 'CHAR' 'MECA' compr EVP ;
*
CHARTOT = CHARMECA 'ET' CHARTEMP 'ET' CHARFISS ;
* ---------------------------------------*
* Variables internes initiales 'PORO'=PO *
* ---------------------------------------*
VAR00 = 'ZERO' MODL1 'VARINTER' ;
VAR01 = 'MANU' 'CHML' MODL1 'PORO' PO
'TYPE' 'VARIABLES INTERNES' 'STRESSES' ;
VAR0 = VAR00 + VAR01 ;
*
*
TAB1 = TABLE ;
TAB1.'TEMPERATURES' = TABLE ;
TAB1.'VARIABLES_INTERNES'= TABLE ;
TAB1.'BLOCAGES_MECANIQUES' = CLT ;
TAB1.'MODELE' = MODL1 ;
TAB1.'CHARGEMENT' = CHARTOT ;
TAB1.'TEMPERATURES' . 0 = CHTEMP ;
TAB1.'VARIABLES_INTERNES' . 0 = VAR0 ;
TAB1.'CARACTERISTIQUES' = MATR1 ;
TAB1.'TEMPS_CALCULES' = LIST1 ;
TAB1.'TEMPS_SAUVES' = LIST1 ;
*
TMASAU = TABLE ;
tab1 . 'MES_SAUVEGARDES' = TMASAU ;
TMASAU .'DEFTO' = VRAI ;
TMASAU .'DEFIN' = VRAI ;
*
PASAPAS TAB1 ;
*
*
*
*****************************************
* CONTROLE DES RESULTATS *
*****************************************
*
*
AP = TA.'AP' ;
BP = TA.'BP' ;
N1 = TA.'N1' ;
N2 = TA.'N2' ;
DG = TA.'DGCR' ;
*
* Facteurs multiplicatifs dus au dopage par le Chrome
WC1 = 'TANH' ( (TA.'CR' - TA.'CR2') / TA.'CR3' ) ;
WC1 = 1. + ( 0.5 * TA.'CR1' * (1. + WC1) ) ;
CV = 180. / PI ;
WC2 = 1. - ( 'COS' (CV * DG / TA.'DG0') ) ;
WC2 = 2. * (TA.'DG0'**TA.'M2') * WC2 ;
*
* Calcul de TO pour la fonction de couplage dynamique
TO = 'TANH' ( (TA.'DYN2' - TE1) / TA.'DYN3' ) ;
TO = TA.'DYN1' * (1. + TO) ;
TO = TO + 1. ;
*
BUMI = TA.'BUMI' ;
AKEVD = AKBU*TA.'KGON' ;
ADEN = TA.'ADEN' ;
KGON = TA.'KGON' ;
* -------------------------------------------------------------------*
* Calcul de la cte AAAA intervenant ds le calcul de la def. de dens. *
* -------------------------------------------------------------------*
BUMAX0=60.D0*BUMI ;
CRIT=1.D-10 ;
'REPE' BLOC 100 ;
BUMAX = BUMI* ('EXP' (1. - (ADEN/(KGON*BUMAX0)))) ;
BUMAX = (0.2*BUMAX) + (0.8*BUMAX0) ;
TEST='ABS' ((BUMAX-BUMAX0)/BUMAX0) ;
'SI' ('<' TEST CRIT) ;
'QUIT' BLOC ;
'FINS' ;
BUMAX0=BUMAX ;
'FIN' BLOC ;
AAAA = (-1.D0*RHO0*(ADEN-(KGON*BUMAX))) /
((1.D0+ADEN)*(LOG(BUMAX/BUMI))) ;
*
* -----------------------*
* Controle des resultats *
* -----------------------*
SS = TAB1 . 'CONTRAINTES' ;
VV = TAB1 . 'VARIABLES_INTERNES' ;
IN = TAB1 . 'DEFORMATIONS_INELASTIQUES' ;
NCONT = ('DIME' (TAB1 . 'CONTRAINTES')) - 1 ;
*
ERMAX1 = 0. ;
ERMAX2 = 0. ;
*
Lzeit = 'PROG' ;
Lteta = 'PROG' ;
Lteta_c = 'PROG' ;
Lepsv = 'PROG' ;
Lepsv_c = 'PROG' ;
*
ind0 = 9 ;
zeit0 = 1. ;
*
epsv0 = 'MAXI' ('EXCO' IN.(ind0 + 1) 'EIYY') ;
*
'REPE' BLOC (NCONT - ind0) ;
*
ind = ind0 + &BLOC ;
*
* ----------------------------------------------------
* SMYY = valpres ET LES AUTRES COMPOSANTES SONT NULLES
* ----------------------------------------------------
SMYY = -1. * valpres ;
SSM = SMYY / 3. ;
SSEQ = 'ABS' SMYY ;
* Deviateur des contraintes
SSPRIM2 = SMYY - SSM ;
* Contrainte YY calculee
sy_c = 'MAXI' ('EXCO' SS.ind 'SMYY') ;
* --------------------------------------------------------------
* VITESSE DE DEFORMATION VISCO-PLASTIQUE EVP D"ORIGINE THERMIQUE
* --------------------------------------------------------------
*-- fluage primaire
*
EVP02 = -1.5 * TA.'KPAF' *
('EXP' (-1.*TA.'QP'/(TA.'R'*TE1))) * (SSEQ**AP) ;
*
*-- fluage secondaire (2 mecanismes)
*
* on teste la porosite :
PP = 'MAXI' ('EXCO' VV . &BLOC 'PORO') ;
ECART1 = 'ABS' ((PP - PO) / PO) ;
ERMAX1 = 'MAXI' ('PROG' ECART1 ERMAX1) ;
*
A1 = (N1* (PP**(-1./N1) - 1.)**(-2.*N1/(N1+1.))) ;
B1 = (1. + (2.*PP/3.))/ ((1. - PP) **(2.*N1/(N1+1.))) ;
B1 = B1 + (A1/4.) ;
A1 = 0. ;
*
A2 = (N2* (PP**(-1./N2) - 1.)**(-2.*N2/(N2+1.))) ;
B2 = (1. + (2.*PP/3.))/ ((1. - PP) **(2.*N2/(N2+1.))) ;
B2 = B2 + (A2/4.) ;
A2 = 0. ;
*
EVP12 = 0.5 * (TA.'K1' * (DG**TA.'M1') * WC1 *
('EXP' (-1.*TA.'Q1'/(TA.'R'*TE1))) *
(((A1*((1.5*SSM)**2)) + (B1*(SSEQ ** 2)))**((N1-1.)/2.)) *
((A1*1.5*SSM) + (3.*B1*SSPRIM2))) ;
*
EVP22 = 0.5 * (TA.'K2' * WC2 * ('EXP' (-1.*TA.'Q2'/(TA.'R'*TE1))) *
(((A2*((1.5*SSM)**2)) + (B2*(SSEQ ** 2)))**((N2-1.)/2.)) *
((A2*1.5*SSM) + (3.*B2*SSPRIM2))) ;
* -----------------------------
* FONCTION DE COUPLAGE STATIQUE
* -----------------------------
TETA0 = 0.5 * TA.'BETA' *
(1. +
('TANH' ((TE1 - (TA.'OMEG' * (SSEQ**(-1.*TA.'Q')))) / TA.'H'))) ;
* ------------------------------
* FONCTION DE COUPLAGE DYNAMIQUE
* ------------------------------
zeit = TAB1.'TEMPS'.ind ;
duree = zeit - zeit0 ;
TETA = ( 1. + (zeit/TO) ) ** -1 ;
TETA = TETA0 * (1. - TETA) ;
* Fonction de couplage dynamique calculee
teta_c = 'MAXI' ('EXCO' VV.ind 'TETA') ;
* ----------------------------------
* VITESSE DE DEFORMATION IRRADIATION
* ----------------------------------
EVIR2 = 1.5 * TA.'A' * DF1 * (SSEQ **(TA.'N3' - 1.)) *
('EXP' (-1.*TA.'Q3'/(TA.'R'*TE1))) * SSPRIM2 ;
* ------------------------------------
* DEFORMATION VISCO-PLASTIQUE SELON YY
* ------------------------------------
KFI = 1.+(TA.'K'*DF1) ;
EPSVa = EVIR2 + ( KFI * (EVP02+EVP12) ) ;
EPSVb = KFI * (EVP22 - EVP12) ;
INTGTETA = 'LOG' ( 1. + (duree/TO) ) ;
INTGTETA = TO * INTGTETA ;
INTGTETA = TETA0 * (duree - INTGTETA) ;
epsv = (EPSVa * duree) + (EPSVb * INTGTETA) ;
epsv = epsv0 + epsv ;
* Deformation viscoplastique calculee
epsv_c = 'MAXI' ('EXCO' IN.ind 'EIYY') ;
* On teste la deformation viscoplastique :
ECART2 = 'ABS' ((epsv_c - epsv) / epsv) ;
ERMAX2 = 'MAXI' ('PROG' ECART2 ERMAX2) ;
*
Lzeit = Lzeit 'ET' ('PROG' zeit) ;
Lteta = Lteta 'ET' ('PROG' TETA) ;
Lteta_c = Lteta_c 'ET' ('PROG' teta_c) ;
Lepsv = Lepsv 'ET' ('PROG' epsv) ;
Lepsv_c = Lepsv_c 'ET' ('PROG' epsv_c) ;
*
'FIN' BLOC ;
*
'SI' (ERMAX1 '<EG' 1E-5) ;
'ERRE' 0 ;
'SINO' ;
'MESS' 'POROSITE NON CONSTANTE' ;
'MESS' 'ERREUR MAXIMALE POROSITE :'
ERMAX1 '> 1E-5 ' ;
'ERRE' 5 ;
'FINS' ;
*
'SI' ( ERMAX2 '<EG' 0.05) ;
'ERRE' 0 ;
'SINO' ;
'MESS' 'ERREUR MAXIMALE DEFORMATION VISCOPLASTIQUE :'
ERMAX2 '> 0.05 ' ;
'ERRE' 5 ;
'FINS' ;
*
*
'SI' GRAPH ;
'TITR' 'Deformations planes general. : Fonction de couplage dynamique';
EVTETA = 'EVOL' 'MANU' 'Temps' Lzeit 'TETA' Lteta ;
EVTETA_C = 'EVOL' 'MANU' 'Temps' Lzeit 'TETA' Lteta_c ;
TAD = TABLE ;
TAD . 1 = 'TIRC' ;
TAD . 2 = 'TIRR' ;
TAD . 'TITRE' = TABLE ;
TAD . 'TITRE' . 1 = 'TETA THEORIQUE' ;
TAD . 'TITRE' . 2 = 'TETA CALCULEE' ;
'DESS' (EVTETA 'ET' EVTETA_C) TAD 'LEGE' ;
*
'TITR' 'Deformations planes general. : Deformation viscoplastique' ;
EVEPSV = 'EVOL' 'MANU' 'Temps' Lzeit 'EPSV' Lepsv ;
EVEPSV_C = 'EVOL' 'MANU' 'Temps' Lzeit 'EPSV' Lepsv_c ;
TAD = TABLE ;
TAD . 1 = 'TIRC' ;
TAD . 2 = 'TIRR' ;
TAD . 'TITRE' = TABLE ;
TAD . 'TITRE' . 1 = 'EPSV THEORIQUE' ;
TAD . 'TITRE' . 2 = 'EPSV CALCULEE' ;
'DESS' (EVEPSV 'ET' EVEPSV_C) TAD 'LEGE' ;
'FINS' ;
*
'FIN';
© Cast3M 2003 - All rights reserved.
Disclaimer