Lý thuyết về tớch chập 2.. Cỏc phương phỏp tớnh tớch chập 3.. Lý thuyết về tớch chập 1.1 Định nghĩa phộp tớch chập: Định nghĩa tớch chập tuyến tớnh : Tớch chập tuyến tớnh giữa hai dóy x
Trang 1đề tài 1 Cỏc phương phỏp tớnh tớnh chập
Nội dung :
1 Lý thuyết về tớch chập
2 Cỏc phương phỏp tớnh tớch chập
3 Vớ dụ minh họa
1 Lý thuyết về tớch chập
1.1 Định nghĩa phộp tớch chập:
Định nghĩa tớch chập tuyến tớnh :
Tớch chập tuyến tớnh giữa hai dóy x1(n) và x2(n) là dóy y(n) được xỏc định
và ký hiệu theo biểu thức sau :
) (
* ) ( )
( ).
( )
y
k
k
= ∑∞
−∞
=
[1]
Tớch chập tuyến tớnh thường được gọi ngắn gọn tớch chập
1.2 Cỏc tớnh chất của tớch chập:
a Tớnh giao hoỏn :
) (
* ) ( )
(
* )
Chứng minh : Theo cụng thức định nghĩa tớch chập [1.2-20] cú
∑∞
−∞
=
−
=
k
k
x n
x n
Đổi biến cho biểu thức ở vế phải, đặt m = n - k ⇒ k = n - m
Khi k → - ∞ thỡ m → ∞ và khi k → ∞ thỡ m → - ∞ , ta được :
∑
∞
=
∞
−∞
=
−
=
−
m k
m x m n x n
x
Đảo cận và đổi biến m trở về k đối với biểu thức ở vế phải, ta được :
∑
−∞
=
∞
−∞
=
−
=
−
k k
k k
k
Trang 2) (
* ) ( )
(
*
)
b Tính kết hợp :
[ ( ) * ( ) ] [ ( *) ( )] * ( )
*)
Chứng minh : áp dụng tính giao hoán cho vế trái của [1.2-22] :
[ ( ) * ( ) ] = [ ( ) * ( )] * ( ) =
* )
1 n x n x n x n x n x n
x
=
−
−
−∞
=
∞
−∞
=
) (
) (
)
2 k x n k x n k
x
=
−
−
−∞
=
∞
−∞
=
) ( ) ( )
2 k x n k x n k
x
k k
) (
* )]
(
* ) ( [ x1 n x2 n x3 n
Đây chính là biểu thức ở vế phải của [3]
c Tính phân phối :
[ ( ) ( ) ] ( ) * ( ) ( ) * ( )
* )
Chứng minh : Viết vế trái của [1.2-23] theo công thức tích chập [1.2-20] :
−∞
=
− +
−
=
+
k
k k
x n
x n x n
x1( )* 2( ) 3( ) 1( ).[ 2( ) 3( )]
−∞
=
∞
−∞
=
− +
−
=
+
k k
k k
k
x n
x n x n
x1( ) * 2( ) 3( ) 1( ). 2( ) 1( ). 2( )
Vậy : x1( n ) * [ x2( n ) + x3( n ) ] = x1( n ) * x2( n ) + x1( n ) * x3( n )
Đây chính là biểu thức ở vế phải của [4].
2 Các phương pháp tính tích chập
2.1 Phương pháp giải tích tính tích chập
Tính tích chập bằng phương pháp giải tích chỉ thực hiện
được nếu x(n) hoặc h(n) có độ dài hữu hạn, và phải tính từng giá trị của y(n).
Trang 3Xét trường hợp tác động x(n) và đặc tính xung h(n) đều là dãy nhân quả và có độ dài hữu hạn Giả sử x(n) có độ dài
M, và h(n) có độ dài L , khi đó có thể dùng [1.5-18] hoặc
[1.5-19] Nếu sử dụng [1.5-18] thì :
∑
=
∞
=
−
=
−
0 0
) (
) ( )
( ) ( )
(
M
k k
k k
k
x n
Vì y(n) là dãy nhân quả, nên chỉ cần tính từ y(0) Do h(n−k) = 0 với mọi
0
)
(n−k < và (n−k) > (L− 1 ), theo [1.6-1] tính được :
) ( )
(
) ( )
( ) ( )
( ) ( )
( )
1 0
h x h
x h x h
x y
M
k
k
=
∑
∑
=
−
=
−
= +
− +
+
=
−
0
1 0
) ( ) (
) ( ).
( ) ( ).
( ) ( ).
( ) ( ).
( )
k k
k k
k
k h x h x h x h x h x
y M
=
−
−
=
0
) (
)
( )
M
k
k L
k
y
∑
∑
=
−
=
−
=
−
=
− +
=
−
1
1 1
1 0
) ( ).
( )
( ).
( )
( ).
( ) ( ).
( )
M M
M
k k
k
k L k k
L k L
k L k
y
∑
=
−
=
− +
=
− +
=
2
1 0
) (
).
( )
( ).
( )
M M
k k
k L k k
L k
y
∑
−
=
−
=
−
− +
=
−
− +
=
−
2
1 0
) (
).
( )
( ).
( )
M
M
M
k k
k M L k k
M L k M
y
) ( ).
( ) (
).
( )
1 0
−
−
=
−
− +
=
−
=
L M
k M L k M
y
M
k
0 1
1
0
=
−
=
−
− +
=
−
=
L M
k M L k M
y
M
k
0 ) (n =
y với mọi n ≥ (L+M − 1 )
Như vậy : Nếu hệ xử lý số TTBBNQ có đặc tính xung h(n) hữu hạn với độ
dài L , và tác động x(n) hữu hạn có độ dài M, thì phản ứng y(n) có độ dài hữu hạn N = (L + M – 1).
Trang 4Xét trường hợp tác động x(n) và
đặc tính xung h(n) đều có độ dài hữu
hạn Giả sử x(n) có độ dài M, và h(n)
có độ dài L Khi đó phản ứng y(n) có
độ dài N = (L + M -1) Mẫu y(n 0 ) của
phản ứng được xác định theo [1.6-1] :
∑−
=
−
= 1
0
0
0 ) ( ) ( )
(
M
k
k
k h n x n
Theo [1.6-2], trước hết xác định
dãy biến đảo h(-k) ứng với n 0 = 0 Sau
đó, tại mỗi điểm n0 , tính tổng [1.6-2],
dịch phải dãy h(n 0 - k), rồi tăng n 0 lên
một
Lặp lại các bước trên cho tới khi
n 0 = (N - 1) = (L + M - 2) , sẽ nhận
được N mẫu của phản ứng y(n)
Theo các bước như trên, xây dựng
được lưu đồ thuật toán tính tích chập
[1.6-1] trên hình 1.27.
Hình 1.27 : Thuật toán tính tích chập [1.6-1].
2.3 Tính tích chập bằng cách lập bảng số liệu
Theo thuật toán trên hình 1.27, có thể tính tích chập [1.6-1] bằng cách lập
bảng số liệu các dãy x(k) , h(k), và k), sau đó lần lượt dịch phải dãy
h(-k) để nhận được h(n0 - k) Cuối cùng, dựa vào bảng số liệu đã có, tính các
mẫu y(n 0 ) của phản ứng theo biểu thức [1.6-1]
2.4 Tính tích chập bằng đồ thị
Tạo dãy y(n) N = 0
Lấy đối xứng h(k) M ,
nhận được h(-k) M
Tạo dãy x(k) L = x(n) L
và dãy h(k) M = h(n) M
N = (L + M - 1)
N0 = 0
+ 1 Đúng Kết thúc
Sai
n0= (
N-1)?
∑=− −
= 1 0
0
0 ) ( ) ( ) (
M
k
k
k h n x n
y
Dịch phải dãy
h(k - n0) M một mẫu
Trang 5Phương pháp đồ thị để tính tích chập [1.6-1] được thực hiện theo thứ
tự sau : Vẽ các đồ thị x(k), h(-k), sau đó lần lượt dịch phải đồ thị h(-k) để nhận được các đồ thị h(n0 - k) Dựa vào các đồ thị h(n0 - k) , x(k) và theo
biểu thức [1.6-1], tính các mẫu y(n 0 ) của phản ứng.
3 Ví dụ minh họa
Cài đặt thử nghiệm
• Input: x1(k),x2(l)( số mẫu mỗi tín hiệu <=50)
• Output: Y(ny)=x1(k)*x2(l)
Ngôn ngữ lập trình: Pascal.
******************** Chương trình *********************
program nhanchap;
var
st1,st2:string;
tam,y,x1,x2:array[-15 40] of real;
tg:real;
k,l,i,j,m,n,ny,t1,t2,vtc1,vtc2:integer;
{===================kiem tra xau==============}
procedure ktra(x:string;var vtd,dod:integer);
var ch,cht:string[1];
xauso:string;
len,i1,l1,dem,co2,vtk:integer;
doiso:real;
begin
ch:=copy(x,1,1);
len:=length(x);
if ch='{' then
begin
dem:=1;
xauso:='';
for i1:=2 to (len) do
begin
cht:=copy(x,i1,1);
if ((cht <> (',')) and (cht <> ('*')) and (cht<>'}')) then
xauso:=xauso+cht
else
if ((cht=',') or (cht='}')) then
begin
val(xauso,doiso,co2);
tam[dem]:=doiso;
xauso:='';
Trang 6end
else vtk:=dem;
end;
vtd:=1-vtk;
dod:=dem;
end;
end;
{==============chuong trinh chinh===============} begin
writeln('neu day tin hieu thi vi tri 0 thi nhap * phia sau so do'); Writeln('nhap tin hieu so huu han x1(n) ');readln(st1);
Writeln('nhap tin hieu so huu han x2(n) ');readln(st2);
ktra(st1,k,m);
for i:=1 to m do x1[k-1+i]:=tam[i];
ktra(st2,l,n);
for i:=1 to n do x2[l-1+i]:=tam[i];
if k<l then t1:=k else t1:=l;
t2:=t1;
for i:=k to m-1+k do
begin
ny:=t2;
for j:=l to n-1+l do
begin
tg:=x1[i]*x2[j];
y[ny]:=y[ny]+tg;
ny:=ny+1;
end;
t2:=t2+1;
end;
writeln;
for i:=t1 to ny-1 do write(y[i]:4:2,' ');
readln;
end.