Skip to content

Commit

Permalink
Add files via upload
Browse files Browse the repository at this point in the history
  • Loading branch information
XiaoyuCloud authored Feb 23, 2023
1 parent be9a071 commit 5a520c7
Show file tree
Hide file tree
Showing 13 changed files with 329 additions and 0 deletions.
Binary file added E.mat
Binary file not shown.
Binary file added fftoft.PNG
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
57 changes: 57 additions & 0 deletions frequencytotime.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
c=3*10^8;
lam=1560;%데貫nm
fc=c/(lam*10^(-9));
wc=2*pi*fc*10^(-12);%데貫rad*ps^(-1)
fsigpul=2.746*10^12/2.355;%데貫Hz
frep=50*10^6;%데貫Hz
Trep=1/frep*10^12;%데貫ps
fceo=100*10^6;
Tceo=1/fceo*10^12;%데貫ps
wceo=2*pi*fceo*10^(-12);%데貫谿wc

%%%\틉堵쉔친%%%
% fn=10*10^4;
% fmax=fn*frep+fceo;
% fcn=5;
% df2=10^10;%데貫Hz
% df1=frep/fcn;%데貫Hz
fr=fc-3.5*10^12:frep:fc+3.5*10^12;
frn=length(fr);
fbao=(1/((2*pi)^0.5*fsigpul))*exp(-(fr-fc).^2/(2*fsigpul^2));

%%%%%%%%%%%%%%%%%%%%%긴꼍낀%%%%%%%%%%%%%%%%%%%%%%%%%%
ftmin=-450;
ftmax=450;
fdt=0.1;
ft1=ftmin:fdt:ftmax;%데貫fs
ftn1=length(ft1);
fTTrep=ftn1+2;
N=5;
ft=zeros(1,N*fTTrep);
fTTTrep=20000*10^3;%데貫fs
ftcdet=(fTTTrep-2*ftmax)/(fTTrep-ftn1);%데貫fs,?f
for ftcci=0:N-1%윈념
for ftcct=ftcci*fTTrep+1:ftcci*fTTrep+ftn1
ft(ftcct)=ftcci*fTTTrep-ftmax+(ftcct-ftcci*fTTrep)*fdt;
end;
for ftcct=ftcci*fTTrep+ftn1+1:(ftcci+1)*fTTrep
ft(ftcct)=ftcci*fTTTrep+ftmax+(ftcct-ftcci*fTTrep-ftn1)*ftcdet;
end;
end;
ftn=length(ft);
fE=zeros(1,ftn);
E=zeros(1,ftn);
ftfs=ft*10^(-15);
fii=1;
for frr=1:frn
fE=fbao(frr)*cos(2*pi*fr(frr)*ftfs);%늪珂ft데貫槨fs。
E=E+fE;
fii=fii+1;
end;
fts=ft/1000;%데貫ps
plot(fts,E);grid;
xlabel('珂쇌/ps');
ylabel('驪류');
% axis([-0.5,0.5,min(E),max(E)]);
axis([79999.5,80000.5,min(E),max(E)]);
% E1=E(1004:2006);
Binary file added fsig.mat
Binary file not shown.
Binary file added ftime13min.fig
Binary file not shown.
Binary file added ftime13min分辨率0.1fs.PNG
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added ftime80000.PNG
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added ftime80000.fig
Binary file not shown.
Binary file added ftime80000small.PNG
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added ftsig.mat
Binary file not shown.
62 changes: 62 additions & 0 deletions ftsigpul_fsigpul.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
c=3*10^8;
lam=1560;%데貫nm
fc=c/(lam*10^(-9));
wc=2*pi*fc*10^(-12);%데貫rad*ps^(-1)
% fsigpul=2.746*10^12/2.355;%데貫Hz
frep=50*10^6;%데貫Hz
Trep=1/frep*10^12;%데貫ps
fceo=100*10^6;
Tceo=1/fceo*10^12;%데貫ps
wceo=2*pi*fceo*10^(-12);%데貫谿wc

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
ftmin=-450;
ftmax=450;
fdt=1;
ft=ftmin:fdt:ftmax;%데貫fs

