Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Ako sa prihlásiť Konvolúcie v prostredí MATLAB bez použitia funkcie

konvolúcie je matematická operácia , ktorá spája dve funkcie vo vzťahu k prekrytiu jednej funkcie ako je posunutý na ďalšie. Hoci MATLAB obsahuje pre-postavený funkcie konvolúcia , je možné vypočítať diskrétny konvolúcie neoddeliteľnou sami . Diskrétne konvolúcie dvoch funkcií f a g je definovaná ako súčet v rozsahu 0 až j f ( j ) * g ( kj ) . Pokyny dovolená 1

Definujte dva vektory , F a G , ktoré obsahujú dve funkcie , ktoré chcete zvinúť . Dĺžky f a g nemusí byť rovnaká . Dĺžka výsledok konvolúcia , k , bude jeden menší než súčet dĺžky f a g : Autor

m = dĺžka ( f ) , n = dĺžka ( g ) , k = m + n - 1 ;
2

definovať rozsah j , nad ktorým dôjde konvolúcie . Hodnota j je rozsah , kde indexy týchto dvoch funkcií sa stočil , f ( j ) a g ( k +1- n) , sú legálne. Hodnota 1 znie K Je to kvôli tomu , že MATLAB začína indexovanie vektorov v 1 , skôr než 0 : celým

j = max ( 1 , k +1- n) : min ( k , m )

3

alokovať priestor pre výsledok konvolúcie :

my_result = núl ( k ) ;
4

Napíšte slučky for iterovat prostredníctvom hodnoty k :

pre result_index = 1 : k
5

Vypočítajte konvolúcie pre všetky hodnoty j :

my_result ( k ) = sum ( f ( j ) * g ( k - j +1 ) ) ; .
6

Zavrite pre sláčiky " koniec " príkaz
< . br >

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené