README-Chap3.txt
上传用户:m_sun_001
上传日期:2014-07-30
资源大小:1115k
文件大小:28k
源码类别:

matlab例程

开发平台:

Matlab

  1. %
  2. % README Chapter 3
  3. %
  4. % by Hiroshi Harada
  5. %
  6. % If you have any bugs and questions in our simulation programs, please e-mail
  7. % to harada@ieee.org. We try to do our best to answer your questions.
  8. %
  9. In this directory, we can find the twenty-eight files. The relationship between file name and the number of program written in the book is shown in as follows.
  10. Program3-1   bpsk.m
  11. Program3-2   bpsk_fading.m
  12. Program3-3   hrollfcoef.m
  13. Program3-4   oversamp.m
  14. Program3-5   qpsk.m
  15. Program3-6   qpsk_fading.m
  16. Program3-7   compconv.m
  17. Program3-8   compoversamp.m
  18. Program3-9   qpskmod.m
  19. Program3-10  qpskdemod.m
  20. Program3-11  oqpsk.m
  21. Program3-12  oqpsk_fading.m
  22. Program3-13  msk.m
  23. Program3-14  msk_fading.m
  24. Program3-15  msk2.m
  25. Program3-16  msk2_fading.m
  26. Program3-17  oversamp2.m
  27. Program3-18  gmsk.m
  28. Program3-19  gmsk_fading.m
  29. Program3-20  gaussf.m
  30. Program3-21  qam16.m
  31. Program3-22  qam16_fading.m
  32. Program3-23  qammod.m
  33. Program3-24  qamdemod.m
  34. Program2-4   comb.m
  35. Program2-5   fade.m
  36. Program2-6   sefade.m
  37. Program2-7   delay.m
  38. If you would like to try to use the above programs by using MATLAB.First of all, please copy all of files to your created adequate directory. Then, you start to run MATLAB and you can see the following command prompt in the command window.
  39. >>
  40. Next, you can go to the directory that have all of programs in this section by using change directory (cd) command. If you copy all of files to /matlabR12/work/chapter3, you only type the following command.
  41. >> cd /matlabR12/work/chapter3
  42. In this directory, we can find fourteen main functions, bpsk.m, bpsk_fading.m, qpsk.m, qpsk_fading.m, oqpsk.m, oqpsk_fading.m, msk.m, msk_fading.m, msk2.m, msk2_fading.m, gmsk.m, gmsk_fading.m, qam16.m and qam16_fading.m
  43. #########################################################
  44. (1) Simulation of "bpsk.m"
  45. #########################################################
  46. This program simulates the transmission performance of BPSK under Additive White Gausian Noise (AWGN) environment.
  47. (a) Set paremeters
  48. First of all, we set simulation parameters in "bpsk.m".
  49. %******************** Preparation part **********************
  50. sr=256000.0; % Symbol rate 256 ksymbol/s
  51. ml=1;        % Number of modulation levels
  52. br=sr.*ml;   % Bit rate (=symbol rate in this case)
  53. nd = 1000;   % Number of symbols that simulates in each loop
  54. ebn0=3;      % Eb/N0
  55. IPOINT=8;    % Number of oversamples
  56. %******************** START CALCULATION *********************
  57. nloop=100;  % Number of simulation loops
  58. (b) Type just the following command
  59. >> clear
  60. >> bpsk
  61. (c) Then, you can see the following simulation result on your command window.
  62. (example)
  63. 3 2275 100000 2.275000e-002
  64. where first number 3 is Eb/No, second number 2275 is the number of error data, third number 100000 is the number of transmitted data, and fourth number 2.275000e-002 is bit error rate (BER) performance. And, the simulation result is stored in the file (BERbpsk.dat).
  65. #########################################################
  66. (2) Simulation of "bpsk_fading.m"
  67. #########################################################
  68. This program simulates the transmission performance of BPSK under Rayleigh fading environment.
  69. (a) Set paremeters
  70. First of all, we set simulation parameters in "bpsk_fading.m".
  71. %******************** Preparation part **********************
  72. sr=256000.0; % Symbol rate 256 ksymbol/s
  73. ml=1;        % Number of modulation levels
  74. br=sr.*ml;   % Bit rate (=symbol rate in this case)
  75. nd = 100;   % Number of symbols that simulates in each loop
  76. ebn0=10;     % Eb/N0
  77. IPOINT=8;    % Number of oversamples
  78. %******************* Fading initialization ********************
  79. % If you use fading function "sefade", you can initialize all of parameters.
  80. % Otherwise you can comment out the following initialization.
  81. % The detailed explanation of all of valiables are mentioned in Program 2-8.
  82. % Time resolution
  83. tstp=1/sr/IPOINT; 
  84. % Arrival time for each multipath normalized by tstp
  85. % If you would like to simulate under one path fading model, you have only to set 
  86. % direct wave.
  87. itau = [0];
  88. % Mean power for each multipath normalized by direct wave.
  89. % If you would like to simulate under one path fading model, you have only to set 
  90. % direct wave.
  91. dlvl = [0];
  92. % Number of waves to generate fading for each multipath.
  93. % In normal case, more than six waves are needed to generate Rayleigh fading
  94. n0=[6];
  95. % Initial Phase of delayed wave
  96. % In this simulation four-path Rayleigh fading are considered.
  97. th1=[0.0];
  98. % Number of fading counter to skip 
  99. itnd0=nd*IPOINT*100;
  100. % Initial value of fading counter
  101. % In this simulation one-path Rayleigh fading are considered.
  102. % Therefore one fading counter are needed.
  103.   
  104. itnd1=[1000];
  105. % Number of directwave + Number of delayed wave
  106. % In this simulation one-path Rayleigh fading are considered
  107. now1=1;        
  108. % Maximum Doppler frequency [Hz]
  109. % You can insert your favorite value
  110. fd=160;       
  111. % You can decide two mode to simulate fading by changing the variable flat
  112. % flat     : flat fading or not 
  113. % (1->flat (only amplitude is fluctuated),0->nomal(phase and amplitude are fluctutated)
  114. flat =1;
  115. %******************** START CALCULATION *********************
  116. nloop=1000;  % Number of simulation loops
  117. (b) Type just the following command
  118. >> clear
  119. >> bpsk_fading
  120. (c) Then, you can see the following simulation result on your command window.
  121. (example)
  122. 10 2143 100000 2.143000e-002
  123. The meaning of each value is the same of the result from "bpsk.m".
  124. The simulation result is stored in the file (BERbpskfad.dat).
  125. #########################################################
  126. (3) Simulation of "qpsk.m"
  127. #########################################################
  128. This program simulates the transmission performance of QPSK under Additive White Gausian Noise (AWGN) environment.
  129. (a) Set paremeters
  130. First of all, we set simulation parameters in "qpsk.m".
  131. %******************** Preparation part **********************
  132. sr=256000.0; % Symbol rate 256 ksymbol/s
  133. ml=2;        % Number of modulation levels
  134. br=sr.*ml;   % Bit rate (=symbol rate in this case)
  135. nd = 1000;   % Number of symbols that simulates in each loop
  136. ebn0=3;      % Eb/N0
  137. IPOINT=8;    % Number of oversamples
  138. %******************** START CALCULATION *********************
  139. nloop=100;  % Number of simulation loops
  140. (b) Type just the following command
  141. >> clear
  142. >> qpsk
  143. (c) Then, you can see the following simulation result on your command window.
  144. (example)
  145. 3 4475 200000 2.237500e-002
  146. The meaning of each value is the same of the result from "bpsk.m".
  147. The simulation result is stored in the file (BERqpsk.dat).
  148. #########################################################
  149. (4) Simulation of "qpsk_fading.m"
  150. #########################################################
  151. This program simulates the transmission performance of QPSK under Rayleigh fading environment.
  152. (a) Set paremeters
  153. First of all, we set simulation parameters in "qpsk_fading.m".
  154. %******************** Preparation part **********************
  155. sr=256000.0; % Symbol rate 256 ksymbol/s
  156. ml=2;        % Number of modulation levels
  157. br=sr.*ml;   % Bit rate (=symbol rate in this case)
  158. nd = 1000;   % Number of symbols that simulates in each loop
  159. ebn0=10;     % Eb/N0
  160. IPOINT=8;    % Number of oversamples
  161. %******************* Fading initialization ********************
  162. % If you use fading function "sefade", you can initialize all of parameters.
  163. % Otherwise you can comment out the following initialization.
  164. % The detailed explanation of all of valiables are mentioned in Program 2-8.
  165. % Time resolution
  166. tstp=1/sr/IPOINT; 
  167. % Arrival time for each multipath normalized by tstp
  168. % If you would like to simulate under one path fading model, you have only to set 
  169. % direct wave.
  170. itau = [0];
  171. % Mean power for each multipath normalized by direct wave.
  172. % If you would like to simulate under one path fading model, you have only to set 
  173. % direct wave.
  174. dlvl = [0];
  175. % Number of waves to generate fading for each multipath.
  176. % In normal case, more than six waves are needed to generate Rayleigh fading
  177. n0=[6];
  178. % Initial Phase of delayed wave
  179. % In this simulation four-path Rayleigh fading are considered.
  180. th1=[0.0];
  181. % Number of fading counter to skip 
  182. itnd0=nd*IPOINT*100;
  183. % Initial value of fading counter
  184. % In this simulation one-path Rayleigh fading are considered.
  185. % Therefore one fading counter are needed.
  186.   
  187. itnd1=[1000];
  188. % Number of directwave + Number of delayed wave
  189. % In this simulation one-path Rayleigh fading are considered
  190. now1=1;        
  191. % Maximum Doppler frequency [Hz]
  192. % You can insert your favorite value
  193. fd=160;       
  194. % You can decide two mode to simulate fading by changing the variable flat
  195. % flat     : flat fading or not 
  196. % (1->flat (only amplitude is fluctuated),0->nomal(phase and amplitude are fluctutated)
  197. flat =1;
  198. %******************** START CALCULATION *********************
  199. nloop=1000;  % Number of simulation loops
  200. (b) Type just the following command
  201. >> clear
  202. >> qpsk_fading
  203. (c) Then, you can see the following simulation result on your command window.
  204. (example)
  205. 10 4218 200000 2.109000e-002
  206. The meaning of each value is the same of the result from "bpsk.m".
  207. The simulation result is stored in the file (BERqpskfad.dat).
  208. #########################################################
  209. (5) Simulation of "oqpsk.m"
  210. #########################################################
  211. This program simulates the transmission performance of OQPSK under Additive White Gausian Noise (AWGN) environment.
  212. (a) Set paremeters
  213. First of all, we set simulation parameters in "oqpsk.m".
  214. %******************** Preparation part **********************
  215. sr=256000.0; % Symbol rate 256 ksymbol/s
  216. ml=2;        % Number of modulation levels
  217. br=sr.*ml;   % Bit rate (=symbol rate in this case)
  218. nd = 1000;   % Number of symbols that simulates in each loop
  219. ebn0=3;      % Eb/N0
  220. IPOINT=8;    % Number of oversamples
  221. %******************** START CALCULATION *********************
  222. nloop=100;  % Number of simulation loops
  223. (b) Type just the following command
  224. >> clear
  225. >> oqpsk
  226. (c) Then, you can see the following simulation result on your command window.
  227. (example)
  228. 3 4529 200000 2.264500e-002
  229. The meaning of each value is the same of the result from "bpsk.m".
  230. The simulation result is stored in the file (BERoqpsk.dat).
  231. #########################################################
  232. (6) Simulation of "oqpsk_fading.m"
  233. #########################################################
  234. This program simulates the transmission performance of OQPSK under Rayleigh fading environment.
  235. (a) Set paremeters
  236. First of all, we set simulation parameters in "oqpsk_fading.m".
  237. %******************** Preparation part **********************
  238. sr=256000.0; % Symbol rate 256 ksymbol/s
  239. ml=2;        % Number of modulation levels
  240. br=sr.*ml;   % Bit rate (=symbol rate in this case)
  241. nd = 1000;   % Number of symbols that simulates in each loop
  242. ebn0=10;     % Eb/N0
  243. IPOINT=8;    % Number of oversamples
  244. %******************* Fading initialization ********************
  245. % If you use fading function "sefade", you can initialize all of parameters.
  246. % Otherwise you can comment out the following initialization.
  247. % The detailed explanation of all of valiables are mentioned in Program 2-8.
  248. % Time resolution
  249. tstp=1/sr/IPOINT; 
  250. % Arrival time for each multipath normalized by tstp
  251. % If you would like to simulate under one path fading model, you have only to set 
  252. % direct wave.
  253. itau = [0];
  254. % Mean power for each multipath normalized by direct wave.
  255. % If you would like to simulate under one path fading model, you have only to set 
  256. % direct wave.
  257. dlvl = [0];
  258. % Number of waves to generate fading for each multipath.
  259. % In normal case, more than six waves are needed to generate Rayleigh fading
  260. n0=[6];
  261. % Initial Phase of delayed wave
  262. % In this simulation four-path Rayleigh fading are considered.
  263. th1=[0.0];
  264. % Number of fading counter to skip 
  265. itnd0=nd*IPOINT;
  266. % Initial value of fading counter
  267. % In this simulation one-path Rayleigh fading are considered.
  268. % Therefore one fading counter are needed.
  269.   
  270. itnd1=[1000];
  271. % Number of directwave + Number of delayed wave
  272. % In this simulation one-path Rayleigh fading are considered
  273. now1=1;        
  274. % Maximum Doppler frequency [Hz]
  275. % You can insert your favorite value
  276. fd=160;       
  277. % You can decide two mode to simulate fading by changing the variable flat
  278. % flat     : flat fading or not 
  279. % (1->flat (only amplitude is fluctuated),0->nomal(phase and amplitude are fluctutated)
  280. flat =1;
  281. %******************** START CALCULATION *********************
  282. nloop=200;  % Number of simulation loops
  283. (b) Type just the following command
  284. >> clear
  285. >> oqpsk_fading
  286. (c) Then, you can see the following simulation result on your command window.
  287. (example)
  288. 10 8552 400000 2.138000e-002
  289. The meaning of each value is the same of the result from "bpsk.m".
  290. The simulation result is stored in the file (BERoqpskfad.dat).
  291. #########################################################
  292. (7) Simulation of "msk.m"
  293. #########################################################
  294. This program simulates the transmission performance of MSK under Additive White Gausian Noise (AWGN) environment.
  295. (a) Set paremeters
  296. First of all, we set simulation parameters in "msk.m".
  297. %******************** Preparation part **********************
  298. sr=256000.0; % Symbol rate 256 ksymbol/s
  299. ml=1;        % Number of modulation levels
  300. br=sr.*ml;   % Bit rate (=symbol rate in this case)
  301. nd = 1000;   % Number of symbols that simulates in each loop
  302. ebn0=3;      % Eb/N0
  303. IPOINT=8;    % Number of oversamples
  304. %******************** START CALCULATION *********************
  305. nloop=100;  % Number of simulation loops
  306. (b) Type just the following command
  307. >> clear
  308. >> msk
  309. (c) Then, you can see the following simulation result on your command window.
  310. (example)
  311. 3 2222 100000 2.222000e-002
  312. The meaning of each value is the same of the result from "bpsk.m".
  313. The simulation result is stored in the file (BERmsk.dat).
  314. #########################################################
  315. (8) Simulation of "msk_fading.m"
  316. #########################################################
  317. This program simulates the transmission performance of MSK under Rayleigh fading environment.
  318. (a) Set paremeters
  319. First of all, we set simulation parameters in "msk_fading.m".
  320. %******************** Preparation part **********************
  321. sr=256000.0; % Symbol rate 256 ksymbol/s
  322. ml=1;        % Number of modulation levels
  323. br=sr.*ml;   % Bit rate (=symbol rate in this case)
  324. nd = 100;   % Number of symbols that simulates in each loop
  325. ebn0=10;     % Eb/N0
  326. IPOINT=8;    % Number of oversamples
  327. %******************* Fading initialization ********************
  328. % If you use fading function "sefade", you can initialize all of parameters.
  329. % Otherwise you can comment out the following initialization.
  330. % The detailed explanation of all of valiables are mentioned in Program 2-8.
  331. % Time resolution
  332. tstp=1/sr/IPOINT; 
  333. % Arrival time for each multipath normalized by tstp
  334. % If you would like to simulate under one path fading model, you have only to set 
  335. % direct wave.
  336. itau = [0];
  337. % Mean power for each multipath normalized by direct wave.
  338. % If you would like to simulate under one path fading model, you have only to set 
  339. % direct wave.
  340. dlvl = [0];
  341. % Number of waves to generate fading for each multipath.
  342. % In normal case, more than six waves are needed to generate Rayleigh fading
  343. n0=[6];
  344. % Initial Phase of delayed wave
  345. % In this simulation four-path Rayleigh fading are considered.
  346. th1=[0.0];
  347. % Number of fading counter to skip 
  348. itnd0=nd*IPOINT*100;
  349. % Initial value of fading counter
  350. % In this simulation one-path Rayleigh fading are considered.
  351. % Therefore one fading counter are needed.
  352.   
  353. itnd1=[1000];
  354. % Number of directwave + Number of delayed wave
  355. % In this simulation one-path Rayleigh fading are considered
  356. now1=1;        
  357. % Maximum Doppler frequency [Hz]
  358. % You can insert your favorite value
  359. fd=320;       
  360. % You can decide two mode to simulate fading by changing the variable flat
  361. % flat     : flat fading or not 
  362. % (1->flat (only amplitude is fluctuated),0->nomal(phase and amplitude are fluctutated)
  363. flat =1;
  364. %******************** START CALCULATION *********************
  365. nloop=1000;  % Number of simulation loops
  366. (b) Type just the following command
  367. >> clear
  368. >> msk_fading
  369. (c) Then, you can see the following simulation result on your command window.
  370. (example)
  371. 10 2058 100000 2.058000e-002
  372. The meaning of each value is the same of the result from "bpsk.m".
  373. The simulation result is stored in the file (BERmskfad.dat).
  374. #########################################################
  375. (9) Simulation of "msk2.m"
  376. #########################################################
  377. This program simulates the transmission performance of MSK2 under Additive White Gausian Noise (AWGN) environment.
  378. (a) Set paremeters
  379. First of all, we set simulation parameters in "msk2.m".
  380. %******************** Preparation part **********************
  381. sr=256000.0; % Symbol rate 256 ksymbol/s
  382. ml=1;        % Number of modulation levels
  383. br=sr.*ml;   % Bit rate (=symbol rate in this case)
  384. nd = 1000;   % Number of symbols that simulates in each loop
  385. ebn0=5;      % Eb/N0
  386. IPOINT=8;    % Number of oversamples
  387. %******************** START CALCULATION *********************
  388. nloop=100;  % Number of simulation loops
  389. (b) Type just the following command
  390. >> clear
  391. >> msk2
  392. (c) Then, you can see the following simulation result on your command window.
  393. (example)
  394. 5 1179 100000 1.179000e-002
  395. The meaning of each value is the same of the result from "bpsk.m".
  396. The simulation result is stored in the file (BERmsk2.dat).
  397. #########################################################
  398. (10) Simulation of "msk2_fading.m"
  399. #########################################################
  400. This program simulates the transmission performance of MSK2 under Rayleigh fading environment.
  401. (a) Set paremeters
  402. First of all, we set simulation parameters in "msk2_fading.m".
  403. %******************** Preparation part **********************
  404. sr=256000.0; % Symbol rate 256 ksymbol/s
  405. ml=1;        % Number of modulation levels
  406. br=sr.*ml;   % Bit rate (=symbol rate in this case)
  407. nd = 100;   % Number of symbols that simulates in each loop
  408. ebn0=15;     % Eb/N0
  409. IPOINT=8;    % Number of oversamples
  410. %******************* Fading initialization ********************
  411. % If you use fading function "sefade", you can initialize all of parameters.
  412. % Otherwise you can comment out the following initialization.
  413. % The detailed explanation of all of valiables are mentioned in Program 2-8.
  414. % Time resolution
  415. tstp=1/sr/IPOINT; 
  416. % Arrival time for each multipath normalized by tstp
  417. % If you would like to simulate under one path fading model, you have only to set 
  418. % direct wave.
  419. itau = [0];
  420. % Mean power for each multipath normalized by direct wave.
  421. % If you would like to simulate under one path fading model, you have only to set 
  422. % direct wave.
  423. dlvl = [0];
  424. % Number of waves to generate fading for each multipath.
  425. % In normal case, more than six waves are needed to generate Rayleigh fading
  426. n0=[6];
  427. % Initial Phase of delayed wave
  428. % In this simulation four-path Rayleigh fading are considered.
  429. th1=[0.0];
  430. % Number of fading counter to skip 
  431. itnd0=nd*IPOINT*100;
  432. % Initial value of fading counter
  433. % In this simulation one-path Rayleigh fading are considered.
  434. % Therefore one fading counter are needed.
  435.   
  436. itnd1=[1000];
  437. % Number of directwave + Number of delayed wave
  438. % In this simulation one-path Rayleigh fading are considered
  439. now1=1;        
  440. % Maximum Doppler frequency [Hz]
  441. % You can insert your favorite value
  442. fd=320;       
  443. % You can decide two mode to simulate fading by changing the variable flat
  444. % flat     : flat fading or not 
  445. % (1->flat (only amplitude is fluctuated),0->nomal(phase and amplitude are fluctutated)
  446. flat =1;
  447. %******************** START CALCULATION *********************
  448. nloop=1000;  % Number of simulation loops
  449. (b) Type just the following command
  450. >> clear
  451. >> msk2_fading
  452. (c) Then, you can see the following simulation result on your command window.
  453. (example)
  454. 15 1243 100000 1.243000e-002
  455. The meaning of each value is the same of the result from "bpsk.m".
  456. The simulation result is stored in the file (BERmsk2fad.dat).
  457. #########################################################
  458. (11) Simulation of "gmsk.m"
  459. #########################################################
  460. This program simulates the transmission performance of GMSK under Additive White Gausian Noise (AWGN) environment.
  461. (a) Set paremeters
  462. First of all, we set simulation parameters in "gmsk.m".
  463. %******************** Preparation part **********************
  464. sr=256000.0; % Symbol rate 256 ksymbol/s
  465. ml=1;        % Number of modulation levels
  466. br=sr.*ml;   % Bit rate (=symbol rate in this case)
  467. nd = 1000;   % Number of symbols that simulates in each loop
  468. ebn0=5;      % Eb/N0
  469. IPOINT=8;    % Number of oversamples
  470. %******************** START CALCULATION *********************
  471. nloop=100;  % Number of simulation loops
  472. (b) Type just the following command
  473. >> clear
  474. >> gmsk
  475. (c) Then, you can see the following simulation result on your command window.
  476. (example)
  477. 5 2634 100000 2.634000e-002
  478. The meaning of each value is the same of the result from "bpsk.m".
  479. The simulation result is stored in the file (BERgmsk.dat).
  480. #########################################################
  481. (12) Simulation of "gmsk_fading.m"
  482. #########################################################
  483. This program simulates the transmission performance of GMSK under Rayleigh fading environment.
  484. (a) Set paremeters
  485. First of all, we set simulation parameters in "gmsk_fading.m".
  486. %******************** Preparation part **********************
  487. sr=256000.0; % Symbol rate 256 ksymbol/s
  488. ml=1;        % Number of modulation levels
  489. br=sr.*ml;   % Bit rate (=symbol rate in this case)
  490. nd = 100;   % Number of symbols that simulates in each loop
  491. ebn0=15;     % Eb/N0
  492. IPOINT=8;    % Number of oversamples
  493. %******************* Fading initialization ********************
  494. % If you use fading function "sefade", you can initialize all of parameters.
  495. % Otherwise you can comment out the following initialization.
  496. % The detailed explanation of all of valiables are mentioned in Program 2-8.
  497. % Time resolution
  498. tstp=1/sr/IPOINT; 
  499. % Arrival time for each multipath normalized by tstp
  500. % If you would like to simulate under one path fading model, you have only to set 
  501. % direct wave.
  502. itau = [0];
  503. % Mean power for each multipath normalized by direct wave.
  504. % If you would like to simulate under one path fading model, you have only to set 
  505. % direct wave.
  506. dlvl = [0];
  507. % Number of waves to generate fading for each multipath.
  508. % In normal case, more than six waves are needed to generate Rayleigh fading
  509. n0=[6];
  510. % Initial Phase of delayed wave
  511. % In this simulation four-path Rayleigh fading are considered.
  512. th1=[0.0];
  513. % Number of fading counter to skip 
  514. itnd0=nd*IPOINT*100;
  515. % Initial value of fading counter
  516. % In this simulation one-path Rayleigh fading are considered.
  517. % Therefore one fading counter are needed.
  518.   
  519. itnd1=[1000];
  520. % Number of directwave + Number of delayed wave
  521. % In this simulation one-path Rayleigh fading are considered
  522. now1=1;        
  523. % Maximum Doppler frequency [Hz]
  524. % You can insert your favorite value
  525. fd=320;       
  526. % You can decide two mode to simulate fading by changing the variable flat
  527. % flat     : flat fading or not 
  528. % (1->flat (only amplitude is fluctuated),0->nomal(phase and amplitude are fluctutated)
  529. flat =1;
  530. %******************** START CALCULATION *********************
  531. nloop=1000;  % Number of simulation loops
  532. (b) Type just the following command
  533. >> clear
  534. >> gmsk_fading
  535. (c) Then, you can see the following simulation result on your command window.
  536. (example)
  537. 15 1546 100000 1.546000e-002
  538. The meaning of each value is the same of the result from "bpsk.m".
  539. The simulation result is stored in the file (BERgmskfad.dat).
  540. #########################################################
  541. (13) Simulation of "qam16.m"
  542. #########################################################
  543. This program simulates the transmission performance of 16QAM under Additive White Gausian Noise (AWGN) environment.
  544. (a) Set paremeters
  545. First of all, we set simulation parameters in "qam16.m".
  546. %******************** Preparation part **********************
  547. sr=256000.0; % Symbol rate 256 ksymbol/s
  548. ml=4;        % Number of modulation levels
  549. br=sr.*ml;   % Bit rate (=symbol rate in this case)
  550. nd = 1000;   % Number of symbols that simulates in each loop
  551. ebn0=6;      % Eb/N0
  552. IPOINT=8;    % Number of oversamples
  553. %******************** START CALCULATION *********************
  554. nloop=100;  % Number of simulation loops
  555. (b) Type just the following command
  556. >> clear
  557. >> qam
  558. (c) Then, you can see the following simulation result on your command window.
  559. (example)
  560. 6 11121 400000 2.780250e-002
  561. The meaning of each value is the same of the result from "bpsk.m".
  562. The simulation result is stored in the file (BERqam.dat).
  563. #########################################################
  564. (14) Simulation of "qam16_fading.m"
  565. #########################################################
  566. This program simulates the transmission performance of 16QAM under Rayleigh fading environment.
  567. (a) Set paremeters
  568. First of all, we set simulation parameters in "qam16_fading.m".
  569. %******************** Preparation part **********************
  570. sr=256000.0; % Symbol rate 256 ksymbol/s
  571. ml=4;        % Number of modulation levels
  572. br=sr.*ml;   % Bit rate (=symbol rate in this case)
  573. nd = 100;   % Number of symbols that simulates in each loop
  574. ebn0=15;     % Eb/N0
  575. IPOINT=8;    % Number of oversamples
  576. %******************* Fading initialization ********************
  577. % If you use fading function "sefade", you can initialize all of parameters.
  578. % Otherwise you can comment out the following initialization.
  579. % The detailed explanation of all of valiables are mentioned in Program 2-8.
  580. % Time resolution
  581. tstp=1/sr/IPOINT; 
  582. % Arrival time for each multipath normalized by tstp
  583. % If you would like to simulate under one path fading model, you have only to set 
  584. % direct wave.
  585. itau = [0];
  586. % Mean power for each multipath normalized by direct wave.
  587. % If you would like to simulate under one path fading model, you have only to set 
  588. % direct wave.
  589. dlvl = [0];
  590. % Number of waves to generate fading for each multipath.
  591. % In normal case, more than six waves are needed to generate Rayleigh fading
  592. n0=[6];
  593. % Initial Phase of delayed wave
  594. % In this simulation four-path Rayleigh fading are considered.
  595. th1=[0.0];
  596. % Number of fading counter to skip 
  597. itnd0=nd*IPOINT*100;
  598. % Initial value of fading counter
  599. % In this simulation one-path Rayleigh fading are considered.
  600. % Therefore one fading counter are needed.
  601.   
  602. itnd1=[1000];
  603. % Number of directwave + Number of delayed wave
  604. % In this simulation one-path Rayleigh fading are considered
  605. now1=1;        
  606. % Maximum Doppler frequency [Hz]
  607. % You can insert your favorite value
  608. fd=160;       
  609. % You can decide two mode to simulate fading by changing the variable flat
  610. % flat     : flat fading or not 
  611. % (1->flat (only amplitude is fluctuated),0->nomal(phase and amplitude are fluctutated)
  612. flat =1;
  613. %******************** START CALCULATION *********************
  614. nloop=1000;  % Number of simulation loops
  615. (b) Type just the following command
  616. >> clear
  617. >> qam16_fading
  618. (c) Then, you can see the following simulation result on your command window.
  619. (example)
  620. 15 5105 400000 1.276250e-002
  621. The meaning of each value is the same of the result from "bpsk.m".
  622. The simulation result is stored in the file (BERqamfad.dat).
  623. By changing the value of Eb/N0 (variable ebn0), you can obtain the graph that shows the relationship between Eb/N0 and BER and that can been seen in the figures of the book.
  624. ********** end of file **********