کانوولوشن
کانولوشن در ریاضیات یا به طور دقیقتر آنالیز تابعی، یک عملگر ریاضی است که بر روی دو تابع f و g عمل کرده، و تابع سومی را تولید میکند که میتوان به عنوان نسخه تصحیح شده یکی از دو تابع اصلی نگریسته شود.
در نرم افزار متلب کانوولوشن را به راحتی می توان با دستور conv بین دو سیگنال نوشت و نتیجه اصلی آن را به دست آورد .
اما آیا راه حلی وجود دارد که کانوولوشن را در متلب خودمان به صورت یک تابع پویا تعریف کنیم .
در این پست ما سورس کد متلب را برای تعریف تابع کانوولوشن بیان می کنیم .
x=input(‘Enter x: ‘)
h=input(‘Enter h: ‘)
m=length(x);
n=length(h);
X=[x,zeros(1,n)];
H=[h,zeros(1,m)];
for i=1:n+m-1
Y(i)=0;
for j=1:m
if(i-j+1>0)
Y(i)=Y(i)+X(j)*H(i-j+1);
else
end
end
end
Y
stem(Y);
ylabel(‘Y[n]’);
xlabel(‘—–>n’);
کدهای بالا که به صورت M-file بوده است را در نرم افزار متلب اجرا کرده و نتیجه را به دست آورید .
فرا علم
www.faraelm.org
همراه همیشگی شما
a.hedayat1369@gmail.com
09352908872
تلگرام :https://telegram.me/joinchat/BpuFDT7k_iZjjJ-CMu8MQQ