Minor modifications.
This commit is contained in:
parent
5053e3ffba
commit
905f768993
@ -52,32 +52,34 @@ Plotter.visualizeTrapPotential(sim.Potential,Params,Transf)
|
||||
Plotter.visualizeWavefunction(psi,Params,Transf)
|
||||
%% Imaginary-Time followed by Real-time
|
||||
|
||||
%% Imaginary-Time followed by Real-time
|
||||
|
||||
% - Imaginary-Time
|
||||
OptionsStruct = struct;
|
||||
|
||||
OptionsStruct.NumberOfAtoms = 80000;
|
||||
OptionsStruct.DipolarPolarAngle = deg2rad(0);
|
||||
OptionsStruct.DipolarAzimuthAngle = 0;
|
||||
OptionsStruct.DipolarAzimuthAngle = deg2rad(0);
|
||||
OptionsStruct.ScatteringLength = 110;
|
||||
|
||||
OptionsStruct.TrapFrequencies = [50, 20, 150];
|
||||
OptionsStruct.TrapFrequencies = [50, 20, 250];
|
||||
OptionsStruct.TrapPotentialType = 'Harmonic';
|
||||
|
||||
OptionsStruct.NumberOfGridPoints = [64, 128, 64];
|
||||
OptionsStruct.Dimensions = [50, 50, 20];
|
||||
OptionsStruct.NumberOfGridPoints = [64, 128, 32];
|
||||
OptionsStruct.Dimensions = [50, 50, 10];
|
||||
OptionsStruct.UseApproximationForLHY = true;
|
||||
OptionsStruct.IncludeDDICutOff = true;
|
||||
OptionsStruct.CutoffType = 'CustomCylindrical';
|
||||
OptionsStruct.CustomCylindricalCutOffRadius = 20.0;
|
||||
OptionsStruct.CustomCylindricalCutOffHeight = 5.0;
|
||||
OptionsStruct.CustomCylindricalCutOffHeight = 4.0;
|
||||
|
||||
OptionsStruct.SimulationMode = 'ImaginaryTimeEvolution'; % 'ImaginaryTimeEvolution' | 'RealTimeEvolution' | 'EnergyMinimization'
|
||||
OptionsStruct.TimeStepSize = 5E-3; % in s
|
||||
OptionsStruct.MinimumTimeStepSize = 1E-6; % in s
|
||||
OptionsStruct.TimeCutOff = 1E5; % in s
|
||||
OptionsStruct.TimeCutOff = 1E2; % in s
|
||||
OptionsStruct.EnergyTolerance = 5E-10;
|
||||
OptionsStruct.ResidualTolerance = 1E-08;
|
||||
OptionsStruct.NoiseScaleFactor = 0.010;
|
||||
OptionsStruct.NoiseScaleFactor = 0.05;
|
||||
OptionsStruct.PlotLive = true;
|
||||
OptionsStruct.JobNumber = 0;
|
||||
OptionsStruct.RunOnGPU = false;
|
||||
@ -94,19 +96,17 @@ sim.Potential = pot.trap();
|
||||
|
||||
% Save only final state as initial wavefunction for real-time propagation
|
||||
mkdir(sprintf(OptionsStruct.SaveDirectory))
|
||||
save(sprintf(strcat(SaveDirectory, '/psi_init.mat'),Params.njob),'psi','Transf','Params','VDk','V');
|
||||
close all
|
||||
clear
|
||||
save(sprintf(strcat(OptionsStruct.SaveDirectory, '/psi_init.mat'),Params.njob),'psi','Transf','Params','VDk','V');
|
||||
|
||||
OptionsStruct.SimulationMode = 'RealTimeEvolution'; % 'ImaginaryTimeEvolution' | 'RealTimeEvolution' | 'EnergyMinimization'
|
||||
OptionsStruct.EquilibrationTime = 20E-3;
|
||||
OptionsStruct.QuenchTime = 30E-3;
|
||||
OptionsStruct.HoldTime = 20E-3;
|
||||
OptionsStruct.EquilibrationTime = 10E-3;
|
||||
OptionsStruct.QuenchTime = 10E-3;
|
||||
OptionsStruct.HoldTime = 10E-3;
|
||||
OptionsStruct.QuenchScatteringLength = true;
|
||||
OptionsStruct.RotateDipoles = false;
|
||||
OptionsStruct.FinalScatteringLength = 85;
|
||||
OptionsStruct.FinalScatteringLength = 75;
|
||||
OptionsStruct.FinalDipolarPolarAngle = deg2rad(90);
|
||||
OptionsStruct.FinalDipolarAzimuthAngle = 0;
|
||||
OptionsStruct.FinalDipolarAzimuthAngle = deg2rad(0);
|
||||
OptionsStruct.TimeStepSize = 1E-3; % in s
|
||||
OptionsStruct.NoiseScaleFactor = 0.010;
|
||||
|
||||
@ -114,7 +114,6 @@ OptionsStruct.PlotLive = true;
|
||||
OptionsStruct.JobNumber = 0;
|
||||
OptionsStruct.RunOnGPU = false;
|
||||
OptionsStruct.SaveData = true;
|
||||
OptionsStruct.SaveDirectory = SaveDirectory;
|
||||
options = Helper.convertstruct2cell(OptionsStruct);
|
||||
clear OptionsStruct
|
||||
|
||||
@ -513,13 +512,13 @@ JobNumber = 0;
|
||||
Plotter.visualizeGSWavefunction(SaveDirectory, JobNumber)
|
||||
%%
|
||||
SaveDirectory = './Results/Data_3D/TiltedDipoles15';
|
||||
JobNumber = 1;
|
||||
JobNumber = 2;
|
||||
Plotter.visualizeGSWavefunction(SaveDirectory, JobNumber)
|
||||
%%
|
||||
SaveDirectory = './Results/Data_3D/TiltedDipoles30';
|
||||
JobNumber = 1;
|
||||
JobNumber = 2;
|
||||
Plotter.visualizeGSWavefunction(SaveDirectory, JobNumber)
|
||||
%%
|
||||
SaveDirectory = './Results/Data_3D/TiltedDipoles45';
|
||||
JobNumber = 1;
|
||||
JobNumber = 2;
|
||||
Plotter.visualizeGSWavefunction(SaveDirectory, JobNumber)
|
||||
|
@ -177,7 +177,7 @@ function [psi] = propagateWavefunction(this,psi,Params,Transf,VDk,V,t_idx,Observ
|
||||
end
|
||||
|
||||
if this.DoSave
|
||||
save(sprintf(strcat(this.SaveDirectory, '/Run_%03i/psi_%i.mat'), Params.njob, Observ.res_idx),'psi','muchem','Observ','t_idx');
|
||||
save(sprintf(strcat(this.SaveDirectory, '/Run_%03i/psi_%i.mat'), Params.njob, Observ.res_idx),'psi','muchem','Observ','t_idx','Transf','Params');
|
||||
end
|
||||
end
|
||||
if any(isnan(psi(:)))
|
||||
@ -206,7 +206,7 @@ function [psi] = propagateWavefunction(this,psi,Params,Transf,VDk,V,t_idx,Observ
|
||||
disp('Run completed!');
|
||||
if this.DoSave
|
||||
disp('Saving data...');
|
||||
save(sprintf(strcat(this.SaveDirectory, '/Run_%03i/psi_%i.mat'),Params.njob,Observ.res_idx),'psi','muchem','Observ','t_idx');
|
||||
save(sprintf(strcat(this.SaveDirectory, '/Run_%03i/psi_%i.mat'),Params.njob,Observ.res_idx),'psi','muchem','Observ','t_idx','Transf','Params');
|
||||
disp('Save complete!');
|
||||
end
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user