|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: Sep 2004
Città: Cittadina del Mondo
Messaggi: 10
|
[Matlab] Simulazione
Salve a tutti!
Devo fare una simulazione in matlab che consista nel: - creare un vettore riga di una lunghezza L i cui elementi siano randomn - generare una matrice di N righe tutte uguali alla prima - aggiungere a queste righe (tranne alla prima) un certo errore, generato randomn e con una certa varianza - devo ripetere questa procedura per cento volte e mediare le 100 matrici ottenute per ottenerne una sola A questo punto devo applicare alla matrice media una certa funzione che ho già implementato e che si chiama genera_canale. Essa restituisce in uscita ancora una matrice. Anche questa procedeura devo iterarla per 100 volte e mediare le 100 matrici ottenute per ottenere una sola matrice, che poi sarà quella che devo restituire in uscita dalla funzione. Il problema è che credo che nel codice che ho scritto ci sia qualcosa che non va sulle medie, voi che ne dite? ____________________________________________________ function [b] =dispersivo(var,N,L); count=100; % nummero di cicli su cui medio H=zeros(N,L); eps=zeros(N,L); B=zeros(N,N); for s=1:count for k=1:count h_init=randn(1,L)+j*randn(1,L); h=h_init/norm(h_init); for n=1:N H_init(n,: )=h; % matrice di partenza end if var~=0 for t=2:N eps_init=randn(1,L).*sqr(var+j*randn(1,L).*sqrt(var); eps(t,: )=eps_init/norm(eps_init); % matrice dell'errore end end Herr=H_init+eps; % matrice di partenza affetta da errore H=H+Herr; % somma delle count matrici Herr generate end Hmedio=H/count; % matrice media? B=B+genera_canale(Hmedio); % somma delle count matrici cui ho applicato la funzione end B=B/count; % matrice media? ____________________________________________________ Per favore, AIUTOOOOOOOOOOOOO!!! Ultima modifica di melanippe : 13-11-2004 alle 16:02. |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:34.



















