itgenerate and display per-walker data - cosmo - front and backend for Markov-Chain Monte Carlo inversion of cosmogenic nuclide concentrations Err mx1.adamsgaard.dk 70 hgit clone git://src.adamsgaard.dk/cosmo URL:git://src.adamsgaard.dk/cosmo mx1.adamsgaard.dk 70 1Log /src/log.gph mx1.adamsgaard.dk 70 1Files /src/files.gph mx1.adamsgaard.dk 70 1Refs /src/refs.gph mx1.adamsgaard.dk 70 1README /src/file/README.md.gph mx1.adamsgaard.dk 70 1LICENSE /src/file/LICENSE.gph mx1.adamsgaard.dk 70 i--- Err mx1.adamsgaard.dk 70 1commit 95859a1a81f7efd051b16dc279538eaec8c94c7f /src/commit/95859a1a81f7efd051b16dc279538eaec8c94c7f.gph mx1.adamsgaard.dk 70 1parent 12eb539c6c9b5f7db4845203856aa03806071042 /src/commit/12eb539c6c9b5f7db4845203856aa03806071042.gph mx1.adamsgaard.dk 70 hAuthor: Anders Damsgaard URL:mailto:anders.damsgaard@geo.au.dk mx1.adamsgaard.dk 70 iDate: Mon, 7 Dec 2015 16:31:51 +0100 Err mx1.adamsgaard.dk 70 i Err mx1.adamsgaard.dk 70 igenerate and display per-walker data Err mx1.adamsgaard.dk 70 i Err mx1.adamsgaard.dk 70 iDiffstat: Err mx1.adamsgaard.dk 70 i M index.php | 2 ++ Err mx1.adamsgaard.dk 70 i M matlab/generate_plots.m | 53 ++++++++++++++++++++++++++++++ Err mx1.adamsgaard.dk 70 i Err mx1.adamsgaard.dk 70 i2 files changed, 55 insertions(+), 0 deletions(-) Err mx1.adamsgaard.dk 70 i--- Err mx1.adamsgaard.dk 70 1diff --git a/index.php b/index.php /src/file/index.php.gph mx1.adamsgaard.dk 70 it@@ -253,6 +253,8 @@ if (isset($_GET['wait_id']) && !empty($_GET['wait_id'])) { Err mx1.adamsgaard.dk 70 i Link to FIG Err mx1.adamsgaard.dk 70 i+
Err mx1.adamsgaard.dk 70 i+ Err mx1.adamsgaard.dk 70 i Err mx1.adamsgaard.dk 70 i Err mx1.adamsgaard.dk 70 i Err mx1.adamsgaard.dk 70 1diff --git a/matlab/generate_plots.m b/matlab/generate_plots.m /src/file/matlab/generate_plots.m.gph mx1.adamsgaard.dk 70 it@@ -227,6 +227,11 @@ if titles Err mx1.adamsgaard.dk 70 i end Err mx1.adamsgaard.dk 70 i Err mx1.adamsgaard.dk 70 i %% Plot one histogram per model parameter per walker Err mx1.adamsgaard.dk 70 i+epsilon_int_data_w = cell(1, Nwalkers); Err mx1.adamsgaard.dk 70 i+epsilon_gla_data_w = cell(1, Nwalkers); Err mx1.adamsgaard.dk 70 i+t_degla_data_w = cell(1, Nwalkers); Err mx1.adamsgaard.dk 70 i+record_threshold_data_w = cell(1, Nwalkers); Err mx1.adamsgaard.dk 70 i+ Err mx1.adamsgaard.dk 70 i disp('One histogram per model parameter per walker') Err mx1.adamsgaard.dk 70 i fh = [fh;figure('visible', show_figures)]; Err mx1.adamsgaard.dk 70 i for i1 = 1:M % for each model parameter Err mx1.adamsgaard.dk 70 it@@ -257,6 +262,7 @@ for i1 = 1:M % for each model parameter Err mx1.adamsgaard.dk 70 i epsilon_int_25(iwalk) = prctile(Ss{iwalk}.ms(i1,:)*1.0e6, 25); Err mx1.adamsgaard.dk 70 i epsilon_int_50(iwalk) = prctile(Ss{iwalk}.ms(i1,:)*1.0e6, 50); Err mx1.adamsgaard.dk 70 i epsilon_int_75(iwalk) = prctile(Ss{iwalk}.ms(i1,:)*1.0e6, 75); Err mx1.adamsgaard.dk 70 i+ epsilon_int_data_w{iwalk} = Ss{iwalk}.ms(i1,:)*1.0e6; Err mx1.adamsgaard.dk 70 i Err mx1.adamsgaard.dk 70 i elseif i1 == 2 Err mx1.adamsgaard.dk 70 i %xlabel('Glacial erosion rate [m/yr]') Err mx1.adamsgaard.dk 70 it@@ -267,12 +273,14 @@ for i1 = 1:M % for each model parameter Err mx1.adamsgaard.dk 70 i epsilon_gla_25(iwalk) = prctile(Ss{iwalk}.ms(i1,:)*1.0e6, 25); Err mx1.adamsgaard.dk 70 i epsilon_gla_50(iwalk) = prctile(Ss{iwalk}.ms(i1,:)*1.0e6, 50); Err mx1.adamsgaard.dk 70 i epsilon_gla_75(iwalk) = prctile(Ss{iwalk}.ms(i1,:)*1.0e6, 75); Err mx1.adamsgaard.dk 70 i+ epsilon_gla_data_w{iwalk} = Ss{iwalk}.ms(i1,:)*1.0e6; Err mx1.adamsgaard.dk 70 i Err mx1.adamsgaard.dk 70 i elseif i1 == 3 Err mx1.adamsgaard.dk 70 i %xlabel('Timing of last deglaciation [yr]') Err mx1.adamsgaard.dk 70 i xlabel('t_{degla} [yr]') Err mx1.adamsgaard.dk 70 i text(0.02,0.98,'c', 'Units', ... Err mx1.adamsgaard.dk 70 i 'Normalized', 'VerticalAlignment', 'Top') Err mx1.adamsgaard.dk 70 i+ t_degla_data_w{iwalk} = Ss{iwalk}.ms(i1,:); Err mx1.adamsgaard.dk 70 i Err mx1.adamsgaard.dk 70 i elseif i1 == 4 Err mx1.adamsgaard.dk 70 i %xlabel('$\delta^{18}$O$_\mathrm{threshold}$ [$^o/_{oo}$]', ... Err mx1.adamsgaard.dk 70 it@@ -283,6 +291,7 @@ for i1 = 1:M % for each model parameter Err mx1.adamsgaard.dk 70 i record_threshold_25(iwalk) = prctile(Ss{iwalk}.ms(i1,:), 25); Err mx1.adamsgaard.dk 70 i record_threshold_50(iwalk) = prctile(Ss{iwalk}.ms(i1,:), 50); Err mx1.adamsgaard.dk 70 i record_threshold_75(iwalk) = prctile(Ss{iwalk}.ms(i1,:), 75); Err mx1.adamsgaard.dk 70 i+ record_threshold_data_w{iwalk} = Ss{iwalk}.ms(i1,:); Err mx1.adamsgaard.dk 70 i Err mx1.adamsgaard.dk 70 i else Err mx1.adamsgaard.dk 70 i disp(['Using mname for i1 = ' i1]) Err mx1.adamsgaard.dk 70 it@@ -1100,3 +1109,47 @@ dlmwrite([save_file, '-eps_int.txt'], epsilon_int_data); Err mx1.adamsgaard.dk 70 i dlmwrite([save_file, '-eps_gla.txt'], epsilon_gla_data); Err mx1.adamsgaard.dk 70 i dlmwrite([save_file, '-t_degla.txt'], t_degla_data); Err mx1.adamsgaard.dk 70 i dlmwrite([save_file, '-d18O_threshold.txt'], record_threshold_data); Err mx1.adamsgaard.dk 70 i+ Err mx1.adamsgaard.dk 70 i+%% Save per-walker data Err mx1.adamsgaard.dk 70 i+for i=1:Nwalkers Err mx1.adamsgaard.dk 70 i+ dlmwrite([save_file, '-eps_int-w' num2str(i) '.txt'],... Err mx1.adamsgaard.dk 70 i+ epsilon_int_data_w{i}); Err mx1.adamsgaard.dk 70 i+ dlmwrite([save_file, '-eps_gla-w' num2str(i) '.txt'],... Err mx1.adamsgaard.dk 70 i+ epsilon_gla_data_w{i}); Err mx1.adamsgaard.dk 70 i+ dlmwrite([save_file, '-t_degla-w' num2str(i) '.txt'],... Err mx1.adamsgaard.dk 70 i+ t_degla_data_w{i}); Err mx1.adamsgaard.dk 70 i+ dlmwrite([save_file, '-d18O_threshold-w' num2str(i) '.txt'],... Err mx1.adamsgaard.dk 70 i+ record_threshold_data_w{i}); Err mx1.adamsgaard.dk 70 i+end Err mx1.adamsgaard.dk 70 i+ Err mx1.adamsgaard.dk 70 i+% create HTML snippet with results Err mx1.adamsgaard.dk 70 i+html = '\n'; Err mx1.adamsgaard.dk 70 i+for i=1:Nwalkers Err mx1.adamsgaard.dk 70 i+ html = [html, ... Err mx1.adamsgaard.dk 70 i+ ' Walker ', num2str(i), ... Err mx1.adamsgaard.dk 70 i+ ' εint ',... Err mx1.adamsgaard.dk 70 i+ 'data\n']; Err mx1.adamsgaard.dk 70 i+ html = [html, ... Err mx1.adamsgaard.dk 70 i+ ' Walker ', num2str(i), ... Err mx1.adamsgaard.dk 70 i+ ' εgla ',... Err mx1.adamsgaard.dk 70 i+ 'data\n']; Err mx1.adamsgaard.dk 70 i+ html = [html, ... Err mx1.adamsgaard.dk 70 i+ ' Walker ', num2str(i), ... Err mx1.adamsgaard.dk 70 i+ ' tdegla ',... Err mx1.adamsgaard.dk 70 i+ 'data\n']; Err mx1.adamsgaard.dk 70 i+ html = [html, ... Err mx1.adamsgaard.dk 70 i+ ' Walker ', num2str(i), ... Err mx1.adamsgaard.dk 70 i+ ' δ18O', ... Err mx1.adamsgaard.dk 70 i+ 'threshold data\n']; Err mx1.adamsgaard.dk 70 i+end Err mx1.adamsgaard.dk 70 i+fileID = fopen([save_file, '-walker-data.html','w'); Err mx1.adamsgaard.dk 70 i+fprintf(fileID, html); Err mx1.adamsgaard.dk 70 i+fclose(fileID); Err mx1.adamsgaard.dk 70 .