[問題] 這樣寫為什麼跑不出圖形呢?已回收

看板MATLAB作者 (嘖嘖)時間15年前 (2010/08/19 10:43), 編輯推噓0(003)
留言3則, 2人參與, 最新討論串1/1
-----------------------------M-file------------------------------------ function error = hong(SNR) M=4; % modulator order N=500000; % number of signal h=modem.pskmod('M',M); % modulator g=modem.pskdemod(h); % demodulator data_s=randint(N,1,M); % generate random signal x=modulate(h,data); % modulate ch1 = raylrnd(1,N,1); % rayleigh channel matrix faded_s=ch1.*x; % apply fading on signals rx_s=awgn(faded_s,SNR); % Add AWGN rx=demodulate(g,rx_s); % demodulate error=biterr(data,rx)/N; % compute BER end -----------------------------M-file------------------------------------ 希望能夠藉由改變SNR 跑出BER的曲線 在command裡面輸入 x = 0:1:10 ; y = hong(x); plot(x,y) 如果單純跑hong(1)或hong(2)或hong(3) ..........的話 可以跑出值 但是如果是用上面command的方式輸入的話 就會出現以下錯誤 ??? Error using ==> awgn at 186 The signal-to-noise ratio must be a real scalar. Error in ==> hong at 11 rx_s=awgn(faded_s,SNR); %Add AWGN 請問我是不是哪裡打錯了呢? 謝謝大家 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.25.191.60

08/19 10:54, , 1F
你大概是填矩陣不是單值
08/19 10:54, 1F

08/19 11:05, , 2F
那請問要怎麼改呢?
08/19 11:05, 2F

08/19 12:16, , 3F
你就 迴圈包這個function 逐筆跑 不然就改function
08/19 12:16, 3F
文章代碼(AID): #1CR9exnq (MATLAB)