[Up]
http://www.math.hut.fi/teaching/v/3/L/L31_10.html
Päivitetty 30.10.00

Luento ti 31.10.00

Jaksolliset funktiot

Alla oleva koodi JJ on hyödyllinen työkalu aina, kun käsitellään jaksollisia funktioita. Sitä on ihan mukava kokeilla teht. 2 (AV) yhteydessä.
# V2-ja V3-kurssien ohjelmakoodeja
# v. 2000
#
# Päivitetty 27.10.00
#
# Maple-istunnossa:
#  read("/p/edu/mat-1.414/maple/ohjelmat.mpl");

############### V3 2000 ##################
# Jaksollinen jatko: MapleTech Vol 3 No. 3 1996
#
JJ:=proc(f,d::range)
  subs({'F'=f,'L'=lhs(d),'D'=rhs(d)-lhs(d)},
  proc(x::algebraic) local y;
    y:=floor((x-L)/D);
    F(x-y*D);
  end)
end:

# Esim:
#sw:=JJ(signum,-1..1);
#plot(sw,-4..4);
#

Yleistettyä derivointia

Paloittain jatkuva funktio, jolla on pisteissä ti hyppäys di, voidaan kirjoittaa seuraavassa muodossa, missä g(t) on kaikkialla jatkuva funktio. Mieti ja perustele!

                                     n                  
                                   -----  
                                    \     
                    f(t) = g(t) +    )   d[i] H(t - t[i])
                                    /                   
                                   -----                
                                   i = 1                
Yleistetty derivaatta ("distribuutioderivaatta") toimii jatkuvalle, paloittain derivoituvalle funktiolle niin, että derivaattafunktio on aivan tavallinen derivaatta, jonka arvot voidaan asettaa mielivaltaisesti "kulmapisteissä", siis niissä, joissa derivaattaa ei ole. Distribuutiomielessä samaistamme funktiot, jotka eroavat vain pienessä poikkeusjoukossa, kuten äärellisessä pistejoukossa. Summalausekkeen derivaatta saadaan H:n derivoimissäännön avulla. Tätä käsitellään hieman tarkemmin tiistain luennolla, mutta tällä periaatteella tehtävä 4 sujuu.

Matlab-skripti siirtofunktion napojen ja nollakohtien piirtoon

Tämä koodi on myös täällä.
% 30.10.00 HA V3-kurssi.
% Matlab-skripti, jolla piirretään siirtofunktion nollakohdat (o) ja navat (x).
% Siirtofunktio (rationaalifunktio) esitetään vektoriparina P, Q.
%   P:ssä on osoittajan kertoimet, korkeimmasta alimpaan asteeseen
%   Q:ssa nimittäjän kertoimet       --------------- " ------------
%
% Modifioi tätä esimerkkiä:

format compact
Q=[9 12 13]; P=[2 3];
z=roots(P)  % zeros, nollakohdat
p=roots(Q)  % poles, navat
a=min([real(z(:)'),real(p(:)')]);b=max([real(z(:)'),real(p(:)')])
c=min([imag(z(:)'),imag(p(:)')]);d=max([imag(z(:)'),imag(p(:)')])

clf
plot(z+0.00001*i,'or'); hold on; plot(p+0.000001*i,'xb');grid;
axis([a-0.2, b+0.2, c-0.2, d+0.7]);legend('Nollakohdat','Navat')
shg

Testifunktiot

theta=inline('(abs(t) < d).*exp(-d^2./(d^2-t.^2))','t','d');
d=1;int=quad8(theta,-d,d,[],[],d); 
t=linspace(-2,2);
phi=theta(t,d)/quad8(theta,-d,d,[],[],d); plot(t,phi)

varit='rbgykcrbgykcrbgykcrbgykc'
t=linspace(-2,2,500);
clf;hold on
vari=0;
for d=1:-.1:.1
  vari=vari+1;
  phi=theta(t,d)/quad8(theta,-d,d,[],[],d); plot(t,phi,varit(vari))
end
grid