ftn=length(ft);
fE=zeros(1,ftn);
E=zeros(1,ftn);
ftfs=ft*10^(-15);

ftsigpul=zeros(1,51);
ftsi=1;
for fsigpul=0.016*10^12:0.2*10^12:10.016*10^12
%%%\틉堵쉔친%%%
fr=fc-3.5*10^12:frep:fc+3.5*10^12;
frn=length(fr);
fbao=(1/((2*pi)^0.5*fsigpul))*exp(-(fr-fc).^2/(2*fsigpul^2));

%%%%%%%%%%%%%%%%%%%북냥%%%%%%%%%%%%%%%%%%%%%%%
for frr=1:frn
fE=fbao(frr)*cos(2*pi*fr(frr)*ftfs);%늪珂ft데貫槨fs。
E=E+fE;
end;
%%%%%%%%%%%헹관쭹%%%%%%%%%%%%%
Ebao=zeros(1,ftn);
for ftbao=1:ftn
Ebao(ftbao)=E(ftbao)/(cos(2*pi*fc*ftfs(ftbao)));
end;

%%%%%%%%%%%%%헹곕욱멕%%%%%%%%%%%%%%%
tmaxhalf=0.5*max(Ebao);
EEbao=abs(Ebao-tmaxhalf);
half=(ftn-1)/2;
[ezuo,tzuo]=min(EEbao(1:half));
[eyou,tyou]=min(EEbao(half+1:ftn));
ftsigpul(ftsi)=ft(half+tyou)-ft(tzuo);
ftsi=ftsi+1;
end;
fsigpul=0.016*10^12:0.2*10^12:10.016*10^12;%데貫Hz
%%%%%%%%%%%%혓窟%%%%%%%%%%%%%%%%%%
% fts=ft/1000;%데貫ps
% subplot(2,1,1)
% plot(fts,Ebao);grid;
% xlabel('珂쇌/ps');
% ylabel('驪류');
% hold on;
% subplot(2,1,2)
plot(fsigpul,ftsigpul);grid;
xlabel('틉堵곕멕욱/Hz');
ylabel('珂堵찧녑욱똑/fs');
152 changes: 152 additions & 0 deletions tiaoshi.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,152 @@
% plot(ftt,ftimemag);
% axis([9999,10001,min(ftimemag),max(ftimemag)]);
% plot(fr,famp);
%%%%%%%%%%%%测定傅里叶变换得到的时域半高宽%%%%%%%%%%%%%%%%%
% fthw=[1 2];
% ftwn=1;
% ftmax=max(ftimemag);
% fthmax=0.5*ftmax;
% ftcom=0.15*10^(-8);
% ftbig=ffts/fcn;
% for ftwcir=1:ftbig%%%测定时域图半高宽
% if (abs(ftimemag(ftwcir)-fthmax)<=ftcom)
% fthw(ftwn)=ftwcir*fcn/(ffts*frep)*10^12;%单位ps
% ftwn=2;
% end;
% end;
% ftsigpul=(fthw(2)-fthw(1))*10^3;%单位fs
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 所得一些数据:
% fsigpul=1.168*10^12;ftcom=0.05*10^(-8);ftsigpul=312fs

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% plot(ftt,ftimemag);grid;
% xlabel('时间/ps');
% ylabel('振幅');
% axis([49999.9,50000.1,min(ftimemag),max(ftimemag)]);%????
%%%%%%%%%%%%测定better时域半高宽%%%%%%%%%%%%%%%%%
% thw=[1 2];
% twn=1;
% tmax=max(CC);
% thmax=0.5*tmax;
% tcom=1;
% tbig=b/N;
% for twcir=1:tbig%%%测定时域图半高宽
% if (abs(CC(twcir)-thmax)<=tcom)
% thw(twn)=tc(twcir);%单位ps
% twn=2;
% end;
% end;
% tsigpul=(thw(2)-thw(1));%单位fs
%%%%%%%%%%%%%%%频谱半高宽特殊情况%%%%%%%%%%%%%%%%%%
% fsigpul=6*10^12,ftcom=0.2*10^(-8),ftsigpul=58

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%测定没有better时的时域半高宽%%%%%%%%%%%%%%%%%
% thw=[1 2];
% twn=1;
% tmax=max(CC);
% thmax=0.5*tmax;
% tcom=0.001;
% tbig=b/N;
% for twcir=1:tbig%%%测定时域图半高宽
% if (abs(CC(twcir)-thmax)<=tcom)
% thw(twn)=tc(twcir);%单位ps
% twn=2;
% end;
% end;
% tsigpul=(thw(2)-thw(1))*10^3;%单位fs
%%%%%%%%%%%%测定没有better时的fft得到的傅里叶变换的半高宽%%%%%%%%%%%%%%%%%
% fhw=[1 2];
% fwn=1;
% fmax=max(mag);
% fhmax=0.5*fmax;
% fcom=0.1;
% for fwcir=1:NNN%%%测定时域图半高宽
% if (abs(mag(fwcir)-fhmax)<=fcom)
% fhw(fwn)=ff(fwcir);%单位ps
% fwn=2;
% end;
% end;
% ffsigpul=(fhw(2)-fhw(1));%单位10^14Hz
%%%%%%%%%%%%%%%%%%%测定傅里叶变换的得到的时域峰值坐标%%%%%%%%%%%%
% fengzhi=zeros(2,1000);
% cciii=1;
% for ccii=1:ffts
% if(ftimemag(ccii)==2*10^(-8))
% fengzhi(1,cciii)=ftimemag(ccii);
% fengzhi(2,cciii)=ftt(ccii);
% cciii=cciii+1;
% end;
% end;
%%%%%%%%%%%测定傅里叶变换的得到的时域分辨率%%%%%%%%%%%%%%%%
% fengzhi=zeros(3,1000);
% jianju=zeros(1,1000);
% cciii=1;
% for ccii=1:ffts
% if(ft(ccii)>49171&&ft(ccii)<49172)
% fengzhi(1,cciii)=ftimemag(ccii);
% fengzhi(2,cciii)=ft(ccii);
% fengzhi(3,cciii)=ccii;
% cciii=cciii+1;
% end;
% end;
% cciii=1;
% for ccii=1:23
% jianju(cciii)=fengzhi(2,ccii+1)-fengzhi(2,ccii);
% cciii=cciii+1;
% end;
% plot(fengzhi(2,1:23),fengzhi(1,1:23))

