MATLAB zawiera wstępnie zbudowaną funkcję konwolucji.
Źródło obrazu: Obrazy Thinkstock/Comstock/Getty Images
Splot to operacja matematyczna, która łączy dwie funkcje w odniesieniu do nakładania się jednej funkcji podczas jej przesuwania nad inną. Chociaż MATLAB zawiera wstępnie zbudowaną funkcję splotu, możliwe jest samodzielne obliczenie dyskretnej całki splotu. Dyskretny splot dwóch funkcji f i g jest zdefiniowany jako suma w zakresie od 0 do j f (j) * g (k-j).
Krok 1
Zdefiniuj dwa wektory, f i g, zawierające dwie funkcje, które chcesz przeplatać. Długości f i g nie muszą być równe. Długość wyniku splotu k będzie o jeden mniejsza od sumy długości f i g:
Wideo dnia
m = długość (f); n = długość (g); k = m + n - 1;
Krok 2
Zdefiniuj zakres j, w którym wystąpi splot. Wartość j to zakres, w którym indeksy dwóch funkcji, które mają być splątane, f (j) i g (k+1-n), są dozwolone. Wartość 1 dodana do k ma uwzględniać fakt, że MATLAB zaczyna indeksować wektory od 1, a nie od 0:
j = max (1,k+1-n):min (k, m)
Krok 3
Przydziel miejsce na wynik splotu:
mój_wynik = zera (k);
Krok 4
Napisz pętlę for, aby przejść przez wartości k:
dla indeks_wyniku = 1:k
Krok 5
Oblicz splot dla wszystkich wartości j:
mój_wynik (k) = suma (f(j) .* g (k-j+1));
Krok 6
Zamknij pętlę for poleceniem „end”.