Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Lab11t1 - Ecuatia Eliptica 2020
Lab11t1 - Ecuatia Eliptica 2020
Aplicatie
Ecuatia: 2u 2u
0 x [ xA , xB ] si y [ y A , yB ]
x 2 y 2
Domeniul de definitie:
Conditii la limita:
Frontiera V: x xA avem u gV ( y ) xA2 y 2
Frontiera E: x xB avem u g E ( y ) xB2 y 2
Frontiera S: y y A avem u g S ( x) x 2 y A2
Frontiera N: y yB avem u g N ( x) x 2 yB2
u12,2 0
Utilizând metoda Gauss–Seidel
u1 u12,2 0
Valorile initiale pentru necunoscute sunt zero u1 0
4,2
Ecuatia eliptica
Ecuatia Laplace/Poisson: 2 u 2 2u
c F ( x, y )
x 2
y 2
Domeniul de definitie: x [ xA , xB ] si y [ y A , yB ]
I. Discretizarea ecuatiei
ui , j ?
xi ?
yB yj ?
xA xB x
x xA yB y A
x B xi x A (i 1) x y y j y A ( j 1)y
N x 1 N y 1
I. Discretizarea ecuatiei
Derivata de ordinul II
y f ( x) d 2 y ( xi ) yi 1 2 yi yi 1
yi
dx 2
x 2
y u u u ( x, y )
Notatie: ui , j u ( xi , y j )
d 2ui , j ui , j 1 2ui , j ui , j 1
yB
dy 2
y 2
xA xB x
u ( xi , yN y ) g N ( xi )
u g N ( x)
u gV ( y )
u g E ( y)
u ( x1 , y j ) gV ( y j ) u ( xN x , y j ) g E ( y j )
u g S ( x) i 1, N x
u ( xi , y1 ) g S ( xi ) j 1, N y
IV. Calculul solutiei numerice
ui 1, j 2ui , j ui 1, j ui , j 1 2ui , j ui , j 1
c 2
F ( xi , y j ) i 2, N x 1 j 2, N y 1
x 2
y 2
x 2
notatie c 2
y 2
2ui , j (1 ) ui 1, j ui 1, j ui , j 1 ui , j 1 F ( xi , y j )x 2
i 3 j 1
Ecuatia : 2u 2u
2 0
x 2
y
Domeniul de definitie: x [0, 0.1] si y [0,0.1]
Conditii la limita:
Ecuatia : 2u 2u
2 0 Solutia analitica: u ( x, y ) x 2 y 2
x 2
y
Domeniul de definitie: x [0, 0.1] si y [0,0.1]
Verificarea ecuatiei:
2u 2u
2 2 22 0
x 2
y 2
x 2 0.0252
c 2
1 2
0.25
y 2 0.05 2
2 u 2 2u 2 u 2u F ( xi , y j ) 0
c F ( x, y) 2 0
x 2
y 2
x y
2
c2 1
xB x A 0.1 0
x 0.025 xi x A (i 1)x
N x 1 5 1 i 1,5 j 1,3
y y A 0.1 0 xi 0 0.025(i 1)
y B 0.05
N y 1 3 1
0
0.01
0.025
x 0.05
0.075
0.01
0.05 y j y A ( j 1)y
y j 0 0.05( j 1)
0
y 0.05
0.0 0.1
0.0 0.025 0.05 0.075 0.1
III. Discretizarea conditiilor la limita
Frontiera V: u gV ( y ) y 2
u ( x1 , y j ) y 2j u0, j y 2j
-0.01 -0.0094 -0.0075 -0.0044 0.0
Frontiera E: u g E ( y ) 0.01 y 2
uNx , j 0.01 y 2j
Pentru frontiera E si V: j 1, N y
-0.0025 0.0075
Frontiera N: u g N ( x) x 2 0.01
ui , N y xi 2 0.01
Frontiera S: u g S ( x) x 2
0.0 0.0006 0.0025 0.0056 0.01
ui ,1 xi2
Pentru frontiera N si S: i 1, N x
IV. Calculul solutiei numerice
2ui , j (1 0.25) ui 1, j ui 1, j 0.25ui , j 1 0.25ui , j 1 0 i 2, 4 j2
i2 j2
2.5u2,2 u3,2 u1,2 0.25u2,3 0.25u2,1 0
2.5u2,2 u3,2 (0.0025) 0.25(0.0094) 0.25(0.006) 0
i3 j2
2.5u3,2 u4,2 u2,2 0.25u3,3 0.25u3,1 0
2.5u3,2 u4,2 u2,2 0.25(0.0075) 0.25(0.0025) 0
i4 j2
2.5u4,2 u5,2 u3,2 0.25u4,3 0.25u4,1 0
2.5u4,2 (0.0075) u3,2 0.25(0) 0.25(0.01) 0
IV. Calculul solutiei numerice
2.5 1 0 u2,2 0.0047 u2,2 0.0019
1 u 0.0013
2.5 1 u
3,2 0.0000
3,2
u 0.0031
0 1 2.5 u4,2 0.0078 4,2
0.0
vex vap
err 100 0.0
vex 0.0
-0.0025 -0.0019 -0.00 0.0031 0.0075
(L D R ) x b Lx k 1 Dxk 1 Rx k b
Lx Dx Rx b x k 1 D1 b Lx k 1 Rx k
i 1 N
x 0
1
1 bi L i , j x k 1
j R i , j x kj
1 j 1 j i 1
x2 0 xik 1
x1 0 Ai ,i
x1 3
... ... relatia este echivalenta cu:
x1 0
N 1 i 1 N
x1N 0 bi A i , j x k 1
j A i , j x kj
j 1 j i 1
xik 1
Ai ,i
IV. Calculul solutiei numerice
x 2 i 2, 4 j2
notatie c 2
y 2
i2 j2 cunoscute
2u2,2 (1 ) u3,2 u1,2 u2,3 u2,1 F ( x2 , y2 )x 2
i 3 j 2
2u3,2 (1 ) u4,2 u2,2 u3,3 u3,1 F ( x3 , y2 )x 2
i4 j2
2u4,2 (1 ) u5,2 u3,2 u4,3 u4,1 F ( x3 , y2 ) x 2
Au b
2(1 ) 1 0 2,2 u F ( x2 , y 2 ) x 2
u1,2 u2,3 u2,1
...
... ... u3,2 ...
... ... ... u4,2 ...
Metoda Gauss–Seidel i 1 N
bi A i , j x k 1
j A i , j x kj
k 1 j 1 j i 1
Pentru un sistem de 3 ecuatii x i
Ai ,i
cu 3 necunoscute
x1 u 2,2
A1,1 A1,1
x1 u2,2
b2 A 2,1 x1k 1 A 2,3 x3k k 1
x2k 1 x x2 u3,2 u3,2 ...
A2,2
u
x3 4,2
Au b
2(1 ) 1 0 2,2 u F ( x2 , y 2 ) x 2
u1,2 u2,3 u2,1
...
... ... u3,2 ...
... ... ... u4,2 ...
i 1 N
bi A i , j x k 1
j A i , j x kj
k 1 j 1 j i 1
x i
Ai ,i
Metoda Gauss–Seidel
u12,2 0 2
u2,2 3
u2,2
A1,1 A1,1
b2 A 2,1u2,2
2
A 2,3u14,2
1
u3,2 0 u 2
3,2 3
u3,2 ...
A2,2
u14,2 0 2
u4,2 ... 3
u4,2 ...
Program
Program
PROGRAM ecuatie_eliptica
implicit none
! I. Declarare ! III. Calcul
… ! discretizare domeniu
! II. Initializare …
… ! impunerea conditiilor la limita
! III. Calcul …
… ! Formarea sistemul Ax=b
! IV. Afisare (salvare) …
… ! Rezolvarea sistemului Ax=b
CONTAINS ! (metoda iterativa)
…
!===================
Function Us(x,y)
implicit none
real x,y,Us
Us=x*x-y*y
End function
…
END
Program
PROGRAM ecuatie_eliptica
…
CONTAINS
…
!===================
function gN(x)
implicit none
real*8:: x,gN
gN=x*x-yB*yB
endfunction
!===================
function gS(x)
implicit none
real*8:: x,gS
gS=x*x-yA*yA
endfunction
…
END
Discretizare domeniu
x xA ! Discretizare domeniu
x B dx=(xB-xA)/(Nx-1);
N x 1
dy=(yB-yA)/(Ny-1);
xi x A x(i 1)
Do i=1,Nx
x(i)=xA+dx*(i-1)
yB y A
y EndDo
N y 1
y j y A y ( j 1) Do j=1,Ny
y(j)=yA+dy*(j-1)
EndDo
i 1, N x j 1, N y
Impunerea conditiilor la limita
j 1, N y Do i=2,Nx-1
u(i,1)=gV(x(i),y(1))
u(i,Ny)=gE(x(i),y(Ny))
N: y y A avem u g x1 ( x) EndDo
ui , N y xi 2 0.01
S: y yB avem u g x 2 ( x)
ui ,1 xi2
i 2, N x 1
Formarea sistemul Ax=b
2ui , j (1 ) ui 1, j ui 1, j ui , j 1 ui , j 1 x 2 F ( xi , y j )
!n=(i-1)*Nx+j
n=Nij(i,j)
A(n,n)=-2*(1+lambda)
A(n,n+1)=1
A(n,n-1)=1
A(n,n+N)=lambda
A(n,n-N)=lambda
b(n)=F(x(i),y(j))
EndDo
EndDo
Formarea sistemul Ax=b
2ui , j (1 ) ui 1, j ui 1, j ui , j 1 ui , j 1 x 2 F ( xi , y j )
!N
j=Ny
n=Nij(i,j)
b(n)=U(i,j)
A(n,n)=1
EndDo
Formarea sistemul Ax=b
2ui , j (1 ) ui 1, j ui 1, j ui , j 1 ui , j 1 x 2 F ( xi , y j )
!E
i=Nx
n=Nij(i,j)
b(n)=U(i,j)
A(n,n)=1
EndDo
Rezolvarea sistemului