کانوولوشن

کانولوشن در ریاضیات یا به طور دقیق‌تر آنالیز تابعی، یک عملگر ریاضی است که بر روی دو تابع 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