您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 802.11n信道模型matlab代码
function[R,Q,sigma_deg]=correlation(M,spacing,d_norm,cluster_number,amplitude_cluster,PAS_type,phi_deg,AS_deg,delta_phi_deg,type)%DerivesthecorrelationmatrixRfromthedescriptionoftheenvironment,namelytheantennaelement%spacingandthewaythewavesimpinge(numberofclusters,PAStype,ASandmeanangleofincidence.The%generatedcorrelationcoefficientsareeither(complex)fieldcorrelationcoefficients(type=0)%or(realpositive)powercorrelationcoefficients(type=1).%Inputs%%*VariableM,numberofantennaelementsoftheULA%*Variablespacing,spacingoftheantennaelementsoftheULA%*Vectord_norm,containingtherelativespacingsoftheM%elementsoftheULAwithrespecttothefirstone%*Variablecluster_number,numberofimpingingclusters%*Vectoramplitude_cluster,containingtheamplitudeof%thecluster_numberimpingingclusters%*VariablePAS_type,definesthenatureofthePAS,isotropic%uniform(1),isotropicGaussian(2),isotropicLaplacian(3)%ordirectiveLaplacian(6)accordingto3GPP-3GPP2SCMAHG%radiationpattern%*Vectorphi_deg,containingtheAoAsofthenumber_cluster%clusters%*VectorAS_deg,containingtheASsofthenumber_cluster%clusters%*Vectordelta_phi_deg,containingtheconstraintslimits%ofthetruncatedPAS,ifapplicable(GaussianandLaplacian%case)%*Variabletype,defineswhethercorrelationproperties%shouldbecomputedinfield(0)orinpower(1)%%Outputs%%*2-DHermitianmatrixRofsizeMxM,whoseelementsare%thecorrelationcoefficientsofthecorrespondingelements%oftheULAimpingedbythedescribedPAS%VectorQofcluster_numberelements,givingthenormalisation%coefficientstobeappliedtotheclustersinordertohave%thePASfulfillingthedefinitionofapdf%*Vectorsigma_degofcluster_numberofelements,giving%thestandarddeviationsoftheclusters,derivedfrom%theirdescription.Thereisnotnecessarilyequalitybetween%thegivenASandthestandarddeviationofthemodellingPAS.%%Revisionhistory%%April2003-Additionofcase6(directiveLaplacian)%February2002-Creation%%STANDARDDISCLAIMER%%CSysisfurnishingthisitemasis.CSysdoesnotprovideany%warrantyoftheitemwhatsoever,whetherexpress,implied,or%statutory,including,butnotlimitedto,anywarrantyof%merchantabilityorfitnessforaparticularpurposeorany%warrantythatthecontentsoftheitemwillbeerror-free.%%InnorespectshallCSysincuranyliabilityforanydamages,%including,butlimitedto,direct,indirect,special,or%consequentialdamagesarisingoutof,resultingfrom,oranyway%connectedtotheuseoftheitem,whetherornotbasedupon%warranty,contract,tort,orotherwise;whetherornotinjurywas%sustainedbypersonsorpropertyorotherwise;andwhetherornot%losswassustainedfrom,oraroseoutof,theresultsof,%theitem,oranyservicesthatmaybeprovidedbyCSys.%(c)LaurentSchumacher,AAU-TKN/IES/KOM/CPK/CSys-February2002%Normalisationswitch(PAS_type)case1%UniformdistributionQ=normalisation_uniform(cluster_number,...amplitude_cluster,...AS_deg);sigma_deg=-1;%meaninglessinuniformPAScase2%Gaussiandistribution[Q,sigma_deg]=...normalisation_gaussian(cluster_number,...amplitude_cluster,...AS_deg,...delta_phi_deg);case{3,6}%Laplaciandistribution[Q,sigma_deg]=...normalisation_laplacian(cluster_number,...amplitude_cluster,...AS_deg,...delta_phi_deg);otherwisedisp('PAStypenonsupported.Exiting...');return%ÎÒ°Ñbreak¸ÄÁËendif(M1)%Complexcorrelationcomputationswitch(PAS_type)case1%IsotropicUniformdistributionRxx=bessel(0,2.*pi.*d_norm);Rxy=zeros(size(Rxx));fork=1:cluster_numberRxx=Rxx+Q(k).*Rxx_uniform(d_norm,...phi_deg(k),...AS_deg(k));Rxy=Rxy+Q(k).*Rxy_uniform(d_norm,...phi_deg(k),...AS_deg(k));end;case2%IsotropicGaussiandistributionRxx=bessel(0,2.*pi.*d_norm);Rxy=zeros(size(Rxx));fork=1:cluster_numberRxx=Rxx+Q(k).*Rxx_gaussian(d_norm,...phi_deg(k),...sigma_deg(k),...delta_phi_deg(k));Rxy=Rxy+Q(k).*Rxy_gaussian(d_norm,...phi_deg(k),...sigma_deg(k),...delta_phi_deg(k));end;case3%IsotropicLaplaciandistributionRxx=bessel(0,2.*pi.*d_norm);Rxy=zeros(size(Rxx));fork=1:cluster_numberRxx=Rxx+Q(k).*Rxx_laplacian(d_norm,...phi_deg(k),...sigma_deg(k),...delta_phi_deg(k));Rxy=Rxy+Q(k).*Rxy_laplacian(d_norm,...phi_deg(k),...sigma_deg(k),...delta_phi_deg(k));end;case6%DirectiveLaplaciandistribution%Hard-codedradiationpatterncharacteristicstmp=rho_lpl_SCM_AHG_approx(d_norm,...phi_deg,...Q,...sigma_deg,...delta_phi_deg,...12,20,70);Rxx=real(tmp);Rxy=imag(tmp);end;%Correlationcoefficientcomputationif(type==0)tmp=Rxx+i.*Rxy;elsetmp=Rxx.^2+Rxy.^2;end;R=toeplitz(tmp);elseR=1;endfunctionE=erfcomp(z);%ERFCOMP(komplexes)Fehlerintegral%%E=ERFCOMP(Z)%%Die(komplexe)MatrixZistdasEingabeargument%fürdieseProzedur.Zurückgeliefertwirddie%komplexeError-Funktion.%%EntnommenausAbramowitz,%AbschnittErrorFunctionsandFresnelIntegrals,%Seite299[zx,sx]=size(z);%DimensionderEingabematrixx=real(z);y=imag(z);x=x(:);y=y(:);i=sqrt(-1);%E=erf(x);KOa=+0.3275911;%HiererfolgtdieBerechnungderKOA=+0.254829592;%Error-FunktiondurcheinerationaleKOB=-0.284496736;%ApproximationfürreelleArgumente.KOC=+1.421413741;KOD=-1.453152027;KOE=+1.061405429;w=1./(1+KOa.*abs(x));P=KOE.*w+KOD;P=P.*w+KOC;P=P.*w+KOB;P=P.*w+KOA;P=P.*w;Q=exp(-(x.*x));E=(1-Q.*P).*sign(x);S=zeros(size(E));abserr=100;n=1;whileabserr1E-12,fn=2.*x-2.*x.*cosh(n.*y).*cos(2.*x.*y)+n.*si
本文标题:802.11n信道模型matlab代码
链接地址:https://www.777doc.com/doc-1285196 .html