* @CLMI1C PROCEDUR PV 13/06/11 21:15:00 7777 **************************************************** * * PROCEDURE POUR APPLICATION DE COND LIM MIXTES * TYPE I AVEC PILOTAGE EN CONTRAINTE * * L.GELEBART 07/08 **************************************************** **************************************************** SXX = CONT0 . 1; SYY = CONT0 . 2; SZZ = CONT0 . 3; SXY = CONT0 . 4; SXZ = CONT0 . 5; SYZ = CONT0 . 6; * Identification des points et surfaces exterieures * pour application des CL *===================================================== elim0 = 1.e-4; ENVE_PT0 = CHANGE ENVE0 POI1; LX0 = XMAX - XMIN; LY0 = YMAX - YMIN; LZ0 = ZMAX - ZMIN; PXMIN = ENVE_PT0 POIN 'PLAN' (XMIN 0. 0.) (XMIN 1. 0.) (XMIN 0. 1.) (LX0 * elim0); PYMIN = ENVE_PT0 POIN 'PLAN' (0. YMIN 0.) (1. YMIN 0.) (0. YMIN 1.) (LY0 * elim0); PZMIN = ENVE_PT0 POIN 'PLAN' (0. 0. ZMIN) (1. 0. ZMIN) (0. 1. ZMIN) (LZ0 * elim0); PXMAX = ENVE_PT0 POIN 'PLAN' (XMAX 0. 0.) (XMAX 1. 0.) (XMAX 0. 1.) (LX0 * elim0); PYMAX = ENVE_PT0 POIN 'PLAN' (0. YMAX 0.) (1. YMAX 0.) (0. YMAX 1.) (LY0 * elim0); PZMAX = ENVE_PT0 POIN 'PLAN' (0. 0. ZMAX) (1. 0. ZMAX) (0. 1. ZMAX) (LZ0 * elim0); * * * SX00 = LY0 * LZ0; SY00 = LX0 * LZ0; SZ00 = LX0 * LY0; *trac SURFZ0; *MESSAGE 'SX00 = ' SX00; *MESSAGE 'SX0 = ' SX0; *MESSAGE 'SX1 = ' SX1; *MESSAGE 'SY00 = ' SY00; *MESSAGE 'SY0 = ' SY0; *MESSAGE 'SY1 = ' SY1; *MESSAGE 'SZ00 = ' SZ00; *MESSAGE 'SZ0 = ' SZ0; *MESSAGE 'SZ1 = ' SZ1; * * Application des contraintes *================================ test = 0; SI ((SXZ NEG 0.) OU (SYZ NEG 0.) OU (SZZ NEG 0.)); ((0. - SXZ) (0. - SYZ) (0. - SZZ)); FZ0 = FZ0 * (SZ00 / SZ0); FZ1 = FZ1 * (SZ00 / SZ1); FCLP0 = FZ0 ET FZ1; test=1; FINSI; * SI ((SXY NEG 0.) OU (SYY NEG 0.) OU (SYZ NEG 0.)); ((0. - SXY) (0. - SYY) (0. - SYZ)); FY0 = FY0 * (SY00 / SY0); FY1 = FY1 * (SY00 / SY1); SI (test EGA 1); FCLP0 = FCLP0 ET (FY0 ET FY1); SINON; FCLP0 = FY0 ET FY1; test=1; FINSI; FINSI; * SI ((SXX NEG 0.) OU (SXY NEG 0.) OU (SXZ NEG 0.)); ((0. - SXX) (0. - SXY) (0. - SXZ)); FX0 = FX0 * (SX00 / SX0); FX1 = FX1 * (SX00 / SX1); SI (test EGA 1); FCLP0 = FCLP0 ET (FX0 ET FX1); SINON; FCLP0 = FX0 ET FX1; FINSI; FINSI; * * Blocage du mvt de corps rigide *=========================================== BL1 = BLOQUE UX UY UZ A1; BL2 = BLOQUE UY UZ A2; BL3 = BLOQUE UZ A4; BL0 = BL1 ET (BL2 ET BL3); *BL0 = @CORIGI ENVE0; * * Application des conditions de deformation normale homogene *============================================================= * * Application des conditions de deformation homogene *==================================================== ENVE1 = (SURFX0 ET SURFX1 ET SURFY0 ET SURFY1 ET SURFZ0 ET SURFZ1); ENVE_PT1 = CHANGE ENVE1 POI1; *trac ENVE1 CACH; RIGCLP = BL0; * SURFXPT0 = CHANGE SURFX0 POI1; i = 0; REPETE BOUX0 (N0); i = i + 1; SI ((M0 NEG B1) ET (M0 NEG B2) ET (M0 NEG B3)); RIGCLP = RIGCLP ET (RIGIX); FINSI; FIN BOUX0; * SURFXPT1 = CHANGE SURFX1 POI1; i = 0; REPETE BOUX1 (N0); i = i + 1; SI ((M0 NEG B1) ET (M0 NEG B2) ET (M0 NEG B3)); RIGCLP = RIGCLP ET (RIGIX); FINSI; FIN BOUX1; * SURFYPT0 = CHANGE SURFY0 POI1; i = 0; REPETE BOUY0 (N0); i = i + 1; SI ((M0 NEG B1) ET (M0 NEG B2) ET (M0 NEG B3)); RIGCLP = RIGCLP ET (RIGIY); FINSI; FIN BOUY0; * SURFYPT1 = CHANGE SURFY1 POI1; i = 0; REPETE BOUY1 (N0); i = i + 1; SI ((M0 NEG B1) ET (M0 NEG B2) ET (M0 NEG B3)); RIGCLP = RIGCLP ET (RIGIY); FINSI; FIN BOUY1; * SURFZPT0 = CHANGE SURFZ0 POI1; i = 0; REPETE BOUZ0 (N0); i = i + 1; SI ((M0 NEG B1) ET (M0 NEG B2) ET (M0 NEG B3)); RIGCLP = RIGCLP ET (RIGIZ); FINSI; FIN BOUZ0; * SURFZPT1 = CHANGE SURFZ1 POI1; i = 0; REPETE BOUZ1 (N0); i = i + 1; SI ((M0 NEG B1) ET (M0 NEG B2) ET (M0 NEG B3)); RIGCLP = RIGCLP ET (RIGIZ); FINSI; FIN BOUZ1; * FINPROC RIGCLP FCLP0; ******************************************************* * FIN DE LA PROCEDURE CLMI1C *******************************************************
© Cast3M 2003 - Tous droits réservés.
Mentions légales