c=3*10^8;
lam=1560;%单位nm
fc=c/(lam*10^(-9));
wc=2*pi*fc*10^(-12);%单位rad*ps^(-1)
% fsigpul=2.746*10^12/2.355;%单位Hz
fsigpul=0.001*10^12;%单位Hz
frep=50*10^6;%单位Hz
Trep=1/frep*10^12;%单位ps
fceo=100*10^6;
Tceo=1/fceo*10^12;%单位ps
wceo=2*pi*fceo*10^(-12);%单位同wc

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
ftmin=-6000;
ftmax=6000;
fdt=1;
ft=ftmin:fdt:ftmax;%单位fs

ftn=length(ft);
fE=zeros(1,ftn);
E=zeros(1,ftn);
ftfs=ft*10^(-15);

%%%\频域建模%%%
fr=fc-3.5*10^12:frep:fc+3.5*10^12;
frn=length(fr);
fbao=(1/((2*pi)^0.5*fsigpul))*exp(-(fr-fc).^2/(2*fsigpul^2));

%%%%%%%%%%%%%%%%%%%合成%%%%%%%%%%%%%%%%%%%%%%%
for frr=1:frn
fE=fbao(frr)*cos(2*pi*fr(frr)*ftfs);%此时ft单位为fs。
E=E+fE;
end;
%%%%%%%%%%%求包络%%%%%%%%%%%%%
Ebao=zeros(1,ftn);
for ftbao=1:ftn
Ebao(ftbao)=E(ftbao)/(cos(2*pi*fc*ftfs(ftbao)));
end;

