Sunteți pe pagina 1din 48

LABORATORUL 1

ESTIMAREA CÂMPULUI DE TEMPERATURA ÎNTR-O MAșINĂ ELECTRICĂ DE


CURENT CONTINUU

1. Formularea problemei

Se cere să se estimeze valorile câmpului de temperatură pe durata procesului de pornire a unei mașini de
electrice de curent continuu .

Tipul problemei: Transient heat transfer.

Datele problemei:
Denumire Simbol U.M. Valoare
Raza rotorului Rr mm 46.5
Dimensiunea întrefierului  mm 0.05
Raza exterioara a statorului Rs mm 74
Deschiderea dintelui  grd 45

2. Definirea datelor generale ale problemei


3. Definirea modelului geometric al problemei

3.1. Fereastra ModelWindow

4. Atribuirea proprietăților de material ale părților modelului

4.1. Definirea etichetei blocului aer


4.2. Definirea proprietăților componentelor bobinelor
4.3. Atribuirea etichetei la blocul izolatie
5. Definirea condițiilor de frontieră

5.1. Definirea etichetelor frontierelor


5.2. Definirea condițiilor de frontieră
6. Postprocesarea soluției
MODELAREA ŞI IDENTIFICAREA
PROCESELOR DINAMICE CU PARAMETRI
DISTRIBUIŢI

Îndrumar de laborator

Adrian DĂNILĂ

Universitatea Transilvania din Braşov


Facultatea de Inginerie Electrică şi Ştiinţa Calculatoarelor
Departamentul de Automatică şi Tehnologia Informaţiei
MIPPD. Îndrumar de laborator.

Rev.DA.2018 2
Lucrarea de laborator nr. 14

Studiul oscilaţiilor corzii vibrante

Tematica lucrării
Introducere
Coarda vibrantă este un fir rectiliniu din material elastic, fixat la cele două capete şi supus
acţiunii unor forţe pe direcţie longitudinală sau transversală.
Oscilaţiile corzii vibrante pot fi :
— longitudinale → problema de tip hiperbolic 1D ;

— transversale → problema de tip hiperbolic 2D ;

— rotatie 3D → problema de tip hiperbolic 3D.

Procesul oscilaţiilor corzii vibrante se caracterizează prin apariţia undelor directe şi undelor
reflectate.

Soluţia problemei corzii vibrante. Condiţiile iniţiale ale problemei.

Elemente de teorie
Modelul procesului
Problema propusă este de tip proces hiperbolic.
Funcţia necunoscută u(x; t) descrie variaţia în funcţie de timp a elongaţiei unui punct oarecare

3
MIPPD. Îndrumar de laborator.

al corzii, situat la distanţa x de originea sistemului de coordonate, O.


Ecuaţia cu derivate parţiale care descrie procesul este :
∂2u ∂u 2
2 ∂ u
+ K · − C · = 0; x ∈ [0; L], t ∈ R+ .
∂t2 ∂t ∂x2
Condiţii de frontieră : u(0, t) = 0 ; (capătul O - fixat).
u(L, t) = 0; (capătul L - fixat).

Condiţii iniţiale : u(x; 0) = u0 (x) ; (distribuţia elongaţiei).


∂u
∂t (x; 0)= v0 (x) ; (distribuţia vitezei).

Soluţia analitică
Funcţia necunoscută se scrie sub forma de produs de funcţii u(x; t) = X(x) · T (t) - metoda
separării variabilelor. Soluţia problemei se obţine sub forma unei dezvoltări în serie :
∞ h
x
X i  
α1 (n)·t α2 (n)·t
u(x; t) = An · e + Bn · e · sin n · π · .
n=1
L
 q 
1 n 2

În care, α1,2 (n) = 2 · −K ± k2 −4· C2 · π· L .
Sunt posibile următoarele cazuri :
n
Cazul 1 : K 2 ≥ 4 · C 2 · π ·

L - dependenţa de timp a soluţiei este aperiodică.
n
K2 C2

Cazul 2 : <4· · π· L - dependenţa de timp a soluţiei este oscilatorie.

Soluţia numerică
Problema oscilaţiilor longitudinale ale corzii vibrante poate fi rezolvată cu metoda diferenţelor
finite centrate după pentru cazul unei reţele unidimensionale cu Nx = 3 noduri interioare, cum
urmează.
Reţeaua de discretizare, echidistantă împarte lungimea L a corzii în patru intervale de aceeaşi
lungime ∆x = NxL+1 .
Durata procesului, T se discretizează în Nt intervale egale de durată ∆t = NTt .
Pe baza expresiilor condiţiilor de frontieră se obţin valorile eşantioanelor funcţiei necunoscute
la pasul zero :
U0 [k] = 0, (1)
U4 [k] = 0. (2)
Calculul valorilor eşantioanelor funcţiei necunoscute la pasul k = 1.
       
U1 [1] 2 · (1 − s) s 0 U1 [0] U [0]
1  s  0
 U2 [1]  = ·  s 2 · (1 − s) s  ·  U2 [0]  . + ·  0  .
     
2 2
U3 [1] 0 s 2 · (1 − s) U3 [0] U4 [0]

Calculul valorilor eşantioanelor funcţiei necunoscute la paşii k ∈ [2; Te ].

     
U1 [k + 1] 2 · (1 − s) s 0 U1 [k]
1
U [k + 1] = · s 2 · (1 − s) s ·
  U2 [k]  +
     
 2
1 + K · ∆t
 
U3 [k + 1] 0 s 2 · (1 − s) U3 [k]
   
U0 [0] U1 [k − 1]
s  1 − K · ∆t 
+ ·  0 − ·  U2 [k − 1]  .
 
1 + K · ∆t 1 + K · ∆t
U4 [0] U3 [k − 1]

Rev.DA.2018 4
MIPPD. Îndrumar de laborator.

În expresiile de mai sus,


 
2 2 · (1 − s) s 0
∆t
s = C2 · ; A= s 2 · (1 − s) s .
 
∆x2 0 s 2 · (1 − s)

Organizarea lucrării
Definirea problemei
Se studiază oscilaţiile longitudinale, amortizate ale unei corzi elastice de lungime L = 50 cm
(un resort cu diametrul spirei → 0).
În Figura 1 este reprezentat graficul elongaţiei punctelor corzii la momentul iniţial al procesului.

Condiţiile de frontieră şi condiţiile de iniţiale.

Condiţii de frontieră u(0; t) = u(L; t) = 0 condiţii de tip Dirichlet

