光纤内脉冲信号传输仿真(包含matlab程序).docx

光纤内脉冲信号传输仿真(包含matlab程序).docx

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
光纤内脉冲信号传输仿真 仿真内容 选择一种脉冲波形(高斯脉冲,啁啾高斯脉冲,双曲正割脉冲,超高斯脉冲等),讨论光脉冲在光纤内传输时,GVD和SPM效应是如何结合的,并使用MATLAB仿真脉冲波形随传播距离的变化。 选择一种调制方式(ASK,PSK,QPSK,QAM等),对脉冲进行调制,分析接收端的误码率。 原理分析 GVD 光脉冲在单模光纤内传输的NLS方程,对脉冲大于5ps的脉冲有 (1式) U(z,T)满足线性偏微分方程 (2式) 若U(z,w)是U(z,T)的傅里叶变换,即 (3式) 满足常微分方程 (4式) 其解为 (5式) 由第5式可得,GVD改变了脉冲的每个频谱分量的相位,且其改变量依赖于频率及传输距离。GVD不会影响脉冲的频谱,但是能改变脉冲的形状。把5式代入3式可得方程2的通解 (6式) 其中,是入射光在z=0处的傅里叶变换 (7式) 方程6和方程7适用于任意形状的输入脉冲。 SPM 定义归一化振幅U (8式) 其中归一化时间量 (9式) 满足方程 (10式) 令=0,两边同时乘以i可得 (11式) 其中 用做代换,并且令方程两边实部虚部相等,则有 (12式) 对相位方程进行积分,得到通解 (13式) 其中,是z=0处的场振幅,且 (14式) 式中有限长度 (15式) 第14式表明,SPM产生随光强变化的相位,但脉冲形状保持不变。脉冲沿光纤传输时,由于SPM的作用,新的频率分量在不断产生,频谱被展宽。 分步傅里叶方法 一般来说,沿光纤的传输方向,色散和非线性效应是同时作用的。分步傅里叶方法通过假定在传输过程当中,光场每通过一小段距离h,色散和非线性效应分别作用,得到近似解。 从z到z+h的传输过程中,分为3步进行。 第一步,z到z+h/2,只考虑GVD。 第二步,z+h/2处,考虑SPM。 第三步,z+h/2到z+h,只考虑GVD。 通过分步傅里叶方法,把传输距离L分成m个区间,MATLAB程序做m次循环,即可得到最终的近似解。 L L h 只考虑 GVD 只考虑 GVD 只考虑 SPM 图 1 MATLAB仿真结果 这里选择传输双极性非归零(NRZ)码,传输高斯脉冲,使用MATLAB仿真光纤中脉冲传输。主要参数设置如下:传输距离L=50Km,损耗a=0.3dB,非线性系数r=3/km/w,色散系数b2=20ps2 /km。 高斯脉冲入射光场表达式为: (16式) 传输5个码源[1 , -1, 1, -1, 1],对应的时域波形如下: 图2 传输过程中使用分步傅里叶方法,分成m=10段,每段h=5Km,分别进行GVD和SPM分析。传输过程中的波形如下: 图 3 通过图3可以发现,由于GVD和SPM的作用,脉冲波形被展宽。随着传输距离的增加,脉冲波形与原始波形的差异越大。 附:MATLAB代码 clc;%清除命令窗口原有命令 clear all;%清除原有变量 L=5;%周期数 Ts=4;%符号周期 A=100;%插值倍数 Rb=1/Ts;%可以更改Rb与Ts的关系,但是A需要同时改变 T0=Ts/A; F0=1/T0; %信源产生[1 -1 1 -1 1] a=zeros(1,L); for i=1:L if mod(i,2)==1 a(i)=1; else a(i)=-1; end end d=zeros(1,L*A); for i=1:L d(1+(i-1)*A)=a(i);%插值,在相邻a(i)插入A-1个0,得到插值后的发送序列; end %周期高斯脉冲产生 T0=30;%初始宽度ps; N=256; TL=T0*20; dt=TL/N; df=1/TL; t=(-N/2:N/2-1)*dt; f=(-N/2:N/2-1)*df; w=2*pi*f; u=exp(-(1/2)*((t/T0).^2)); %U(0,t) j=1; %截取有效高斯点数 for i=1:256 if(u(i)10^(-5))

文档评论(0)

676200 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档