Minor mods, adjusted parameters.

This commit is contained in:
Karthik 2025-02-05 18:19:29 +01:00
parent 05e80ff2e5
commit f5d75ffb66
3 changed files with 38 additions and 11 deletions

View File

@ -8,15 +8,13 @@ OptionsStruct = struct;
OptionsStruct.NumberOfAtoms = 101250;
OptionsStruct.DipolarPolarAngle = 0;
OptionsStruct.DipolarAzimuthAngle = 0;
OptionsStruct.ScatteringLength = 76.41;
OptionsStruct.ScatteringLength = 75.00;
vz = 500;
AspectRatio = 10;
OptionsStruct.TrapFrequencies = [vz/AspectRatio, vz/AspectRatio, 500];
OptionsStruct.TrapFrequencies = [50, 50, 500];
OptionsStruct.TrapPotentialType = 'Harmonic';
OptionsStruct.NumberOfGridPoints = [128, 128];
OptionsStruct.Dimensions = [20, 20];
OptionsStruct.NumberOfGridPoints = [256, 256];
OptionsStruct.Dimensions = [35, 35];
OptionsStruct.TimeStepSize = 0.005; % in s
OptionsStruct.MinimumTimeStepSize = 1E-5; % in s
OptionsStruct.TimeCutOff = 2E6; % in s
@ -30,9 +28,9 @@ OptionsStruct.WidthLowerBound = 0.01;
OptionsStruct.WidthUpperBound = 12;
OptionsStruct.WidthCutoff = 5e-3;
OptionsStruct.PlotLive = false;
OptionsStruct.PlotLive = true;
OptionsStruct.JobNumber = 0;
OptionsStruct.RunOnGPU = true;
OptionsStruct.RunOnGPU = false;
OptionsStruct.SaveData = true;
OptionsStruct.SaveDirectory = './Results/Data_TiltingOfDipoles/HarmonicTrap/Hz500';
options = Helper.convertstruct2cell(OptionsStruct);

View File

@ -82,8 +82,8 @@ classdef DipolarGas < handle & matlab.mixin.Copyable
@(x) assert(isnumeric(x) && isscalar(x) && (x > 0)));
addParameter(p, 'VariationalEnergyTolerance', 1e-2,...
@(x) assert(isnumeric(x) && isscalar(x) && (x > 0)));
addParameter(p, 'JobNumber', 1,...
@(x) assert(isnumeric(x) && isscalar(x) && (x > 0)));
addParameter(p, 'JobNumber', 0,...
@(x) assert(isnumeric(x) && isscalar(x) && (x >= 0)));
addParameter(p, 'PlotLive', false,...
@islogical);
addParameter(p, 'RunOnGPU', false,...

View File

@ -180,7 +180,7 @@ C = beta^2 / ((2*beta^2) + (4*alpha^2));
PulseDurations = linspace(1E-6, 150E-6, 1000);
PopulationInFirstOrders = C .* (sin(0.5 .* PulseDurations .* (RabiOscillationFrequency)));
figure(6);
figure(7);
set(gcf,'Position',[100 100 950 750])
plot(PulseDurations .* 1E6, PopulationInFirstOrders, LineWidth=2.0, DisplayName=['\bf Power = ' num2str(Power) ' W / Trap depth = ' num2str(round(TrapDepthsInUnitsOfRecoilEnergy, 1)) ' E_r'])
xlabel('Pulse duration (µs)', FontSize=16)
@ -188,3 +188,32 @@ ylabel('Fraction of atoms in first order', FontSize=16)
title('\bf Expected Rabi oscillation', FontSize=16)
grid on
legend(FontSize=16)
%% Scaling of vertical trap frequency with power for fixed lattice spacing
Wavelength = 532e-9;
a = 180 * (AtomicUnitOfPolarizability / (2 * SpeedOfLight * VacuumPermittivity));
LatticeSpacing = 13.89e-6;
waist_y = 250E-6;
waist_z = 75E-6;
thetaindeg = 1.0973;
Powers = linspace(0.5, 5.0, 100);
Omega_z = zeros(1, length(Powers));
for idx = 1:length(thetas)
theta = 0.5 * thetaindeg .* pi/180;
Omega_z(idx) = sqrt(((16 * a * Powers(idx)) / (pi * Dy164Mass * waist_y * waist_z)) * ...
((2 * (cos(theta)/waist_z)^2) + ((Wavelength * sin(theta)/pi)^2 * ...
((1/waist_y^4) + (1/waist_z^4))) + (pi / LatticeSpacing)^2));
end
nu_z = Omega_z ./ (2*pi);
figure(8);
set(gcf,'Position',[100 100 950 750])
plot(Powers, nu_z * 1E-3, LineWidth=2.0)
% xlim([0.5 21]);
xlabel('Powers (W)', FontSize=16)
ylabel('Trap frequency (kHz)', FontSize=16)
title(['\bf Maximum = ' num2str(round(max(nu_z * 1E-3),2)) ' kHz ; \bf Minimum = ' num2str(round(min(nu_z * 1E-3),2)) ' kHz'], FontSize=16)
grid on