1 : * POT_SCAL PROCEDUR BAZE 97/02/05 21:18:17 2484 2 : 'DEBPROC' POT_SCAL TABGEO*'TABLE' SOLIN/MOT ; 3 : ******************************************************************** 4 : * procedure de mise en place des elements d un calcul 3d 5 : * magnetostatique potentiel scalaire reduit et total 6 : * DPHI zone de potentiel reduit 7 : * DPSI zone de potentiel total 8 : * 9 : * materiaux isotropes ou isotropes transverses 10 : * ------------------------------------------------------ 11 : * ENTREES : 12 : * 13 : * TABGEO.'MU0' = permeabilité du vide 14 : * 15 : *******description du domaine dphi ( ZONE POTENTIEL REDUIT ) ******* 16 : * 17 : * TABGEO.'DPHI' = maillage DPHI 18 : * TABGEO.'SEPPHI'= surface de separation avec DPSI (appartient a DPHI 19 : * exclusivement 20 : * optionnel : 21 : * 22 : * MOD1 = DPHI 'MODE' 'THERMIQUE' 'ISOTROPE' ; 23 : * RRR1 = 'CONDUC' MOD1 'K' MU0 ; 24 : * 25 : * TABGEO.'RIGCON' = RRR1 (RIGIDITE) 26 : * ceci peut permetre de passer des rigidités condensées par super 27 : * si besoin 28 : * ------------------------------------------------------ 29 : * TABGEO.'POTSYM'= TAB0 table contenant des tables de conditions sur 30 : * SEPPHI et son entourage eventuel pour calcul et application 31 : * du saut de potentiel 32 : * TAB0=TABLE 33 : * TAB0.I = TABLE STN ;STN.'LGEO' = MAIL (type ligne ) 34 : * STN.'MTYP' = TYPE (TBLOQ OU RENSE) 35 : * eventuellement STN.'SGEO' = MAILLAGE (surfacique) 36 : * ( geo est une portion de son contour ) 37 : * 38 : * 39 : *******description du domaine dpsi ( ZONE DE POTENTIEL TOTAL ) ****** 40 : * 41 : * TABB.'DPSI' = maillage de DPSI 42 : * 43 : * MATERIAUX FERRO_MAGNETIQUES : 44 : * 45 : * Il peut y avoir plusieurs zones de perméabilités différentes isotropes 46 : * ou isotropes transverses 47 : * Elles doivent etre obligatoirement dans un table indexee par les 48 : * objet modeles MODI= MODE GEO THERMIQUE ISOTROPE (ORTHOTROPE) 49 : * | TABMAT.MODI = STN ; 50 : * si materiau isotrope 51 : * | STN.'EV1' = MU1(H) courbes MU1(H) type evolution 52 : * | peut etre obtenue par H_B a partir de B(H) 53 : * Imat fois si materiau orthotrope 54 : * | STN.'EV2' = MU2(H) sortie voir H_B 55 : * | STN.'DIR1' = P1 direction associée type point 56 : * | STN.'DIR2' = P2 direction associée type point 57 : * | doit etre perpendiculaire à DIR1 58 : * 59 : * TABGEO.'TABNUSEC' = TABMAT stockage de l'ensemble de materiaux 60 : * ferro-magnetiques 61 : * 62 : * AIR APPARTENANT À CE DOMAINE : 63 : * 64 : * TABGEO.'AIRPSI' = DAIR zone geometrique correspondante 65 : * ( elle appartient a DPSI ) 66 : * OU 67 : * 68 : * MOD2 = DAIR 'MODE' 'THERMIQUE' 'ISOTROPE' ; 69 : * RRRR = 'CONDUC' MOD2 'K' MU0 ; 70 : * 71 : * TABGEO.'RIGCSPSI' = RRRR (RIGIDITE) 72 : * 73 : * NOTA = RRRR peut etre traité en SUPER ELEMENT ou etre 74 : * l'assemblage de raideurs standard et se raideurs condensées. 75 : * 76 : * 77 : * TABGEO.'SEPPSI'= surface de séparation appartient a DPSI 78 : * TABGEO.'ORIG' = point ou on impose PHI = PSI sur SEPPHI 79 : * TABGEO.'BLOQUE' = condition limite generale (sauf super elements) 80 : * TABGEO.'BIOT' = table contenant le champ de la bobine sur DPHI 81 : * ( contruit avec l opérateur BIOT par exemple) 82 : * 83 : * ------------------------------------------------------ 84 : * SOLIN si present on calcule un la solution lineaire 85 : * si absent le premier pas sera fait dans MAG_NLIN 86 : * TABGEO.'ISTEP' 2 on calcule FLHS dans un run separe 87 : * 1 on calcule tout a la fois 88 : ************************************************************************ 89 : ************************************************************************ 90 : MU0 = TABGEO.'MUAIR' ; 91 : 92 : SEP_PHI= TABGEO.'SEPPHI'; 93 : B_ANTI = TABGEO.'POTSYM'; 94 : DPSI = TABGEO.'DPSI'; 95 : DPHI = TABGEO.'DPHI' ; 96 : 'SI' ('NON' ('EXISTE' TABGEO 'ORIG' )) ; 97 : ORIG = (TABGEO.'SEPPHI ') POINT 1 ; 98 : MESS ' LE POINT REFERENCE (SAUT NUL) EST CHOISI ARBITRAIREMENT '; 99 : 'SINON' ; 100 : ORIG = TABGEO.'ORIG' ; 101 : 'OPTION' 'ERRE' 'CONTROLE' ; 102 : BBB = ( SEP_PHI 'CHAN' POI1 ) 'ELEM' 'CONT' ORIG ; 103 : 'SI' ('EGA' ( 'TYPE' BBB) 'ANNULE ') ; 104 : MESS ' ERREUR LE POINT OU POTENTIELS REDUIT ET TOTAL ' ; 105 : MESS ' SONT IDENTIQUES DOIT APPARTENIR A LA SURFACE ' ; 106 : MESS ' DE SEPARATION COTE POENTIEL REDUIT ' ; 107 : 'FIN' ; 108 : 'SINON' ; 109 : 'OPTION' 'ERREUR' 'NORMAL' ; 110 : 'FINSI' ; 111 : 'FINSI' ; 112 : 113 : ISTEP = TABGEO.'ISTEP' ; 114 : SI ( NON ('EXISTE' TABGEO 'LLLL' ) ) ; 115 : HS = TABGEO.'BIOT'; 116 : 117 : 'MESS' ' CALCUL DU FLUX DE HS SUR LES ELEMENTS FRONTIERE '; 118 : MMOD = DPHI MODE THERMIQUE ISOTROPE ; 119 : * 120 : FLHS = (FLUX MMOD HS (MOTS BX BY BZ )) * -1. * MU0 ; 121 : * 122 : MESS ' RESULTANTE DU FLUX * MUO ' ( FLHS 'RESU' 'MAXI' ) ; 123 : 'SAUTER' 5 'LIGNES' ; 124 : 'MESS' ' COORD POINT ORIGINE INTEGRATION DE V '; 125 : 'MESS' ( coor 1 orig ) ( coor 2 orig ) ( coor 3 orig ) ; 126 : 'SAUTER' 5 'LIGNES' ; 127 : * integration sur la surface de separation de l equation de 128 : * de continuite tangentielle 129 : 'SI' ( 'EXISTE' TABGEO 'MAILSEG' ) ; 130 : MAILSEG= TABGEO.'MAILSEG'; 131 : 'SINON' ; 132 : * decomposition de la surface de separation en element d aretes 133 : 'MESS' ' CALCUL DES ELEMENTS ARETES DE LA SEPARATION '; 134 : MAILSEG = 'CHAN' 'LIGNES' SEP_PHI ; 135 : UU = MAILSEG ELEM 1 ; tyu = uu nbno ; 136 : 'SI' ( 'EGA' tyu 3) ; 137 : mailseg = chan mailseg seg2 ; 138 : 'FINSI' ; 139 : TABGEO.'MAILSEG'= MAILSEG ; 140 : 141 : 'FINSI' ; 142 : * TEMPS PLACE ; 143 : 'MESS' ' CALCUL DU SAUT DE POTENTIEL '; 144 : 'SAUTER' 4 'LIGNES' ; 145 : IMENA= 3 ; 146 : 'MESS' ' CALCUL DU SAUT DE POTENTIEL '; 147 : LLLL= IN_MINI MAILSEG HS ORIG B_ANTI; 148 : *****************!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1 149 : TABGEO.'LLLL'=LLLL ; 150 : TABGEO.'FLHS'= FLHS ; 151 : 'MESS' ' FIN DE CALCUL DU SAUT DE POTENTIEL '; 152 : FINSI ; 153 : 154 : 155 : SI ( EGA ISTEP 1 ) ; 156 : 'SI' ( 'EXISTE' TABGEO 'DPHI' ) ; 157 : 'MESS' '***********************************************************'; 158 : 'MESS' '*********** POTENTIEL REDUIT ---- POTENTIEL TOTAL *******'; 159 : 'MESS' '***********************************************************'; 160 : 161 : 'SI' ('NON' ('EXISTE' TABGEO 'RIGCON')) ; 162 : 'MESS' 'CONSTRUCTION DE LA MATRICE CONSTANTE DE DPHI' ; 163 : MOD1 = DPHI 'MODE' 'THERMIQUE' 'ISOTROPE' ; 164 : MAT1 = 'MATE' MOD1 'K' MU0 ; 165 : RIGCON = 'CONDUC' MOD1 MAT1 ; 166 : 'SINON' ; 167 : RIGCON = TABGEO.'RIGCON' ; 168 : 'FINSI' ; 169 : 'SI' ('NON' ('EXISTE' TABGEO 'RIGCPSI')) ; 170 : 'SI'('EXISTE' TABGEO 'AIRPSI') ; 171 : 'MESS' 'CONSTRUCTION DE LA MATRICE CONSTANTE DE DPSI ' ; 172 : DAIR = TABGEO.'AIRPSI' ; 173 : MOD2 = DAIR 'MODE' 'THERMIQUE' 'ISOTROPE' ; 174 : MAT2 = 'MATE' MOD2 'K' MU0 ; 175 : RIGC2 = 'CONDUC' MOD2 MAT2 ; 176 : 'SINON' ; 177 : 'MESS' 'VOUS N AVEZ PAS DONNE LE DOMAINE LINEAIRE DE POT. TOTAL ' ; 178 : 'FINSI' ; 179 : 'SINON' ; 180 : RIGC2 = TABGEO.'RIGCPSI' ; 181 : 'FINSI' ; 182 : 183 : 'SI' ('EXISTE' RIGC2 ) ; 184 : 'MESS' ' ASSEMBLAGE DES MATRICES CONSTANTES ' ; 185 : RIGCON = RIGCON ET RIGC2 ; 186 : 'FINSI' ; 187 : 188 : 189 : LLLL = TABGEO.'LLLL' ; 190 : FLHS = TABGEO.'FLHS' ; 191 : 192 : * 193 : SEP_PHI = 'CHAN' 'POI1' SEP_PHI ; 194 : III = 'INDEX' B_ANTI;IDI = 'DIME' III ; 195 : IZ = 0 ; 196 : 'REPETER' IBOU IDI ; 197 : IZ = IZ + 1 ; 198 : STN = B_ANTI.IZ;GGG = 'CHAN' ( STN.'LGEO' ) 'POI1';MMM=STN.'MTYP' ; 199 : * 200 : 'SI' ( 'EGA' MMM 'RENSE') ; 201 : VAL = 'EXTR' LLLL 'SCAL' ( GGG 'POINT' 1 ) ; 202 : 'SI' ( EXISTE STN 'SGEO' ) ; 203 : GIMP = STN.'SGEO' ; 204 : BIMP = 'BLOQUER' 'T' GIMP ;FDPI = 'DEPIMP' BIMP VAL ; 205 : RIGCON = RIGCON 'ET' BIMP ; 206 : FLHS = FLHS 'ET' FDPI ; 207 : 'SI' ( 'EGA' IZ 1 ) ; 208 : ipasred = 1 ; 209 : GGZ = GGG ; 210 : 'SINON' ; 211 : GGZ = GGZ 'ET' GGG ; 212 : 'FINSI' ; 213 : 'FINSI' ; 214 : 'FINSI' ; 215 : 'FIN' IBOU ; 216 : * 217 : 'SI' ( EGA IPASRED 1 ) ; 218 : 'MESS' ' nb pts bloques par le saut' ( ggz 'NBNO') ; 219 : SEP_RED= DIFF SEP_PHI GGZ ; 220 : LLLL= ('REDU' LLLL SEP_RED ) 'NOMC' 'T'; 221 : 'SINON' ; 222 : SEP_RED = SEP_PHI ; 223 : 'FINSI' ; 224 : SEP_PSI = SEP_RED 'PLUS' (0. 0. 0. ) ; 225 : ELIM .0001 DPSI SEP_PSI ; 226 : 227 : * RELT FDEPI= SAUT_POT SEP_RED SEP_PSI LLLL ; 228 : 229 : NNN= SEP_RED 'NBNO'; 230 : MESS ' CONSTRUCTION DU SAUT DE POTENTIEL ' NNN 'POINTS'; 231 : IK= 0 ;ILO= 0 ; 232 : 'REPETER' BLOC3 NNN; 233 : IK= IK + 1 ; 234 : IP=SEP_RED 'POINT' IK ;IQ= SEP_PSI 'POINT' 'PROCHE' IP ; 235 : RELP= 'RELA' 1. 'T' IP - 1. 'T' IQ ; 236 : DEPIP= 'DEPIMP' RELP ('EXTR' LLLL 'SCAL' IP); 237 : 'SI' ('EGA' ILO 0 ) ; 238 : RELT=RELP; FDEPI= DEPIP ; 239 : ILO= 1 ; 240 : 'SINON' ; 241 : REL2= RELT 'ET' RELP ; 242 : FDEPI2= FDEPI 'ET' DEPIP ; 243 : 'DETR' RELT ; RELT= REL2 ; 'DETR' FDEPI ; FDEPI= FDEPI2 ; 244 : 'DETR' RELP ;'DETR' DEPIP ; 245 : 'FINSI'; 246 : 'FIN' BLOC3 ; 247 : 248 : * RELT = 'RELA' 1. 'T' SEP_RED - 1. 'T' SEP_PSI ; 249 : * FDEPI = 'DEPIMP' RELT LLLL ; 250 : 251 : 'MESS' ' FIN D APPLICATION DU SAUT DE POTENTIEL '; 252 : 253 : 254 : RIGCON = RIGCON 'ET' RELT ;RHS = FLHS 'ET' FDEPI ; 255 : ***************** 256 : * LIST FSAUT ; 257 : 'SAUTER' 5 'LIGNES' ; 258 : * TEMPS PLACE ; 259 : 'SINON' ; 260 : 'SAUTER' 5 'LIGNES' ; 261 : 'MESS' '***********************************************************'; 262 : 'MESS' '*********** DPHI N EXISTE PAS ???????? *******'; 263 : 'MESS' '***********************************************************'; 264 : 'SAUTER' 5 'LIGNES' ; 265 : 'FINSI' ; 266 : *********** 267 : *--- Creation Table des MUR Permeabilites Relatives INITIALES 268 : * 269 : 'SI' ( 'EXISTE' TABGEO 'TABNUSEC' ) ; 270 : TA_NUSEC = TABGEO.'TABNUSEC' ; 271 : 'SINON' ; 272 : 'MESS' '* PRECISER la TABLE des NUsecants = MU(H) *'; 273 : 'FINSI' ; 274 : INDE_TAB = 'INDE' TA_NUSEC ; 275 : NMURI = 'DIME' TA_NUSEC ; 276 : IMURI = 0 ; 277 : 'REPETER' BOUMURI NMURI ; 278 : IMURI = IMURI + 1 ; 279 : MESS ' materiau 1 ' ; 280 : MOD_FERi = INDE_TAB.IMURI ; STI = TA_NUSEC.MOD_FERi ; 281 : list STI ; 282 : ORTT = FAUX ; 283 : 'SI' ('EXISTE' STI 'EV2' ) ; 284 : MESS ' orthotrope ' ; 285 : ORTT = VRAI ; 286 : EV2 = STI.'EV2' ; DIR2 = STI.'DIR2' ; 287 : EV1 = STI.'EV1' ; DIR1 = STI.'DIR1' ; 288 : MU1 = EXTR (EXTR EV1 ORDO ) 1 ; 289 : MU2 = EXTR ( EXTR EV2 ORDO ) 1 ; 290 : MAT_FERi= 'MATR' MOD_FERi DIRECTION DIR1 DIR2 PARALLELE 291 : 'K1' MU1 'K2' MU2 'K3' MU2 ; 292 : 'SINON' ; 293 : MESS ' isotrope ' ; 294 : EV1 = STI.'EV1' ; 295 : MU1 = EXTR (EXTR EV1 ORDO ) 1 ; 296 : MAT_FERi = 'MATR' MOD_FERi 'K' MU1 ; 297 : 'FINSI' ; 298 : * 299 : STI.KLAST = MAT_FERi ; 300 : 'SI' ( 'EGA' IMURI 1 ) ; 301 : MATFER= MAT_FERi ; 302 : OBJ_MFER = MOD_FERi ; 303 : 'SINON' ; 304 : MATFER= MATFER ET MAT_FERi ; 305 : OBJ_MFER = OBJ_MFER ET MOD_FERi ; 306 : 'FINSI' ; 307 : 308 : 'FIN' BOUMURI ; 309 : ***************************** 310 : * IL FAUT EXTRAIRE LE FER ; 311 : FER = 'EXTRA' OBJ_MFER 'MAIL'; 312 : TABGEO.KLAST = MATFER ; 313 : RIGFER='CONDUC' OBJ_MFER MATFER ; 314 : * 315 : * 316 : 'SI'( 'EXISTE' TABGEO 'IMPOSE') ; 317 : 'MESS' ' CONDITION GENERALE IMPOSEE ' ; 318 : CHIMG = (TABGEO.'IMPOSE' ) 'NOMC' 'T'; 319 : MAIG = 'EXTR' CHIMG 'MAILLAGE' ; 320 : RIMG = 'BLOQUER' MAIG 'T'; FPOTG= 'DEPIMP' RIMG CHIMG ; 321 : RIGCON = RIGCON 'ET' RIMG ;RHS = RHS 'ET' FPOTG ; 322 : 'FINSI' ; 323 : * 324 : 'SI' ('EXISTE' TABGEO 'BLOQUE') ; 325 : 'MESS' ' CONDITION GENERALE BLOQUEE ' ; 326 : RIGCON= RIGCON 'ET' TABGEO.'BLOQUE' ; 327 : TABGEO.'BLOCAGE' = TABGEO.'BLOQUE' ; 328 : 'FINSI' ; 329 : 'SI' ( 'EXISTE' TABGEO 'ENS' ) ; 330 : 'MESS' ' RELATIONS D ENSEMBLE ' ; 331 : STN = TABGEO.'ENS' ; 332 : III = 'INDEX' STN ;INI ='DIME' III ; 333 : IZ = 0 ; 334 : 'REPETER' BENS INI ; 335 : IZ= IZ + 1 ; RRRI = STN.IZ ; 336 : RIGCON = RIGCON 'ET' ('RELA' 'ENSE' 'T' RRRI ) ; 337 : 'FIN' BENS ; 338 : 'FINSI' ; 339 : * 340 : * RIGCON = RIGCON 'ET' RIGCPSI ; 341 : RIGT = RIGCON 'ET' RIGFER ; 342 : TABGEO.'RHS'= RHS ; 343 : TABGEO.'RIGCON'= RIGCON ; 344 : TABGEO.'RIGFER'= RIGFER ; 345 : 'SI' ( 'EXISTE' SOLIN ) ; 346 : 'MESS' '********************************************************* '; 347 : 'MESS' '***************** CALCUL LINEAIRE ******************** '; 348 : 'MESS' '****************RESOLUTION ***************************** '; 349 : 'MESS' 'DEBUT' ( TEMPS 'NOEC' ) ; 350 : 'SI' ( 'EXIST' TABGEO 'GRAD' ) ; 351 : MESS ' GRADIENT CONJUGUE ' ; 352 : SOL0= 'RESOU' 'GRAD' RIGT RHS ; 353 : 'SINON' ; 354 : SOL0= 'RESOU' RIGT RHS ; 355 : 'FINSI' ; 356 : 'MESS' 'FIN ' ( TEMPS 'NOEC' ) ; 357 : TABGEO.'POTENTIEL'=('ENLEVER' SOL0 'LX') ; 358 : 'FINSI' ; 359 : 'SINON '; 360 : TABB.'ISTEP' = 1 ; 361 : FINSI ; 362 : 'FINPROC' ; 363 :
© Cast3M 2003 - All rights reserved.
Disclaimer