>> Elettronica Tecnologia >  >> Casa intelligente >> Vita intelligente

Come applicare la convoluzione in MATLAB senza utilizzare la funzione

La convoluzione è un'operazione matematica che unisce due funzioni relative alla sovrapposizione di una funzione mentre viene spostata su un'altra. Sebbene MATLAB contenga una funzione di convoluzione predefinita, è possibile calcolare da soli l'integrale di convoluzione discreto. La convoluzione discreta di due funzioni f e g è definita come la somma nell'intervallo da 0 a j di f(j) * g(k-j).

Passaggio 1

Definisci due vettori, f e g, contenenti le due funzioni che vuoi convolvere. Le lunghezze di f e g non devono essere uguali. La lunghezza del risultato della convoluzione, k, sarà uno inferiore alla somma della lunghezza di f e g:

m =lunghezza(f); n =lunghezza(g); k =m + n - 1;

Passaggio 2

Definire l'intervallo j su cui si verificherà la convoluzione. Il valore di j è l'intervallo in cui gli indici delle due funzioni da convolvere, f(j) e g(k+1-n), sono legali. Il valore di 1 aggiunto a k tiene conto del fatto che MATLAB inizia a indicizzare i vettori a 1 anziché a 0:

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

Passaggio 3

Preallocare spazio per il risultato della convoluzione:

mio_risultato =zeri(k);

Passaggio 4

Scrivi un ciclo for per scorrere i valori di k:

per indice_risultato =1:k

Passaggio 5

Calcola la convoluzione per tutti i valori di j:

mio_risultato(k) =somma(f(j) .* g(k-j+1));

Passaggio 6

Chiudi il ciclo for con il comando "end".


  1. Come ottenere suonerie senza utilizzare Internet
  2. Come fare la Lights stella senza utilizzare un filtro Star
  3. Come aggiungere musica al Sansa Fuze senza utilizzare Rhapsody
  4. Come disattivare un iPod Touch senza utilizzare il pulsante Top
  5. Ecco come si lava Neatsvor usando la funzione mop
  6. Come abilitare il tasto F Lock