下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、function y = wgn(varargin)%WGN Generate white Gaussian noise.% Y = WGN(M,N,P) generates an M-by-N matrix of white Gaussian noise.% P specifies the power of the output noise in dBW.% Y = WGN(M,N,P,IMP) specifies the load impedance in Ohms.% Y = WGN(M,N,P,IMP,STATE) resets the state of RANDN to STATE.
2、% Additional flags that can follow the numeric arguments are:% Y = WGN(., POWERTYPE) specifies the units of P. POWERTYPE can% be dBW, dBm or linear. Linear power is in Watts.% Y = WGN(., OUTPUTTYPE); Specifies the output type. OUTPUTTYPE can% be real or complex. If the output type is complex, then P
3、% is divided equally between the real and imaginary components.% Example 1: % % To generate a 1024-by-1 vector of complex noise with power% % of 5 dBm across a 50 Ohm load, use:% Y = wgn(1024, 1, 5, 50, dBm, complex)% Example 2: % % To generate a 256-by-5 matrix of real noise with power% % of 10 dBW
4、 across a 1 Ohm load, use:% Y = wgn(256, 5, 10, real)% Example 3: % % To generate a 1-by-10 vector of complex noise with power% % of 3 Watts across a 75 Ohm load, use:% Y = wgn(1, 10, 3, 75, linear, complex)% See also RANDN, AWGN. % Copyright 1996-2008 The MathWorks, Inc.% $Revision: 1.11.4.5 $ $Dat
5、e: 2008/08/01 12:17:45 $ % - Initial checkserror(nargchk(3,7,nargin,struct); % - Value set indicators (used for the strings)pModeSet = 0;cplxModeSet = 0; % - Set default valuesp = ;row = ;col = ;pMode = dbw;imp = 1;cplxMode = real;seed = ; % - Placeholders for the numeric and string index valuesnumA
6、rg = ;strArg = ; % - Identify string and numeric arguments% An empty in position 4 (Impedance) or 5 (Seed) are considered numericfor n=1:nargin if(isempty(vararginn) switch n case 4 if(ischar(vararginn) error(comm:wgn:InvalidDefaultImp,The default impedance should be marked by .); end; vararginn = i
7、mp; % Impedance has a default value case 5 if(ischar(vararginn) error(comm:wgn:InvalidNumericInput,The default seed should be marked by .); end; vararginn = ; % Seed has no default otherwise vararginn = ; end; end; % - Assign the string and numeric vectors if(ischar(vararginn) strArg(size(strArg,2)+
8、1) = n; elseif(isnumeric(vararginn) numArg(size(numArg,2)+1) = n; else error(comm:wgn:InvalidArg,Only string and numeric arguments are allowed.); end;end; % - Build the numeric argument setswitch(length(numArg) case 3 % - row is first (element 1), col (element 2), p (element 3) if(all(numArg = 1 2 3
9、) row = vararginnumArg(1); col = vararginnumArg(2); p = vararginnumArg(3); else error(comm:wgn:InvalidSyntax,Illegal syntax.) end; case 4 % - row is first (element 1), col (element 2), p (element 3), imp (element 4) % if(all(numArg(1:3) = 1 2 3) row = vararginnumArg(1); col = vararginnumArg(2); p =
10、vararginnumArg(3); imp = vararginnumArg(4); else error(comm:wgn:InvalidSyntax,Illegal syntax.) end; case 5 % - row is first (element 1), col (element 2), p (element 3), imp (element 4), seed (element 5) if(all(numArg(1:3) = 1 2 3) row = vararginnumArg(1); col = vararginnumArg(2); p = vararginnumArg(
11、3); imp = vararginnumArg(4); seed = vararginnumArg(5); else error(comm:wgn:InvalidSyntax,Illegal syntax.); end; otherwise error(comm:wgn:InvalidSyntax,Illegal syntax.);end; % - Build the string argument setfor n=1:length(strArg) switch lower(vararginstrArg(n) case dbw dbm linear if(pModeSet) pModeSe
12、t = 1; pMode = lower(vararginstrArg(n); else error(comm:wgn:TooManyPowerTypes,The Power mode must only be set once.); end; case db error(comm:wgn:InvalidPowerType,Incorrect power mode passed in. Please use dBW, dBm, or linear.); case real complex if(cplxModeSet) cplxModeSet = 1; cplxMode = lower(var
13、arginstrArg(n); else error(comm:wgn:TooManyOutputTypes,The complexity mode must only be set once.); end; otherwise error(comm:wgn:InvalidArgOption,Unknown option passed in.); end;end; % - Arguments and defaults have all been set, either to their defaults or by the values passed in% so, perform range
14、 and type checks % - pif(isempty(p) error(comm:wgn:InvalidPowerVal,The power value must be a real scalar.);end; if(any(isreal(p) (length(p)1) (length(p)=0) error(comm:wgn:InvalidPowerVal,The power value must be a real scalar.);end; if(strcmp(pMode,linear) if(p= 0.); end;end; % - Dimensionsif(any(ise
15、mpty(row) isempty(col) isscalar(row) isscalar(col) error(comm:wgn:InvalidDims,The required dimensions must be real, integer scalars 1.);end; if(any(row=0) (col 1.);end; % - Impedanceif(any(isreal(imp) (length(imp)1) (length(imp)=0) any(imp 0.);end; % - Seedif(isempty(seed) if(any(isreal(seed) (length(seed)1) (length(seed)=0) any(seed-floor(seed)=0) error(comm:wgn:InvalidState,The State must be a real, integer scalar.); end;end; % - All parameters are valid, so no extra checking is requiredswitch lower(pMode) case linear noisePower = p; case dbw noisePower = 10(p/10); case dbm
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024肉類食材肉類加工企業(yè)肉類原料配送合同2篇
- 練反應(yīng)力的課程設(shè)計
- 二零二五年度茶餐廳租賃與品牌推廣合同3篇
- 二零二五年度豪華轎車抵押貸款服務(wù)合同范本3篇
- 臨時會計勞動合同
- 網(wǎng)絡(luò)游戲合同爭議和解
- 酒店經(jīng)營合同印章使用指南
- 二零二五年度礦產(chǎn)資源開采權(quán)轉(zhuǎn)讓與安全監(jiān)管合同3篇
- 《新型農(nóng)村合作醫(yī)療政策培訓(xùn)資料》課件
- 寧波市北侖區(qū)廣播電視中心誠招主持人信息招聘高頻重點(diǎn)提升(共500題)附帶答案詳解
- GB/T 43439-2023信息技術(shù)服務(wù)數(shù)字化轉(zhuǎn)型成熟度模型與評估
- 吞咽困難查房
- 煉油化工建設(shè)項(xiàng)目建設(shè)規(guī)模產(chǎn)品方案及總工藝流程
- 教師培訓(xùn)《從教走向?qū)W-在課堂上落實(shí)核心素養(yǎng)》讀書分享讀書感悟讀后感教學(xué)課件
- GB/T 42437-2023南紅鑒定
- 購房屋貸款合同協(xié)議書
- 名著導(dǎo)讀童年公開課一等獎市優(yōu)質(zhì)課賽課獲獎?wù)n件
- (物理)初中物理力學(xué)題20套(帶答案)及解析
- 工程監(jiān)理大綱監(jiān)理方案服務(wù)方案
- 洛欒高速公路薄壁空心墩施工方案爬模施工
- (3.10)-心悸急診醫(yī)學(xué)急診醫(yī)學(xué)
評論
0/150
提交評論