From 4457a718c06d126cb6193280219ad866afce957d Mon Sep 17 00:00:00 2001 From: "Joachim Wuttke (o)" <j.wuttke@fz-juelich.de> Date: Fri, 29 Sep 2023 11:45:45 +0200 Subject: [PATCH] bayesian example now reading data as 1D table --- auto/Examples/bayesian/likelihood_sampling.py | 22 ++++++++----------- .../bayesian/likelihood_sampling.py | 22 ++++++++----------- rawEx/bayesian/likelihood_sampling.py | 22 ++++++++----------- 3 files changed, 27 insertions(+), 39 deletions(-) diff --git a/auto/Examples/bayesian/likelihood_sampling.py b/auto/Examples/bayesian/likelihood_sampling.py index 49ccddbce6b..1fa6401c3e3 100755 --- a/auto/Examples/bayesian/likelihood_sampling.py +++ b/auto/Examples/bayesian/likelihood_sampling.py @@ -57,9 +57,12 @@ def run_simulation(points, ni_thickness, ti_thickness): if __name__ == '__main__': filepath = os.path.join(datadir, "specular/genx_alternating_layers.dat.gz") - data = ba.readData2D(filepath).npArray() - data[:, 0] *= np.pi/360 # convert incident angles from deg to rad - data[:, 2] = data[:, 1]*0.1 # arbitrary uncertainties of 10% + flags = ba.ImportSettings1D("2alpha (deg)", "#", "", 1, 2) + data = ba.readData1D(filepath, ba.csv1D, flags) + + q = data.npXcenters() + y = data.npArray() + dy = y * 0.1 # arbitrary uncertainties def log_likelihood(P): """ @@ -70,9 +73,6 @@ if __name__ == '__main__': :array yerr: the ordinate uncertainty (dR-values) :return: log-likelihood """ - q = data[:, 0] - y = data[:, 1] - dy = data[:, 2] y_sim = run_simulation(q, *P) sigma2 = dy**2 + y_sim**2 return -0.5*np.sum((y - y_sim)**2/sigma2 + np.log(sigma2)) @@ -104,14 +104,10 @@ if __name__ == '__main__': plt.show() # Plot and show MLE and data of reflectivity - plt.errorbar(data[:, 0], - data[:, 1], - data[:, 2], - marker='.', - ls='') + plt.errorbar(q, y, dy, marker='.', ls='') plt.plot( - data[:, 0], - run_simulation(data[:, 0], *flat_samples.mean(axis=0)), + q, + run_simulation(q, *flat_samples.mean(axis=0)), '-') plt.xlabel('$\\alpha$/rad') plt.ylabel('$R$') diff --git a/auto/MiniExamples/bayesian/likelihood_sampling.py b/auto/MiniExamples/bayesian/likelihood_sampling.py index 91444312293..c5094bd6514 100755 --- a/auto/MiniExamples/bayesian/likelihood_sampling.py +++ b/auto/MiniExamples/bayesian/likelihood_sampling.py @@ -57,9 +57,12 @@ def run_simulation(points, ni_thickness, ti_thickness): if __name__ == '__main__': filepath = os.path.join(datadir, "specular/genx_alternating_layers.dat.gz") - data = ba.readData2D(filepath).npArray() - data[:, 0] *= np.pi/360 # convert incident angles from deg to rad - data[:, 2] = data[:, 1]*0.1 # arbitrary uncertainties of 10% + flags = ba.ImportSettings1D("2alpha (deg)", "#", "", 1, 2) + data = ba.readData1D(filepath, ba.csv1D, flags) + + q = data.npXcenters() + y = data.npArray() + dy = y * 0.1 # arbitrary uncertainties def log_likelihood(P): """ @@ -70,9 +73,6 @@ if __name__ == '__main__': :array yerr: the ordinate uncertainty (dR-values) :return: log-likelihood """ - q = data[:, 0] - y = data[:, 1] - dy = data[:, 2] y_sim = run_simulation(q, *P) sigma2 = dy**2 + y_sim**2 return -0.5*np.sum((y - y_sim)**2/sigma2 + np.log(sigma2)) @@ -104,14 +104,10 @@ if __name__ == '__main__': # plt.show() # Plot and show MLE and data of reflectivity - plt.errorbar(data[:, 0], - data[:, 1], - data[:, 2], - marker='.', - ls='') + plt.errorbar(q, y, dy, marker='.', ls='') plt.plot( - data[:, 0], - run_simulation(data[:, 0], *flat_samples.mean(axis=0)), + q, + run_simulation(q, *flat_samples.mean(axis=0)), '-') plt.xlabel('$\\alpha$/rad') plt.ylabel('$R$') diff --git a/rawEx/bayesian/likelihood_sampling.py b/rawEx/bayesian/likelihood_sampling.py index ce7f70578fd..be2f4332cfe 100755 --- a/rawEx/bayesian/likelihood_sampling.py +++ b/rawEx/bayesian/likelihood_sampling.py @@ -57,9 +57,12 @@ def run_simulation(points, ni_thickness, ti_thickness): if __name__ == '__main__': filepath = os.path.join(datadir, "specular/genx_alternating_layers.dat.gz") - data = ba.readData2D(filepath).npArray() - data[:, 0] *= np.pi/360 # convert incident angles from deg to rad - data[:, 2] = data[:, 1]*0.1 # arbitrary uncertainties of 10% + flags = ba.ImportSettings1D("2alpha (deg)", "#", "", 1, 2) + data = ba.readData1D(filepath, ba.csv1D, flags) + + q = data.npXcenters() + y = data.npArray() + dy = y * 0.1 # arbitrary uncertainties def log_likelihood(P): """ @@ -70,9 +73,6 @@ if __name__ == '__main__': :array yerr: the ordinate uncertainty (dR-values) :return: log-likelihood """ - q = data[:, 0] - y = data[:, 1] - dy = data[:, 2] y_sim = run_simulation(q, *P) sigma2 = dy**2 + y_sim**2 return -0.5*np.sum((y - y_sim)**2/sigma2 + np.log(sigma2)) @@ -104,14 +104,10 @@ if __name__ == '__main__': <%= sm ? "# " : "" %>plt.show() # Plot and show MLE and data of reflectivity - plt.errorbar(data[:, 0], - data[:, 1], - data[:, 2], - marker='.', - ls='') + plt.errorbar(q, y, dy, marker='.', ls='') plt.plot( - data[:, 0], - run_simulation(data[:, 0], *flat_samples.mean(axis=0)), + q, + run_simulation(q, *flat_samples.mean(axis=0)), '-') plt.xlabel('$\\alpha$/rad') plt.ylabel('$R$') -- GitLab