diff --git a/Dipolar-Gas-Simulator/+Scripts/run_locally.m b/Dipolar-Gas-Simulator/+Scripts/run_locally.m index bc51c64..d6de98e 100644 --- a/Dipolar-Gas-Simulator/+Scripts/run_locally.m +++ b/Dipolar-Gas-Simulator/+Scripts/run_locally.m @@ -64,6 +64,48 @@ Plotter.visualizeGSWavefunction(Params.njob) OptionsStruct = struct; +OptionsStruct.NumberOfAtoms = 2.0030e+07; +OptionsStruct.DipolarPolarAngle = 0; +OptionsStruct.DipolarAzimuthAngle = 0; +OptionsStruct.ScatteringLength = 98.0676; + +OptionsStruct.TrapFrequencies = [10, 10, 72.4]; +OptionsStruct.TrapPotentialType = 'None'; + +OptionsStruct.NumberOfGridPoints = [128, 128]; +OptionsStruct.Dimensions = [100, 100]; +OptionsStruct.TimeStepSize = 500E-6; % in s +OptionsStruct.MinimumTimeStepSize = 1E-5; % in s +OptionsStruct.TimeCutOff = 1E6; % in s +OptionsStruct.EnergyTolerance = 5E-10; +OptionsStruct.ResidualTolerance = 1E-04; +OptionsStruct.NoiseScaleFactor = 4; + +OptionsStruct.MaxIterations = 1; +OptionsStruct.VariationalWidth = 5.0; +OptionsStruct.WidthLowerBound = 0.2; +OptionsStruct.WidthUpperBound = 12; +OptionsStruct.WidthCutoff = 1e-2; + +OptionsStruct.PlotLive = true; +OptionsStruct.JobNumber = 2; +OptionsStruct.RunOnGPU = false; +OptionsStruct.SaveData = true; +OptionsStruct.SaveDirectory = './Data_TriangularPhase'; +options = Helper.convertstruct2cell(OptionsStruct); +clear OptionsStruct + +solver = VariationalSolver2D.DipolarGas(options{:}); +pot = VariationalSolver2D.Potentials(options{:}); +solver.Potential = pot.trap(); + +%-% Run Solver %-% +[Params, Transf, psi, V, VDk] = solver.run(); + +%% - Create Variational2D and Calculator object with specified options + +OptionsStruct = struct; + OptionsStruct.NumberOfAtoms = 3.0077e+07; OptionsStruct.DipolarPolarAngle = 0; OptionsStruct.DipolarAzimuthAngle = 0; @@ -81,7 +123,7 @@ OptionsStruct.EnergyTolerance = 5E-10; OptionsStruct.ResidualTolerance = 1E-04; OptionsStruct.NoiseScaleFactor = 4; -OptionsStruct.MaxIterations = 20; +OptionsStruct.MaxIterations = 1; OptionsStruct.VariationalWidth = 5.5; OptionsStruct.WidthLowerBound = 0.2; OptionsStruct.WidthUpperBound = 12; @@ -102,6 +144,48 @@ solver.Potential = pot.trap(); %-% Run Solver %-% [Params, Transf, psi, V, VDk] = solver.run(); +%% - Create Variational2D and Calculator object with specified options + +OptionsStruct = struct; + +OptionsStruct.NumberOfAtoms = 4.0102e+07; +OptionsStruct.DipolarPolarAngle = 0; +OptionsStruct.DipolarAzimuthAngle = 0; +OptionsStruct.ScatteringLength = 101.9903; + +OptionsStruct.TrapFrequencies = [10, 10, 72.4]; +OptionsStruct.TrapPotentialType = 'None'; + +OptionsStruct.NumberOfGridPoints = [128, 128]; +OptionsStruct.Dimensions = [100, 100]; +OptionsStruct.TimeStepSize = 500E-6; % in s +OptionsStruct.MinimumTimeStepSize = 1E-5; % in s +OptionsStruct.TimeCutOff = 1E6; % in s +OptionsStruct.EnergyTolerance = 5E-10; +OptionsStruct.ResidualTolerance = 1E-04; +OptionsStruct.NoiseScaleFactor = 4; + +OptionsStruct.MaxIterations = 1; +OptionsStruct.VariationalWidth = 7.5; +OptionsStruct.WidthLowerBound = 0.2; +OptionsStruct.WidthUpperBound = 12; +OptionsStruct.WidthCutoff = 1e-2; + +OptionsStruct.PlotLive = true; +OptionsStruct.JobNumber = 2; +OptionsStruct.RunOnGPU = false; +OptionsStruct.SaveData = true; +OptionsStruct.SaveDirectory = './Data_HoneycombPhase'; +options = Helper.convertstruct2cell(OptionsStruct); +clear OptionsStruct + +solver = VariationalSolver2D.DipolarGas(options{:}); +pot = VariationalSolver2D.Potentials(options{:}); +solver.Potential = pot.trap(); + +%-% Run Solver %-% +[Params, Transf, psi, V, VDk] = solver.run(); + %% - Plot numerical grid % Plotter.visualizeSpace2D(Transf) %% - Plot trap potential diff --git a/Dipolar-Gas-Simulator/+Scripts/run_on_cluster.m b/Dipolar-Gas-Simulator/+Scripts/run_on_cluster.m index 2c86b31..b257e2a 100644 --- a/Dipolar-Gas-Simulator/+Scripts/run_on_cluster.m +++ b/Dipolar-Gas-Simulator/+Scripts/run_on_cluster.m @@ -9,7 +9,7 @@ % as = ((as/add)*Params.add)/Params.a0 % Critical point: 102.5133; Triangular phase: 98.0676; Stripe phase: 100.0289; Honeycomb phase: 101.9903 -%{ + %% - Create Variational2D and Calculator object with specified options OptionsStruct = struct; @@ -51,7 +51,7 @@ solver.Potential = pot.trap(); %-% Run Solver %-% [Params, Transf, psi, V, VDk] = solver.run(); -%} + %% - Create Variational2D and Calculator object with specified options OptionsStruct = struct; @@ -93,7 +93,7 @@ solver.Potential = pot.trap(); %-% Run Solver %-% [Params, Transf, psi, V, VDk] = solver.run(); -%{ + %% - Create Variational2D and Calculator object with specified options OptionsStruct = struct; @@ -135,4 +135,3 @@ solver.Potential = pot.trap(); %-% Run Solver %-% [Params, Transf, psi, V, VDk] = solver.run(); -%} \ No newline at end of file