%%%%%%%%%%%%%求半宽高%%%%%%%%%%%%%%%
tmaxhalf=0.5*max(Ebao);
EEbao=abs(Ebao-tmaxhalf);
half=(ftn-1)/2;
[ezuo,tzuo]=min(EEbao(1:half));
[eyou,tyou]=min(EEbao(half+1:ftn));
ftsigpul=ft(half+tyou)-ft(tzuo);
%%%%%%%%%%%%曲线%%%%%%%%%%%%%%%%%%
fts=ft/1000;%单位ps
plot(fts,Ebao);grid;
xlabel('时间/ps');
ylabel('振幅');
axis([-8,8,min(Ebao),max(Ebao)]);
58 changes: 58 additions & 0 deletions time_beter.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
c=3*10^8;
lam=1560;
fc=c/(lam*10^(-9));
wc=2*pi*fc*10^(-12)*10^(-3);%单位rad*fs^(-1)
sigpul=127.398;%单位fs
frep=50*10^6;%单位Hz
Trep=1/frep*10^12*10^3;%单位fs
fceo=20*10^6;%单位Hz
Tceo=1/fceo*10^12*10^3;%单位fs
wceo=2*pi*fceo*10^(-12)*10^(-3);%单位同wc
%%高斯包络与载波%%%%%
tfmax=500;
t0=-tfmax;tf=tfmax;dt=0.05;fs=1/dt;%dt决定时域采样频率为0.05fs;
t1=t0:dt:tf-dt;ts=0;
D=(1/(2*pi)^0.5*sigpul)*exp(-t1.^2/(2*sigpul^2));%飞秒脉冲高斯包络,横坐标fs
E=exp(wc*t1*1i);
F=D.*E;%单个飞秒脉冲,横坐标fs
FF=real(F);
f=length(F);
% plot(t1,FF);grid;
% axis([-200,200,min(FF),max(FF)]);
%%%%%%%%%%梳状函数%%%%%%%%%%
N=5;%飞秒激光脉冲个数;
NN=0;
phi0=2*pi*Trep/Tceo;
phi=NN*phi0;%相位移动
% TTrep=3*tfmax*fs;%单位fs
TTrep=2*tfmax*fs+10000;%单位fs
B=zeros(1,N*TTrep);%横坐标,单位为fs
for tt=1:N*TTrep%tt单位为fs
NN=fix(tt/(TTrep));
phi=NN*phi0;
if(rem(tt,TTrep)==1)
B(tt)=1*exp(-phi*1i);
end;
end;
b=length(B);
BB=real(B);
plot(BB);
%%%%%%%卷积,得时域上5个飞秒脉冲%%%%%%%%
C=conv(F,B);%单位为fs,此时高斯包络部分单位为0.01fs,高斯包络与高斯包络之间单位为fs
CC=C(1:b);%
c=length(CC);
tc=1:b;
TTTrep=20000*10^3;%单位fs
tcdet=(TTTrep-2*tfmax)/(TTrep-f);%单位fs
for tcci=0:N-1%扩充
for tcct=tcci*TTrep+1:tcci*TTrep+f
tc(tcct)=tcci*TTTrep-tfmax+(tcct-tcci*TTrep)*dt;
end;
for tcct=tcci*TTrep+f+1:(tcci+1)*TTrep
tc(tcct)=tcci*TTTrep+tfmax+(tcct-tcci*TTrep-f)*tcdet;
end;
end;
ttc=tc/1000;%单位ps
CCB=real(C(1:b));
plot(ttc,CCB);grid;
% axis([19999,20001,min(FF),max(FF)]);

0 comments on commit 5a520c7

Please sign in to comment.