Corrected the lack of re-calculation of VDk with new variational parameters, changed plotting to accept folder path as argument, increased number of gpus to run solver on.
This commit is contained in:
parent
37de6a6353
commit
308acca29d
@ -1,10 +1,8 @@
|
||||
function visualizeGSWavefunction2D(run_index)
|
||||
function visualizeGSWavefunction2D(folder_path, run_index)
|
||||
|
||||
set(0,'defaulttextInterpreter','latex')
|
||||
set(groot, 'defaultAxesTickLabelInterpreter','latex'); set(groot, 'defaultLegendInterpreter','latex');
|
||||
|
||||
folder_path = './Data';
|
||||
|
||||
% Load data
|
||||
Data = load(sprintf(horzcat(folder_path, '/Run_%03i/psi_gs.mat'),run_index),'psi','Params','Transf','Observ');
|
||||
|
||||
|
@ -1,9 +1,7 @@
|
||||
function analyzeRun2D(run_index)
|
||||
function analyzeRun2D(folder_path, run_index)
|
||||
set(0,'defaulttextInterpreter','latex')
|
||||
set(groot, 'defaultAxesTickLabelInterpreter','latex'); set(groot, 'defaultLegendInterpreter','latex');
|
||||
|
||||
folder_path = './Data';
|
||||
|
||||
% Load data
|
||||
Data = load(sprintf(horzcat(folder_path, '/Run_%03i/psi_gs.mat'),run_index),'psi','Observ','Transf','Params','VParams');
|
||||
|
||||
|
@ -111,3 +111,11 @@ Plotter.visualizeWavefunction2D(psi,Params,Transf)
|
||||
%% - Plot GS wavefunction
|
||||
Plotter.visualizeGSWavefunction2D(Params.njob)
|
||||
|
||||
%%
|
||||
|
||||
folder_path = './Data_TriangularPhase';
|
||||
run_index = 1;
|
||||
Plotter.visualizeGSWavefunction2D(folder_path, run_index)
|
||||
% analyzeRun2D(folder_path, run_index)
|
||||
|
||||
%%
|
@ -1,24 +1,12 @@
|
||||
function [psi,V,VDk] = initialize(this,Params,VParams,Transf)
|
||||
|
||||
% == User-defined potential == %
|
||||
V = this.Potential;
|
||||
assert(~anynan(V), 'Potential not defined! Specify as <SimulatorObject>.Potential = <PotentialsObject>.trap() + <AdditionalTerms>.');
|
||||
|
||||
% == Calculating the DDIs == %
|
||||
if isfile(strcat(this.SaveDirectory, '/VDk_M.mat'))
|
||||
VDk = load(sprintf(strcat(this.SaveDirectory, '/VDk_M.mat')));
|
||||
VDk = VDk.VDk;
|
||||
VDkSize = size(VDk);
|
||||
if VDkSize(1) ~= Params.Nx && VDkSize(2) ~= Params.Ny
|
||||
VDk = this.Calculator.calculateVDkWithCutoff(Transf, Params, VParams);
|
||||
save(sprintf(strcat(this.SaveDirectory, '/VDk_M.mat')),'VDk');
|
||||
fprintf('Saved VDk incomensurate with specified grid points: Computed and saved DDI potential for new grid size in Fourier space with cutoff.\n')
|
||||
end
|
||||
else
|
||||
VDk = this.Calculator.calculateVDkWithCutoff(Transf, Params, VParams);
|
||||
save(sprintf(strcat(this.SaveDirectory, '/VDk_M.mat')),'VDk');
|
||||
fprintf('Computed and saved DDI potential in Fourier space with cutoff.\n')
|
||||
end
|
||||
VDk = this.Calculator.calculateVDkWithCutoff(Transf, Params, VParams);
|
||||
save(sprintf(strcat(this.SaveDirectory, '/VDk_M.mat')),'VDk');
|
||||
fprintf('Computed and saved DDI potential in Fourier space with cutoff.\n')
|
||||
|
||||
% == Setting up the initial wavefunction == %
|
||||
psi = this.setupWavefunction(Params,Transf);
|
||||
|
@ -5,7 +5,7 @@
|
||||
# Request number of nodes and GPU for job
|
||||
#SBATCH --nodes=1
|
||||
#SBATCH --ntasks-per-node=1
|
||||
#SBATCH --gres=gpu:A40:1
|
||||
#SBATCH --gres=gpu:A40:3
|
||||
#SBATCH --mem=8G
|
||||
# Estimated wallclock time for job
|
||||
#SBATCH --time=10:00:00
|
||||
|
Loading…
Reference in New Issue
Block a user