⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 geometry2correlation.m

📁 mimo信道容量的matlab的分析mimo信道容量的matlab的分析mimo信道容量的matlab的分析mimo信道容量的matlab的分析
💻 M
字号:
% geometry2correlation%% User interface to the definition of the correlation matrices% of the MIMO radio channel model. For both Node B and UE,% the user is prompted for%% * the number of elements% * the spacing between elements (Uniform Linear Array is assumed)% * the number of impinging clusters of waves% * their Power Azimuth Spectrum (PAS) type (Uniform, Gaussian or Laplacian)% * the mean angle of incidence (in degrees)% * the Azimuth Spread (AS)%%% STANDARD DISCLAIMER%% CSys is furnishing this item "as is". CSys does not provide any% warranty of the item whatsoever, whether express, implied, or% statutory, including, but not limited to, any warranty of% merchantability or fitness for a particular purpose or any% warranty that the contents of the item will be error-free.%% In no respect shall CSys incur any liability for any damages,% including, but limited to, direct, indirect, special, or% consequential damages arising out of, resulting from, or any way% connected to the use of the item, whether or not based upon% warranty, contract, tort, or otherwise; whether or not injury was% sustained by persons or property or otherwise; and whether or not% loss was sustained from, or arose out of, the results of, the% item, or any services that may be provided by CSys.%% (c) Laurent Schumacher, AAU-TKN/IES/KOM/CPK/CSys - September 2001clear;clf;display = 1;%% Interactive dialog%% Downlink or uplinkstring = sprintf('\n');disp(string);Downlink = -1;while ((Downlink ~= 0) & (Downlink ~=1))    Downlink = input('Downlink (Yes = 1, no = 0)? ');end;% Field or envelope/powerstring = sprintf('\n');disp(string);Field = -1;while ((Field ~= 0) & (Field ~=1))    Field = input('Type of correlation coefficient (Field = 0, Envelope = 1)? ');end;% Configuration of Node Bstring = sprintf('Node B');[M, spacing_Node_B, d_norm_Node_B, cluster_number_Node_B, ... amplitude_cluster_Node_B, PAS_type_Node_B, phi_deg_Node_B, ... AS_deg_Node_B, delta_phi_deg_Node_B] = dialog(string);% Configuration of UEstring = sprintf('UE');[N, spacing_UE, d_norm_UE, cluster_number_UE, ... amplitude_cluster_UE, PAS_type_UE, phi_deg_UE, AS_deg_UE, ... delta_phi_deg_UE] = dialog(string);%% Computation of the correlation matrices%% Node Bif (M==1)  R_Node_B = 1else  [R_Node_B, Q_Node_B, sigma_deg_Node_B] = correlation(M, spacing_Node_B, ...						 d_norm_Node_B, ...						 cluster_number_Node_B, ...						 amplitude_cluster_Node_B, ...						 PAS_type_Node_B, ...						 phi_deg_Node_B, ...						 AS_deg_Node_B, ...                         delta_phi_deg_Node_B, Field);endif (display & (~(M==1)))  figure(1);  clf;  switch(PAS_type_Node_B)   case 1    plot_uniform(cluster_number_Node_B, Q_Node_B, phi_deg_Node_B, ...		 AS_deg_Node_B, 1);   case 2    plot_gaussian(cluster_number_Node_B, Q_Node_B, phi_deg_Node_B, ...		  sigma_deg_Node_B, delta_phi_deg_Node_B, 1);   case 3    plot_laplacian(cluster_number_Node_B, Q_Node_B, phi_deg_Node_B, ...		   sigma_deg_Node_B, delta_phi_deg_Node_B, 1);   otherwise    break;  end;end;% UEif (N==1)  R_UE = 1else  [R_UE, Q_UE, sigma_deg_UE] = correlation(N, spacing_UE, d_norm_UE, ...					 cluster_number_UE, ...					 amplitude_cluster_UE, ...					 PAS_type_UE, phi_deg_UE, ...                     AS_deg_UE, delta_phi_deg_UE, Field);end;if (display & (~(N==1)))  figure(1);  switch(PAS_type_UE)   case 1    plot_uniform(cluster_number_UE, Q_UE, phi_deg_UE, AS_deg_UE, 2);   case 2    plot_gaussian(cluster_number_UE, Q_UE, phi_deg_UE, sigma_deg_UE, ...        delta_phi_deg_UE, 2);   case 3    plot_laplacian(cluster_number_UE, Q_UE, phi_deg_UE, sigma_deg_UE, ...		delta_phi_deg_UE, 2);   otherwise    break  end;end;%% Information exploitation%if Downlink    nTx = M;    nRx = N;    R   = kron(R_Node_B, R_UE)else    nTx = N;    nRX = M;    R   = kron(R_UE, R_Node_B)end;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -