From ae9af32eda4e34920d2416362498fd8d92ce3b3c Mon Sep 17 00:00:00 2001 From: Karthik Chandrashekara Date: Sat, 23 Aug 2025 19:53:58 +0200 Subject: [PATCH] Latest complete update to scripts to save data and figures. --- .../+Analyzer/conductSpectralAnalysis.m | 2 +- Data-Analyzer/+Analyzer/performAnalysis.m | 2 +- Data-Analyzer/+Helper/batchAnalyze.m | 21 +++++---- .../BECToDroplets/plotAnalysisResults.m | 47 ++++++++++++++----- .../plotAnalysisResults.m | 47 ++++++++++++++----- .../BECToDropletsToStripes/runFullAnalysis.m | 2 + .../BECToStripes/plotAnalysisResults.m | 47 ++++++++++++++----- .../+Scripts/BECToStripes/runFullAnalysis.m | 2 +- .../plotAnalysisResults.m | 47 ++++++++++++++----- .../BECToStripesToDroplets/runFullAnalysis.m | 4 +- 10 files changed, 164 insertions(+), 57 deletions(-) diff --git a/Data-Analyzer/+Analyzer/conductSpectralAnalysis.m b/Data-Analyzer/+Analyzer/conductSpectralAnalysis.m index c320885..82515af 100644 --- a/Data-Analyzer/+Analyzer/conductSpectralAnalysis.m +++ b/Data-Analyzer/+Analyzer/conductSpectralAnalysis.m @@ -73,7 +73,7 @@ function results = conductSpectralAnalysis(od_imgs, scan_parameter_values, optio % Prepare folder to save figures if ~skipSaveFigures - saveFolder = fullfile(saveDirectory, "Results", "SpectralAnalysisSavedFigures"); + saveFolder = fullfile(saveDirectory, 'Results', 'SavedFigures', 'SpectralAnalysis'); if ~exist(saveFolder, 'dir') mkdir(saveFolder); end diff --git a/Data-Analyzer/+Analyzer/performAnalysis.m b/Data-Analyzer/+Analyzer/performAnalysis.m index 5b64cc4..74d5473 100644 --- a/Data-Analyzer/+Analyzer/performAnalysis.m +++ b/Data-Analyzer/+Analyzer/performAnalysis.m @@ -1,4 +1,4 @@ -function results = performAnalysis(options) +function [results, scan_parameter_values] = performAnalysis(options) arguments options.scan_parameter (1,:) char options.scan_reference_values (1,:) double diff --git a/Data-Analyzer/+Helper/batchAnalyze.m b/Data-Analyzer/+Helper/batchAnalyze.m index ad446a7..4e9b692 100644 --- a/Data-Analyzer/+Helper/batchAnalyze.m +++ b/Data-Analyzer/+Helper/batchAnalyze.m @@ -46,16 +46,18 @@ function results_all = batchAnalyze(dataSources, options) args = [fieldnames(options), struct2cell(options)]'; args = args(:)'; - % Perform analysis - analysisResults = Analyzer.performAnalysis(args{:}); + % Perform analysis (now returns 2 outputs) + [analysisResults, scan_parameter_values] = Analyzer.performAnalysis(args{:}); - % Store flat struct with metadata + results + % Store flat struct with metadata + results + options result = struct(); - result.sequence = ds.sequence; - result.date = ds.date; - result.run = runID; - result.path = folderPath; - result.results = analysisResults; + result.sequence = ds.sequence; + result.date = ds.date; + result.run = runID; + result.path = folderPath; + result.options = options; + result.results = analysisResults; + result.scan_parameter_values = scan_parameter_values; % Save each dataset as its own MAT file if ~isfield(options, 'skipSaveData') || ~options.skipSaveData @@ -73,10 +75,11 @@ function results_all = batchAnalyze(dataSources, options) end end + %% ---- Local function for saving results ---- function saveResultStruct(result, saveDirectory) % Define results folder - resultsFolder = fullfile(saveDirectory, "Results", "AnalysisSavedData"); + resultsFolder = fullfile(saveDirectory, "Results", "SavedData"); if ~exist(resultsFolder, 'dir') mkdir(resultsFolder); end diff --git a/Data-Analyzer/+Scripts/BECToDroplets/plotAnalysisResults.m b/Data-Analyzer/+Scripts/BECToDroplets/plotAnalysisResults.m index 3051592..d47329f 100644 --- a/Data-Analyzer/+Scripts/BECToDroplets/plotAnalysisResults.m +++ b/Data-Analyzer/+Scripts/BECToDroplets/plotAnalysisResults.m @@ -1,6 +1,31 @@ -idx = 1; -compiled_results = results_all{idx}.results; -options.skipSaveFigures = false; +% --- User chooses which dataset to load --- +datasetIdx = 1; % <-- change this to 1, 2, 3, ... +datasetName = sprintf('Dataset_%d', datasetIdx); + +% Detect the folder where this script is located and set that as the Base Directory +thisScriptPath = mfilename('fullpath'); +[thisScriptDir, ~, ~] = fileparts(thisScriptPath); +baseDir = thisScriptDir; % override if needed + +% Build path to dataset file +dataFile = fullfile(baseDir, "Results", "SavedData", datasetName + ".mat"); +data = load(dataFile); + +% Access dataset struct dynamically +datasetStruct = data.(datasetName); +compiled_results = datasetStruct.results; +scan_parameter_values = datasetStruct.scan_parameter_values; + +% Load the original options used during analysis +options = datasetStruct.options; % exact options used for this dataset +options.font = 'Bahnscrift'; % override if needed +options.skipSaveFigures = false; % override if needed + +%% ------------------ Create dataset-specific figure folder ------------------ +figSaveDir = fullfile(baseDir,'Results', 'SavedFigures', datasetName); +if ~exist(figSaveDir, 'dir') + mkdir(figSaveDir); +end %% ------------------ 1. Mean ± Std Plots ------------------ % Plot Radial Spectral Contrast @@ -11,7 +36,7 @@ Plotter.plotMeanWithSE(scan_parameter_values, compiled_results.spectral_analysis 'FigNum', 1, ... 'FontName', options.font, ... 'SaveFileName', 'RadialSpectralContrast.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... % save figures inside dataset-specific folder 'SkipSaveFigures', options.skipSaveFigures); % Plot Angular Spectral Weight @@ -22,7 +47,7 @@ Plotter.plotMeanWithSE(scan_parameter_values, compiled_results.spectral_analysis 'FigNum', 2, ... 'FontName', options.font, ... 'SaveFileName', 'AngularSpectralWeight.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'SkipSaveFigures', options.skipSaveFigures); % Plot Peak Offset Angular Correlation @@ -34,7 +59,7 @@ Plotter.plotMeanWithSE(options.scan_reference_values, compiled_results.custom_g_ 'YLim', [0 1], ... 'FontName', options.font, ... 'SaveFileName', 'PeakOffsetAngularCorrelation.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'SkipSaveFigures', options.skipSaveFigures); %% ------------------ 2. g²(θ) across transition ------------------ @@ -50,7 +75,7 @@ Plotter.plotG2(compiled_results.full_g2_results.g2_all, ... 'FontName', options.font, ... 'SkipSaveFigures', options.skipSaveFigures, ... 'SaveFileName', 'G2ThetaAcrossTransition.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'Colormap', @Colormaps.coolwarm); %% ------------------ 3. PDF of max g² across transition ------------------ @@ -62,7 +87,7 @@ Plotter.plotPDF(compiled_results.custom_g_results.max_g2_all_per_scan_parameter_ 'FontName', options.font, ... 'SkipSaveFigures', options.skipSaveFigures, ... 'SaveFileName', 'PDF_MaxG2AcrossTransition.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'NumPoints', 200, ... 'DataRange', [0 1.5], ... 'Colormap', @Colormaps.coolwarm, ... @@ -80,7 +105,7 @@ Plotter.plotCumulants(options.scan_reference_values, ... 'LineWidth', 1.5, ... 'SkipSaveFigures', options.skipSaveFigures, ... 'SaveFileName', 'CumulantOfPeakOffsetAngularCorrelation.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results']); + 'SaveDirectory', figSaveDir); %{ %% ------------------ 6. Average of Spectra Plots ------------------ @@ -92,7 +117,7 @@ Plotter.plotAverageSpectra(scan_parameter_values, ... 'ColormapPS', Colormaps.coolwarm(), ... 'Font', 'Bahnschrift', ... 'SaveFileName', 'avgSpectra.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'SkipSaveFigures', options.skipSaveFigures); %% ------------------ 7. Compare quantities ------------------ @@ -132,7 +157,7 @@ compareMultipleDatasets(scanValsCell, meanValsCell, stderrValsCell, ... 'XLabel', 'B (G)', ... 'YLabel', '$\mathrm{max}[g^{(2)}_{[50,70]}(\delta\theta)]$', ... 'SkipSaveFigures', options.skipSaveFigures, ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'SaveFileName', 'AngularCorrelation_Comparison.fig'); %% ------------------ 8. Heatmaps ------------------ diff --git a/Data-Analyzer/+Scripts/BECToDropletsToStripes/plotAnalysisResults.m b/Data-Analyzer/+Scripts/BECToDropletsToStripes/plotAnalysisResults.m index 3051592..d47329f 100644 --- a/Data-Analyzer/+Scripts/BECToDropletsToStripes/plotAnalysisResults.m +++ b/Data-Analyzer/+Scripts/BECToDropletsToStripes/plotAnalysisResults.m @@ -1,6 +1,31 @@ -idx = 1; -compiled_results = results_all{idx}.results; -options.skipSaveFigures = false; +% --- User chooses which dataset to load --- +datasetIdx = 1; % <-- change this to 1, 2, 3, ... +datasetName = sprintf('Dataset_%d', datasetIdx); + +% Detect the folder where this script is located and set that as the Base Directory +thisScriptPath = mfilename('fullpath'); +[thisScriptDir, ~, ~] = fileparts(thisScriptPath); +baseDir = thisScriptDir; % override if needed + +% Build path to dataset file +dataFile = fullfile(baseDir, "Results", "SavedData", datasetName + ".mat"); +data = load(dataFile); + +% Access dataset struct dynamically +datasetStruct = data.(datasetName); +compiled_results = datasetStruct.results; +scan_parameter_values = datasetStruct.scan_parameter_values; + +% Load the original options used during analysis +options = datasetStruct.options; % exact options used for this dataset +options.font = 'Bahnscrift'; % override if needed +options.skipSaveFigures = false; % override if needed + +%% ------------------ Create dataset-specific figure folder ------------------ +figSaveDir = fullfile(baseDir,'Results', 'SavedFigures', datasetName); +if ~exist(figSaveDir, 'dir') + mkdir(figSaveDir); +end %% ------------------ 1. Mean ± Std Plots ------------------ % Plot Radial Spectral Contrast @@ -11,7 +36,7 @@ Plotter.plotMeanWithSE(scan_parameter_values, compiled_results.spectral_analysis 'FigNum', 1, ... 'FontName', options.font, ... 'SaveFileName', 'RadialSpectralContrast.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... % save figures inside dataset-specific folder 'SkipSaveFigures', options.skipSaveFigures); % Plot Angular Spectral Weight @@ -22,7 +47,7 @@ Plotter.plotMeanWithSE(scan_parameter_values, compiled_results.spectral_analysis 'FigNum', 2, ... 'FontName', options.font, ... 'SaveFileName', 'AngularSpectralWeight.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'SkipSaveFigures', options.skipSaveFigures); % Plot Peak Offset Angular Correlation @@ -34,7 +59,7 @@ Plotter.plotMeanWithSE(options.scan_reference_values, compiled_results.custom_g_ 'YLim', [0 1], ... 'FontName', options.font, ... 'SaveFileName', 'PeakOffsetAngularCorrelation.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'SkipSaveFigures', options.skipSaveFigures); %% ------------------ 2. g²(θ) across transition ------------------ @@ -50,7 +75,7 @@ Plotter.plotG2(compiled_results.full_g2_results.g2_all, ... 'FontName', options.font, ... 'SkipSaveFigures', options.skipSaveFigures, ... 'SaveFileName', 'G2ThetaAcrossTransition.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'Colormap', @Colormaps.coolwarm); %% ------------------ 3. PDF of max g² across transition ------------------ @@ -62,7 +87,7 @@ Plotter.plotPDF(compiled_results.custom_g_results.max_g2_all_per_scan_parameter_ 'FontName', options.font, ... 'SkipSaveFigures', options.skipSaveFigures, ... 'SaveFileName', 'PDF_MaxG2AcrossTransition.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'NumPoints', 200, ... 'DataRange', [0 1.5], ... 'Colormap', @Colormaps.coolwarm, ... @@ -80,7 +105,7 @@ Plotter.plotCumulants(options.scan_reference_values, ... 'LineWidth', 1.5, ... 'SkipSaveFigures', options.skipSaveFigures, ... 'SaveFileName', 'CumulantOfPeakOffsetAngularCorrelation.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results']); + 'SaveDirectory', figSaveDir); %{ %% ------------------ 6. Average of Spectra Plots ------------------ @@ -92,7 +117,7 @@ Plotter.plotAverageSpectra(scan_parameter_values, ... 'ColormapPS', Colormaps.coolwarm(), ... 'Font', 'Bahnschrift', ... 'SaveFileName', 'avgSpectra.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'SkipSaveFigures', options.skipSaveFigures); %% ------------------ 7. Compare quantities ------------------ @@ -132,7 +157,7 @@ compareMultipleDatasets(scanValsCell, meanValsCell, stderrValsCell, ... 'XLabel', 'B (G)', ... 'YLabel', '$\mathrm{max}[g^{(2)}_{[50,70]}(\delta\theta)]$', ... 'SkipSaveFigures', options.skipSaveFigures, ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'SaveFileName', 'AngularCorrelation_Comparison.fig'); %% ------------------ 8. Heatmaps ------------------ diff --git a/Data-Analyzer/+Scripts/BECToDropletsToStripes/runFullAnalysis.m b/Data-Analyzer/+Scripts/BECToDropletsToStripes/runFullAnalysis.m index 75525d9..c7b451e 100644 --- a/Data-Analyzer/+Scripts/BECToDropletsToStripes/runFullAnalysis.m +++ b/Data-Analyzer/+Scripts/BECToDropletsToStripes/runFullAnalysis.m @@ -68,6 +68,8 @@ options.skipMasking = true; options.skipIntensityThresholding = true; options.skipBinarization = true; options.skipSaveFigures = true; +options.skipSaveData = false; +options.skipSaveOD = true; options.skipLivePlot = false; options.showProgressBar = true; diff --git a/Data-Analyzer/+Scripts/BECToStripes/plotAnalysisResults.m b/Data-Analyzer/+Scripts/BECToStripes/plotAnalysisResults.m index 3051592..d47329f 100644 --- a/Data-Analyzer/+Scripts/BECToStripes/plotAnalysisResults.m +++ b/Data-Analyzer/+Scripts/BECToStripes/plotAnalysisResults.m @@ -1,6 +1,31 @@ -idx = 1; -compiled_results = results_all{idx}.results; -options.skipSaveFigures = false; +% --- User chooses which dataset to load --- +datasetIdx = 1; % <-- change this to 1, 2, 3, ... +datasetName = sprintf('Dataset_%d', datasetIdx); + +% Detect the folder where this script is located and set that as the Base Directory +thisScriptPath = mfilename('fullpath'); +[thisScriptDir, ~, ~] = fileparts(thisScriptPath); +baseDir = thisScriptDir; % override if needed + +% Build path to dataset file +dataFile = fullfile(baseDir, "Results", "SavedData", datasetName + ".mat"); +data = load(dataFile); + +% Access dataset struct dynamically +datasetStruct = data.(datasetName); +compiled_results = datasetStruct.results; +scan_parameter_values = datasetStruct.scan_parameter_values; + +% Load the original options used during analysis +options = datasetStruct.options; % exact options used for this dataset +options.font = 'Bahnscrift'; % override if needed +options.skipSaveFigures = false; % override if needed + +%% ------------------ Create dataset-specific figure folder ------------------ +figSaveDir = fullfile(baseDir,'Results', 'SavedFigures', datasetName); +if ~exist(figSaveDir, 'dir') + mkdir(figSaveDir); +end %% ------------------ 1. Mean ± Std Plots ------------------ % Plot Radial Spectral Contrast @@ -11,7 +36,7 @@ Plotter.plotMeanWithSE(scan_parameter_values, compiled_results.spectral_analysis 'FigNum', 1, ... 'FontName', options.font, ... 'SaveFileName', 'RadialSpectralContrast.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... % save figures inside dataset-specific folder 'SkipSaveFigures', options.skipSaveFigures); % Plot Angular Spectral Weight @@ -22,7 +47,7 @@ Plotter.plotMeanWithSE(scan_parameter_values, compiled_results.spectral_analysis 'FigNum', 2, ... 'FontName', options.font, ... 'SaveFileName', 'AngularSpectralWeight.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'SkipSaveFigures', options.skipSaveFigures); % Plot Peak Offset Angular Correlation @@ -34,7 +59,7 @@ Plotter.plotMeanWithSE(options.scan_reference_values, compiled_results.custom_g_ 'YLim', [0 1], ... 'FontName', options.font, ... 'SaveFileName', 'PeakOffsetAngularCorrelation.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'SkipSaveFigures', options.skipSaveFigures); %% ------------------ 2. g²(θ) across transition ------------------ @@ -50,7 +75,7 @@ Plotter.plotG2(compiled_results.full_g2_results.g2_all, ... 'FontName', options.font, ... 'SkipSaveFigures', options.skipSaveFigures, ... 'SaveFileName', 'G2ThetaAcrossTransition.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'Colormap', @Colormaps.coolwarm); %% ------------------ 3. PDF of max g² across transition ------------------ @@ -62,7 +87,7 @@ Plotter.plotPDF(compiled_results.custom_g_results.max_g2_all_per_scan_parameter_ 'FontName', options.font, ... 'SkipSaveFigures', options.skipSaveFigures, ... 'SaveFileName', 'PDF_MaxG2AcrossTransition.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'NumPoints', 200, ... 'DataRange', [0 1.5], ... 'Colormap', @Colormaps.coolwarm, ... @@ -80,7 +105,7 @@ Plotter.plotCumulants(options.scan_reference_values, ... 'LineWidth', 1.5, ... 'SkipSaveFigures', options.skipSaveFigures, ... 'SaveFileName', 'CumulantOfPeakOffsetAngularCorrelation.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results']); + 'SaveDirectory', figSaveDir); %{ %% ------------------ 6. Average of Spectra Plots ------------------ @@ -92,7 +117,7 @@ Plotter.plotAverageSpectra(scan_parameter_values, ... 'ColormapPS', Colormaps.coolwarm(), ... 'Font', 'Bahnschrift', ... 'SaveFileName', 'avgSpectra.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'SkipSaveFigures', options.skipSaveFigures); %% ------------------ 7. Compare quantities ------------------ @@ -132,7 +157,7 @@ compareMultipleDatasets(scanValsCell, meanValsCell, stderrValsCell, ... 'XLabel', 'B (G)', ... 'YLabel', '$\mathrm{max}[g^{(2)}_{[50,70]}(\delta\theta)]$', ... 'SkipSaveFigures', options.skipSaveFigures, ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'SaveFileName', 'AngularCorrelation_Comparison.fig'); %% ------------------ 8. Heatmaps ------------------ diff --git a/Data-Analyzer/+Scripts/BECToStripes/runFullAnalysis.m b/Data-Analyzer/+Scripts/BECToStripes/runFullAnalysis.m index fcb0524..487b4b6 100644 --- a/Data-Analyzer/+Scripts/BECToStripes/runFullAnalysis.m +++ b/Data-Analyzer/+Scripts/BECToStripes/runFullAnalysis.m @@ -67,8 +67,8 @@ options.skipPreprocessing = true; options.skipMasking = true; options.skipIntensityThresholding = true; options.skipBinarization = true; -options.skipMovieRender = true; options.skipSaveFigures = true; +options.skipSaveData = false; options.skipSaveOD = true; options.skipLivePlot = false; options.showProgressBar = true; diff --git a/Data-Analyzer/+Scripts/BECToStripesToDroplets/plotAnalysisResults.m b/Data-Analyzer/+Scripts/BECToStripesToDroplets/plotAnalysisResults.m index 3051592..d47329f 100644 --- a/Data-Analyzer/+Scripts/BECToStripesToDroplets/plotAnalysisResults.m +++ b/Data-Analyzer/+Scripts/BECToStripesToDroplets/plotAnalysisResults.m @@ -1,6 +1,31 @@ -idx = 1; -compiled_results = results_all{idx}.results; -options.skipSaveFigures = false; +% --- User chooses which dataset to load --- +datasetIdx = 1; % <-- change this to 1, 2, 3, ... +datasetName = sprintf('Dataset_%d', datasetIdx); + +% Detect the folder where this script is located and set that as the Base Directory +thisScriptPath = mfilename('fullpath'); +[thisScriptDir, ~, ~] = fileparts(thisScriptPath); +baseDir = thisScriptDir; % override if needed + +% Build path to dataset file +dataFile = fullfile(baseDir, "Results", "SavedData", datasetName + ".mat"); +data = load(dataFile); + +% Access dataset struct dynamically +datasetStruct = data.(datasetName); +compiled_results = datasetStruct.results; +scan_parameter_values = datasetStruct.scan_parameter_values; + +% Load the original options used during analysis +options = datasetStruct.options; % exact options used for this dataset +options.font = 'Bahnscrift'; % override if needed +options.skipSaveFigures = false; % override if needed + +%% ------------------ Create dataset-specific figure folder ------------------ +figSaveDir = fullfile(baseDir,'Results', 'SavedFigures', datasetName); +if ~exist(figSaveDir, 'dir') + mkdir(figSaveDir); +end %% ------------------ 1. Mean ± Std Plots ------------------ % Plot Radial Spectral Contrast @@ -11,7 +36,7 @@ Plotter.plotMeanWithSE(scan_parameter_values, compiled_results.spectral_analysis 'FigNum', 1, ... 'FontName', options.font, ... 'SaveFileName', 'RadialSpectralContrast.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... % save figures inside dataset-specific folder 'SkipSaveFigures', options.skipSaveFigures); % Plot Angular Spectral Weight @@ -22,7 +47,7 @@ Plotter.plotMeanWithSE(scan_parameter_values, compiled_results.spectral_analysis 'FigNum', 2, ... 'FontName', options.font, ... 'SaveFileName', 'AngularSpectralWeight.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'SkipSaveFigures', options.skipSaveFigures); % Plot Peak Offset Angular Correlation @@ -34,7 +59,7 @@ Plotter.plotMeanWithSE(options.scan_reference_values, compiled_results.custom_g_ 'YLim', [0 1], ... 'FontName', options.font, ... 'SaveFileName', 'PeakOffsetAngularCorrelation.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'SkipSaveFigures', options.skipSaveFigures); %% ------------------ 2. g²(θ) across transition ------------------ @@ -50,7 +75,7 @@ Plotter.plotG2(compiled_results.full_g2_results.g2_all, ... 'FontName', options.font, ... 'SkipSaveFigures', options.skipSaveFigures, ... 'SaveFileName', 'G2ThetaAcrossTransition.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'Colormap', @Colormaps.coolwarm); %% ------------------ 3. PDF of max g² across transition ------------------ @@ -62,7 +87,7 @@ Plotter.plotPDF(compiled_results.custom_g_results.max_g2_all_per_scan_parameter_ 'FontName', options.font, ... 'SkipSaveFigures', options.skipSaveFigures, ... 'SaveFileName', 'PDF_MaxG2AcrossTransition.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'NumPoints', 200, ... 'DataRange', [0 1.5], ... 'Colormap', @Colormaps.coolwarm, ... @@ -80,7 +105,7 @@ Plotter.plotCumulants(options.scan_reference_values, ... 'LineWidth', 1.5, ... 'SkipSaveFigures', options.skipSaveFigures, ... 'SaveFileName', 'CumulantOfPeakOffsetAngularCorrelation.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results']); + 'SaveDirectory', figSaveDir); %{ %% ------------------ 6. Average of Spectra Plots ------------------ @@ -92,7 +117,7 @@ Plotter.plotAverageSpectra(scan_parameter_values, ... 'ColormapPS', Colormaps.coolwarm(), ... 'Font', 'Bahnschrift', ... 'SaveFileName', 'avgSpectra.fig', ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'SkipSaveFigures', options.skipSaveFigures); %% ------------------ 7. Compare quantities ------------------ @@ -132,7 +157,7 @@ compareMultipleDatasets(scanValsCell, meanValsCell, stderrValsCell, ... 'XLabel', 'B (G)', ... 'YLabel', '$\mathrm{max}[g^{(2)}_{[50,70]}(\delta\theta)]$', ... 'SkipSaveFigures', options.skipSaveFigures, ... - 'SaveDirectory', [options.saveDirectory '/Results'], ... + 'SaveDirectory', figSaveDir, ... 'SaveFileName', 'AngularCorrelation_Comparison.fig'); %% ------------------ 8. Heatmaps ------------------ diff --git a/Data-Analyzer/+Scripts/BECToStripesToDroplets/runFullAnalysis.m b/Data-Analyzer/+Scripts/BECToStripesToDroplets/runFullAnalysis.m index 75525d9..64aeae7 100644 --- a/Data-Analyzer/+Scripts/BECToStripesToDroplets/runFullAnalysis.m +++ b/Data-Analyzer/+Scripts/BECToStripesToDroplets/runFullAnalysis.m @@ -3,7 +3,7 @@ % Specify data location to run analysis on dataSources = { struct('sequence', 'StructuralPhaseTransition', ... - 'date', '2025/08/16', ... + 'date', '2025/08/18', ... 'runs', [8]) % specify run numbers as a string in "" or just as a numeric value }; @@ -68,6 +68,8 @@ options.skipMasking = true; options.skipIntensityThresholding = true; options.skipBinarization = true; options.skipSaveFigures = true; +options.skipSaveData = false; +options.skipSaveOD = true; options.skipLivePlot = false; options.showProgressBar = true;