* POT_SCAL PROCEDUR CB215821 15/07/10 21:15:12 8571 ******************************************************************** * procedure de mise en place des elements d un calcul 3d * magnetostatique potentiel scalaire reduit et total * DPHI zone de potentiel reduit * DPSI zone de potentiel total * * materiaux isotropes ou isotropes transverses * ------------------------------------------------------ * ENTREES : * * TABGEO.'MU0' = permeabilité du vide * *******description du domaine dphi ( ZONE POTENTIEL REDUIT ) ******* * * TABGEO.'DPHI' = maillage DPHI * TABGEO.'SEPPHI'= surface de separation avec DPSI (appartient a DPHI * exclusivement * optionnel : * * MOD1 = DPHI 'MODE' 'THERMIQUE' 'ISOTROPE' ; * RRR1 = 'CONDUC' MOD1 'K' MU0 ; * * TABGEO.'RIGCON' = RRR1 (RIGIDITE) * ceci peut permetre de passer des rigidités condensées par super * si besoin * ------------------------------------------------------ * TABGEO.'POTSYM'= TAB0 table contenant des tables de conditions sur * SEPPHI et son entourage eventuel pour calcul et application * du saut de potentiel * TAB0=TABLE * TAB0.I = TABLE STN ;STN.'LGEO' = MAIL (type ligne ) * STN.'MTYP' = TYPE (TBLOQ OU RENSE) * eventuellement STN.'SGEO' = MAILLAGE (surfacique) * ( geo est une portion de son contour ) * * *******description du domaine dpsi ( ZONE DE POTENTIEL TOTAL ) ****** * * TABB.'DPSI' = maillage de DPSI * * MATERIAUX FERRO_MAGNETIQUES : * * Il peut y avoir plusieurs zones de perméabilités différentes isotropes * ou isotropes transverses * Elles doivent etre obligatoirement dans un table indexee par les * objet modeles MODI= MODE GEO THERMIQUE ISOTROPE (ORTHOTROPE) * | TABMAT.MODI = STN ; * si materiau isotrope * | STN.'EV1' = MU1(H) courbes MU1(H) type evolution * | peut etre obtenue par H_B a partir de B(H) * Imat fois si materiau orthotrope * | STN.'EV2' = MU2(H) sortie voir H_B * | STN.'DIR1' = P1 direction associée type point * | STN.'DIR2' = P2 direction associée type point * | doit etre perpendiculaire à DIR1 * * TABGEO.'TABNUSEC' = TABMAT stockage de l'ensemble de materiaux * ferro-magnetiques * * AIR APPARTENANT À CE DOMAINE : * * TABGEO.'AIRPSI' = DAIR zone geometrique correspondante * ( elle appartient a DPSI ) * OU * * MOD2 = DAIR 'MODE' 'THERMIQUE' 'ISOTROPE' ; * RRRR = 'CONDUC' MOD2 'K' MU0 ; * * TABGEO.'RIGCSPSI' = RRRR (RIGIDITE) * * NOTA = RRRR peut etre traité en SUPER ELEMENT ou etre * l'assemblage de raideurs standard et se raideurs condensées. * * * TABGEO.'SEPPSI'= surface de séparation appartient a DPSI * TABGEO.'ORIG' = point ou on impose PHI = PSI sur SEPPHI * TABGEO.'BLOQUE' = condition limite generale (sauf super elements) * TABGEO.'BIOT' = table contenant le champ de la bobine sur DPHI * ( contruit avec l opérateur BIOT par exemple) * * ------------------------------------------------------ * SOLIN si present on calcule un la solution lineaire * si absent le premier pas sera fait dans MAG_NLIN * TABGEO.'ISTEP' 2 on calcule FLHS dans un run separe * 1 on calcule tout a la fois ************************************************************************ ************************************************************************ MU0 = TABGEO.'MUAIR' ; SEP_PHI= TABGEO.'SEPPHI'; B_ANTI = TABGEO.'POTSYM'; DPSI = TABGEO.'DPSI'; DPHI = TABGEO.'DPHI' ; 'SI' ('NON' ('EXISTE' TABGEO 'ORIG' )) ; ORIG = (TABGEO.'SEPPHI ') POINT 1 ; 'SINON' ; ORIG = TABGEO.'ORIG' ; 'OPTION' 'ERRE' 'CONTROLE' ; MESS ' SONT IDENTIQUES DOIT APPARTENIR A LA SURFACE ' ; 'FIN' ; 'SINON' ; 'OPTION' 'ERREUR' 'NORMAL' ; 'FINSI' ; 'FINSI' ; ISTEP = TABGEO.'ISTEP' ; SI ( NON ('EXISTE' TABGEO 'LLLL' ) ) ; * * 'SAUTER' 5 'LIGNES' ; 'MESS' ' COORD POINT ORIGINE INTEGRATION DE V '; 'SAUTER' 5 'LIGNES' ; * integration sur la surface de separation de l equation de * de continuite tangentielle 'SI' ( 'EXISTE' TABGEO 'MAILSEG' ) ; MAILSEG= TABGEO.'MAILSEG'; 'SINON' ; * decomposition de la surface de separation en element d aretes 'MESS' ' CALCUL DES ELEMENTS ARETES DE LA SEPARATION '; 'SI' ( 'EGA' tyu 3) ; 'FINSI' ; TABGEO.'MAILSEG'= MAILSEG ; 'FINSI' ; * TEMPS PLACE ; 'SAUTER' 4 'LIGNES' ; IMENA= 3 ; *****************!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1 TABGEO.'LLLL'=LLLL ; TABGEO.'FLHS'= FLHS ; FINSI ; SI ( EGA ISTEP 1 ) ; 'SI' ( 'EXISTE' TABGEO 'DPHI' ) ; 'SI' ('NON' ('EXISTE' TABGEO 'RIGCON')) ; 'MESS' 'CONSTRUCTION DE LA MATRICE CONSTANTE DE DPHI' ; RIGCON = 'CONDUC' MOD1 MAT1 ; 'SINON' ; RIGCON = TABGEO.'RIGCON' ; 'FINSI' ; 'SI' ('NON' ('EXISTE' TABGEO 'RIGCPSI')) ; 'SI'('EXISTE' TABGEO 'AIRPSI') ; 'MESS' 'CONSTRUCTION DE LA MATRICE CONSTANTE DE DPSI ' ; DAIR = TABGEO.'AIRPSI' ; RIGC2 = 'CONDUC' MOD2 MAT2 ; 'SINON' ; 'FINSI' ; 'SINON' ; RIGC2 = TABGEO.'RIGCPSI' ; 'FINSI' ; 'SI' ('EXISTE' RIGC2 ) ; 'MESS' ' ASSEMBLAGE DES MATRICES CONSTANTES ' ; RIGCON = RIGCON ET RIGC2 ; 'FINSI' ; LLLL = TABGEO.'LLLL' ; FLHS = TABGEO.'FLHS' ; * IZ = 0 ; 'REPETER' IBOU IDI ; IZ = IZ + 1 ; * 'SI' ( 'EGA' MMM 'RENSE') ; 'SI' ( EXISTE STN 'SGEO' ) ; GIMP = STN.'SGEO' ; BIMP = 'BLOQUER' 'T' GIMP ;FDPI = 'DEPIMP' BIMP VAL ; RIGCON = RIGCON 'ET' BIMP ; FLHS = FLHS 'ET' FDPI ; 'SI' ( 'EGA' IZ 1 ) ; ipasred = 1 ; GGZ = GGG ; 'SINON' ; GGZ = GGZ 'ET' GGG ; 'FINSI' ; 'FINSI' ; 'FINSI' ; 'FIN' IBOU ; * 'SI' ( EGA IPASRED 1 ) ; 'SINON' ; SEP_RED = SEP_PHI ; 'FINSI' ; ELIM .0001 DPSI SEP_PSI ; * RELT FDEPI= SAUT_POT SEP_RED SEP_PSI LLLL ; IK= 0 ;ILO= 0 ; 'REPETER' BLOC3 NNN; IK= IK + 1 ; IP=SEP_RED 'POINT' IK ;IQ= SEP_PSI 'POINT' 'PROCHE' IP ; 'SI' ('EGA' ILO 0 ) ; RELT=RELP; FDEPI= DEPIP ; ILO= 1 ; 'SINON' ; REL2= RELT 'ET' RELP ; FDEPI2= FDEPI 'ET' DEPIP ; 'FINSI'; 'FIN' BLOC3 ; * RELT = 'RELA' 1. 'T' SEP_RED - 1. 'T' SEP_PSI ; * FDEPI = 'DEPIMP' RELT LLLL ; RIGCON = RIGCON 'ET' RELT ;RHS = FLHS 'ET' FDEPI ; ***************** * LIST FSAUT ; 'SAUTER' 5 'LIGNES' ; * TEMPS PLACE ; 'SINON' ; 'SAUTER' 5 'LIGNES' ; 'SAUTER' 5 'LIGNES' ; 'FINSI' ; *********** *--- Creation Table des MUR Permeabilites Relatives INITIALES * 'SI' ( 'EXISTE' TABGEO 'TABNUSEC' ) ; TA_NUSEC = TABGEO.'TABNUSEC' ; 'SINON' ; 'FINSI' ; IMURI = 0 ; 'REPETER' BOUMURI NMURI ; IMURI = IMURI + 1 ; MOD_FERi = INDE_TAB.IMURI ; STI = TA_NUSEC.MOD_FERi ; list STI ; ORTT = FAUX ; 'SI' ('EXISTE' STI 'EV2' ) ; MESS ' orthotrope ' ; ORTT = VRAI ; EV2 = STI.'EV2' ; DIR2 = STI.'DIR2' ; EV1 = STI.'EV1' ; DIR1 = STI.'DIR1' ; MAT_FERi= 'MATE' MOD_FERi DIRECTION DIR1 DIR2 PARALLELE 'K1' MU1 'K2' MU2 'K3' MU2 ; 'SINON' ; MESS ' isotrope ' ; EV1 = STI.'EV1' ; 'FINSI' ; * STI.KLAST = MAT_FERi ; 'SI' ( 'EGA' IMURI 1 ) ; MATFER= MAT_FERi ; OBJ_MFER = MOD_FERi ; 'SINON' ; MATFER= MATFER ET MAT_FERi ; OBJ_MFER = OBJ_MFER ET MOD_FERi ; 'FINSI' ; 'FIN' BOUMURI ; ***************************** * IL FAUT EXTRAIRE LE FER ; FER = 'EXTRA' OBJ_MFER 'MAIL'; TABGEO.KLAST = MATFER ; RIGFER='CONDUC' OBJ_MFER MATFER ; * * 'SI'( 'EXISTE' TABGEO 'IMPOSE') ; 'MESS' ' CONDITION GENERALE IMPOSEE ' ; RIMG = 'BLOQUER' MAIG 'T'; FPOTG= 'DEPIMP' RIMG CHIMG ; RIGCON = RIGCON 'ET' RIMG ;RHS = RHS 'ET' FPOTG ; 'FINSI' ; * 'SI' ('EXISTE' TABGEO 'BLOQUE') ; 'MESS' ' CONDITION GENERALE BLOQUEE ' ; RIGCON= RIGCON 'ET' TABGEO.'BLOQUE' ; TABGEO.'BLOCAGE' = TABGEO.'BLOQUE' ; 'FINSI' ; 'SI' ( 'EXISTE' TABGEO 'ENS' ) ; 'MESS' ' RELATIONS D ENSEMBLE ' ; STN = TABGEO.'ENS' ; IZ = 0 ; 'REPETER' BENS INI ; IZ= IZ + 1 ; RRRI = STN.IZ ; 'FIN' BENS ; 'FINSI' ; * * RIGCON = RIGCON 'ET' RIGCPSI ; RIGT = RIGCON 'ET' RIGFER ; TABGEO.'RHS'= RHS ; TABGEO.'RIGCON'= RIGCON ; TABGEO.'RIGFER'= RIGFER ; 'SI' ( 'EXISTE' SOLIN ) ; 'MESS' 'DEBUT' TABTPS.'TEMPS_CPU'.'INITIAL'; MESS ' GRADIENT CONJUGUE ' ; 'SINON' ; SOL0= 'RESOU' RIGT RHS ; 'FINSI' ; TABGEO.'POTENTIEL'=('ENLEVER' SOL0 'LX') ; 'FINSI' ; 'SINON '; TABB.'ISTEP' = 1 ; FINSI ; 'FINPROC' ;
© Cast3M 2003 - Tous droits réservés.
Mentions légales