11.04.2011, Elektrotechnika I stopień PWSZ Leszno, SEMESTR II, Metody Numeryczne, 3. 11.04.2011


0x08 graphic
Sprawozdanie

laboratoria Metod Numerycznych 11.04.2011

I. Metoda Eulera w przód” (k+1) (forword):

a)Implementacja metody :

function x=euler(A,B,fw,fw2,dt,t,x0)
maxit=t/dt;
x=x0;
[m,n]=size(A);
I=eye(m,m);
f1=inline(fw);
f2=inline(fw2);

for i=1:maxit
   u1=feval(f1,i*dt)
   u2=feval(f2,i*dt)
   u=[u1;u2]
 x=inv(I-dt*A)*(x+dt*B*u);
   iter(i)=i;
   zmx1(i)=x(1);
   zmx2(i)=x(2);
   zmx3(i)=x(3);

end;

plot(iter,zmx1,iter,zmx2,iter,zmx3)

b) Sprawdzenie sposobu działania metody dla danych :


R1=100

R2=100

C1=100e-6

C2=220e-6

L=1e-3

x0=[0;0;0]

% macierze systemowe;

E=[R1*C1 0 L; 0 R2*C2 L; C1 C2 0]

A1=[-1 1 0; 0 -1 0 ;0 0 1]

B1=[1 0; 0 1; 0 0]

A=inv(E)*A1;

B=inv(E)*B1;

%wartości e1 i e2;

fw='10*sin(2*pi*50*t)'

fw2='20*sin(2*pi*50*t)'

% krok początkowy oraz krok i czas symulacji

dt=1e-4

t=1e-1

% funkcja symulacji

x=euler(A,B,fw,fw2,dt,t,x0)

c) Otrzymany wykres:

0x01 graphic

II. Metoda Eulera w tył” (k) (backword) :

  1. Implementacja metody :

function x=euler(A,B,fw,fw2,dt,t,x0)
maxit=t/dt;
x=x0;
[m,n]=size(A);
I=eye(m,m);
f1=inline(fw);
f2=inline(fw2);

for i=1:maxit
   u1=feval(f1,i*dt)
   u2=feval(f2,i*dt)
   u=[u1;u2]
 x= (I+dt*A)* x+dt*B*u;
   iter(i)=i;
   zmx1(i)=x(1);
   zmx2(i)=x(2);
   zmx3(i)=x(3);

end;

plot(iter,zmx1,iter,zmx2,iter,zmx3)

b)Sprawdzenie sposobu działania metody dla danych :


R1=100

R2=100

C1=100e-6

C2=220e-6

L=1e-3

x0=[0;0;0]

% macierze systemowe;

E=[R1*C1 0 L; 0 R2*C2 L; C1 C2 0]

A1=[-1 1 0; 0 -1 0 ;0 0 1]

B1=[1 0; 0 1; 0 0]

A=inv(E)*A1;

B=inv(E)*B1;

%wartości e1 i e2;

fw='10*sin(2*pi*50*t)'

fw2='20*sin(2*pi*50*t)'

% krok początkowy oraz krok i czas symulacji

dt=1e-5

t=1e-1

% funkcja symulacji

x=euler(A,B,fw,fw2,dt,t,x0)

c) Otrzymany wykres:

0x01 graphic

III. Wnioski

Wykonali : Krzysztof Maćkowski, Daniel Szepe



Wyszukiwarka