* MRCSHELL PROCEDUR BP208322 20/05/05 21:15:02 10601 TAB_IN*'TABLE' TOL_1*'FLOTTANT' L_ELE1/'LISTENTI'; * * -------------------------------------------------------- * Procedure MRCSHELL * Computation of security coef Lambda * * Develeppers: * Alberto FRAU * DEN/DANS/DM2S/SEMT/EMSI * Nicolas ILE * DEN/DANS/DM2S/SEMT/EMSI * * INPUT: * TYP_CAL1: Calculation option * 'RECTANGLE' * 'ELLIPSOIDE' * TAB_IN.'MAILLAGE': Maillage du voile [MAILLAGE] * TAB_IN.'EFFORT_SEISME': MCHAML de la matrice * representant l'enveloppe des * efforts sismiques (voir SISSIB) * TAB_IN.'EFFORT_STATIQUE': MCHAML des efforts statiques qui * agissent sur le voile * (issu EFFMARTI) * TAB_IN.'CARACTERISTIQUES_EXTERNE':MCHAML contenant les * caracteristiques de la couche * externe selon le modele de MARTI * (voir EFFMARTI): * 'RHO1' taux d'acier direction 1 * 'RHO2' taux d'acier direction 2 * 'ENRO' Enrobage * TAB_IN.'CARACTERISTIQUES_INTERNE':MCHAML contenant les * caracteristiques de la couche * interne selon le modele de MARTI * (voir EFFMARTI): * 'RHO1' taux d'acier direction 1 * 'RHO2' taux d'acier direction 2 * 'ENRO' Enrobage * TAB_IN.'CARACTERISTIQUES_CORE': MCHAML contenant les * caracteristiques et le coeficient * pour la couche intermediaire * selon le modele de MARTI * 'H' Epaisseur Totale * 'RHOT' taux d'acier transversale * 'COTH' Facteur de cisaillement * TAB_IN.'FC_BET': Resistance caracteristique beton * [FLOTTANT] * TAB_IN.'GAM_C': Coef gammac 1.5/1.2 EC2/EC8 * [FLOTTANT] * TAB_IN.'ALP_C': Coef alpa 1.0 EC2 * [FLOTTANT] * TAB_IN.'NU_C': Coef nu 0.6*(1-250/fck) EC2 * [FLOTTANT] * TAB_IN.'FS_ACI': resistance caracteristique de l'acier * [FLOTTANT] * TAB_IN.'GAM_S': Coef gammas 1.15 EC2 * [FLOTTANT] * TOL_1: Tollerance [FLOTTANT] * L_ELE1: Liste des elements sur lesquels on veut sortir les * graphiques des surfaces limites et des enveloppes * (sans ou avec covariance - RECTANGLE ou ELLISPOIDE) * pour les couches externes, interne et * intermediaire (pas necessaire) [LISTREEL] * OUTPUT: * TT2: Table Contenant: * .'CH_LAMBDA_E': MCHAML les valeurs des marges pour la couche * externe (composent LAME) * .'CH_LAMBDA_I': MCHAML des valeurs des marges pour la couche * interne (composent LAMI) * .'CH_LAMBDA_C': MCHAML des valeurs des marges pour la couche * intermediaire (composent LAMC) * .'CARTE_E': Maillage avec deux colorations pour indiquer les * element avec une marge superieure à 1 ou * inferieure (couche externe): * ROUGE elements -> Lambda < 1.0 * VERT elements -> Lambda > 1.0 * .'CARTE_I': Maillage avec deux colorations pour indiquer les * element avec une marge superieure à 1 ou * inferieure (couche interne): * ROUGE elements -> Lambda < 1.0 * VERT elements -> Lambda > 1.0 * .'CARTE_C': Maillage avec deux colorations pour indiquer les * element avec une marge superieure à 1 ou * inferieure (couche intermediaire): * ROUGE elements -> Lambda < 1.0 * VERT elements -> Lambda > 1.0 * .'GRAPHIQUES': Sous table pour les outils de graphique: * .I. Ieme element * .'LIMITE_E': Surface limite de la couche externe * [MAILLAGE] * .'LIMITE_E': Surface limite de la couche interne * [MAILLAGE] * .'LIMITE_C': Surface limite de la couche * intermediaire [MAILLAGE] * .'RECTANGLE_E': enveloppe couche externe sans prise * en compte des covariances * (methode RECTANGLE) [MAILLAGE] * .'RECTANGLE_I': enveloppe couche interne sans prise * en compte des covariances * (methode RECTANGLE) [MAILLAGE] * .'RECTANGLE_I': enveloppe couche intermediaire * sans prise en compte des covariances * (methode RECTANGLE) [MAILLAGE] * .'ELLIPSOIDE_E': enveloppe couche externe avec prise * en compte des covariances * (methode ELLIPSOIDE) [MAILLAGE] * .'ELLIPSOIDE_I': enveloppe couche interne avec prise * en compte des covariances * (methode ELLIPSOIDE) [MAILLAGE] * .'ELLIPSOIDE_I': enveloppe couche intermediaire * avec prise en compte des covariances * (methode ELLIPSOIDE) [MAILLAGE] * .'RECTANGLE_E_AUG': enveloppe couche externe sans prise * en compte des covariances amplifie par * la marge LAME * (methode RECTANGLE) [MAILLAGE] * .'RECTANGLE_I_AUG': enveloppe couche interne sans prise * en compte des covariances amplifie par * la marge LAMI * (methode RECTANGLE) [MAILLAGE] * .'RECTANGLE_C_AUG': enveloppe couche intermediaire sans prise * en compte des covariances amplifie par * la marge LAMC * (methode RECTANGLE) [MAILLAGE] * .'ELLIPSOIDE_E_AUG': enveloppe couche externe avec prise * en compte des covariances amplifie par * la marge LAME * (methode ELLIPSOIDE) [MAILLAGE] * .'ELLIPSOIDE_I_AUG': enveloppe couche interne avec prise * en compte des covariances amplifie par * la marge LAMI * (methode ELLIPSOIDE) [MAILLAGE] * .'ELLIPSOIDE_C_AUG': enveloppe couche intermediaire avec * prise en compte des covariances * amplifie par la marge LAMC * (methode ELLIPSOIDE) [MAILLAGE] * * -------------------------------------------------------- * MAI_V = TAB_IN.'MAILLAGE'; CH_SEI1 = TAB_IN.'EFFORT_SEISME'; CH_STA1 = TAB_IN.'EFFORT_STATIQUE'; CH_CARE = TAB_IN.'CARACTERISTIQUES_EXTERNE'; CH_CARI = TAB_IN.'CARACTERISTIQUES_INTERNE'; CH_CARC = TAB_IN.'CARACTERISTIQUES_CORE'; *D_VOI1 = TAB_IN.'D'; FCBET1 = TAB_IN.'FC_BET'; GAMC = TAB_IN.'GAM_C'; ALPC1 = TAB_IN.'ALP_C'; NUC1 = TAB_IN.'NU_C'; FSACI1 = TAB_IN.'FS_ACI'; GAMS1 = TAB_IN.'GAM_S'; * 'MESS' ; 'MESS' ' Calculs des coef de securite '; 'MESS'; * * controle of input data 'SI' (NEG (TYP_CAL1) 'ELLIPSOIDE'); 'SI' (NEG (TYP_CAL1) 'RECTANGLE'); 'QUIT' LAM_RCM; 'FINSI'; 'FINSI'; 'SINON'; 'SINON'; 'MESS' ' composantes erronee!!!'; 'QUIT' LAM_RCM; 'FINSI'; 'FINSI'; 'FINSI'; 'MESS' ' composantes erronee!!!'; 'FINSI'; 'MESS' ' composantes erronee!!!'; 'FINSI'; 'MESS' ' composantes erronee!!!'; 'FINSI'; 'MESS' ' composantes erronee!!!'; 'FINSI'; * * creation of the table output TT2 = 'TABLE'; * * creation of the MCHAML field for the output * * number of element shear wall * * Ellipsoide methode 'SI' ('EGA' TYP_CAL1 'ELLIPSOIDE'); *------------------ Calcul par l'ellipsoide ---------------------------* 'MESS' ' Methode Ellipsoide'; 'MESS'; * * loop for the layer (external or intenal) I_IE1 = 1; 'REPE' IND_IE1 (3); * * I_IE1 = 1 External layer 'SI' (I_IE1 'EGA' 1); 'MESS'; 'MESS' ' Membrane Exterieure'; 'FINSI'; * * I_IE1 = 2 Internal layer 'SI' (I_IE1 'EGA' 2); 'MESS'; 'MESS' ' Membrane Interieure'; 'FINSI'; * 'SI' (I_IE1 'EGA' 3); 'MESS'; 'MESS' ' Core'; 'FINSI'; * * loop for the element I_ELE1 = 1; 'REPE' IND_ELE1 (N_ELE1); * element I * extracting the forces and characteristics for the external layer 'SI' (I_IE1 'EGA' 1); * * * seismic stress N11 = ((N11)/((2.0)*(ENR1))); N22 = ((N22)/((2.0)*(ENR1))); N12 = ((N12)/((2.0)*(ENR1))); N11N22 = ((N11N22)/(((2.0)*(ENR1))**(2.0))); N11N12 = ((N11N12)/(((2.0)*(ENR1))**(2.0))); N22N12 = ((N22N12)/(((2.0)*(ENR1))**(2.0))); * * static stress N110 = ((N110)/((2.0)*(ENR1))); N220 = ((N220)/((2.0)*(ENR1))); N120 = ((N120)/((2.0)*(ENR1))); * 'FINSI'; * extracting the force and characteristics for the internal layer 'SI' (I_IE1 'EGA' 2); * * * seismic stress N11 = ((N11)/((2.0)*(ENR1))); N22 = ((N22)/((2.0)*(ENR1))); N12 = ((N12)/((2.0)*(ENR1))); N11N22 = ((N11N22)/(((2.0)*(ENR1))**(2.0))); N11N12 = ((N11N12)/(((2.0)*(ENR1))**(2.0))); N22N12 = ((N22N12)/(((2.0)*(ENR1))**(2.0))); * * static stress N110 = ((N110)/((2.0)*(ENR1))); N220 = ((N220)/((2.0)*(ENR1))); N120 = ((N120)/((2.0)*(ENR1))); * 'FINSI'; * * extracting the force and characteristics for the internal layer 'SI' (I_IE1 'EGA' 3); D_11 = H_11 - ((2.0)*(ENR1)) - ((2.0)*(ENR2)); * * * * seismic stress T1 = ((V1)/((D_11))); T2 = ((V2)/((D_11))); T1T2 = ((V1V2)/(((D_11))**(2.0))); * * static stress T10 = ((V10)/((D_11))); T20 = ((V20)/((D_11))); * 'FINSI'; * * Verification Core ----------------------------------------- 'SI' (I_IE1 'EGA' 3); * -------------------------------------------------------------- TTL1 = TABLE; TTL1.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_COR'; TTL1.'T1' = T10; TTL1.'T2' = T20; TTL1.'FCK' = FCBET1; TTL1.'FSK_T' = FSACI1; TTL1.'RHO_T' = RHOT; TTL1.'GAMMA_C' = GAMC; TTL1.'ALPA_C' = ALPC1; TTL1.'GAMMA_S' = GAMS1; TTL1.'NU_C' = NUC1; TTL1.'COT_THETA' = CO_TH1; * 'SI' (T_ST1 '<EG' 0.0); LAM_FIN = 0.0; TIT1 = 'CHAINE' ' Element ' I_ELE1 ' Lambda=' LAM_FIN '.....Sig0 externe'; 'MESS' TIT1; MODTOT = MODTOT 'ET' MOD1; OUBL LAM_FIN; 'SINON'; * * Start of the iteration P1 = 0. 0. 0.; P2 = 1. 0. 0.; P3 = 2. 0. 0.; * MAI1 = P1; * Matrix X T1T2 (T2*T2))); * * Static state stress * * Initial Vecteur RB0 = SB0; LAMB0 = RB0/SB0; * * incremental step H_VAL1 = (SB0)/(100000.0); H_VAL2 = (SB0)/(100000.0); * * direction used for the ellispoide methode TB_DIR = 'TABLE'; * * loop for each direction I_K1 = 1; 'REPE' IND3 (4); * TAB_ITE = 'TABLE'; TAB_ITE. 0 = 'TABLE'; TAB_ITE. 0 . 'ALPA' = ALP_0; TAB_ITE. 0 . 'LAMBDA' = LAMB0; TAB_ITE. 0 . 'RB' = RB0; * ALP_K = (TB_DIR. I_K1); I_M1 = 1; * first loop in order to have n_elllips=n_limite 'REPE' IND2 (200); * sauving Lambda for j iteraction TAB_ITE. I_M1 = 'TABLE'; TAB_ITE. I_M1 . 'ALPA' = ALP_K; * determination of the stress state for the chosen direction * nomalisez vector of hte rayon of the ellipsoide for the * chosen direction BJ = (XALP_J - EF_ST0)/(SBJ); * rayon of the ellipsoide for the chosen direction RBVAL1 = (TAB_ITE.(I_M1 - 1). 'RB'); * second loop in order to have f=0 I_I1 = 1; REPE IND1 (200); * strees state x0, x0+h, x0-h VV1 = (RBVAL1 + H_VAL1)*(BJ); VV2 = (RBVAL1 - H_VAL1)*(BJ); VV3 = (RBVAL1)*(BJ); * 'OUBL' VV1; 'OUBL' VV2; 'OUBL' VV3; * calculation of f and D terms TTL1 = TABLE; TTL1.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_COR'; TTL1.'T1' = T1V3; TTL1.'T2' = T2V3; TTL1.'FCK' = FCBET1; TTL1.'FSK_T' = FSACI1; TTL1.'RHO_T' = RHOT; TTL1.'GAMMA_C' = GAMC; TTL1.'ALPA_C' = ALPC1; TTL1.'GAMMA_S' = GAMS1; TTL1.'NU_C' = NUC1; TTL1.'COT_THETA' = CO_TH1; * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_COR'; TTL2.'T1' = T1V1; TTL2.'T2' = T2V1; TTL2.'FCK' = FCBET1; TTL2.'FSK_T' = FSACI1; TTL2.'RHO_T' = RHOT; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'GAMMA_S' = GAMS1; TTL2.'NU_C' = NUC1; TTL2.'COT_THETA' = CO_TH1; * TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_COR'; TTL3.'T1' = T1V2; TTL3.'T2' = T2V2; TTL3.'FCK' = FCBET1; TTL3.'FSK_T' = FSACI1; TTL3.'RHO_T' = RHOT; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'GAMMA_S' = GAMS1; TTL3.'NU_C' = NUC1; TTL3.'COT_THETA' = CO_TH1; * * controle 'SI' (('ABS'(F_VAL1)) '<' TOL_1); * convergence!!! RBJ = RBVAL1; 'QUIT' IND1; 'SINON'; 'SI' (I_I1 'EGA' 200); * end of loop, we take the last value!!! RBJ = RBVAL1; 'QUIT' IND1; 'FINSI'; * Check beetwen 2 values of R (radius)!!! 'SI' (I_I1 > 2); 'SI' ((ABS((RBVAL1 - RBVAL2)/(RBVAL1))) < ((TOL_1)*(1.e-10))); RBJ = RBVAL1; 'QUIT' IND1; 'FINSI'; 'FINSI'; * case when D is equal to zero 'SI' (('ABS'(D_VAL1)) < 1.E-16); RBVAL2 = RBVAL1; RBVAL1 = ((1.1)*(RBVAL1)); 'SINON'; * otherwise RBVAL2 = RBVAL1; RBVAL1 = RBVAL1 - ((F_VAL1)/(D_VAL1)); 'FINSI'; 'FINSI'; * I_I1 = I_I1 + 1; 'FIN' IND1; * computation of lambda LAMBJ = RBJ/SBJ; TAB_ITE. I_M1 . 'LAMBDA' = LAMBJ; TAB_ITE. I_M1 . 'RB' = RBJ; XCOUB1 = (((TAB_ITE. I_M1 .'LAMBDA')*(TAB_ITE. I_M1 .'LAMBDA'))* (MATX1)); * amplified stress state using the lambda coef * Dh*ex ; Dh*ey ; Dh*ez * x0*lam + Dh*ex ; x0*lam + Dh*ey ; x0*lam + Dh*ez VV_HXP = XALP_L + DE_HX; VV_HYP = XALP_L + DE_HY; * x0*lam + Dh*ex ; x0*lam + Dh*ey ; x0*lam + Dh*ez VV_HXN = XALP_L - DE_HX; VV_HYN = XALP_L - DE_HY; * x0*lam VV_0 = XALP_L; * * * * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_COR'; TTL2.'T1' = VV_HXP1; TTL2.'T2' = VV_HXP2; TTL2.'FCK' = FCBET1; TTL2.'FSK_T' = FSACI1; TTL2.'RHO_T' = RHOT; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'GAMMA_S' = GAMS1; TTL2.'NU_C' = NUC1; TTL2.'COT_THETA' = CO_TH1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_COR'; TTL3.'T1' = VV_HXN1; TTL3.'T2' = VV_HXN2; TTL3.'FCK' = FCBET1; TTL3.'FSK_T' = FSACI1; TTL3.'RHO_T' = RHOT; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'GAMMA_S' = GAMS1; TTL3.'NU_C' = NUC1; TTL3.'COT_THETA' = CO_TH1; * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_COR'; TTL2.'T1' = VV_HYP1; TTL2.'T2' = VV_HYP2; TTL2.'FCK' = FCBET1; TTL2.'FSK_T' = FSACI1; TTL2.'RHO_T' = RHOT; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'GAMMA_S' = GAMS1; TTL2.'NU_C' = NUC1; TTL2.'COT_THETA' = CO_TH1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_COR'; TTL3.'T1' = VV_HYN1; TTL3.'T2' = VV_HYN2; TTL3.'FCK' = FCBET1; TTL3.'FSK_T' = FSACI1; TTL3.'RHO_T' = RHOT; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'GAMMA_S' = GAMS1; TTL3.'NU_C' = NUC1; TTL3.'COT_THETA' = CO_TH1; * * costruction n_limit 'UY' ((-1.0)*(VAL_Y1)); * * variable for the convergence test ID1_CON = 0; * check on the n_limit * if |n_limit|=0 rotate the chosen direction by 10 degrees MATR1 = MATR1 'ET' (SIN(10.0)) (COS(10.0)) 0.0 0.0 )); AAA1 = MATR1*ALP_K; 'FINSI'; * convergence test VET_TEST = (TAB_ITE. I_M1 . 'ALPA') - (TAB_ITE. (I_M1 - 1) . 'ALPA'); * * deduction of the final value of Lambda 'SI' ((TAB_ITE. I_M1 . 'LAMBDA') '>' 0.0); LAM_FIN = (TAB_ITE. I_M1 . 'LAMBDA'); 'SINON'; 'SI' (LAM_FIN '>' (TAB_ITE. I_M1 . 'LAMBDA')); LAM_FIN = (TAB_ITE. I_M1 . 'LAMBDA'); 'FINSI'; 'FINSI'; 'FINSI'; 'QUIT' IND2; 'SINON'; 'SI' (I_M1 'EGA' 200); ID1_CON = 1; 'SI' ((TAB_ITE. I_M1 . 'LAMBDA') '>' 0.0); LAM_FIN = (TAB_ITE. I_M1 . 'LAMBDA'); 'SINON'; 'SI' (LAM_FIN '>' (TAB_ITE. I_M1 . 'LAMBDA')); LAM_FIN = (TAB_ITE. I_M1 . 'LAMBDA'); 'FINSI'; 'FINSI'; 'FINSI'; 'SINON'; * otherwise update the n_limit 'FINSI'; 'FINSI'; I_M1 = I_M1 + 1; 'FIN' IND2; I_K1 = I_K1 + 1; 'FIN' IND3; * * screen message 'SI' (ID1_CON 'EGA' 0); TIT1 = 'CHAINE' ' Element ' I_ELE1 ' Lambda=' LAM_FIN; 'MESS' TIT1; 'FINSI'; 'SI' (ID1_CON 'EGA' 1); TIT1 = 'CHAINE' ' Element ' I_ELE1 ' Lambda=' LAM_FIN '.....Attention non convergence'; 'SINON'; 'FINSI'; 'FINSI'; * 'SI' (I_IE1 'EGA' 3); MODTOT = MODTOT 'ET' MOD1; 'SI' (LAM_FIN '<' 1.0); 'SINON'; 'FINSI'; 'FINSI'; 'OUBL' LAM_FIN; 'OUBL' LAM_FIN2; 'FINSI'; * Verification Externe et interne------------------------------- 'SINON'; * -------------------------------------------------------------- * * Test about the static state stress TTL1 = TABLE; TTL1.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL1.'S11' = N110; TTL1.'S22' = N220; TTL1.'S12' = N120; TTL1.'FCK' = FCBET1; TTL1.'FSK_1' = FSACI1; TTL1.'FSK_2' = FSACI1; TTL1.'RHO_1' = RHOXS; TTL1.'RHO_2' = RHOYS; TTL1.'GAMMA_C' = GAMC; TTL1.'ALPA_C' = ALPC1; TTL1.'NU_C' = NUC1; TTL1.'GAMMA_S' = GAMS1; * 'SI' (T_ST1 '<EG' 0.0); LAM_FIN = 0.0; TIT1 = 'CHAINE' ' Element ' I_IE1 ' Lambda=' LAM_FIN '.....Sig0 externe'; 'MESS' TIT1; * * results stored in the MCHAML field 'SI' (I_IE1 'EGA' 1); MODTOT = MODTOT 'ET' MOD1; * CH_LAME = CH_LAME 'ET' ('MANU' 'CHML' MOD1 'LAME' LAM_FIN); 'SI' (LAM_FIN '<' 1.0); 'SINON'; 'FINSI'; 'FINSI'; 'SI' (I_IE1 'EGA' 2); MODTOT = MODTOT 'ET' MOD1; * CH_LAMI = CH_LAMI 'ET' ('MANU' 'CHML' MOD1 'LAMI' LAM_FIN); 'SI' (LAM_FIN '<' 1.0); 'SINON'; 'FINSI'; 'FINSI'; * 'OUBL' LAM_FIN; * 'SINON'; * * Start of the iteration P1 = 0. 0. 0.; P2 = 1. 0. 0.; P3 = 2. 0. 0.; * MAI1 = P1; * Matrix X N11N22 (N22*N22) N22N12 N11N12 N22N12 (N12*N12))); * * Static state stress * * Initial Vecteur RB0 = SB0; LAMB0 = RB0/SB0; * * incremental step H_VAL1 = (SB0)/(100000.0); H_VAL2 = (SB0)/(100000.0); * * direction used for the ellispoide methode TB_DIR = 'TABLE'; * * loop for each direction I_K1 = 1; 'REPE' IND3 (6); * TAB_ITE = 'TABLE'; TAB_ITE. 0 = 'TABLE'; TAB_ITE. 0 . 'ALPA' = ALP_0; TAB_ITE. 0 . 'LAMBDA' = LAMB0; TAB_ITE. 0 . 'RB' = RB0; * ALP_K = (TB_DIR. I_K1); I_M1 = 1; * first loop in order to have n_elllips=n_limite 'REPE' IND2 (200); * sauving Lambda for j iteraction TAB_ITE. I_M1 = 'TABLE'; TAB_ITE. I_M1 . 'ALPA' = ALP_K; * determination of the stress state for the chosen direction * nomalisez vector of hte rayon of the ellipsoide for the * chosen direction BJ = (XALP_J - EF_ST0)/(SBJ); * rayon of the ellipsoide for the chosen direction RBVAL1 = (TAB_ITE.(I_M1 - 1). 'RB'); * second loop in order to have f=0 I_I1 = 1; REPE IND1 (200); * strees state x0, x0+h, x0-h VV1 = (RBVAL1 + H_VAL1)*(BJ); VV2 = (RBVAL1 - H_VAL1)*(BJ); VV3 = (RBVAL1)*(BJ); * 'OUBL' VV1; 'OUBL' VV2; 'OUBL' VV3; * calculation of f and D terms TTL1 = TABLE; TTL1.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL1.'S11' = N11V3; TTL1.'S22' = N22V3; TTL1.'S12' = N12V3; TTL1.'FCK' = FCBET1; TTL1.'FSK_1' = FSACI1; TTL1.'FSK_2' = FSACI1; TTL1.'RHO_1' = RHOXS; TTL1.'RHO_2' = RHOYS; TTL1.'GAMMA_C' = GAMC; TTL1.'ALPA_C' = ALPC1; TTL1.'NU_C' = NUC1; TTL1.'GAMMA_S' = GAMS1; * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = N11V1; TTL2.'S22' = N22V1; TTL2.'S12' = N12V1; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; * TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = N11V2; TTL3.'S22' = N22V2; TTL3.'S12' = N12V2; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; * ((2.0)*(H_VAL1)); * controle 'SI' (('ABS'(F_VAL1)) '<' TOL_1); * convergence!!! RBJ = RBVAL1; 'QUIT' IND1; 'SINON'; 'SI' (I_I1 'EGA' 200); * fin of loop, we take the last value!!! RBJ = RBVAL1; 'QUIT' IND1; 'FINSI'; * Check beetwen 2 values of R (radius)!!! 'SI' (I_I1 > 2); 'SI' ((ABS((RBVAL1 - RBVAL2)/(RBVAL1))) < ((TOL_1)*(1.e-10))); RBJ = RBVAL1; 'QUIT' IND1; 'FINSI'; 'FINSI'; * Modification in case of the x0+h stress case is out of the * external boudary of the limit surface * [(-fc-rx*fs),(-fc-ry*fs)]x[(rx*fs),(ry*fs)] 'SI' (N11V3 > ((FSACI1*RHOXS)/(GAMS1))); RBVAL2 = RBVAL1; RBVAL1 = (((FSACI1*RHOXS)/(GAMS1)) - TOL_1)/ 'SINON'; 'SI' (N22V3 '>' ((FSACI1*RHOYS)/(GAMS1))); RBVAL2 = RBVAL1; RBVAL1 = (((FSACI1*RHOYS)/(GAMS1)) - TOL_1)/ 'SINON'; 'SI' (N11V3 '<' (((-1.0)*(((FCBET1*ALPC1)*(NUC1))/(ALPC1))) + ((-1.0)*((FSACI1*RHOXS)/(GAMS1))))); RBVAL2 = RBVAL1; RBVAL1 = ((((-1.0)*(((FCBET1*ALPC1)*(NUC1))/(ALPC1))) + ((-1.0)*((FSACI1*RHOXS)/(GAMS1)))) + TOL_1)/ 'SINON'; 'SI' (N22V3 < (((-1.0)*(((FCBET1*ALPC1)*(NUC1))/(ALPC1))) + ((-1.0)*((FSACI1*RHOYS)/(GAMS1))))); RBVAL2 = RBVAL1; RBVAL1 = ((((-1.0)*(((FCBET1*ALPC1)*(NUC1))/(ALPC1))) + ((-1.0)*((FSACI1*RHOYS)/(GAMS1)))) + TOL_1)/ 'SINON'; * case when D is equal to sero 'SI' (('ABS'(D_VAL1)) < 1.E-16); RBVAL2 = RBVAL1; RBVAL1 = ((1.1)*(RBVAL1)); 'SINON'; * otherwise RBVAL2 = RBVAL1; RBVAL1 = RBVAL1 - ((F_VAL1)/(D_VAL1)); 'FINSI'; 'FINSI'; 'FINSI'; 'FINSI'; 'FINSI'; 'FINSI'; * I_I1 = I_I1 + 1; 'FIN' IND1; * computation of lambda LAMBJ = RBJ/SBJ; TAB_ITE. I_M1 . 'LAMBDA' = LAMBJ; TAB_ITE. I_M1 . 'RB' = RBJ; XCOUB1 = (((TAB_ITE. I_M1 .'LAMBDA')*(TAB_ITE. I_M1 .'LAMBDA'))* (MATX1)); * amplified stress state using the lambda coef * Dh*ex ; Dh*ey ; Dh*ez * x0*lam + Dh*ex ; x0*lam + Dh*ey ; x0*lam + Dh*ez VV_HXP = XALP_L + DE_HX; VV_HYP = XALP_L + DE_HY; VV_HZP = XALP_L + DE_HZ; * x0*lam + Dh*ex ; x0*lam + Dh*ey ; x0*lam + Dh*ez VV_HXN = XALP_L - DE_HX; VV_HYN = XALP_L - DE_HY; VV_HZN = XALP_L - DE_HZ; * x0*lam VV_0 = XALP_L; * * * Calculation of n_limite if x0*lam + Dh*ex is out of the external * boudary of limite surface 'SI' (VV_HXP1 '>' ((FSACI1*RHOXS)/(GAMS1))); * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = VV_01; TTL2.'S22' = VV_02; TTL2.'S12' = VV_03; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = VV_HXN1; TTL3.'S22' = VV_HXN2; TTL3.'S12' = VV_HXN3; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = VV_HYP1; TTL2.'S22' = VV_HYP2; TTL2.'S12' = VV_HYP3; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = VV_HYN1; TTL3.'S22' = VV_HYN2; TTL3.'S12' = VV_HYN3; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = VV_HZP1; TTL2.'S22' = VV_HZP2; TTL2.'S12' = VV_HZP3; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = VV_HZN1; TTL3.'S22' = VV_HZN2; TTL3.'S12' = VV_HZN3; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; 'SINON'; * Calculation of n_limit if x0*lam - Dh*ex is out of the external * boudary of the limite surface 'SI' (VV_HXN1 '<' (((-1.0)*(((FCBET1*ALPC1)*(NUC1))/(ALPC1))) + ((-1.0)*((FSACI1*RHOXS)/(GAMS1))))); * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = VV_HXP1; TTL2.'S22' = VV_HXP2; TTL2.'S12' = VV_HXP3; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = VV_01; TTL3.'S22' = VV_02; TTL3.'S12' = VV_03; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = VV_HYP1; TTL2.'S22' = VV_HYP2; TTL2.'S12' = VV_HYP3; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = VV_HYN1; TTL3.'S22' = VV_HYN2; TTL3.'S12' = VV_HYN3; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = VV_HZP1; TTL2.'S22' = VV_HZP2; TTL2.'S12' = VV_HZP3; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = VV_HZN1; TTL3.'S22' = VV_HZN2; TTL3.'S12' = VV_HZN3; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; 'SINON'; * Calculation of n_limit if x0*lam + Dh*ey is out of the external * boudary of the limite surface 'SI' (VV_HYP1 '>' ((FSACI1*RHOYS)/(GAMS1))); * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = VV_HXP1; TTL2.'S22' = VV_HXP2; TTL2.'S12' = VV_HXP3; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = VV_HXN1; TTL3.'S22' = VV_HXN2; TTL3.'S12' = VV_HXN3; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = VV_01; TTL2.'S22' = VV_02; TTL2.'S12' = VV_03; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = VV_HYN1; TTL3.'S22' = VV_HYN2; TTL3.'S12' = VV_HYN3; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = VV_HZP1; TTL2.'S22' = VV_HZP2; TTL2.'S12' = VV_HZP3; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = VV_HZN1; TTL3.'S22' = VV_HZN2; TTL3.'S12' = VV_HZN3; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; 'SINON'; * Calculation of n_limit if x0*lam + Dh*ey is out of the external * boudary of the limite surface 'SI' (VV_HYN1 '<' (((-1.0)*(((FCBET1*ALPC1)*(NUC1))/(ALPC1))) + ((-1.0)*((FSACI1*RHOYS)/(GAMS1))))); * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = VV_HXP1; TTL2.'S22' = VV_HXP2; TTL2.'S12' = VV_HXP3; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = VV_HXN1; TTL3.'S22' = VV_HXN2; TTL3.'S12' = VV_HXN3; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; ((2.0)*(H_VAL2)); * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = VV_HYP1; TTL2.'S22' = VV_HYP2; TTL2.'S12' = VV_HYP3; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = VV_01; TTL3.'S22' = VV_02; TTL3.'S12' = VV_03; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; ((1.0)*(H_VAL2)); * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = VV_HZP1; TTL2.'S22' = VV_HZP2; TTL2.'S12' = VV_HZP3; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = VV_HZN1; TTL3.'S22' = VV_HZN2; TTL3.'S12' = VV_HZN3; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; ((2.0)*(H_VAL2)); 'SINON'; * Ordinary method TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = VV_HXP1; TTL2.'S22' = VV_HXP2; TTL2.'S12' = VV_HXP3; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = VV_HXN1; TTL3.'S22' = VV_HXN2; TTL3.'S12' = VV_HXN3; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; ((2.0)*(H_VAL2)); * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = VV_HYP1; TTL2.'S22' = VV_HYP2; TTL2.'S12' = VV_HYP3; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = VV_HYN1; TTL3.'S22' = VV_HYN2; TTL3.'S12' = VV_HYN3; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; ((2.0)*(H_VAL2)); * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = VV_HZP1; TTL2.'S22' = VV_HZP2; TTL2.'S12' = VV_HZP3; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = VV_HZN1; TTL3.'S22' = VV_HZN2; TTL3.'S12' = VV_HZN3; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; ((2.0)*(H_VAL2)); 'FINSI'; 'FINSI'; 'FINSI'; 'FINSI'; * * costruction n_limit 'UY' ((-1.0)*(VAL_Y1)) 'UZ' ((-1.0)*(VAL_Z1)); * * variable for the convergence test ID1_CON = 0; * check on the n_limit * if |n_limit|=0 rotate the chosen direction by 10 degrees MATR1 = MATR1 'ET' (SIN(10.0)) (COS(10.0)) 0.0 0.0 0.0 1.0)); AAA1 = MATR1*ALP_K; 'FINSI'; * convergence test VET_TEST = (TAB_ITE. I_M1 . 'ALPA') - (TAB_ITE. (I_M1 - 1) . 'ALPA'); * * deduction of the final value of Lambda 'SI' ((TAB_ITE. I_M1 . 'LAMBDA') '>' 0.0); LAM_FIN = (TAB_ITE. I_M1 . 'LAMBDA'); 'SINON'; 'SI' (LAM_FIN '>' (TAB_ITE. I_M1 . 'LAMBDA')); LAM_FIN = (TAB_ITE. I_M1 . 'LAMBDA'); 'FINSI'; 'FINSI'; 'FINSI'; 'QUIT' IND2; 'SINON'; 'SI' (I_M1 'EGA' 200); ID1_CON = 1; 'SI' ((TAB_ITE. I_M1 . 'LAMBDA') '>' 0.0); LAM_FIN = (TAB_ITE. I_M1 . 'LAMBDA'); 'SINON'; 'SI' (LAM_FIN '>' (TAB_ITE. I_M1 . 'LAMBDA')); LAM_FIN = (TAB_ITE. I_M1 . 'LAMBDA'); 'FINSI'; 'FINSI'; 'FINSI'; 'SINON'; * otherwise updating the n_limit 'FINSI'; 'FINSI'; I_M1 = I_M1 + 1; 'FIN' IND2; I_K1 = I_K1 + 1; 'FIN' IND3; * * screen message 'SI' (ID1_CON 'EGA' 0); TIT1 = 'CHAINE' ' Element ' I_ELE1 ' Lambda=' LAM_FIN; 'MESS' TIT1; 'FINSI'; 'SI' (ID1_CON 'EGA' 1); TIT1 = 'CHAINE' ' Element ' I_ELE1 ' Lambda=' LAM_FIN '.....Attention non convergence'; * New computation of Lambda....rectangle method * H_VAL3 = FCBET1/100000; LAMB0 = 1.0; H_VAL3 = LAMB0/10000; TOL_2 = FCBET1/1000; * * reference list for the 8 point for rectangle solid * * creation of the resuming table TAB_ITE = 'TABLE'; TAB_ITE. 0 = 'TABLE'; TAB_ITE. 0 .'LAMBDA' = LAMB0 ; * I_MM1 = 0; ID1_CON = 0; * * loop for in order to find f=0 'REPE' IND4 (200); * * stress state for the 8 points X1_0 = ((N11)*(((-1.0)*(LAMB0)))) + N110; Y1_0 = ((N22)*(((-1.0)*(LAMB0)))) + N220; Z1_0 = ((N12)*(((-1.0)*(LAMB0)))) + N120; X2_0 = ((N11)*(((1.0)*(LAMB0)))) + N110; Y2_0 = ((N22)*(((-1.0)*(LAMB0)))) + N220; Z2_0 = ((N12)*(((-1.0)*(LAMB0)))) + N120; X3_0 = ((N11)*(((1.0)*(LAMB0)))) + N110; Y3_0 = ((N22)*(((1.0)*(LAMB0)))) + N220; Z3_0 = ((N12)*(((-1.0)*(LAMB0)))) + N120; X4_0 = ((N11)*(((-1.0)*(LAMB0)))) + N110; Y4_0 = ((N22)*(((1.0)*(LAMB0)))) + N220; Z4_0 = ((N12)*(((-1.0)*(LAMB0)))) + N120; X5_0 = ((N11)*(((-1.0)*(LAMB0)))) + N110; Y5_0 = ((N22)*(((-1.0)*(LAMB0)))) + N220; Z5_0 = ((N12)*(((1.0)*(LAMB0)))) + N120; X6_0 = ((N11)*(((1.0)*(LAMB0)))) + N110; Y6_0 = ((N22)*(((-1.0)*(LAMB0)))) + N220; Z6_0 = ((N12)*(((1.0)*(LAMB0)))) + N120; X7_0 = ((N11)*(((1.0)*(LAMB0)))) + N110; Y7_0 = ((N22)*(((1.0)*(LAMB0)))) + N220; Z7_0 = ((N12)*(((1.0)*(LAMB0)))) + N120; X8_0 = ((N11)*(((-1.0)*(LAMB0)))) + N110; Y8_0 = ((N22)*(((1.0)*(LAMB0)))) + N220; Z8_0 = ((N12)*(((1.0)*(LAMB0)))) + N120; * * put the N11, N22 et N12 stress state in the lists (X5_0) (X6_0) (X7_0) (X8_0); (Y5_0) (Y6_0) (Y7_0) (Y8_0); (Z5_0) (Z6_0) (Z7_0) (Z8_0); * * deduction of f for each point III1 = 1; 'REPE' IND2 (8); TTL1 = TABLE; TTL1.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL1.'FCK' = FCBET1; TTL1.'FSK_1' = FSACI1; TTL1.'FSK_2' = FSACI1; TTL1.'RHO_1' = RHOXS; TTL1.'RHO_2' = RHOYS; TTL1.'GAMMA_C' = GAMC; TTL1.'ALPA_C' = ALPC1; TTL1.'NU_C' = NUC1; TTL1.'GAMMA_S' = GAMS1; LL_F0 = LL_F0 ET III1 = III1 + 1; 'FIN' IND2; * saving TAB_ITE. I_MM1 .'L_X' = LL_X0; TAB_ITE. I_MM1 .'L_Y' = LL_Y0; TAB_ITE. I_MM1 .'L_Z' = LL_Z0; TAB_ITE. I_MM1 .'L_F' = LL_F0; * finding the minimum value of f and the corresponding point * computation of D (gradiant) in case of Point_1=Argmin(fmin) 'SI' (II1 'EGA' 1); X1_DP = ((N11)*(((-1.0)*(LAMB0 + H_VAL3)))) + N110; Y1_DP = ((N22)*(((-1.0)*(LAMB0 + H_VAL3)))) + N220; Z1_DP = ((N12)*(((-1.0)*(LAMB0 + H_VAL3)))) + N120; X1_DN = ((N11)*(((-1.0)*(LAMB0 - H_VAL3)))) + N110; Y1_DN = ((N22)*(((-1.0)*(LAMB0 - H_VAL3)))) + N220; Z1_DN = ((N12)*(((-1.0)*(LAMB0 - H_VAL3)))) + N120; 'SI' (((X1_DP) '>' ((FSACI1*RHOXS)/(GAMS1))) 'OU' ((Y1_DP) '>' ((FSACI1*RHOYS)/(GAMS1)))); X1_DP = ((N11)*(((-1.0)*(LAMB0)))) + N110; Y1_DP = ((N22)*(((-1.0)*(LAMB0)))) + N220; Z1_DP = ((N12)*(((-1.0)*(LAMB0)))) + N120; X1_DN = ((N11)*(((-1.0)*(LAMB0 - H_VAL3)))) + N110; Y1_DN = ((N22)*(((-1.0)*(LAMB0 - H_VAL3)))) + N220; Z1_DN = ((N12)*(((-1.0)*(LAMB0 - H_VAL3)))) + N120; * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = X1_DP; TTL2.'S22' = Y1_DP; TTL2.'S12' = Z1_DP; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = X1_DN; TTL3.'S22' = Y1_DN; TTL3.'S12' = Z1_DN; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; 'SINON'; 'SI' (((X1_DN) '<' (((-1.0)*(((FCBET1*ALPC1)*(NUC1))/(ALPC1))) + ((-1.0)*((FSACI1*RHOXS)/(GAMS1))))) 'OU' ((Y1_DN) '<' (((-1.0)*(((FCBET1*ALPC1)*(NUC1))/(ALPC1))) + ((-1.0)*((FSACI1*RHOYS)/(GAMS1)))))); X1_DP = ((N11)*(((-1.0)*(LAMB0 + H_VAL3)))) + N110; Y1_DP = ((N22)*(((-1.0)*(LAMB0 + H_VAL3)))) + N220; Z1_DP = ((N12)*(((-1.0)*(LAMB0 + H_VAL3)))) + N120; X1_DN = ((N11)*(((-1.0)*(LAMB0)))) + N110; Y1_DN = ((N22)*(((-1.0)*(LAMB0)))) + N220; Z1_DN = ((N12)*(((-1.0)*(LAMB0)))) + N120; TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = X1_DP; TTL2.'S22' = Y1_DP; TTL2.'S12' = Z1_DP; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = X1_DN; TTL3.'S22' = Y1_DN; TTL3.'S12' = Z1_DN; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; 'SINON'; TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = X1_DP; TTL2.'S22' = Y1_DP; TTL2.'S12' = Z1_DP; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = X1_DN; TTL3.'S22' = Y1_DN; TTL3.'S12' = Z1_DN; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; 'FINSI'; 'FINSI'; 'FINSI'; * computation of D (gradiant) in case of Point_2=Argmin(fmin) 'SI' (II1 'EGA' 2); X2_DP = ((N11)*(((1.0)*(LAMB0 + H_VAL3)))) + N110; Y2_DP = ((N22)*(((-1.0)*(LAMB0 + H_VAL3)))) + N220; Z2_DP = ((N12)*(((-1.0)*(LAMB0 + H_VAL3)))) + N120; X2_DN = ((N11)*(((1.0)*(LAMB0 - H_VAL3)))) + N110; Y2_DN = ((N22)*(((-1.0)*(LAMB0 - H_VAL3)))) + N220; Z2_DN = ((N12)*(((-1.0)*(LAMB0 - H_VAL3)))) + N120; 'SI' (((X2_DP) '>' ((FSACI1*RHOXS)/(GAMS1))) 'OU' ((Y2_DP) '>' ((FSACI1*RHOYS)/(GAMS1)))); X2_DP = ((N11)*(((1.0)*(LAMB0)))) + N110; Y2_DP = ((N22)*(((-1.0)*(LAMB0)))) + N220; Z2_DP = ((N12)*(((-1.0)*(LAMB0)))) + N120; X2_DN = ((N11)*(((1.0)*(LAMB0 - H_VAL3)))) + N110; Y2_DN = ((N22)*(((-1.0)*(LAMB0 - H_VAL3)))) + N220; Z2_DN = ((N12)*(((-1.0)*(LAMB0 - H_VAL3)))) + N120; * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = X2_DP; TTL2.'S22' = Y2_DP; TTL2.'S12' = Z2_DP; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = X2_DN; TTL3.'S22' = Y2_DN; TTL3.'S12' = Z2_DN; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; 'SINON'; 'SI' (((X2_DN) '<' (((-1.0)*(((FCBET1*ALPC1)*(NUC1))/(ALPC1))) + ((-1.0)*((FSACI1*RHOXS)/(GAMS1))))) 'OU' ((Y2_DN) '<' (((-1.0)*(((FCBET1*ALPC1)*(NUC1))/(ALPC1))) + ((-1.0)*((FSACI1*RHOYS)/(GAMS1)))))); X2_DP = ((N11)*(((1.0)*(LAMB0 + H_VAL3)))) + N110; Y2_DP = ((N22)*(((-1.0)*(LAMB0 + H_VAL3)))) + N220; Z2_DP = ((N12)*(((-1.0)*(LAMB0 + H_VAL3)))) + N120; X2_DN = ((N11)*(((1.0)*(LAMB0)))) + N110; Y2_DN = ((N22)*(((-1.0)*(LAMB0)))) + N220; Z2_DN = ((N12)*(((-1.0)*(LAMB0)))) + N120; * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = X2_DP; TTL2.'S22' = Y2_DP; TTL2.'S12' = Z2_DP; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = X2_DN; TTL3.'S22' = Y2_DN; TTL3.'S12' = Z2_DN; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; 'SINON'; TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = X2_DP; TTL2.'S22' = Y2_DP; TTL2.'S12' = Z2_DP; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = X2_DN; TTL3.'S22' = Y2_DN; TTL3.'S12' = Z2_DN; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; 'FINSI'; 'FINSI'; 'FINSI'; * computation of D (gradiant) in case of Point_3=Argmin(fmin) 'SI' (II1 'EGA' 3); X3_DP = ((N11)*(((1.0)*(LAMB0 + H_VAL3)))) + N110; Y3_DP = ((N22)*(((1.0)*(LAMB0 + H_VAL3)))) + N220; Z3_DP = ((N12)*(((-1.0)*(LAMB0 + H_VAL3)))) + N120; X3_DN = ((N11)*(((1.0)*(LAMB0 - H_VAL3)))) + N110; Y3_DN = ((N22)*(((1.0)*(LAMB0 - H_VAL3)))) + N220; Z3_DN = ((N12)*(((-1.0)*(LAMB0 - H_VAL3)))) + N120; 'SI' (((X3_DP) '>' ((FSACI1*RHOXS)/(GAMS1))) 'OU' ((Y3_DP) '>' ((FSACI1*RHOYS)/(GAMS1)))); X3_DP = ((N11)*(((1.0)*(LAMB0)))) + N110; Y3_DP = ((N22)*(((1.0)*(LAMB0)))) + N220; Z3_DP = ((N12)*(((-1.0)*(LAMB0)))) + N120; X3_DN = ((N11)*(((1.0)*(LAMB0 - H_VAL3)))) + N110; Y3_DN = ((N22)*(((1.0)*(LAMB0 - H_VAL3)))) + N220; Z3_DN = ((N12)*(((-1.0)*(LAMB0 - H_VAL3)))) + N120; * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = X3_DP; TTL2.'S22' = Y3_DP; TTL2.'S12' = Z3_DP; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = X3_DN; TTL3.'S22' = Y3_DN; TTL3.'S12' = Z3_DN; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; 'SINON'; 'SI' (((X3_DN) '<' (((-1.0)*(((FCBET1*ALPC1)*(NUC1))/(ALPC1))) + ((-1.0)*((FSACI1*RHOXS)/(GAMS1))))) 'OU' ((Y3_DN) '<' (((-1.0)*(((FCBET1*ALPC1)*(NUC1))/(ALPC1))) + ((-1.0)*((FSACI1*RHOYS)/(GAMS1)))))); X3_DP = ((N11)*(((1.0)*(LAMB0 + H_VAL3)))) + N110; Y3_DP = ((N22)*(((1.0)*(LAMB0 + H_VAL3)))) + N220; Z3_DP = ((N12)*(((-1.0)*(LAMB0 + H_VAL3)))) + N120; X3_DN = ((N11)*(((1.0)*(LAMB0)))) + N110; Y3_DN = ((N22)*(((1.0)*(LAMB0)))) + N220; Z3_DN = ((N12)*(((-1.0)*(LAMB0)))) + N120; * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = X3_DP; TTL2.'S22' = Y3_DP; TTL2.'S12' = Z3_DP; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = X3_DN; TTL3.'S22' = Y3_DN; TTL3.'S12' = Z3_DN; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; 'SINON'; TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = X3_DP; TTL2.'S22' = Y3_DP; TTL2.'S12' = Z3_DP; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = X3_DN; TTL3.'S22' = Y3_DN; TTL3.'S12' = Z3_DN; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; 'FINSI'; 'FINSI'; 'FINSI'; * computation of D (gradiant) in case of Point_4=Argmin(fmin) 'SI' (II1 'EGA' 4); X4_DP = ((N11)*(((-1.0)*(LAMB0 + H_VAL3)))) + N110; Y4_DP = ((N22)*(((1.0)*(LAMB0 + H_VAL3)))) + N220; Z4_DP = ((N12)*(((-1.0)*(LAMB0 + H_VAL3)))) + N120; X4_DN = ((N11)*(((-1.0)*(LAMB0 - H_VAL3)))) + N110; Y4_DN = ((N22)*(((1.0)*(LAMB0 - H_VAL3)))) + N220; Z4_DN = ((N12)*(((-1.0)*(LAMB0 - H_VAL3)))) + N120; 'SI' (((X4_DP) '>' ((FSACI1*RHOXS)/(GAMS1))) 'OU' ((Y4_DP) '>' ((FSACI1*RHOYS)/(GAMS1)))); X4_DP = ((N11)*(((-1.0)*(LAMB0)))) + N110; Y4_DP = ((N22)*(((1.0)*(LAMB0)))) + N220; Z4_DP = ((N12)*(((-1.0)*(LAMB0)))) + N120; X4_DN = ((N11)*(((-1.0)*(LAMB0 - H_VAL3)))) + N110; Y4_DN = ((N22)*(((1.0)*(LAMB0 - H_VAL3)))) + N220; Z4_DN = ((N12)*(((-1.0)*(LAMB0 - H_VAL3)))) + N120; * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = X4_DP; TTL2.'S22' = Y4_DP; TTL2.'S12' = Z4_DP; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = X4_DN; TTL3.'S22' = Y4_DN; TTL3.'S12' = Z4_DN; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; 'SINON'; 'SI' (((X4_DN) '>' (((-1.0)*(((FCBET1*ALPC1)*(NUC1))/(ALPC1))) + ((-1.0)*((FSACI1*RHOXS)/(GAMS1))))) 'OU' ((Y4_DN) '>' (((-1.0)*(((FCBET1*ALPC1)*(NUC1))/(ALPC1))) + ((-1.0)*((FSACI1*RHOYS)/(GAMS1)))))); X4_DP = ((N11)*(((-1.0)*(LAMB0 + H_VAL3)))) + N110; Y4_DP = ((N22)*(((1.0)*(LAMB0 + H_VAL3)))) + N220; Z4_DP = ((N12)*(((-1.0)*(LAMB0 + H_VAL3)))) + N120; X4_DN = ((N11)*(((-1.0)*(LAMB0)))) + N110; Y4_DN = ((N22)*(((1.0)*(LAMB0)))) + N220; Z4_DN = ((N12)*(((-1.0)*(LAMB0)))) + N120; * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = X4_DP; TTL2.'S22' = Y4_DP; TTL2.'S12' = Z4_DP; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = X4_DN; TTL3.'S22' = Y4_DN; TTL3.'S12' = Z4_DN; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; 'SINON'; TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = X4_DP; TTL2.'S22' = Y4_DP; TTL2.'S12' = Z4_DP; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = X4_DN; TTL3.'S22' = Y4_DN; TTL3.'S12' = Z4_DN; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; 'FINSI'; 'FINSI'; 'FINSI'; * computation of D (gradiant) in case of Point_5=Argmin(fmin) 'SI' (II1 'EGA' 5); X5_DP = ((N11)*(((-1.0)*(LAMB0) + H_VAL3))) + N110; Y5_DP = ((N22)*(((-1.0)*(LAMB0) + H_VAL3))) + N220; Z5_DP = ((N12)*(((1.0)*(LAMB0) + H_VAL3))) + N120; X5_DN = ((N11)*(((-1.0)*(LAMB0) - H_VAL3))) + N110; Y5_DN = ((N22)*(((-1.0)*(LAMB0) - H_VAL3))) + N220; Z5_DN = ((N12)*(((1.0)*(LAMB0) - H_VAL3))) + N120; 'SI' (((X5_DP) '>' ((FSACI1*RHOXS)/(GAMS1))) 'OU' ((Y5_DP) '>' ((FSACI1*RHOYS)/(GAMS1)))); X5_DP = ((N11)*(((-1.0)*(LAMB0)))) + N110; Y5_DP = ((N22)*(((-1.0)*(LAMB0)))) + N220; Z5_DP = ((N12)*(((1.0)*(LAMB0)))) + N120; X5_DN = ((N11)*(((-1.0)*(LAMB0 - H_VAL3)))) + N110; Y5_DN = ((N22)*(((-1.0)*(LAMB0 - H_VAL3)))) + N220; Z5_DN = ((N12)*(((1.0)*(LAMB0 - H_VAL3)))) + N120; * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = X5_DP; TTL2.'S22' = Y5_DP; TTL2.'S12' = Z5_DP; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = X5_DN; TTL3.'S22' = Y5_DN; TTL3.'S12' = Z5_DN; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; 'SINON'; 'SI' (((X5_DN) '>' (((-1.0)*(((FCBET1*ALPC1)*(NUC1))/(ALPC1))) + ((-1.0)*((FSACI1*RHOXS)/(GAMS1))))) 'OU' ((Y5_DN) '>' (((-1.0)*(((FCBET1*ALPC1)*(NUC1))/(ALPC1))) + ((-1.0)*((FSACI1*RHOYS)/(GAMS1)))))); X5_DP = ((N11)*(((-1.0)*(LAMB0 + H_VAL3)))) + N110; Y5_DP = ((N22)*(((-1.0)*(LAMB0 + H_VAL3)))) + N220; Z5_DP = ((N12)*(((1.0)*(LAMB0 + H_VAL3)))) + N120; X5_DN = ((N11)*(((-1.0)*(LAMB0)))) + N110; Y5_DN = ((N22)*(((-1.0)*(LAMB0)))) + N220; Z5_DN = ((N12)*(((1.0)*(LAMB0)))) + N120; * TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = X5_DP; TTL2.'S22' = Y5_DP; TTL2.'S12' = Z5_DP; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1; TTL3 = TABLE; TTL3.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL3.'S11' = X5_DN; TTL3.'S22' = Y5_DN; TTL3.'S12' = Z5_DN; TTL3.'FCK' = FCBET1; TTL3.'FSK_1' = FSACI1; TTL3.'FSK_2' = FSACI1; TTL3.'RHO_1' = RHOXS; TTL3.'RHO_2' = RHOYS; TTL3.'GAMMA_C' = GAMC; TTL3.'ALPA_C' = ALPC1; TTL3.'NU_C' = NUC1; TTL3.'GAMMA_S' = GAMS1; 'SINON'; TTL2 = TABLE; TTL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT'; TTL2.'S11' = X5_DP; TTL2.'S22' = Y5_DP; TTL2.'S12' = Z5_DP; TTL2.'FCK' = FCBET1; TTL2.'FSK_1' = FSACI1; TTL2.'FSK_2' = FSACI1; TTL2.'RHO_1' = RHOXS; TTL2.'RHO_2' = RHOYS; TTL2.'GAMMA_C' = GAMC; TTL2.'ALPA_C' = ALPC1; TTL2.'NU_C' = NUC1; TTL2.'GAMMA_S' = GAMS1;