Assegnare un vettore di variabili come variabile

di il
1 risposte

Assegnare un vettore di variabili come variabile

Ciao a tutti, spiego meglio quello che non riesco a capire.
Io devo creare una funzione con matlab che ha 3 argomenti:

sources=data(N,d,DOA)

Il primo argomento N corrisponde a un numero di sorgenti sonore.
Il secondo e il terzo argomento vorrebbero essere un vettore di distanze e un vettore di angolazioni.
Ora il punto è che se io ho una sola sorgente, devo acquisire una sola distanza e una sola angolazione, quindi inserirei i due dati nella funzione, per esempio: data(1,10,20). Ma se io ho N sorgenti (non saranno mai moltissime ma non ho una specifica precisa), come faccio ad acquisire tutte le distanze e tutte le angolazioni da 1 a N utilizzando data(N,d,DOA)? l'obiettivo è poi creare una matrice di due righe ed N colonne con le N-distanze in prima riga e le corrispondenti N-angolazioni (DOA, direction of arrival) in seconda riga.

Grazie per l'aiuto.

1 Risposte

  • Re: Assegnare un vettore di variabili come variabile

    Per passare alla funzione "data" un numero N (N > 1) di distanze ("d") e DOA, è sufficiente costruire "d" e "DOA" come vettori.

    Nel caso:

    [*] N=3
    [*] d1=10, d2=20, d3=30
    [*] DOA_1=11, DOA_2=22, DOA_3=33

    d=[d1 d2, d3]
    DOA=[DOA_1 DOA_2 DOA_3]

    La matrice distanze_DOA si crea semplicemente concatenando i due vettori:

    d_DOA=[d;DOA]

    Hope this helps.
Devi accedere o registrarti per scrivere nel forum
1 risposte