how i can simulate it on MATLAB
9 views (last 30 days)
Show older comments
I wanne simulate joint spectral amplitude that is based on pump envelope and phase matching. lamdaP value is 1550nm and i write code but my alpha value is 0, and i dont know why!
I wanne a picture like that I attach.
clear;
close all;
%...................parameters...............
lambdaP = 1.55e-6; % pump wavelength
nelithiumP = 2.142; % refractive index lithium niobate for pump lambda
lambdaS = 0.775e-6 ; % signal wavelength
nelithiumS = 2.186; % refractive index lithium niobate for signal lambda
lambdaI = 0.775e-6 ; % idler wavelength
nelithiumI = 2.186; % refractive index lithium niobate for idler lambda
kP = 2*pi*(nelithiumP/lambdaP);
kS = 2*pi*(nelithiumS/lambdaS);
kI = 2*pi*(nelithiumI/lambdaI);
capital_lambda = 17.6e-6;
Deltak =(kP-kS-kI-(2*pi/capital_lambda));
%Deltak = linspace(a-1e7,a+1e7,100); % phase matching condition
L = 2e-2;
sigmaP=10e-9;
%deltat=50e-12;
sigmaP = deltat/(2*sqrt(log(2))); % pulse width
c = 3e8; % speed of light in vacuum
fS = c/lambdaS; fP = c/lambdaP; fI = c/lambdaI;
wS = 2*pi*fS; wP = 2*pi*fP; wI = 2*pi*fI; % angel frequncy
%alpha=exp(-(2*(pi^2)*(sigmaP^2))*((wP-(wS+wI))^2));
%b=wS+wI-wP;
alphaa = exp(-((wS+wI-wP)/sigmaP)); % pump envelope function
phi = (sinc(Deltak.*L./2)).*exp(1i.*Deltak.*L./2); % phase matching function
f = alphaa*phi; % joint spectral amplitude
joint_spectral_intensity = abs((f).^2); % joint spectral intensity
0 Comments
Answers (1)
SOUMNATH PAUL
on 13 May 2024
I see you have commented out the definition of "deltat" and have an incorrect computation for "sigmap" that follows.
Assuming you define "deltat" the corrected portion of your code will be :
% Assuming deltat is defined, I have taken an arbitrary value for mock computation:
deltat = 50e-12; % pulse width in seconds
% Correct calculation of sigmaP for a Gaussian pulse in the frequency domain
sigmaP = 1 / (deltat * sqrt(2 * log(2)));
% Corrected alpha calculation using the Gaussian envelope formula
alpha = exp(-((wP - (wS + wI))^2) / (2 * sigmaP^2));
% Continue with phi and f as before
phi = (sinc(Deltak * L / 2)) .* exp(1i * Deltak * L / 2); % phase matching function
f = alpha * phi; % joint spectral amplitude
joint_spectral_intensity = abs((f).^2); % joint spectral intensity
Hope this Helps!
Soumnath
0 Comments
See Also
Categories
Find more on Spectral Measurements in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!