(
1.25 · Lx x ∈ [0; 0.8 · L)
condiţii iniţiale u0 = x
 întindere/compresiune
−5 · 1 − L x ∈ (0.8 · L; L]

v0 = 0 (∀)x ∈ [0; L] la x = 0.8 · L

Date de material.

Coeficientul frecărilor în materialul corzii K 0.05

Viteza de propagare a undelor în coardă C 2.0

Medii software
Se va utiliza ecosistemul de programare WinPython care va fi rulat individual pe calculator.

Aplicaţii software
Se va utiliza aplicaţia Wave1D.py. Organigrama aplicaţiei Wave1D.py este reprezentată în
Anexa A. Lista de coduri a aplicaţiei este prezentata în Anexa B.

Rev.DA.2018 5
MIPPD. Îndrumar de laborator.

Rev.DA.2018 6
Annexe A

Organigrama aplicatiei Wave1D

START

Se defineste modelul
geometric al problemei

Se introduc
datele de material

Se definesc caracteristicile
retelei de discretizare

Se creeaza prototipul
C >1
matricelor U si A Nu

Se seteaza conditiile
de frontiera Da

Se seteaza conditiile initiale STOP

Se calculeaza primul
pas al solutiei

Se calculeaza ceilalti
pasi ai solutiei

Se salveaza rezultatele

STOP

7
MIPPD. Îndrumar de laborator.

Rev.DA.2018 8
Annexe B

Lista de coduri ale aplicatiei Wave1D.py

# −∗− c o d i n g : u t f −8 −∗−
#−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
#S o l u t i a numerica a p r o b l e m e i C o r z i i v i b r a n t e cu f r e c a r i
#R e z o l v a r e cu metoda d i f e r e n t e l o r c e n t r a t e , v a r i a n t a e x p l i c i t a .
#E c u a t i a cu d e r i v a t e p a r t i a l e a p r o c e s u l u i e s t e urmatoarea
# T_tt+2∗Kappa∗U_t=c ^2∗U_xx
#−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
import numpy #importa b i b l i o t e c a de f u n c t i i
import m a t p l o t l i b . p y p l o t a s p l t #importa b i b l i o t e c a de f u n c t i i
from s c i p y . s p a r s e import dia_matrix
#−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
#F u n c t i i l e a p l i c a t i e i
#−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
d e f ModelGeometric ( ) :
dL1=10.;# lungimea c o r z i i 50
dT1=20.;# d u r a t a s i m u l a r i i 20
r e t u r n dL1 , dT1

d e f DateDeMaterial ( ) :
dKappa1=0.05;# c o e f i c i e n t u l de f r e c a r e : 0 . 1 ; 0 . 0 1 ; 0 . 0 5
dVitUnda1 =4.0;# v i t e z a de p r o p a g a r e a u n d e l o r i n c o a r d a : 2 . 0 ; 1 . 0 ; 4 . 0
r e t u r n dKappa1 , dVitUnda1

d e f Retea ( dL1 , dT1 , dVitUnda1 ) :


iNx1=399;#numarul de n o d u r i INTERIOARE a l e r e t e l e i
iTe1 =4000;# numarul de e s a n t i o a n e 1 6 0 0 ; 2 0 0 0 ; 1 0 0 0 ; 4 0 0 0
dDet_x1=dL1 / ( iNx1 +1.);# lungimea i n t e r v a l u l u i de d i s c r e t i z a r e a r e t e l e i
dDet_t1=dT1/ iTe1 ;# d u r a t a i n t e r v a l u l u i de timp i n t r e e s a n t i o a n e c o n s e c u t i v e
dS1=pow ( dVitUnda1 , 2 ) ∗ pow ( dDet_t1 , 2 ) / pow ( dDet_x1 , 2 ) ; # p a r a m e t r u l a m p l i f i c a r e
r e t u r n iNx1 , iTe1 , dDet_x1 , dDet_t1 , dS1

d e f P r o t o t i p M a t r i c e ( iNx , iTe , dS , dDet_t , dDet_x ) :

aU=numpy . empty ( shape =(iNx , 1 ) ) ; # c r e e z a p r o t o t i p u l m a t r i c e i U


aUsol=numpy . empty ( shape =(iNx , iTe ) ) ; # c r e e a z a p r o p t o t i p u l m a t r i c e i Usol c a r e c

aA_sup=dS∗numpy . o n e s ( ( iNx ) ) ; # p r o t o t i p u l d i a g o n a l e i s u p e r i o a r e d i n m a t r i c e a A

9
MIPPD. Îndrumar de laborator.

aA_princ=2∗(1−dS ) ∗numpy . o n e s ( ( iNx ) ) ; # p r o t o t i p u l d i a g o n a l e i c e n t r a l e d i n m a t r


aA_inf=dS∗numpy . o n e s ( ( iNx ) ) ; # p r o t o t i p u l d i a g o n a l e i i n f e r i o a r e d i n m a t r i c e a A
aA_diag=numpy . v s t a c k ( ( aA_sup , aA_princ , aA_inf ) ) ; # p r o t o t i p u l d i a g o n a l e l o r m a t r
a A _ o f f s e t s=numpy . a r r a y ( [ − 1 , 0 , 1 ] ) ; # p r o t o t i p u l p o z i t i e i f a t a de d i a g . p r i n c . d i n
aA=dia_matrix ( ( aA_diag , a A _ o f f s e t s ) , shape =(iNx , iNx ) ) . t o a r r a y ( ) ; # p r o t o t i p u l m a

aX=numpy . t r a n s p o s e ( numpy . empty ( iNx ) ) ; # c r e e a z a p r o t o t i p u l m a t r i c e i aX


aX[0]=0;# prima v a l o a r e
f o r k1 i n l i s t ( r a n g e ( 0 , iNx − 1 ) ) :
aX [ k1+1]=aX [ k1 ]+dDet_x;# a c t u a l i z e a z a v a l o a r e a e l e m e n t u l u i m a t r i c e i

aT=numpy . t r a n s p o s e ( numpy . empty ( iTe ) ) ; # c r e e a z a p r o t o t i p u l m a t r i c e i aX


aT[0]=0;# prima v a l o a r e
f o r k1 i n l i s t ( r a n g e ( 0 , iTe − 1 ) ) :
aT [ k1+1]=aT [ k1 ]+dDet_t;# a c t u a l i z e a z a v a l o a r e a e l e m e n t u l u i m a t r i c e i

r e t u r n aX , aT , aU , aUsol , aA

d e f C o n d i t i i D e F r o n t i e r a (aU ) :
dU_O=0;# v a l o a r e a f u n c t i e i n e c u n o s c u t e l a c a p a t u l O a l c o r z i i
dU_L=0;# v a l o a r e a f u n c t i e i n e c u n o s c u t e l a c a p a t u l L a l c o r z i i
aUb=numpy . empty_like (aU);# c r e e a z a o m a t r i c e cu a c e l e a s i d i m e n s i u n i cu a l e m a

aUb_Dim=numpy . shape ( aUb);# p r e i a d i m e n s i u n i l e m a t r i c e i


iUb_Dim=aUb_Dim [ 0 ] ; # p r e i a d i m e n s i u n e a pe axa X
f o r k1 i n l i s t ( r a n g e ( 0 , iUb_Dim ) ) :
i f k1==0 :
aUb [ k1 ]=dU_O;# c o n d i t i a de f r o n t i e r a l a c a p a t u l O
e l i f k1==iUb_Dim :
aUb [ k1 ]=dU_L;# c o n d i t i a de f r o n t i e r a l a c a p a t u l L
else :
aUb [ k1 ]=0;# v a l o r i l e c e l o r l a l t e e l e m e n t e d i n v e c t o r u l aU_b s u n t e g a l e

r e t u r n aUb

d e f C o n d i t i i I n i t i a l e (aU , aX , dL ) :
dRaportXpeL =0.8;# p o z i t i a r e l a t i v a a p c t . unde s e a p l i c a e x c i t a t i a
a U i n i=numpy . empty_like (aU);# c r e e a z a o m a t r i c e cu a c e l e a s i d i m e n s i u n i cu a l e

aUini_Dim=numpy . shape ( aUb);# p r e i a d i m e n s i u n i l e m a t r i c e i


iUini_Dim=aUini_Dim [ 0 ] ; # p r e i a d i m e n s i u n e a pe axa X
f o r k1 i n l i s t ( r a n g e ( 0 , iUini_Dim ) ) :
i f aX [ k1 ] / dL<=dRaportXpeL :
a U i n i [ k1 ] = 1 . 2 5 ∗aX [ k1 ] / dL;# v a l o a r e a e l e m e n t e l o r l a s t a n g a poz . r e l a t i v
else :
a U i n i [ k1]=−5∗(1−aX [ k1 ] / dL);# v a l o a r e a e l e m e n t e l o r l a d r e a p t a poz . r e l a

return aUini

d e f S o l u t i a L a P r i m a I t e r a t i e ( dS , aA , aUb , a U i n i ) :
aU1=1/2∗numpy . dot (aA , a U i n i )+dS /2∗aUb;# v a l o r i l e f c n . nec . l a prima i t e r a t i e

Rev.DA.2018 10
MIPPD. Îndrumar de laborator.

r e t u r n aU1

d e f C a l c S o l u t i a ( aUsol , aA , aUb , aUini , aU1 , dKappa , dDet_t , iTe , iNx ) :


f o r k1 i n l i s t ( r a n g e ( 0 , iTe − 1 ) ) :
i f k1==0:
aUsol [ : , 0 ] = a U i n i [ : , 0 ] ; # a t a s e a z a v a l o r i l e i n i t i a l e a l e s o l u t i e i
e l i f k1==1:
aUsol [ : , 1 ] = aU1 [ : , 0 ] ; # a t a s e a z a v a l o r i l e l a prima i t e r a t i e a l e s o l u t i e
else :
f o r k2 i n l i s t ( r a n g e ( 0 , iNx − 1 ) ) :
aUsol [ k2 , k1+1]=1/(1+dKappa∗dDet_t ) ∗numpy . dot (aA [ k2 , : ] , aUsol [ : , k1
r e t u r n aUsol

d e f S a l v e a z a R e z u l t a t e ( aT , aX , aUsol ) :
F i g u r a 1=p l t . f i g u r e ( )
p l t . c o n t o u r ( aT , aX , aUsol )
p l t . p c o l o r m e s h ( aT , aX , aUsol )
p l t . g r i d ()# r e p r e z i n t a r e t e a u a
p l t . t i t l e ( ’GRAFIC S o l u t i a p r o b l e m e i Wave1D ’ ) #t i t l u l g r a f i c u l u i
p l t . x l a b e l ( ’ Timpul ’ ) #e t i c h e t a a x e i X
p l t . y l a b e l ( ’ D i s t a n t a ’ ) #e t i c h e t a a x e i Y
p l t . s a v e f i g ( ’ CoardaVibranta1D_svg . svg ’ ) #s a l v e a z a f i g u r a i n format p r i n t a b i l
p l t . s a v e f i g ( ’ CoardaVibranta1D_png . png ’ ) #s a l v e a z a f i g u r a i n format p r i n t a b i l
p l t . s a v e f i g ( ’ CoardaVibranta1D . j p g . jpg ’ ) #s a l v e a z a f i g u r a i n format p r i n t a b i l

F i g u r a 2=p l t . f i g u r e ( )
p l t . p l o t ( aUsol [ 1 0 0 , : ] ) #v a r i a t i a i n f c n de timp a e l o n g a t i e i e s a n t i o n u l u i 50
p l t . g r i d ()# r e p r e z i n t a r e t e a u a
p l t . t i t l e ( ’GRAFIC S o l u t i a p r o b l e m e i Wave1D pt . iNx =100 ’) #t i t l u l g r a f i c u l u i
p l t . x l a b e l ( ’ Timpul ’ ) #e t i c h e t a a x e i X
p l t . y l a b e l ( ’ Amplitudine ’ ) #e t i c h e t a a x e i Y
p l t . s a v e f i g ( ’ CoardaVibranta1D_iNx100_svg . svg ’ ) #s a l v e a z a f i g u r a i n format p r
p l t . s a v e f i g ( ’ CoardaVibranta1D_iNx100_png . png ’ ) #s a l v e a z a f i g u r a i n format p r
p l t . s a v e f i g ( ’ CoardaVibranta1D_iNx100_jpg . jpg ’ ) #s a l v e a z a f i g u r a i n format p r

F i g u r a 3=p l t . f i g u r e ( )
p l t . p l o t ( aUsol [ : , 0 ] ) #v a r i a t i a i n f c n de timp a e l o n g a t i e i e s a n t i o n u l u i 50
p l t . g r i d ()# r e p r e z i n t a r e t e a u a
p l t . t i t l e ( ’GRAFIC C o n d i t i a i n i t i a l a p r o b l e m e i Wave1D l a . iTe =0 ’) #t i t l u l g r a
p l t . x l a b e l ( ’ D i s t a n t a ’ ) #e t i c h e t a a x e i X
p l t . y l a b e l ( ’ Amplitudine ’ ) #e t i c h e t a a x e i Y
p l t . s a v e f i g ( ’ CoardaVibranta1D_iTe0_svg . svg ’ ) #s a l v e a z a f i g u r a i n format p r i n
p l t . s a v e f i g ( ’ CoardaVibranta1D_iTe0_png . png ’ ) #s a l v e a z a f i g u r a i n format p r i n
p l t . s a v e f i g ( ’ CoardaVibranta1D_iTe0_jpg . jpg ’ ) #s a l v e a z a f i g u r a i n format p r i n

F i g u r a 4=p l t . f i g u r e ( )
p l t . p l o t ( aUsol [ : , 5 0 0 ] ) #v a r i a t i a i n f c n de timp a e l o n g a t i e i e s a n t i o n u l u i 50
p l t . g r i d ()# r e p r e z i n t a r e t e a u a
p l t . t i t l e ( ’GRAFIC S o l u t i a p r o b l e m e i Wave1D l a iTe =500 ’) #t i t l u l g r a f i c u l u i
p l t . x l a b e l ( ’ D i s t a n t a ’ ) #e t i c h e t a a x e i X
p l t . y l a b e l ( ’ Amplitudine ’ ) #e t i c h e t a a x e i Y

Rev.DA.2018 11
MIPPD. Îndrumar de laborator.

p l t . s a v e f i g ( ’ CoardaVibranta1D_iTe500_svg . svg ’ ) #s a l v e a z a f i g u r a i n format p r


p l t . s a v e f i g ( ’ CoardaVibranta1D_iTe500_png . png ’ ) #s a l v e a z a f i g u r a i n format p r
p l t . s a v e f i g ( ’ CoardaVibranta1D_iTe500_jpg . jpg ’ ) #s a l v e a z a f i g u r a i n format p r

r e t u r n Figura1 , Figura2 , F i g u r a 3
#−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
#Modulul p r i n c i p a l
#−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−

dL , dT=ModelGeometric ( ) ; # Se d e f i n e s t e modelul g e o m e t r i c a l p r o b l e m e i

dKappa , dVitUnda=DateDeMaterial ( ) ; # Se i n t r o d u c d a t e l e de m a t r i a l

iNx , iTe , dDet_x , dDet_t , dS=Retea ( dL , dT , dVitUnda );# Se D e f i n e s c c a r a c t e r i s t i c i l e r e t

NumarulCourant=dVitUnda ∗dDet_t/dDet_x;#Se v e r i f i c a daca a l g o r i t m u l e s t e s t a b i l :


#NumarulCourant<1 metoda e s t e s t a b i l a ;
#Numarulcourant >1 metoda e s t e i n s t a b i l a .
i f NumarulCourant >=1:
p r i n t ( " Numarul Courant " , ’%1.3 f ’ % NumarulCourant );# a f i s e a z a v a l o a r e a numaru
p r i n t ( " S o l u t i a p r o b l e m e i e s t e i n s t a b i l a . Se o p r e s t e a p l i c a t i a . " )
else :
p r i n t ( " Numarul Courant " , ’%1.3 f ’ % NumarulCourant );# a f i s e a z a v a l o a r e a numaru
p r i n t ( " S o l u t i a p r o b l e m e i e s t e s t a b i l a . Se c o n t i n u a r e z o l v a r e a . " )

aX , aT , aU , aUsol , aA=P r o t o t i p M a t r i c e ( iNx , iTe , dS , dDet_t , dDet_x );# Creeaza p r o t o t

aUb=C o n d i t i i D e F r o n t i e r a (aU);# Se s e t e a z a c o n d i t i i l e de f r o n t i e r a

a U i n i=C o n d i t i i I n i t i a l e (aU , aX , dL);# Se s e t e a z a c o n d i t i i l e i n i t i a l e

aU1=S o l u t i a L a P r i m a I t e r a t i e ( dS , aA , aUb , a U i n i );# Se c a l c u l e a z a p r i m u l pas a l s o l

aUsol=C a l c S o l u t i a ( aUsol , aA , aUb , aUini , aU1 , dKappa , dDet_t , iTe , iNx );# Se c a l c u l e a z

S a l v e a z a R e z u l t a t e ( aT , aX , aUsol );# Se s a l v e a z a r e z u l t a t e l e

Rev.DA.2018 12
Annexe C

Referat de laborator

Denumirea lucrării :

Intocmit de : Semnătura :
Verificat de : Semnătura :
Data întocmirii : Data verificării :

Descrierea lucrării de laborator - Obiective, Metode, Rezultate preconizate.

Echipamente hardware.

Medii şi aplicaţii software.

13
MIPPD. Îndrumar de laborator.

Exemplu de calcul.

Rezultatele experimentului.

Interpretarea rezultatelor.

Concluzii.

Rev.DA.2018 14
LABORATORUL 1

ESTIMAREA CÂMPULUI DE TEMPERATURA ÎNTR-UN PERETE PLAN INFINIT


EXTINS

1. Formularea problemei

Se cere să se estimeze valorile câmpului de temperatură pe secțiunea transversală a unui perete plan de
grosime finită. Se consideră că peretele este infinit extins pe direcțiile perpendiculare pe direcția normală la
suprafața de separație.

Tipul problemei: Steady-state heat transfer.

Datele problemei:
Denumire Simbol U.M. Valoare
Grosimea peretelui xp m 0.02
Lățimea de calcul a peretelui yp m 0.05
W
Conductivitatea materialului peretelui  0.1
mK

2. Inițializarea aplicației

2. Definirea datelor generale ale problemei


3. Setarea sistemului de coodonate

4. Definirea modelului geometric al problemei

4.1. Fereastra ModelWindow

4.2. Construirea modelului geometric al problemei


5. Atribuirea proprietăților de material ale părților modelului

5.1. Definirea etichetei blocului perete

5.2. Definirea proprietăților de material

5.3. Atribuirea etichetei la blocul perete al modelului


6. Definirea condițiilor de frontieră

6.1. Definirea etichetelor frontierelor

6.2. Definirea condițiilor de frontieră


6.3. Atribuirea etichetelor la frontierele modelului

7. Construirea rețelei de discretizare și rezolvarea problemei

8. Postprocesarea soluției
METODE SOFTWARE PENTRU MODELAREA SI IDENTIFICAREA EXPERIMENTALA A SISTEMELOR
CU PARAMETRI DISTRIBUITI

UNDE ELECTROMAGNETICE (2)

1. P trunderea câmpului electromagnetic în medii conductoare masive

1.1. Ecua iile câmpului electromagnetic în medii conductoare masive


P trunderea câmpului electromagnetic în mediile conductoare masive se poate produce pe dou c i, (a)
prin aplicarea unei diferen e de poten ial variabil în timp între dou puncte distincte ale conductorului i
(b) prin induc ie electromagnetic prin plasarea unui corp conductor masiv într-un câmpul magnetic
variabil în timp.

Ecua iile câmpului electromagnetic în mediile conductoare masive se pot deduce pe cale analitic pe
baza urm toarelor ipoteze simplificatoare.

− Se neglijeaz curen ii de deplasare fa de curen ii de conduc ie.

∂D
J D << J C ; J D = J C = σ⋅E . (1.)
∂t

− Se neglijeaz densitatea de volum a sarcinii electrice adev rate, ρV = 0 .

− Se neglijeaz polariza ia electric în interiorul mediilor conductoare, D = ε0 ⋅ E + P = ε0 ⋅ E .


=0

− In cazul conductoarelor feromagnetice permeabilitatea magnetic , µ se consider constant .

Prima ecua ie de ordinul întâi a câmpului electromagnetic în conductoare masive se ob ine pe baza
urm toarelor legi: legea circuitului magnetic, legea fluxului electric, legea conduc iei electrice i legile de
material aplicate pentru cazul materialelor f r magnetiza ie permanent , omogene i izotrope.

rot H = J = σ ⋅ E . (2.)

A doua ecua ie de ordinul întâi se ob ine pe baza legii induc iei electromagnetice, legea fluxului magnetic
i legilor de material aplicate pentru cazul materialelor f r magnetiza ie permanent , omogene i
izotrope.

∂H
rot E = −µ ⋅ . (3.)
∂t
Se aplic operatorul rotor înc o dat în expresia (2.) i rezult prima ecua ie de ordinul doi a câmpului
electromagnetic în conductoare masive:

(i) rot rot H = σ ⋅ rot E .

(ii)
( )
rot rot H = grad div H − ∆ H = − ∆ H
=0

∂H
∆H = σ ⋅µ ⋅ (4.)
∂t
Analog se poate ob ine pentru intensitatea câmpului electric ecua ia care urmeaz .

MSMIESPD/DA//DataRev:30/12/11
NOTE DE CURS

∂E
∆E = σ ⋅µ ⋅ (5.)
∂t
Observa ii:

1. In practic se calculeaz H din prima ecua ie de ordinul doi dup care E se calculeaz din ecua ia de
ordinul unu corespunz toare.

2. dup determinarea m rimilor de stare ale câmpului electromagnetic, se poate calcula intensitatea
curentului electric, etc.

3. pentru cazul în care m rimile fizice variaz sinusoidal, se utilizeaz reprezent rile în complex
simplificat i ecua iile pot fi rezolvate analitic.

1.2. Rezolvarea ecua iilor câmpului electromagnetic pentru cazul câmpurilor plan-paralele
Pentru cazul câmpurilor plan-paralele m rimile fizice depind de o singur variabil spa ial i de variabila
timp. In acest caz, ecua iile de ordinul doi ale câmpului electromagnetic se scriu dup cum urmeaz .

∂ 2 H z ( x, t ) ∂H z ( x, t )
2
=σ ⋅µ ⋅ (6.)
∂x ∂t

∂ 2 E y ( x, t ) ∂E y ( x, t )
=σ ⋅µ ⋅ (7.)
∂x 2 ∂t

Ecua iile (5.) i (6.) reprezint dou ecua ii cu derivate par iale parabolice de ordinul doi. Ecua iile de
ordinul unu se ob in din rela iile (1.) i (2.) dup cum urmeaz .

∂H z ( x, t )
= σ ⋅ E y ( x, t ) (8.)
∂x

∂E y ( x, t ) ∂H z ( x, t )
= −µ ⋅ (9.)
∂x ∂t
Ecua ia (7.) este o ecua ie cu derivate par iale de ordinul unu de tip eliptic iar cea de-a doua este o
ecua ie cu derivate par iale de ordinul unu de tip parabolic. Rezolvarea ecua iilor se poate face analitic
pentru cazul regimului sinusoidal sta ionar i respectiv numeric, de exemplu cu metoda elementului finit în
cazul general.

Solu iile analitice ale ecua iilor câmpului electromagnetic variabil în semispa iul conductor în regim
permanent sinusoidal sunt urm toarele.

Intensitatea câmpului magnetic la suprafa a de separa ie cu aerul este dup cum urmeaz .

(
H z (0, t ) = H z ,max ⋅ sin ω1 ⋅ t ) (10.)

Condi iile la frontierele domeniului spa ial sunt urm toarele.

x = 0 : H z (0, t ) = H z ,max ⋅ sin ω1 ⋅ t ( ) (11.)

x = 0 : lim H z ( x, t ) = H z ,∞ = finit (12.)


x→∞

MSMIESPD/DA//DataRev:30/12/11
Patrunderea campului electromagnetic in medii conductoare masive

Rezult solu iile pentru intensitatea câmpului magnetic respectiv intensitatea câmpului electric date în
rela iile (12.) i (13.).

(
H z ( x, t ) = H z ,max ⋅ e −α ⋅t ⋅ sin ω1 ⋅ t − α ⋅ x ) (13.)

α π
J y ( x, t ) = 2 ⋅ ⋅ H z , max ⋅ e −α ⋅t ⋅ sin ω1 ⋅ t − α ⋅ x + (14.)
σ 4

In care constanta de atenuare α se ob ine din rela ia care urmeaz .

γ= j ⋅ ω1 ⋅ µ ⋅ σ = α ⋅ (1 + j ) (15.)

Expresia (12.) reprezint o und elementar direct care se propag în sensul pozitiv al axei (Ox), cu
ω1 2 ⋅π
viteza de propagare v= i lungimea de und λ= .
α α

MSMIESPD/DA//DataRev:30/12/11
LABORATORUL 4

LUCRUL ÎN MODUL PROGRAMAT CU QUICKFIELD – GENERAREA UNUI RAPORT


IN VISUAL BASIC FOR APPLICATIONS (VBA)

1. Proiectarea interfeței utilizator

Aspectul documentului în care va fi generat raportul.

Aspectul ferestrei pentru proiectarea aplicatiei pentru generarea raportului.

1.1. Fereastra de comandă a aplicației


Fereastra de comandă a aplicației în etapa de proiectare

2. Rutinele programului pentru generarea raportului

2.1. Declararea variabilelor aplicatiei


Dim QuickFieldServer As New QuickField.Application 'porneste serverul
QuickField'
Dim Problema As QuickField.Problem 'se declara instanta problemei QuickField'
Dim Modelul As QuickField.Model 'se declara instanta modelului geometric al
problemei'
Dim Fereastra As QuickField.FieldWindow 'se declara instanta ferestrei
QuickField in care se reprezinta spectrul campului'
Dim punct As QuickField.Point 'se declara instanta punctului local din care se
vor preleva valori calculate'
Dim camp As QuickField.FieldPoint 'se declara instanta campului de valori
asociat punctului local'
Dim contur As QuickField.Contour 'se declara instanta conturului in raport cu
care se calculeaza valorile integrale'
Dim Tabel As QuickField.TableWindow 'creaza un obiect Table'
Dim col As QuickField.TableColumn 'creaza un obiect TableColumn'
Dim row As QuickField.TableRow 'creaza un obiect TableRow'

Dim dX As Double 'declaratie pentru coordonata geometrica a punctului curent'


Dim dY As Double 'declaratie pentru coordonata geometrica a punctului curent'
Dim dX_0 As Double 'declaratie pentru coordonata geometrica a punctului initial
al conturului'
Dim dY_0 As Double 'declaratie pentru coordonata geometrica a punctului initial
al conturului'
Dim dX_N As Double 'declaratie pentru coordonata geometrica a punctului final al
conturului'
Dim dY_N As Double 'declaratie pentru coorodnata geometrica a punctului final al
conturului'
Dim dL As Double 'declaratie pentru lunginea geometrica a conturului'
Dim iPunctePeContur As Variant 'declaratie pentru numarul de puncte aflate pe
perimetrul conturului'
Dim iLiniiDinTabel As Variant 'declaratie pentru numarul de linii din tabel'
Dim iColoaneDinTabel As Variant 'declaratie pentru numarul de coloane din tabel'
Dim aRezultate() As Double 'matricea in care se salveaza rezultatele'
Dim dDetH As Double 'declaratie pasul coordonatelor'
Dim dV As Double 'declaratie pentru valoarea calculata a potentialul
electrostatic intr-un punct'
Dim dE As Double 'declaratie pentru valoarea calculata a intensitatii campului
electrostatic intr-un punct'
Dim dEnergie As Double 'declaratie pentru valoarea calculata a energiei campului
electrostatic intr-un punct'
Dim aux As Variant 'variabila pentru depanare'
3. Rutine asociate obiectelor interfeței utilizator

3.1. Rutina asociata ferestrei utilizator


Private Sub UserForm_Activate()
ListBoxComenzi.AddItem ("Pregateste fisierul Word pentru noul raport")
End Sub
3.2. Rutina asociata butonului Server
Private Sub CommandButtonServer_Click()

ListBoxComenzi.AddItem ("Deschide serverul QuickField")


QuickFieldServer.MainWindow.Visible = True 'deschide ferestrele serverului'
Set Problema =
QuickFieldServer.Problems.Open("F:\Toshiba1\CursMasterat\Laboratoare\Lab4\CalcCa
pCip\CalcCapCip.pbm") 'deschide problema'

End Sub
3.3. Rutina asociată butonului Problema
Private Sub CommandButtonProblema_Click()

ListBoxComenzi.AddItem ("Comanda si verifica rezolvarea problemei")

If Problema.Solved = False Then


Problema.SolveProblem 'verifica daca problema nu a fost rezolvata se
comanda rezolvarea acesteia'
End If
End Sub
3.4. Rutina asociată butonului Postprocesare
Private Sub CommandButtonPostProcesare_Click()

ListBoxComenzi.AddItem ("Analizeaza rezultatele si pregateste raportul")

Problema.AnalyzeResults 'apeleaza metoda care deschide fereastra


postprocesorului QuickField'

Set Fereastra = Problema.Result.Windows(1) 'atribuie obiectului Fereastra


valorile ferestrei cu rezultate returnate de QuickField'

Set contur = Fereastra.Contour 'atribuie obiectului contur valorile


obiectului omolog asociat ferestrei returnate de QuickField'

contur.Delete 'sterge continutul initial al obiectului si pregateste


pentru intializare'

contur.AddBlock "Substrat" 'adauga un bloc la obiectul contur'

Set Tabel = Problema.Result.GetTable(contur) 'preia rezultatele calculelor


in tabel'

''iColoaneDinTabel = Tabel.Columns.Count 'numarul de coloane al tabelului'


iLiniiDinTabel = Tabel.Rows.Count 'numarul de linii din tabel; egal cu
numarul de puncte pe perimetrul conturului'

iPunctePeContur = iLiniiDinTabel 'idem'

For k1 = 1 To iLiniiDinTabel
For k2 = 1 To 7 'iColoaneDinTabel'
ReDim aRezultate(1 To k1, 1 To k2) 'dimensioneaza matricea
rezultatelor la dimesniunea necesara'
Next
Next

For k1 = 1 To iLiniiDinTabel
Set row = Tabel.Rows.Item(k1) 'selecteaza prima linie din tabel'

dX = row.Point.X 'preia abscisa punctului in variabila dX'


dY = row.Point.Y 'preia ordonata punctului in variabila dY'

Set punct = QuickFieldServer.PointXY(dX, dY) 'actualizeaza obiectul'


Set camp = Problema.Result.GetLocalValues(punct) 'preia valorile locale'

aRezultate(k1, 1) = camp.X 'abscisa punctului'


aRezultate(k1, 2) = camp.Y 'ordonata punctului'
aRezultate(k1, 3) = camp.Phi 'unghiul in SC polare '
aRezultate(k1, 4) = camp.R 'raza in SC polare'
aRezultate(k1, 5) = camp.Energy 'densitatea de energie a campului'
aRezultate(k1, 6) = camp.Potential 'potentialul electrostatic al
campului'
''aRezultate(k1, 5) = camp.Grad'nu este permis'
aRezultate(k1, 7) = camp.K 'permitivitatea dielectrica a materialului;
in genere este un tensor care reprezinta termenul din partea stanga a ecuatiei
lui Poisson'
''aRezultate(k1, 7) = camp.KGrad'nu este permis'
Next
''aux = col.Number

''dX_0 = contur.StartPoint.X 'preleveaza abscisa punctul initial al


conturului Substrat'
''dY_0 = contur.StartPoint.Y 'preleveaza ordonata punctului initial al
conturului Substrat'
''dX_N = contur.EndPoint.X 'abscisa punctului final al conturului'
''dY_N = contur.EndPoint.Y 'ordonata punctului final al conturului'

''dL = contur.Lenght 'perimetrul conturului in mm'


''dDetH = dL / (iPunctePeContur - 1) 'pasul retelei'

''Dim dAriaConturului As Double


''dAriaConturului = contur.Square 'aria conturului'

''Dim dNprod As Double


''dNprod = dAriaConturului / (dDetH ^ 2) 'numarul de patrate din contur'
''Dim dNSum As Double
''dNSum = 0.5 * dL / dDetH 'numarul de puncte pe contur minus unu'

''Dim dNx, dNy, dDiscriminant As Double


''dDiscriminant = dNSum ^ 2 - 4 * dNprod
''dNx = 1 / 2 * (dNSum - Sqr(dDiscriminant))
''dNy = 1 / 2 * (dNSum + Sqr(dDiscriminant))

''Set punct = QuickFieldServer.PointXY(dX_0, dY_0 - dDetH)


''Set camp = QuickFieldServer.ActiveProblem.Result.GetLocalValues(punct)

''Dim dreptunghi As QuickField.Rectangle


''Set dreptunghi = QuickFieldServer.RectangleByLimits(0, 100, 50, 50)
End Sub
3.5. Rutina asociată butonului Raport
Private Sub CommandButtonRaport_Click()

ListBoxComenzi.AddItem ("Editeaza raportul in fisierul Word")

For k1 = 1 To iLiniiDinTabel + 1
If k1 = 1 Then
With ThisDocument
.Tables(2).Cell(k1, 1).Select 'selecteaza celula din primul tabel'
Selection.Text = "X" 'inscrie text'
.Tables(2).Cell(k1, 2).Select 'selecteaza celula din primul tabel'
Selection.Text = "Y" 'inscrie text'
.Tables(2).Cell(k1, 3).Select 'selecteaza celula din primul tabel'
Selection.Text = "Phi" 'inscrie text'
.Tables(2).Cell(k1, 4).Select
Selection.Text = "R" 'inscrie text'
.Tables(2).Cell(k1, 5).Select
Selection.Text = "Densitatea de energie" 'inscrie text'
.Tables(2).Cell(k1, 6).Select
Selection.Text = "Potentialul campului" 'inscrie text'
.Tables(2).Cell(k1, 7).Select
Selection.Text = "Permitivitatea materialului" 'inscrie text'
End With
Else
With ThisDocument
.Tables(2).Range.Rows.Add 'insereaza o linie in tabel'
.Tables(2).Cell(k1, 1).Select 'selecteaza celula din primul tabel'
Selection.Text = Format(aRezultate(k1 - 1, 1), "0####.#0") 'abscisa'
.Tables(2).Cell(k1, 2).Select 'selecteaza celula din primul tabel'
Selection.Text = Format(aRezultate(k1 - 1, 2), "0####.#0")
'ordonata'
.Tables(2).Cell(k1, 3).Select 'selecteaza celula din primul tabel'
Selection.Text = Format(aRezultate(k1 - 1, 3), "0##.##0") 'Phi'
.Tables(2).Cell(k1, 4).Select
Selection.Text = Format(aRezultate(k1 - 1, 4), "0####.##0") 'R'
.Tables(2).Cell(k1, 5).Select
Selection.Text = Format(aRezultate(k1 - 1, 5), "####e+") 'densitatea
de energie'
.Tables(2).Cell(k1, 6).Select
Selection.Text = Format(aRezultate(k1 - 1, 6), "####e+")
'potentialul electrostatic'
.Tables(2).Cell(k1, 7).Select
Selection.Text = Format(aRezultate(k1 - 1, 7), "####e+")
'permitivitatea dielectrica'
End With
End If
Next

End Sub

4. Definirea problemei in Quick field

4.1. Fereastra principala


4.2. Definirea proprietăților de material
4.3. Condițiile de frontieră
5. Postprocesarea soluției
METODE SOFTWARE PENTRU MODELAREA SI IDENTIFICAREA EXPERIMENTALA A
SISTEMELOR CU PARAMTERI DISTRIBUITI

UTILIZAREA METODEI ELEMENTULUI FINIT PENTRU REZOLVAREA ECUATIILOR


CÂMPULUI ELECTROMAGNETIC ÎN MEDII CONDUCTOARE MASIVE

1. Scopul lucrării

Întrun corp din material conductor plasat în câmp electromagnetic variabil în timp se induc curenţi
electrici de conducţie care modifică distribuţia câmpului electromagnetic în interiorul corpului. Curenţii
electrici astfel produşi se numesc curenţi turbionari. Fenomenul fizic constă în atenuaarea câmpului cu
creşterea adâncimii măsurată faţă de suprafaţa corpului. Fenomenul se numeşte efect pelicular.
Fenomenul este utilizat pentru ecranarea incintelor, încălzirea prin inducţie a straturilor superficiale în
vederea tratării termice, limitarea curenţilor la pornirea motoarelor electrice asincrone cu bare înalte . De
asemenea, efectul pelicular determină creşterea rezistenţei electrice echivalente a conductoarelor
parcurse de curenţi variabili în timp.

2. Breviar teoretic

A. Ecuaţiile care descriu pătrunderea câmpului electromagnetic în medii conductoare masive se obţin prin
aplicarea legilor generale ale câmpului electromagnetic precum şi a legilor de material specifice
materialelor omogeme şi izotrope, fără magnetizaţie permanentă. Formele particulare care se obţin sunt
următoarele.

rot H = J = σ ⋅ E , (prima ecuaţie de ordinul întâi) (1.)

∂H
rot E = − µ ⋅ , (a doua ecuaţie de ordinul întâi) (2.)
∂t
Pe baza ecuaţiilor de ordinul întâi se pot deduce următoarele două ecuaţii de ordinul doi ale câmpului
electromagnetic în medii conductoare masive.

∂H
∆ H =σ ⋅µ ⋅ , (a prima ecuaţie de ordinul doi) (3.)
∂t

∂E
∆ E =σ ⋅µ ⋅ , (a doua ecuaţie de ordinul doi) (4.)
∂t
In calcule, intensitatea câmpului magnetic sau electric se obţine prin rezolvarea uneia dintre cele două
ecuaţii de ordinul doi iar mărimea omologă, respectiv intensitatea câmpului electric sau magnetic se
obţine prin rezolvarea ecuaţiei de ordinul întâi corespunzătoare.

B. Pentru cazul câmpurilor plan-paralele mărimile fizice depind de o singură variabilă spaţială şi de
variabila timp, Figura 1. In acest caz, ecuaţiile de ordinul doi ale câmpului electromagnetic se scriu după
cum urmează.

∂ 2 H z ( x, t ) ∂H z ( x, t )
=σ ⋅µ ⋅ (5.)
∂x 2
∂t

∂ 2 E y ( x, t ) ∂E y ( x, t )
=σ ⋅µ ⋅ (6.)
∂x 2
∂t

Ecuaţiile (5.) şi (6.) reprezintă două ecuaţii cu derivate parţiale parabolice de ordinul doi. Ecuaţiile de
ordinul unu se obţin din relaţiile (1.) şi (2.) după cum urmează.

MSMIESPD/DA/Rev2011 1
Laborator MSMIESPD

∂H z ( x, t )
= σ ⋅ E y ( x, t ) (7.)
∂x

∂E y ( x, t ) ∂H z ( x, t )
= −µ ⋅ (8.)
∂x ∂t

Ecuaţia (7.) este o ecuaţie cu derivate parţiale de ordinul unu de tip eliptic iar cea de-a doua este o
ecuaţie cu derivate parţiale de ordinul unu de tip parabolic. Rezolvarea ecuaţiilor se poate face analitic
pentru cazul regimului sinusoidal staţionar şi respectiv numeric, de exemplu cu metoda elementului finit în
cazul general.

C. Soluţiile analitice ale ecuaţiilor câmpului electromagnetic variabil în semispaţiul conductor în regim
permanent sinusoidal sunt următoarele.

Intensitatea câmpului magnetic la suprafaţa de separaţie cu aerul este după cum urmează.

(
H z (0, t ) = H z ,max ⋅ sin ω1 ⋅ t ) (9.)

Condiţiile la frontierele domeniului spaţial sunt următoarele.

x = 0 : H z (0, t ) = H z ,max ⋅ sin ω1 ⋅ t ( ) (10.)

x = 0 : lim H z ( x, t ) = H z ,∞ = finit (11.)


x→∞

Rezultă soluţiile pentru intensitatea câmpului magnetic respectiv intensitatea câmpului electric date în
relaţiile (12.) şi (13.).

(
H z ( x, t ) = H z ,max ⋅ e −α ⋅t ⋅ sin ω1 ⋅ t − α ⋅ x ) (12.)

α  π
J y ( x, t ) = 2 ⋅ ⋅ H z , max ⋅ e −α ⋅t ⋅ sin  ω1 ⋅ t − α ⋅ x +  (13.)
σ  4

In care constanta de atenuare α se obţine din relaţia care urmează.

γ= j ⋅ ω1 ⋅ µ ⋅ σ = α ⋅ (1 + j ) (14.)

Expresia (12.) reprezintă o undă elementară directă care se propagă în sensul pozitiv al axei (Ox), cu
ω1 2 ⋅π
viteza de propagare v = şi lungimea de undă λ= .
α α

D. Pentru rezolvarea numerică a ecuaţiilor în cadrul acestui laborator se va utiliza funcţia pdepe din
pachetul de programe Matlab, biblioteca Partial Differential Equations Toolbox.

Cu ajutorul acestei funcţii se pot rezolva ecuaţii cu derivate parţiale de tip eliptic şi parabolic de forma
care urmează.

 ∂u  ∂u ∂   ∂u   ∂u 
c x; t ; u;  ⋅ = x − m ⋅  x m ⋅ f  x; t ; u;  + s x; t ; u;  (15.)
 ∂x  ∂t ∂x   ∂x   ∂x 

Condiţiile pe care trebuie să le îndeplinească termenii din relaţia (15.) sunt următoarele.

MSMIESPD/DA/Rev2011 2
Utilizarea metodei elementului finit pentru rezolvarea ecuatiilor câmpului electromagnetic în medii
conductoare masive
1. Domeniul de variaţie al variabilei spaţiale trebuie să fie finit. Valorile de la capetele intervalului
reprezintă valorile variabilei corespunzătoare frontierelor domeniului de integrare

x ∈ [a; b] a, b ∈ R (16.)

2. Domeniul de variaţie al variabilei timp.

[
t ∈ t0 ; t f ] t0 , t f ∈ R (17.)

3. Valorile parametrului m reprezintă tipul de simetrie al problemei care trebuie rezolvată şi anume:

m=0 simetrie plana (18.)

m =1 simetrie cilindrică (19.)

m=2 simetrie sferică (20.)

4. Condiţia la momentul iniţial t = t 0 se exprimă sub forma unei funcţii depinzând doar de variabila
spaţială astfel:

( )
u x; t0 = u0 ( x ) (21.)

5. Componentele soluţiei la frontierele domeniului de integrare ses exprimă sub forma care urmează.

 ∂u 
p( x; t ; u ) + q ( x; t ) ⋅ f  x; t ; u;  = 0 (22.)
 ∂x 

In care funcţia q ( x; t ) este egală cu zero pentru condiţiile de tip Dirichlet sau diferită de zero pentru
condiţiile von Neumann. Se remarcă faptul că pentru condiţiile de frontieră von Neumann, se utilizează
 ∂u  ∂u
funcţia f  x; t ; u;  (termenul de flux al ecuaţiei cu derivate parţiale) în locul formulării clasice în .
 ∂x  ∂x

D. Exemplu de implementare a funcţiei pdepe pentru rezolvarea problemei definită de ecuaţia (5.), cu
condiţia la momentul iniţial (9.) şi condiţiile la frontierele domeniului spaţial (10.), (11.).
function TestPDE1
%==========================================================================
%CALCULEAZA REPARTITIA INTENSITATII CM IN SEMISPATIUL INFINIT PRIN
%INTEGRAREA ECUATIILOR CAMPULUI ELECTROMAGNETIC
%==========================================================================

clc
close all

% Setarile problemei
% --------------------------------------------------------------
m=0;%Simetrie plana
x = linspace(0,0.005,80);%grosimea de 0,005 impartita in 80 de intervale
t = linspace(0,0.1,80);%durata 0.1 sec in 80 intervale

% Rezolvarea problemei
% --------------------------------------------------------------
sol = pdepe(m,@pdex1pde,@pdex1ic,@pdex1bc,x,t);%linia de definitie a functiei
% Extract the first solution component as u.
u = sol(:,:,1);%rezultatul calculelor

% Reprezentari grafice

MSMIESPD/DA/Rev2011 3
Laborator MSMIESPD
% --------------------------------------------------------------
surf(x,t,u)
title('Solutia numerica calculata in 80 noduri.')
xlabel('Distanta x')
ylabel('Timpul t')

figure
plot(x,u(end,:))
title('Solutia la t = 2')
xlabel('Distanta x')
ylabel('u(x,2)')

% Functii auxiliare
% --------------------------------------------------------------
function [c,f,s] = pdex1pde(x,t,u,DuDx)
c = 4*pi*1e3;%coeficientul termenului din dreapta
f = DuDx;%componenta in d2H/dz2
s = 0;%nu are termen in dH/dz
% --------------------------------------------------------------
function u0 = pdex1ic(x)
dOmega=100*pi;%pulsatia
dMiu=4*pi*1e-4;%permeabilitatea magnetica
dSigma=1e7;%conductanta electrica
dAlfa=sqrt(dOmega*dMiu*dSigma/2);%factorul de atenuare
dHzmax=1000;%valoarea maxima a intensitatii campului magnetic
u0 =dHzmax*exp(-dAlfa*x)*sin(-dAlfa*x);%valoarea estimata a solutiei la t=0
% --------------------------------------------------------------
function [pl,ql,pr,qr] = pdex1bc(xl,ul,xr,ur,t)
dHzmax=1000;%valoarea maxima a intensitatii campului magnetic
dOmega=100*pi;%pulsatia
pl = dHzmax*sin(dOmega*t);%conditia de frontiera la capatul din stanga la
orice moment
ql = 0.001;%conditia de frontiera la capatul din stanga la orice moment
pr = 0;%conditia de frontiera la capatul din dreapta la orice moment
qr = 0.001;%conditia de frontiera la capatul din dreapta la orice moment

3. Modul de lucru

3.1. Exerciţiu pregătitor


1. Să se rezolve analitic pentru regimul permanent sinusoidal problema definită prin de ecuaţia (5.), cu
condiţia la momentul iniţial (9.) şi condiţiile la frontierele domeniului spaţial (10.), (11.). Notaţi expresia
soluţiei analitice în tabelul care urmează.

2. Scrieţi expresiile condiţiilor la frontierele domeniului spaţial pentru cazul pătrunderii câmpului
electromagnetic intro placă de grosime finită δ . Explicitaţi expresiile funcţiilor p ( x; t ; u ) şi q ( x; t ) din
relaţia (22.) pentru acest caz.

MSMIESPD/DA/Rev2011 4
Utilizarea metodei elementului finit pentru rezolvarea ecuatiilor câmpului electromagnetic în medii
conductoare masive
3.2. Studiul pătrunderii câmpului electromagnetic
Rulati funcţia TestPDE1 şi salvaţi graficul care reprezintă soluţia problemei propuse.

Modificaţi codurile funcţiei TestPDE1 pentru a rezolva problema studiului pătrunderii câmpului întro placă
de grosime finită cu grosimea δ = 0.5 mm ; rulaţi aplicaţia şi salvaţi rezultatul obţinut.

Permeabilitatea magnetică relativă este µ r = 1000 , ceea ce corespunde unui mediu feromagnetic.
Modificaţi această valoare pentru a corespunde unei placi dintrun material neferomagnetic. Rulaţi incă o
dată aplicaţia şi salvaţi rezultatul. In spaţiul de mai jos notaţi observaţiile voastre si explicaţi diferenţele pe
care le-aţi remarcat.

Adâncimea de pătrundere a câmpului reprezintă distanţa măsurată de la suprafaţa de separaţie dintre


mediul conductor şi aer la care amplitudinea câmpului scade de e ori. Modificaţi pulsaţia la valoarea
ω1 = 10000 ⋅ π [rad / s ] şi notaţi observaţiile voastre privitoare la modul în care se modifică adâncimea de
pătrundere a câmpului cu frecvenţa.

Data:

Intocmit

Verificat

MSMIESPD/DA/Rev2011 5

S-ar putea să vă placă și