1 : * @CLCH PROCEDUR PV 13/06/11 21:15:00 7777 2 : **************************************************** 3 : **************************************************** 4 : * 5 : * PROCEDURE POUR CONDITIONS AUX LIMITES 6 : * 7 : * CONTRAINTE HOMOGENE 8 : * 9 : * L.GELEBART, 06/07 10 : **************************************************** 11 : ***************************************************** 12 : DEBPROC @CLCH MAIL0*MAILLAGE CONT0*TABLE; 13 : SXX = CONT0 . 1; SYY = CONT0 . 2; SZZ = CONT0 . 3; 14 : SXY = CONT0 . 4; SXZ = CONT0 . 5; SYZ = CONT0 . 6; 15 : MOD0 = MODE MAIL0 MECANIQUE ELASTIQUE; 16 : * 17 : * Identification des points et surfaces exterieures 18 : * pour application des CL 19 : *===================================================== 20 : ENVE0 = ENVE MAIL0; 21 : ENVE_PT0 = CHANGE ENVE0 POI1; 22 : XMAX = MAXI (COOR 1 ENVE0);XMIN = MINI (COOR 1 ENVE0); 23 : YMAX = MAXI (COOR 2 ENVE0);YMIN = MINI (COOR 2 ENVE0); 24 : ZMAX = MAXI (COOR 3 ENVE0);ZMIN = MINI (COOR 3 ENVE0); 25 : LX0 = XMAX - XMIN; LY0 = YMAX - YMIN; LZ0 = ZMAX - ZMIN; 26 : elim0 = 1.e-6 * LX0; 27 : PXMIN = ENVE_PT0 POIN 'PLAN' 28 : (XMIN 0. 0.) (XMIN 1. 0.) (XMIN 0. 1.) (LX0 * elim0); 29 : PYMIN = ENVE_PT0 POIN 'PLAN' 30 : (0. YMIN 0.) (1. YMIN 0.) (0. YMIN 1.) (LY0 * elim0); 31 : PZMIN = ENVE_PT0 POIN 'PLAN' 32 : (0. 0. ZMIN) (1. 0. ZMIN) (0. 1. ZMIN) (LZ0 * elim0); 33 : PXMAX = ENVE_PT0 POIN 'PLAN' 34 : (XMAX 0. 0.) (XMAX 1. 0.) (XMAX 0. 1.) (LX0 * elim0); 35 : PYMAX = ENVE_PT0 POIN 'PLAN' 36 : (0. YMAX 0.) (1. YMAX 0.) (0. YMAX 1.) (LY0 * elim0); 37 : PZMAX = ENVE_PT0 POIN 'PLAN' 38 : (0. 0. ZMAX) (1. 0. ZMAX) (0. 1. ZMAX) (LZ0 * elim0); 39 : * 40 : SURFX0 = ENVE0 ELEM APPUYE STRICTEMENT PXMIN; 41 : SURFY0 = ENVE0 ELEM APPUYE STRICTEMENT PYMIN; 42 : SURFZ0 = ENVE0 ELEM APPUYE STRICTEMENT PZMIN; 43 : * 44 : SURFX1 = ENVE0 ELEM APPUYE STRICTEMENT PXMAX; 45 : SURFY1 = ENVE0 ELEM APPUYE STRICTEMENT PYMAX; 46 : SURFZ1 = ENVE0 ELEM APPUYE STRICTEMENT PZMAX; 47 : * 48 : A1 = ENVE_PT0 POIN PROC (XMIN YMIN ZMIN); 49 : A2 = ENVE_PT0 POIN PROC (XMAX YMIN ZMIN); 50 : A4 = ENVE_PT0 POIN PROC (XMIN YMAX ZMIN); 51 : * 52 : SX00 = LY0 * LZ0; 53 : SX0 = MESU SURFX0; 54 : SX1 = MESU SURFX1; 55 : SY00 = LX0 * LZ0; 56 : SY0 = MESU SURFY0; 57 : SY1 = MESU SURFY1; 58 : SZ00 = LX0 * LY0; 59 : SZ0 = MESU SURFZ0; 60 : SZ1 = MESU SURFZ1; 61 : * 62 : * Application des contraintes 63 : *================================ 64 : test = 0; 65 : SI ((SXZ NEG 0.) OU (SYZ NEG 0.) OU (SZZ NEG 0.)); 66 : FZ1 = FSUR MASS MOD0 SURFZ1 (SXZ SYZ SZZ); 67 : FZ0 = FSUR MASS MOD0 SURFZ0 68 : ((0. - SXZ) (0. - SYZ) (0. - SZZ)); 69 : FZ0 = FZ0 * (SZ00 / SZ0); 70 : FZ1 = FZ1 * (SZ00 / SZ1); 71 : 72 : FCLP0 = FZ0 ET FZ1; 73 : test=1; 74 : FINSI; 75 : * 76 : SI ((SXY NEG 0.) OU (SYY NEG 0.) OU (SYZ NEG 0.)); 77 : FY1 = FSUR MASS MOD0 SURFY1 (SXY SYY SYZ); 78 : FY0 = FSUR MASS MOD0 SURFY0 79 : ((0. - SXY) (0. - SYY) (0. - SYZ)); 80 : FY0 = FY0 * (SY00 / SY0); 81 : FY1 = FY1 * (SY00 / SY1); 82 : 83 : SI (test EGA 1); 84 : FCLP0 = FCLP0 ET (FY0 ET FY1); 85 : SINON; 86 : FCLP0 = FY0 ET FY1; 87 : test=1; 88 : FINSI; 89 : FINSI; 90 : * 91 : SI ((SXX NEG 0.) OU (SXY NEG 0.) OU (SXZ NEG 0.)); 92 : FX1 = FSUR MASS MOD0 SURFX1 (SXX SXY SXZ); 93 : FX0 = FSUR MASS MOD0 SURFX0 94 : ((0. - SXX) (0. - SXY) (0. - SXZ)); 95 : FX0 = FX0 * (SX00 / SX0); 96 : FX1 = FX1 * (SX00 / SX1); 97 : 98 : 99 : SI (test EGA 1); 100 : FCLP0 = FCLP0 ET (FX0 ET FX1); 101 : SINON; 102 : FCLP0 = FX0 ET FX1; 103 : FINSI; 104 : FINSI; 105 : * 106 : * Blocage du mvt de corps rigide 107 : *=========================================== 108 : BL1 = BLOQUE UX UY UZ A1; 109 : BL2 = BLOQUE UY UZ A2; 110 : BL3 = BLOQUE UZ A4; 111 : BL0 = BL1 ET (BL2 ET BL3); 112 : *BL0 = @CORIGI MAIL0; 113 : * 114 : FINPROC BL0 FCLP0; 115 : ********************************************* 116 : * FIN DE LA PROCEDURE CLCH 117 : ********************************************* 118 :
© Cast3M 2003 - All rights reserved.
Disclaimer