From 2ac071a4aefea18252812c28ce4cf887e04f7372 Mon Sep 17 00:00:00 2001 From: Mikhail Svechnikov <svechnikovmv@gmail.com> Date: Thu, 20 Mar 2025 10:56:37 +0100 Subject: [PATCH 1/4] rm default args from K_CorrelationModel --- Sample/Interface/AutocorrelationModels.h | 2 +- Sample/Multilayer/Layer.cpp | 2 +- Sample/StandardSample/FeNiBilayerBuilder.cpp | 2 +- .../StandardSample/MagneticLayersBuilder.cpp | 2 +- auto/Wrap/libBornAgainSample.py | 4 +- auto/Wrap/libBornAgainSample_wrap.cpp | 126 +----------------- 6 files changed, 8 insertions(+), 130 deletions(-) diff --git a/Sample/Interface/AutocorrelationModels.h b/Sample/Interface/AutocorrelationModels.h index c32d32c70ce..55b269eb0fd 100644 --- a/Sample/Interface/AutocorrelationModels.h +++ b/Sample/Interface/AutocorrelationModels.h @@ -44,7 +44,7 @@ protected: //! 14472-14478 (1993) class K_CorrelationModel : public AutocorrelationModel { public: - K_CorrelationModel(double sigma = 0, double hurst = 0.7, double lateralCorrLength = 25, + K_CorrelationModel(double sigma, double hurst, double lateralCorrLength, double maxSpatFrequency = 0.5); std::string className() const override { return "K_CorrelationModel"; } std::vector<ParaMeta> parDefs() const final; diff --git a/Sample/Multilayer/Layer.cpp b/Sample/Multilayer/Layer.cpp index 58880f2d976..555be9f02fe 100644 --- a/Sample/Multilayer/Layer.cpp +++ b/Sample/Multilayer/Layer.cpp @@ -22,7 +22,7 @@ namespace { LayerRoughness* zeroRoughness() { - K_CorrelationModel autocorr(0); + K_CorrelationModel autocorr(0, 0.7, 25); ErfInterlayer interlayer; return new LayerRoughness(&autocorr, &interlayer); } diff --git a/Sample/StandardSample/FeNiBilayerBuilder.cpp b/Sample/StandardSample/FeNiBilayerBuilder.cpp index c6c161ea610..ef4c99bc8d6 100644 --- a/Sample/StandardSample/FeNiBilayerBuilder.cpp +++ b/Sample/StandardSample/FeNiBilayerBuilder.cpp @@ -110,7 +110,7 @@ std::unique_ptr<Sample> FeNiBilayer::constructSample() auto m_Ni = MaterialBySLD("Ni", sldNi.real(), sldNi.imag()); auto m_Substrate = MaterialBySLD("Au", sldAu.real(), sldAu.imag()); - K_CorrelationModel autocorrelation(sigmaRoughness); + K_CorrelationModel autocorrelation(sigmaRoughness, 0.7, 25); LayerRoughness roughness{&autocorrelation, interlayerModel.get()}; Layer l_Fe{m_Fe, thicknessFe, &roughness}; diff --git a/Sample/StandardSample/MagneticLayersBuilder.cpp b/Sample/StandardSample/MagneticLayersBuilder.cpp index b3da64131ab..4a24d22928c 100644 --- a/Sample/StandardSample/MagneticLayersBuilder.cpp +++ b/Sample/StandardSample/MagneticLayersBuilder.cpp @@ -135,7 +135,7 @@ Sample* ExemplarySamples::createSimpleMagneticRotationWithRoughness(const std::s Material substrate_material = RefractiveMaterial("Substrate", 7e-6, 2e-8, substr_field); Material layer_material = RefractiveMaterial("MagLayer", 6e-4, 2e-8, layer_field); - K_CorrelationModel autocorrelation(sigmaRoughness); + K_CorrelationModel autocorrelation(sigmaRoughness, 0.7, 25); auto roughness = LayerRoughness(&autocorrelation, interlayerModel.get()); Layer vacuum_layer(vacuum_material); diff --git a/auto/Wrap/libBornAgainSample.py b/auto/Wrap/libBornAgainSample.py index ffd2e351953..1ca96dcab97 100644 --- a/auto/Wrap/libBornAgainSample.py +++ b/auto/Wrap/libBornAgainSample.py @@ -3912,8 +3912,8 @@ class K_CorrelationModel(AutocorrelationModel): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr - def __init__(self, sigma=0, hurst=0.7, lateralCorrLength=25, maxSpatFrequency=0.5): - r"""__init__(K_CorrelationModel self, double sigma=0, double hurst=0.7, double lateralCorrLength=25, double maxSpatFrequency=0.5) -> K_CorrelationModel""" + def __init__(self, sigma, hurst, lateralCorrLength, maxSpatFrequency=0.5): + r"""__init__(K_CorrelationModel self, double sigma, double hurst, double lateralCorrLength, double maxSpatFrequency=0.5) -> K_CorrelationModel""" _libBornAgainSample.K_CorrelationModel_swiginit(self, _libBornAgainSample.new_K_CorrelationModel(sigma, hurst, lateralCorrLength, maxSpatFrequency)) def className(self): diff --git a/auto/Wrap/libBornAgainSample_wrap.cpp b/auto/Wrap/libBornAgainSample_wrap.cpp index 658835f8815..79ec3e111d3 100644 --- a/auto/Wrap/libBornAgainSample_wrap.cpp +++ b/auto/Wrap/libBornAgainSample_wrap.cpp @@ -45486,96 +45486,6 @@ fail: } -SWIGINTERN PyObject *_wrap_new_K_CorrelationModel__SWIG_2(PyObject *self, Py_ssize_t nobjs, PyObject **swig_obj) { - PyObject *resultobj = 0; - double arg1 ; - double arg2 ; - double val1 ; - int ecode1 = 0 ; - double val2 ; - int ecode2 = 0 ; - K_CorrelationModel *result = 0 ; - - (void)self; - if ((nobjs < 2) || (nobjs > 2)) SWIG_fail; - ecode1 = SWIG_AsVal_double(swig_obj[0], &val1); - if (!SWIG_IsOK(ecode1)) { - SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_K_CorrelationModel" "', argument " "1"" of type '" "double""'"); - } - arg1 = static_cast< double >(val1); - ecode2 = SWIG_AsVal_double(swig_obj[1], &val2); - if (!SWIG_IsOK(ecode2)) { - SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_K_CorrelationModel" "', argument " "2"" of type '" "double""'"); - } - arg2 = static_cast< double >(val2); - { - try { - result = (K_CorrelationModel *)new K_CorrelationModel(arg1,arg2); - } catch (const bug& ex) { - SWIG_exception(SWIG_RuntimeError, bug_msg(ex).c_str()); - } catch (const std::exception& ex) { - SWIG_exception(SWIG_RuntimeError, exception_msg(ex).c_str()); - } - } - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_K_CorrelationModel, SWIG_POINTER_NEW | 0 ); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_new_K_CorrelationModel__SWIG_3(PyObject *self, Py_ssize_t nobjs, PyObject **swig_obj) { - PyObject *resultobj = 0; - double arg1 ; - double val1 ; - int ecode1 = 0 ; - K_CorrelationModel *result = 0 ; - - (void)self; - if ((nobjs < 1) || (nobjs > 1)) SWIG_fail; - ecode1 = SWIG_AsVal_double(swig_obj[0], &val1); - if (!SWIG_IsOK(ecode1)) { - SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_K_CorrelationModel" "', argument " "1"" of type '" "double""'"); - } - arg1 = static_cast< double >(val1); - { - try { - result = (K_CorrelationModel *)new K_CorrelationModel(arg1); - } catch (const bug& ex) { - SWIG_exception(SWIG_RuntimeError, bug_msg(ex).c_str()); - } catch (const std::exception& ex) { - SWIG_exception(SWIG_RuntimeError, exception_msg(ex).c_str()); - } - } - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_K_CorrelationModel, SWIG_POINTER_NEW | 0 ); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_new_K_CorrelationModel__SWIG_4(PyObject *self, Py_ssize_t nobjs, PyObject **SWIGUNUSEDPARM(swig_obj)) { - PyObject *resultobj = 0; - K_CorrelationModel *result = 0 ; - - (void)self; - if ((nobjs < 0) || (nobjs > 0)) SWIG_fail; - { - try { - result = (K_CorrelationModel *)new K_CorrelationModel(); - } catch (const bug& ex) { - SWIG_exception(SWIG_RuntimeError, bug_msg(ex).c_str()); - } catch (const std::exception& ex) { - SWIG_exception(SWIG_RuntimeError, exception_msg(ex).c_str()); - } - } - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_K_CorrelationModel, SWIG_POINTER_NEW | 0 ); - return resultobj; -fail: - return NULL; -} - - SWIGINTERN PyObject *_wrap_new_K_CorrelationModel(PyObject *self, PyObject *args) { Py_ssize_t argc; PyObject *argv[5] = { @@ -45584,35 +45494,6 @@ SWIGINTERN PyObject *_wrap_new_K_CorrelationModel(PyObject *self, PyObject *args if (!(argc = SWIG_Python_UnpackTuple(args, "new_K_CorrelationModel", 0, 4, argv))) SWIG_fail; --argc; - if (argc == 0) { - return _wrap_new_K_CorrelationModel__SWIG_4(self, argc, argv); - } - if (argc == 1) { - int _v = 0; - { - int res = SWIG_AsVal_double(argv[0], NULL); - _v = SWIG_CheckState(res); - } - if (_v) { - return _wrap_new_K_CorrelationModel__SWIG_3(self, argc, argv); - } - } - if (argc == 2) { - int _v = 0; - { - int res = SWIG_AsVal_double(argv[0], NULL); - _v = SWIG_CheckState(res); - } - if (_v) { - { - int res = SWIG_AsVal_double(argv[1], NULL); - _v = SWIG_CheckState(res); - } - if (_v) { - return _wrap_new_K_CorrelationModel__SWIG_2(self, argc, argv); - } - } - } if (argc == 3) { int _v = 0; { @@ -45668,10 +45549,7 @@ fail: SWIG_Python_RaiseOrModifyTypeError("Wrong number or type of arguments for overloaded function 'new_K_CorrelationModel'.\n" " Possible C/C++ prototypes are:\n" " K_CorrelationModel::K_CorrelationModel(double,double,double,double)\n" - " K_CorrelationModel::K_CorrelationModel(double,double,double)\n" - " K_CorrelationModel::K_CorrelationModel(double,double)\n" - " K_CorrelationModel::K_CorrelationModel(double)\n" - " K_CorrelationModel::K_CorrelationModel()\n"); + " K_CorrelationModel::K_CorrelationModel(double,double,double)\n"); return 0; } @@ -66172,7 +66050,7 @@ static PyMethodDef SwigMethods[] = { { "AutocorrelationModel_parDefs", _wrap_AutocorrelationModel_parDefs, METH_O, "AutocorrelationModel_parDefs(AutocorrelationModel self) -> std::vector< ParaMeta,std::allocator< ParaMeta > >"}, { "delete_AutocorrelationModel", _wrap_delete_AutocorrelationModel, METH_O, "delete_AutocorrelationModel(AutocorrelationModel self)"}, { "AutocorrelationModel_swigregister", AutocorrelationModel_swigregister, METH_O, NULL}, - { "new_K_CorrelationModel", _wrap_new_K_CorrelationModel, METH_VARARGS, "K_CorrelationModel(double sigma=0, double hurst=0.7, double lateralCorrLength=25, double maxSpatFrequency=0.5)"}, + { "new_K_CorrelationModel", _wrap_new_K_CorrelationModel, METH_VARARGS, "K_CorrelationModel(double sigma, double hurst, double lateralCorrLength, double maxSpatFrequency=0.5)"}, { "K_CorrelationModel_className", _wrap_K_CorrelationModel_className, METH_O, "K_CorrelationModel_className(K_CorrelationModel self) -> std::string"}, { "K_CorrelationModel_parDefs", _wrap_K_CorrelationModel_parDefs, METH_O, "K_CorrelationModel_parDefs(K_CorrelationModel self) -> std::vector< ParaMeta,std::allocator< ParaMeta > >"}, { "K_CorrelationModel_validate", _wrap_K_CorrelationModel_validate, METH_O, "K_CorrelationModel_validate(K_CorrelationModel self) -> std::string"}, -- GitLab From b20dd5c41c419799ab70aaaaeefcbddcecae2bd5 Mon Sep 17 00:00:00 2001 From: Mikhail Svechnikov <svechnikovmv@gmail.com> Date: Thu, 20 Mar 2025 11:04:16 +0100 Subject: [PATCH 2/4] adjust examples --- auto/Examples/fit/specular/Honeycomb_fit.py | 10 +++++----- auto/Examples/fit/specular/PolarizedSpinAsymmetry.py | 4 ++-- auto/Examples/fit/specular/Pt_layer_fit.py | 4 ++-- auto/Examples/fit/specular/TREFF_Ni_film.py | 4 ++-- auto/Examples/specular/MagneticLayerImperfect.py | 2 +- auto/Examples/specular/PolarizedSpinAsymmetry.py | 4 ++-- auto/Examples/specular/RoughnessModel.py | 2 +- .../specular/SpecularSimulationWithRoughness.py | 2 +- auto/FigExamples/fit/specular/Honeycomb_fit.py | 10 +++++----- .../FigExamples/fit/specular/PolarizedSpinAsymmetry.py | 4 ++-- auto/FigExamples/fit/specular/Pt_layer_fit.py | 4 ++-- auto/FigExamples/fit/specular/TREFF_Ni_film.py | 4 ++-- auto/FigExamples/specular/MagneticLayerImperfect.py | 2 +- auto/FigExamples/specular/PolarizedSpinAsymmetry.py | 4 ++-- auto/FigExamples/specular/RoughnessModel.py | 2 +- .../specular/SpecularSimulationWithRoughness.py | 2 +- auto/MiniExamples/fit/specular/Honeycomb_fit.py | 10 +++++----- .../fit/specular/PolarizedSpinAsymmetry.py | 4 ++-- auto/MiniExamples/fit/specular/Pt_layer_fit.py | 4 ++-- auto/MiniExamples/fit/specular/TREFF_Ni_film.py | 4 ++-- auto/MiniExamples/specular/MagneticLayerImperfect.py | 2 +- auto/MiniExamples/specular/PolarizedSpinAsymmetry.py | 4 ++-- auto/MiniExamples/specular/RoughnessModel.py | 2 +- .../specular/SpecularSimulationWithRoughness.py | 2 +- rawEx/fit/specular/Honeycomb_fit.py | 10 +++++----- rawEx/fit/specular/PolarizedSpinAsymmetry.py | 4 ++-- rawEx/fit/specular/Pt_layer_fit.py | 4 ++-- rawEx/fit/specular/TREFF_Ni_film.py | 4 ++-- rawEx/specular/MagneticLayerImperfect.py | 2 +- rawEx/specular/PolarizedSpinAsymmetry.py | 4 ++-- rawEx/specular/RoughnessModel.py | 2 +- rawEx/specular/SpecularSimulationWithRoughness.py | 2 +- 32 files changed, 64 insertions(+), 64 deletions(-) diff --git a/auto/Examples/fit/specular/Honeycomb_fit.py b/auto/Examples/fit/specular/Honeycomb_fit.py index 4aa383b2c1e..9d26b3a6253 100755 --- a/auto/Examples/fit/specular/Honeycomb_fit.py +++ b/auto/Examples/fit/specular/Honeycomb_fit.py @@ -46,11 +46,11 @@ def get_sample(P, sign, T): interlayer_model = ba.ErfInterlayer() - rPyOx_autocorr = ba.K_CorrelationModel(P["rPyOx"]*angstrom) - rPy2_autocorr = ba.K_CorrelationModel(P["rPy2"]*angstrom) - rPy1_autocorr = ba.K_CorrelationModel(P["rPy1"]*angstrom) - rSiO2_autocorr = ba.K_CorrelationModel(P["rSiO2"]*angstrom) - rSi_autocorr = ba.K_CorrelationModel(P["rSi"]*angstrom) + rPyOx_autocorr = ba.K_CorrelationModel(P["rPyOx"]*angstrom, 0.7, 250*angstrom) + rPy2_autocorr = ba.K_CorrelationModel(P["rPy2"]*angstrom, 0.7, 250*angstrom) + rPy1_autocorr = ba.K_CorrelationModel(P["rPy1"]*angstrom, 0.7, 250*angstrom) + rSiO2_autocorr = ba.K_CorrelationModel(P["rSiO2"]*angstrom, 0.7, 250*angstrom) + rSi_autocorr = ba.K_CorrelationModel(P["rSi"]*angstrom, 0.7, 250*angstrom) rPyOx = ba.LayerRoughness(rPyOx_autocorr, interlayer_model) rPy2 = ba.LayerRoughness(rPy2_autocorr, interlayer_model) diff --git a/auto/Examples/fit/specular/PolarizedSpinAsymmetry.py b/auto/Examples/fit/specular/PolarizedSpinAsymmetry.py index 620160d0ad1..6267f7414dd 100755 --- a/auto/Examples/fit/specular/PolarizedSpinAsymmetry.py +++ b/auto/Examples/fit/specular/PolarizedSpinAsymmetry.py @@ -46,8 +46,8 @@ def get_sample(P): material_layer = ba.MaterialBySLD("(Mg,Al,Fe)3O4", P["rho_Mafo"]*1e-6, 0, B) material_substrate = ba.MaterialBySLD("MgAl2O4", *sldMao) - r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom) - r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom) + r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 250*angstrom) + r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 250*angstrom) interlayer = ba.TanhInterlayer() diff --git a/auto/Examples/fit/specular/Pt_layer_fit.py b/auto/Examples/fit/specular/Pt_layer_fit.py index 56edceb5767..b23bb1c3eb3 100755 --- a/auto/Examples/fit/specular/Pt_layer_fit.py +++ b/auto/Examples/fit/specular/Pt_layer_fit.py @@ -32,8 +32,8 @@ def get_sample(P): interlayer = ba.TanhInterlayer() - si_autocorr = ba.K_CorrelationModel(P["r_si/nm"]) - pt_autocorr = ba.K_CorrelationModel(P["r_pt/nm"]) + si_autocorr = ba.K_CorrelationModel(P["r_si/nm"], 0.7, 250*angstrom) + pt_autocorr = ba.K_CorrelationModel(P["r_pt/nm"], 0.7, 250*angstrom) r_si = ba.LayerRoughness(si_autocorr, interlayer) r_pt = ba.LayerRoughness(pt_autocorr, interlayer) diff --git a/auto/Examples/fit/specular/TREFF_Ni_film.py b/auto/Examples/fit/specular/TREFF_Ni_film.py index 2a613fc1e43..682511f59b1 100755 --- a/auto/Examples/fit/specular/TREFF_Ni_film.py +++ b/auto/Examples/fit/specular/TREFF_Ni_film.py @@ -28,10 +28,10 @@ def get_sample(P): # Layers and interfaces interlayer = ba.TanhInterlayer() - Ni_autocorr = ba.K_CorrelationModel(P["sigma_Ni"]) + Ni_autocorr = ba.K_CorrelationModel(P["sigma_Ni"], 0.7, 25*nm) roughness_Ni = ba.LayerRoughness(Ni_autocorr, interlayer) - sub_autocorr = ba.K_CorrelationModel(P["sigma_Substrate"]) + sub_autocorr = ba.K_CorrelationModel(P["sigma_Substrate"], 0.7, 25*nm) roughness_Substrate = ba.LayerRoughness(sub_autocorr, interlayer) layer_Ni = ba.Layer(material_Ni_58, P["thickness"], roughness_Ni) diff --git a/auto/Examples/specular/MagneticLayerImperfect.py b/auto/Examples/specular/MagneticLayerImperfect.py index 918c4dca34c..5c605b80740 100755 --- a/auto/Examples/specular/MagneticLayerImperfect.py +++ b/auto/Examples/specular/MagneticLayerImperfect.py @@ -19,7 +19,7 @@ def get_sample(): material_Fe = ba.MaterialBySLD("Fe", 8.0241e-06, 6.0448e-10, B) material_substrate = ba.MaterialBySLD("MgO", 5.9803e-06, 9.3996e-12) - autocorr = ba.K_CorrelationModel(20*angstrom) + autocorr = ba.K_CorrelationModel(20*angstrom, 0.7, 250*angstrom) interlayer = ba.TanhInterlayer() roughness = ba.LayerRoughness(autocorr, interlayer) diff --git a/auto/Examples/specular/PolarizedSpinAsymmetry.py b/auto/Examples/specular/PolarizedSpinAsymmetry.py index 2410578dc11..a5ba638a5e8 100755 --- a/auto/Examples/specular/PolarizedSpinAsymmetry.py +++ b/auto/Examples/specular/PolarizedSpinAsymmetry.py @@ -47,8 +47,8 @@ def get_sample(P): material_layer = ba.MaterialBySLD("(Mg,Al,Fe)3O4", P["rho_Mafo"]*1e-6, 0, B) material_substrate = ba.MaterialBySLD("MgAl2O4", *sldMao) - r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom) - r_sub_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom) + r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 250*angstrom) + r_sub_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 250*angstrom) interlayer = ba.TanhInterlayer() diff --git a/auto/Examples/specular/RoughnessModel.py b/auto/Examples/specular/RoughnessModel.py index df5342a2bc9..23a23fd6290 100755 --- a/auto/Examples/specular/RoughnessModel.py +++ b/auto/Examples/specular/RoughnessModel.py @@ -16,7 +16,7 @@ def get_sample(interlayer): material_substrate = ba.MaterialBySLD("SiSubstrate", 2.0704e-06, 0) # Roughness - autocorr = ba.K_CorrelationModel(10*angstrom) + autocorr = ba.K_CorrelationModel(10*angstrom, 0.7, 250*angstrom) roughness = ba.LayerRoughness(autocorr, interlayer) # create layers diff --git a/auto/Examples/specular/SpecularSimulationWithRoughness.py b/auto/Examples/specular/SpecularSimulationWithRoughness.py index 845bd4f47ee..9a525198abd 100755 --- a/auto/Examples/specular/SpecularSimulationWithRoughness.py +++ b/auto/Examples/specular/SpecularSimulationWithRoughness.py @@ -16,7 +16,7 @@ def get_sample(): material_substrate = ba.MaterialBySLD("SiSubstrate", 2.0704e-06, 0) # roughness - autocorr = ba.K_CorrelationModel(1*nm) + autocorr = ba.K_CorrelationModel(1*nm, 0.7, 25*nm) interlayer = ba.TanhInterlayer() roughness = ba.LayerRoughness(autocorr, interlayer) diff --git a/auto/FigExamples/fit/specular/Honeycomb_fit.py b/auto/FigExamples/fit/specular/Honeycomb_fit.py index fee2317e035..d27a4e4c77b 100755 --- a/auto/FigExamples/fit/specular/Honeycomb_fit.py +++ b/auto/FigExamples/fit/specular/Honeycomb_fit.py @@ -46,11 +46,11 @@ def get_sample(P, sign, T): interlayer_model = ba.ErfInterlayer() - rPyOx_autocorr = ba.K_CorrelationModel(P["rPyOx"]*angstrom) - rPy2_autocorr = ba.K_CorrelationModel(P["rPy2"]*angstrom) - rPy1_autocorr = ba.K_CorrelationModel(P["rPy1"]*angstrom) - rSiO2_autocorr = ba.K_CorrelationModel(P["rSiO2"]*angstrom) - rSi_autocorr = ba.K_CorrelationModel(P["rSi"]*angstrom) + rPyOx_autocorr = ba.K_CorrelationModel(P["rPyOx"]*angstrom, 0.7, 250*angstrom) + rPy2_autocorr = ba.K_CorrelationModel(P["rPy2"]*angstrom, 0.7, 250*angstrom) + rPy1_autocorr = ba.K_CorrelationModel(P["rPy1"]*angstrom, 0.7, 250*angstrom) + rSiO2_autocorr = ba.K_CorrelationModel(P["rSiO2"]*angstrom, 0.7, 250*angstrom) + rSi_autocorr = ba.K_CorrelationModel(P["rSi"]*angstrom, 0.7, 250*angstrom) rPyOx = ba.LayerRoughness(rPyOx_autocorr, interlayer_model) rPy2 = ba.LayerRoughness(rPy2_autocorr, interlayer_model) diff --git a/auto/FigExamples/fit/specular/PolarizedSpinAsymmetry.py b/auto/FigExamples/fit/specular/PolarizedSpinAsymmetry.py index b80b6280d02..5ac5dc8e239 100755 --- a/auto/FigExamples/fit/specular/PolarizedSpinAsymmetry.py +++ b/auto/FigExamples/fit/specular/PolarizedSpinAsymmetry.py @@ -46,8 +46,8 @@ def get_sample(P): material_layer = ba.MaterialBySLD("(Mg,Al,Fe)3O4", P["rho_Mafo"]*1e-6, 0, B) material_substrate = ba.MaterialBySLD("MgAl2O4", *sldMao) - r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom) - r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom) + r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 250*angstrom) + r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 250*angstrom) interlayer = ba.TanhInterlayer() diff --git a/auto/FigExamples/fit/specular/Pt_layer_fit.py b/auto/FigExamples/fit/specular/Pt_layer_fit.py index 24bf5f3aa85..b1edb462396 100755 --- a/auto/FigExamples/fit/specular/Pt_layer_fit.py +++ b/auto/FigExamples/fit/specular/Pt_layer_fit.py @@ -32,8 +32,8 @@ def get_sample(P): interlayer = ba.TanhInterlayer() - si_autocorr = ba.K_CorrelationModel(P["r_si/nm"]) - pt_autocorr = ba.K_CorrelationModel(P["r_pt/nm"]) + si_autocorr = ba.K_CorrelationModel(P["r_si/nm"], 0.7, 250*angstrom) + pt_autocorr = ba.K_CorrelationModel(P["r_pt/nm"], 0.7, 250*angstrom) r_si = ba.LayerRoughness(si_autocorr, interlayer) r_pt = ba.LayerRoughness(pt_autocorr, interlayer) diff --git a/auto/FigExamples/fit/specular/TREFF_Ni_film.py b/auto/FigExamples/fit/specular/TREFF_Ni_film.py index 69b801eabc7..8f47984d128 100755 --- a/auto/FigExamples/fit/specular/TREFF_Ni_film.py +++ b/auto/FigExamples/fit/specular/TREFF_Ni_film.py @@ -28,10 +28,10 @@ def get_sample(P): # Layers and interfaces interlayer = ba.TanhInterlayer() - Ni_autocorr = ba.K_CorrelationModel(P["sigma_Ni"]) + Ni_autocorr = ba.K_CorrelationModel(P["sigma_Ni"], 0.7, 25*nm) roughness_Ni = ba.LayerRoughness(Ni_autocorr, interlayer) - sub_autocorr = ba.K_CorrelationModel(P["sigma_Substrate"]) + sub_autocorr = ba.K_CorrelationModel(P["sigma_Substrate"], 0.7, 25*nm) roughness_Substrate = ba.LayerRoughness(sub_autocorr, interlayer) layer_Ni = ba.Layer(material_Ni_58, P["thickness"], roughness_Ni) diff --git a/auto/FigExamples/specular/MagneticLayerImperfect.py b/auto/FigExamples/specular/MagneticLayerImperfect.py index edced923301..d4d8bacb20f 100755 --- a/auto/FigExamples/specular/MagneticLayerImperfect.py +++ b/auto/FigExamples/specular/MagneticLayerImperfect.py @@ -19,7 +19,7 @@ def get_sample(): material_Fe = ba.MaterialBySLD("Fe", 8.0241e-06, 6.0448e-10, B) material_substrate = ba.MaterialBySLD("MgO", 5.9803e-06, 9.3996e-12) - autocorr = ba.K_CorrelationModel(20*angstrom) + autocorr = ba.K_CorrelationModel(20*angstrom, 0.7, 250*angstrom) interlayer = ba.TanhInterlayer() roughness = ba.LayerRoughness(autocorr, interlayer) diff --git a/auto/FigExamples/specular/PolarizedSpinAsymmetry.py b/auto/FigExamples/specular/PolarizedSpinAsymmetry.py index 51a7201e6ba..2fb6c6ce985 100755 --- a/auto/FigExamples/specular/PolarizedSpinAsymmetry.py +++ b/auto/FigExamples/specular/PolarizedSpinAsymmetry.py @@ -47,8 +47,8 @@ def get_sample(P): material_layer = ba.MaterialBySLD("(Mg,Al,Fe)3O4", P["rho_Mafo"]*1e-6, 0, B) material_substrate = ba.MaterialBySLD("MgAl2O4", *sldMao) - r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom) - r_sub_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom) + r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 250*angstrom) + r_sub_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 250*angstrom) interlayer = ba.TanhInterlayer() diff --git a/auto/FigExamples/specular/RoughnessModel.py b/auto/FigExamples/specular/RoughnessModel.py index 72a3a1342d1..b7b7c4efca7 100755 --- a/auto/FigExamples/specular/RoughnessModel.py +++ b/auto/FigExamples/specular/RoughnessModel.py @@ -16,7 +16,7 @@ def get_sample(interlayer): material_substrate = ba.MaterialBySLD("SiSubstrate", 2.0704e-06, 0) # Roughness - autocorr = ba.K_CorrelationModel(10*angstrom) + autocorr = ba.K_CorrelationModel(10*angstrom, 0.7, 250*angstrom) roughness = ba.LayerRoughness(autocorr, interlayer) # create layers diff --git a/auto/FigExamples/specular/SpecularSimulationWithRoughness.py b/auto/FigExamples/specular/SpecularSimulationWithRoughness.py index 92323c2379a..8d9cc70eca2 100755 --- a/auto/FigExamples/specular/SpecularSimulationWithRoughness.py +++ b/auto/FigExamples/specular/SpecularSimulationWithRoughness.py @@ -16,7 +16,7 @@ def get_sample(): material_substrate = ba.MaterialBySLD("SiSubstrate", 2.0704e-06, 0) # roughness - autocorr = ba.K_CorrelationModel(1*nm) + autocorr = ba.K_CorrelationModel(1*nm, 0.7, 25*nm) interlayer = ba.TanhInterlayer() roughness = ba.LayerRoughness(autocorr, interlayer) diff --git a/auto/MiniExamples/fit/specular/Honeycomb_fit.py b/auto/MiniExamples/fit/specular/Honeycomb_fit.py index fee2317e035..d27a4e4c77b 100755 --- a/auto/MiniExamples/fit/specular/Honeycomb_fit.py +++ b/auto/MiniExamples/fit/specular/Honeycomb_fit.py @@ -46,11 +46,11 @@ def get_sample(P, sign, T): interlayer_model = ba.ErfInterlayer() - rPyOx_autocorr = ba.K_CorrelationModel(P["rPyOx"]*angstrom) - rPy2_autocorr = ba.K_CorrelationModel(P["rPy2"]*angstrom) - rPy1_autocorr = ba.K_CorrelationModel(P["rPy1"]*angstrom) - rSiO2_autocorr = ba.K_CorrelationModel(P["rSiO2"]*angstrom) - rSi_autocorr = ba.K_CorrelationModel(P["rSi"]*angstrom) + rPyOx_autocorr = ba.K_CorrelationModel(P["rPyOx"]*angstrom, 0.7, 250*angstrom) + rPy2_autocorr = ba.K_CorrelationModel(P["rPy2"]*angstrom, 0.7, 250*angstrom) + rPy1_autocorr = ba.K_CorrelationModel(P["rPy1"]*angstrom, 0.7, 250*angstrom) + rSiO2_autocorr = ba.K_CorrelationModel(P["rSiO2"]*angstrom, 0.7, 250*angstrom) + rSi_autocorr = ba.K_CorrelationModel(P["rSi"]*angstrom, 0.7, 250*angstrom) rPyOx = ba.LayerRoughness(rPyOx_autocorr, interlayer_model) rPy2 = ba.LayerRoughness(rPy2_autocorr, interlayer_model) diff --git a/auto/MiniExamples/fit/specular/PolarizedSpinAsymmetry.py b/auto/MiniExamples/fit/specular/PolarizedSpinAsymmetry.py index b80b6280d02..5ac5dc8e239 100755 --- a/auto/MiniExamples/fit/specular/PolarizedSpinAsymmetry.py +++ b/auto/MiniExamples/fit/specular/PolarizedSpinAsymmetry.py @@ -46,8 +46,8 @@ def get_sample(P): material_layer = ba.MaterialBySLD("(Mg,Al,Fe)3O4", P["rho_Mafo"]*1e-6, 0, B) material_substrate = ba.MaterialBySLD("MgAl2O4", *sldMao) - r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom) - r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom) + r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 250*angstrom) + r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 250*angstrom) interlayer = ba.TanhInterlayer() diff --git a/auto/MiniExamples/fit/specular/Pt_layer_fit.py b/auto/MiniExamples/fit/specular/Pt_layer_fit.py index 24bf5f3aa85..b1edb462396 100755 --- a/auto/MiniExamples/fit/specular/Pt_layer_fit.py +++ b/auto/MiniExamples/fit/specular/Pt_layer_fit.py @@ -32,8 +32,8 @@ def get_sample(P): interlayer = ba.TanhInterlayer() - si_autocorr = ba.K_CorrelationModel(P["r_si/nm"]) - pt_autocorr = ba.K_CorrelationModel(P["r_pt/nm"]) + si_autocorr = ba.K_CorrelationModel(P["r_si/nm"], 0.7, 250*angstrom) + pt_autocorr = ba.K_CorrelationModel(P["r_pt/nm"], 0.7, 250*angstrom) r_si = ba.LayerRoughness(si_autocorr, interlayer) r_pt = ba.LayerRoughness(pt_autocorr, interlayer) diff --git a/auto/MiniExamples/fit/specular/TREFF_Ni_film.py b/auto/MiniExamples/fit/specular/TREFF_Ni_film.py index ed8088a84f7..6ac5f481d56 100755 --- a/auto/MiniExamples/fit/specular/TREFF_Ni_film.py +++ b/auto/MiniExamples/fit/specular/TREFF_Ni_film.py @@ -28,10 +28,10 @@ def get_sample(P): # Layers and interfaces interlayer = ba.TanhInterlayer() - Ni_autocorr = ba.K_CorrelationModel(P["sigma_Ni"]) + Ni_autocorr = ba.K_CorrelationModel(P["sigma_Ni"], 0.7, 25*nm) roughness_Ni = ba.LayerRoughness(Ni_autocorr, interlayer) - sub_autocorr = ba.K_CorrelationModel(P["sigma_Substrate"]) + sub_autocorr = ba.K_CorrelationModel(P["sigma_Substrate"], 0.7, 25*nm) roughness_Substrate = ba.LayerRoughness(sub_autocorr, interlayer) layer_Ni = ba.Layer(material_Ni_58, P["thickness"], roughness_Ni) diff --git a/auto/MiniExamples/specular/MagneticLayerImperfect.py b/auto/MiniExamples/specular/MagneticLayerImperfect.py index edced923301..d4d8bacb20f 100755 --- a/auto/MiniExamples/specular/MagneticLayerImperfect.py +++ b/auto/MiniExamples/specular/MagneticLayerImperfect.py @@ -19,7 +19,7 @@ def get_sample(): material_Fe = ba.MaterialBySLD("Fe", 8.0241e-06, 6.0448e-10, B) material_substrate = ba.MaterialBySLD("MgO", 5.9803e-06, 9.3996e-12) - autocorr = ba.K_CorrelationModel(20*angstrom) + autocorr = ba.K_CorrelationModel(20*angstrom, 0.7, 250*angstrom) interlayer = ba.TanhInterlayer() roughness = ba.LayerRoughness(autocorr, interlayer) diff --git a/auto/MiniExamples/specular/PolarizedSpinAsymmetry.py b/auto/MiniExamples/specular/PolarizedSpinAsymmetry.py index 51a7201e6ba..2fb6c6ce985 100755 --- a/auto/MiniExamples/specular/PolarizedSpinAsymmetry.py +++ b/auto/MiniExamples/specular/PolarizedSpinAsymmetry.py @@ -47,8 +47,8 @@ def get_sample(P): material_layer = ba.MaterialBySLD("(Mg,Al,Fe)3O4", P["rho_Mafo"]*1e-6, 0, B) material_substrate = ba.MaterialBySLD("MgAl2O4", *sldMao) - r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom) - r_sub_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom) + r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 250*angstrom) + r_sub_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 250*angstrom) interlayer = ba.TanhInterlayer() diff --git a/auto/MiniExamples/specular/RoughnessModel.py b/auto/MiniExamples/specular/RoughnessModel.py index 49deb3d398e..9b89abd8212 100755 --- a/auto/MiniExamples/specular/RoughnessModel.py +++ b/auto/MiniExamples/specular/RoughnessModel.py @@ -16,7 +16,7 @@ def get_sample(interlayer): material_substrate = ba.MaterialBySLD("SiSubstrate", 2.0704e-06, 0) # Roughness - autocorr = ba.K_CorrelationModel(10*angstrom) + autocorr = ba.K_CorrelationModel(10*angstrom, 0.7, 250*angstrom) roughness = ba.LayerRoughness(autocorr, interlayer) # create layers diff --git a/auto/MiniExamples/specular/SpecularSimulationWithRoughness.py b/auto/MiniExamples/specular/SpecularSimulationWithRoughness.py index 5c4fc002d63..f022e089360 100755 --- a/auto/MiniExamples/specular/SpecularSimulationWithRoughness.py +++ b/auto/MiniExamples/specular/SpecularSimulationWithRoughness.py @@ -16,7 +16,7 @@ def get_sample(): material_substrate = ba.MaterialBySLD("SiSubstrate", 2.0704e-06, 0) # roughness - autocorr = ba.K_CorrelationModel(1*nm) + autocorr = ba.K_CorrelationModel(1*nm, 0.7, 25*nm) interlayer = ba.TanhInterlayer() roughness = ba.LayerRoughness(autocorr, interlayer) diff --git a/rawEx/fit/specular/Honeycomb_fit.py b/rawEx/fit/specular/Honeycomb_fit.py index bcf4127182c..c440577bca2 100755 --- a/rawEx/fit/specular/Honeycomb_fit.py +++ b/rawEx/fit/specular/Honeycomb_fit.py @@ -46,11 +46,11 @@ def get_sample(P, sign, T): interlayer_model = ba.ErfInterlayer() - rPyOx_autocorr = ba.K_CorrelationModel(P["rPyOx"]*angstrom) - rPy2_autocorr = ba.K_CorrelationModel(P["rPy2"]*angstrom) - rPy1_autocorr = ba.K_CorrelationModel(P["rPy1"]*angstrom) - rSiO2_autocorr = ba.K_CorrelationModel(P["rSiO2"]*angstrom) - rSi_autocorr = ba.K_CorrelationModel(P["rSi"]*angstrom) + rPyOx_autocorr = ba.K_CorrelationModel(P["rPyOx"]*angstrom, 0.7, 250*angstrom) + rPy2_autocorr = ba.K_CorrelationModel(P["rPy2"]*angstrom, 0.7, 250*angstrom) + rPy1_autocorr = ba.K_CorrelationModel(P["rPy1"]*angstrom, 0.7, 250*angstrom) + rSiO2_autocorr = ba.K_CorrelationModel(P["rSiO2"]*angstrom, 0.7, 250*angstrom) + rSi_autocorr = ba.K_CorrelationModel(P["rSi"]*angstrom, 0.7, 250*angstrom) rPyOx = ba.LayerRoughness(rPyOx_autocorr, interlayer_model) rPy2 = ba.LayerRoughness(rPy2_autocorr, interlayer_model) diff --git a/rawEx/fit/specular/PolarizedSpinAsymmetry.py b/rawEx/fit/specular/PolarizedSpinAsymmetry.py index ebde5a32c15..fa9d0cdea72 100755 --- a/rawEx/fit/specular/PolarizedSpinAsymmetry.py +++ b/rawEx/fit/specular/PolarizedSpinAsymmetry.py @@ -46,8 +46,8 @@ def get_sample(P): material_layer = ba.MaterialBySLD("(Mg,Al,Fe)3O4", P["rho_Mafo"]*1e-6, 0, B) material_substrate = ba.MaterialBySLD("MgAl2O4", *sldMao) - r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom) - r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom) + r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 250*angstrom) + r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 250*angstrom) interlayer = ba.TanhInterlayer() diff --git a/rawEx/fit/specular/Pt_layer_fit.py b/rawEx/fit/specular/Pt_layer_fit.py index 76da673f481..a29bc69a088 100755 --- a/rawEx/fit/specular/Pt_layer_fit.py +++ b/rawEx/fit/specular/Pt_layer_fit.py @@ -32,8 +32,8 @@ def get_sample(P): interlayer = ba.TanhInterlayer() - si_autocorr = ba.K_CorrelationModel(P["r_si/nm"]) - pt_autocorr = ba.K_CorrelationModel(P["r_pt/nm"]) + si_autocorr = ba.K_CorrelationModel(P["r_si/nm"], 0.7, 250*angstrom) + pt_autocorr = ba.K_CorrelationModel(P["r_pt/nm"], 0.7, 250*angstrom) r_si = ba.LayerRoughness(si_autocorr, interlayer) r_pt = ba.LayerRoughness(pt_autocorr, interlayer) diff --git a/rawEx/fit/specular/TREFF_Ni_film.py b/rawEx/fit/specular/TREFF_Ni_film.py index d99dc2b8a9d..5f437c91d8b 100755 --- a/rawEx/fit/specular/TREFF_Ni_film.py +++ b/rawEx/fit/specular/TREFF_Ni_film.py @@ -28,10 +28,10 @@ def get_sample(P): # Layers and interfaces interlayer = ba.TanhInterlayer() - Ni_autocorr = ba.K_CorrelationModel(P["sigma_Ni"]) + Ni_autocorr = ba.K_CorrelationModel(P["sigma_Ni"], 0.7, 25*nm) roughness_Ni = ba.LayerRoughness(Ni_autocorr, interlayer) - sub_autocorr = ba.K_CorrelationModel(P["sigma_Substrate"]) + sub_autocorr = ba.K_CorrelationModel(P["sigma_Substrate"], 0.7, 25*nm) roughness_Substrate = ba.LayerRoughness(sub_autocorr, interlayer) layer_Ni = ba.Layer(material_Ni_58, P["thickness"], roughness_Ni) diff --git a/rawEx/specular/MagneticLayerImperfect.py b/rawEx/specular/MagneticLayerImperfect.py index 892cddd1269..7a227be4b33 100755 --- a/rawEx/specular/MagneticLayerImperfect.py +++ b/rawEx/specular/MagneticLayerImperfect.py @@ -19,7 +19,7 @@ def get_sample(): material_Fe = ba.MaterialBySLD("Fe", 8.0241e-06, 6.0448e-10, B) material_substrate = ba.MaterialBySLD("MgO", 5.9803e-06, 9.3996e-12) - autocorr = ba.K_CorrelationModel(20*angstrom) + autocorr = ba.K_CorrelationModel(20*angstrom, 0.7, 250*angstrom) interlayer = ba.TanhInterlayer() roughness = ba.LayerRoughness(autocorr, interlayer) diff --git a/rawEx/specular/PolarizedSpinAsymmetry.py b/rawEx/specular/PolarizedSpinAsymmetry.py index 1297a8969d9..5e6e92c3aed 100755 --- a/rawEx/specular/PolarizedSpinAsymmetry.py +++ b/rawEx/specular/PolarizedSpinAsymmetry.py @@ -47,8 +47,8 @@ def get_sample(P): material_layer = ba.MaterialBySLD("(Mg,Al,Fe)3O4", P["rho_Mafo"]*1e-6, 0, B) material_substrate = ba.MaterialBySLD("MgAl2O4", *sldMao) - r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom) - r_sub_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom) + r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 250*angstrom) + r_sub_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 250*angstrom) interlayer = ba.TanhInterlayer() diff --git a/rawEx/specular/RoughnessModel.py b/rawEx/specular/RoughnessModel.py index 90905aa67c6..3267f3b02d9 100755 --- a/rawEx/specular/RoughnessModel.py +++ b/rawEx/specular/RoughnessModel.py @@ -16,7 +16,7 @@ def get_sample(interlayer): material_substrate = ba.MaterialBySLD("SiSubstrate", 2.0704e-06, 0) # Roughness - autocorr = ba.K_CorrelationModel(10*angstrom) + autocorr = ba.K_CorrelationModel(10*angstrom, 0.7, 250*angstrom) roughness = ba.LayerRoughness(autocorr, interlayer) # create layers diff --git a/rawEx/specular/SpecularSimulationWithRoughness.py b/rawEx/specular/SpecularSimulationWithRoughness.py index 1cd1319c263..3ebda63f5ab 100755 --- a/rawEx/specular/SpecularSimulationWithRoughness.py +++ b/rawEx/specular/SpecularSimulationWithRoughness.py @@ -16,7 +16,7 @@ def get_sample(): material_substrate = ba.MaterialBySLD("SiSubstrate", 2.0704e-06, 0) # roughness - autocorr = ba.K_CorrelationModel(1*nm) + autocorr = ba.K_CorrelationModel(1*nm, 0.7, 25*nm) interlayer = ba.TanhInterlayer() roughness = ba.LayerRoughness(autocorr, interlayer) -- GitLab From 1b208254486777af5b7bc660f07c54bca31720fc Mon Sep 17 00:00:00 2001 From: Mikhail Svechnikov <svechnikovmv@gmail.com> Date: Thu, 20 Mar 2025 11:17:36 +0100 Subject: [PATCH 3/4] shorten lines --- auto/Examples/fit/specular/PolarizedSpinAsymmetry.py | 6 +++--- auto/FigExamples/fit/specular/PolarizedSpinAsymmetry.py | 6 +++--- auto/MiniExamples/fit/specular/PolarizedSpinAsymmetry.py | 6 +++--- rawEx/fit/specular/PolarizedSpinAsymmetry.py | 6 +++--- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/auto/Examples/fit/specular/PolarizedSpinAsymmetry.py b/auto/Examples/fit/specular/PolarizedSpinAsymmetry.py index 6267f7414dd..1b29e596dae 100755 --- a/auto/Examples/fit/specular/PolarizedSpinAsymmetry.py +++ b/auto/Examples/fit/specular/PolarizedSpinAsymmetry.py @@ -12,7 +12,7 @@ demonstration without the magnetically dead layer. import os import numpy import bornagain as ba -from bornagain import angstrom, ba_plot as bp, deg, R3 +from bornagain import angstrom, nm, ba_plot as bp, deg, R3 from bornagain.numpyutil import Arrayf64Converter as dac # q-range on which the simulation and fitting are to be performed @@ -46,8 +46,8 @@ def get_sample(P): material_layer = ba.MaterialBySLD("(Mg,Al,Fe)3O4", P["rho_Mafo"]*1e-6, 0, B) material_substrate = ba.MaterialBySLD("MgAl2O4", *sldMao) - r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 250*angstrom) - r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 250*angstrom) + r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 25*nm) + r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 25*nm) interlayer = ba.TanhInterlayer() diff --git a/auto/FigExamples/fit/specular/PolarizedSpinAsymmetry.py b/auto/FigExamples/fit/specular/PolarizedSpinAsymmetry.py index 5ac5dc8e239..ecdfbaeda65 100755 --- a/auto/FigExamples/fit/specular/PolarizedSpinAsymmetry.py +++ b/auto/FigExamples/fit/specular/PolarizedSpinAsymmetry.py @@ -12,7 +12,7 @@ demonstration without the magnetically dead layer. import os import numpy import bornagain as ba -from bornagain import angstrom, ba_plot as bp, deg, R3 +from bornagain import angstrom, nm, ba_plot as bp, deg, R3 from bornagain.numpyutil import Arrayf64Converter as dac # q-range on which the simulation and fitting are to be performed @@ -46,8 +46,8 @@ def get_sample(P): material_layer = ba.MaterialBySLD("(Mg,Al,Fe)3O4", P["rho_Mafo"]*1e-6, 0, B) material_substrate = ba.MaterialBySLD("MgAl2O4", *sldMao) - r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 250*angstrom) - r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 250*angstrom) + r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 25*nm) + r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 25*nm) interlayer = ba.TanhInterlayer() diff --git a/auto/MiniExamples/fit/specular/PolarizedSpinAsymmetry.py b/auto/MiniExamples/fit/specular/PolarizedSpinAsymmetry.py index 5ac5dc8e239..ecdfbaeda65 100755 --- a/auto/MiniExamples/fit/specular/PolarizedSpinAsymmetry.py +++ b/auto/MiniExamples/fit/specular/PolarizedSpinAsymmetry.py @@ -12,7 +12,7 @@ demonstration without the magnetically dead layer. import os import numpy import bornagain as ba -from bornagain import angstrom, ba_plot as bp, deg, R3 +from bornagain import angstrom, nm, ba_plot as bp, deg, R3 from bornagain.numpyutil import Arrayf64Converter as dac # q-range on which the simulation and fitting are to be performed @@ -46,8 +46,8 @@ def get_sample(P): material_layer = ba.MaterialBySLD("(Mg,Al,Fe)3O4", P["rho_Mafo"]*1e-6, 0, B) material_substrate = ba.MaterialBySLD("MgAl2O4", *sldMao) - r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 250*angstrom) - r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 250*angstrom) + r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 25*nm) + r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 25*nm) interlayer = ba.TanhInterlayer() diff --git a/rawEx/fit/specular/PolarizedSpinAsymmetry.py b/rawEx/fit/specular/PolarizedSpinAsymmetry.py index fa9d0cdea72..e9a3919c958 100755 --- a/rawEx/fit/specular/PolarizedSpinAsymmetry.py +++ b/rawEx/fit/specular/PolarizedSpinAsymmetry.py @@ -12,7 +12,7 @@ demonstration without the magnetically dead layer. import os import numpy import bornagain as ba -from bornagain import angstrom, ba_plot as bp, deg, R3 +from bornagain import angstrom, nm, ba_plot as bp, deg, R3 from bornagain.numpyutil import Arrayf64Converter as dac # q-range on which the simulation and fitting are to be performed @@ -46,8 +46,8 @@ def get_sample(P): material_layer = ba.MaterialBySLD("(Mg,Al,Fe)3O4", P["rho_Mafo"]*1e-6, 0, B) material_substrate = ba.MaterialBySLD("MgAl2O4", *sldMao) - r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 250*angstrom) - r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 250*angstrom) + r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 25*nm) + r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 25*nm) interlayer = ba.TanhInterlayer() -- GitLab From 4e3ee1b6d4534af2a1ad013635d57f7557e32b61 Mon Sep 17 00:00:00 2001 From: Mikhail Svechnikov <svechnikovmv@gmail.com> Date: Thu, 20 Mar 2025 11:31:50 +0100 Subject: [PATCH 4/4] angstrom --> nm --- auto/Examples/fit/specular/Honeycomb_fit.py | 38 +++++++++---------- .../fit/specular/PolarizedSpinAsymmetry.py | 14 +++---- .../fit/specular/PolarizedSpinAsymmetryFit.py | 6 +-- auto/Examples/fit/specular/Pt_layer_fit.py | 8 ++-- .../specular/MagneticLayerImperfect.py | 8 ++-- .../specular/PolarizedSpinAsymmetry.py | 14 +++---- auto/Examples/specular/RoughnessModel.py | 8 ++-- .../SpecularSimulationWithRoughness.py | 8 ++-- .../FigExamples/fit/specular/Honeycomb_fit.py | 38 +++++++++---------- .../fit/specular/PolarizedSpinAsymmetry.py | 14 +++---- .../fit/specular/PolarizedSpinAsymmetryFit.py | 6 +-- auto/FigExamples/fit/specular/Pt_layer_fit.py | 8 ++-- .../specular/MagneticLayerImperfect.py | 8 ++-- .../specular/PolarizedSpinAsymmetry.py | 14 +++---- auto/FigExamples/specular/RoughnessModel.py | 8 ++-- .../SpecularSimulationWithRoughness.py | 8 ++-- .../fit/specular/Honeycomb_fit.py | 38 +++++++++---------- .../fit/specular/PolarizedSpinAsymmetry.py | 14 +++---- .../fit/specular/PolarizedSpinAsymmetryFit.py | 6 +-- .../MiniExamples/fit/specular/Pt_layer_fit.py | 8 ++-- .../specular/MagneticLayerImperfect.py | 8 ++-- .../specular/PolarizedSpinAsymmetry.py | 14 +++---- auto/MiniExamples/specular/RoughnessModel.py | 8 ++-- .../SpecularSimulationWithRoughness.py | 8 ++-- rawEx/fit/specular/Honeycomb_fit.py | 38 +++++++++---------- rawEx/fit/specular/PolarizedSpinAsymmetry.py | 14 +++---- .../fit/specular/PolarizedSpinAsymmetryFit.py | 6 +-- rawEx/fit/specular/Pt_layer_fit.py | 8 ++-- rawEx/specular/MagneticLayerImperfect.py | 8 ++-- rawEx/specular/PolarizedSpinAsymmetry.py | 14 +++---- rawEx/specular/RoughnessModel.py | 8 ++-- .../SpecularSimulationWithRoughness.py | 8 ++-- 32 files changed, 208 insertions(+), 208 deletions(-) diff --git a/auto/Examples/fit/specular/Honeycomb_fit.py b/auto/Examples/fit/specular/Honeycomb_fit.py index 9d26b3a6253..0e3a5e0541c 100755 --- a/auto/Examples/fit/specular/Honeycomb_fit.py +++ b/auto/Examples/fit/specular/Honeycomb_fit.py @@ -8,7 +8,7 @@ data without spin-flip for performance reasons. """ import bornagain as ba, numpy as np, os, matplotlib.pyplot as plt, scipy -from bornagain import angstrom, sample_tools as st +from bornagain import nm, sample_tools as st from bornagain.numpyutil import Arrayf64Converter as dac datadir = os.getenv('BA_DATA_DIR', '') @@ -46,11 +46,11 @@ def get_sample(P, sign, T): interlayer_model = ba.ErfInterlayer() - rPyOx_autocorr = ba.K_CorrelationModel(P["rPyOx"]*angstrom, 0.7, 250*angstrom) - rPy2_autocorr = ba.K_CorrelationModel(P["rPy2"]*angstrom, 0.7, 250*angstrom) - rPy1_autocorr = ba.K_CorrelationModel(P["rPy1"]*angstrom, 0.7, 250*angstrom) - rSiO2_autocorr = ba.K_CorrelationModel(P["rSiO2"]*angstrom, 0.7, 250*angstrom) - rSi_autocorr = ba.K_CorrelationModel(P["rSi"]*angstrom, 0.7, 250*angstrom) + rPyOx_autocorr = ba.K_CorrelationModel(P["rPyOx"]*nm, 0.7, 25*nm) + rPy2_autocorr = ba.K_CorrelationModel(P["rPy2"]*nm, 0.7, 25*nm) + rPy1_autocorr = ba.K_CorrelationModel(P["rPy1"]*nm, 0.7, 25*nm) + rSiO2_autocorr = ba.K_CorrelationModel(P["rSiO2"]*nm, 0.7, 25*nm) + rSi_autocorr = ba.K_CorrelationModel(P["rSi"]*nm, 0.7, 25*nm) rPyOx = ba.LayerRoughness(rPyOx_autocorr, interlayer_model) rPy2 = ba.LayerRoughness(rPy2_autocorr, interlayer_model) @@ -59,10 +59,10 @@ def get_sample(P, sign, T): rSi = ba.LayerRoughness(rSi_autocorr, interlayer_model) l_Air = ba.Layer(material_Air) - l_PyOx = ba.Layer(material_PyOx, P["t_PyOx"]*angstrom, rPyOx) - l_Py2 = ba.Layer(material_Py2, P["t_Py2"]*angstrom, rPy2) - l_Py1 = ba.Layer(material_Py1, P["t_Py1"]*angstrom, rPy1) - l_SiO2 = ba.Layer(material_SiO2, P["t_SiO2"]*angstrom, rSiO2) + l_PyOx = ba.Layer(material_PyOx, P["t_PyOx"]*nm, rPyOx) + l_Py2 = ba.Layer(material_Py2, P["t_Py2"]*nm, rPy2) + l_Py1 = ba.Layer(material_Py1, P["t_Py1"]*nm, rPy1) + l_SiO2 = ba.Layer(material_SiO2, P["t_SiO2"]*nm, rSiO2) l_Si = ba.Layer(material_Si, rSi) sample = ba.Sample() @@ -164,10 +164,10 @@ if __name__ == '__main__': # We start with rather good values so that the example takes not too much time startPnB = { "intensity": (0.5, 0.4, 0.6), - "t_PyOx": (77, 60, 100), - "t_Py2": (56, 46, 66), - "t_Py1": (56, 46, 66), - "t_SiO2": (22, 15, 29), + "t_PyOx": (7.7, 6.0, 10.0), + "t_Py2": (5.6, 4.6, 6.6), + "t_Py1": (5.6, 4.6, 6.6), + "t_SiO2": (2.2, 1.5, 2.9), } # For fixed parameters, bounds are ignored. We leave them here just @@ -185,11 +185,11 @@ if __name__ == '__main__': "sld_PyOx_real": (1.995, 1.92, 2.07), "sld_Py2_real": (5, 4.7, 5.3), "sld_Py1_real": (4.62, 4.32, 4.92), - "rPyOx": (27, 15, 35), - "rPy2": (12, 2, 20), - "rPy1": (12, 2, 20), - "rSiO2": (15, 5, 25), - "rSi": (15, 5, 25), + "rPyOx": (2.7, 1.5, 3.5), + "rPy2": (1.2, .2, 2.0), + "rPy1": (1.2, .2, 2.0), + "rSiO2": (1.5, .5, 2.5), + "rSi": (1.5, .5, 2.5), "msld_PyOx": (0.25, 0, 1), "msld_Py2": (0.63, 0, 1), "msld_Py1": (0.64, 0, 1), diff --git a/auto/Examples/fit/specular/PolarizedSpinAsymmetry.py b/auto/Examples/fit/specular/PolarizedSpinAsymmetry.py index 1b29e596dae..7b90a24fbd1 100755 --- a/auto/Examples/fit/specular/PolarizedSpinAsymmetry.py +++ b/auto/Examples/fit/specular/PolarizedSpinAsymmetry.py @@ -12,7 +12,7 @@ demonstration without the magnetically dead layer. import os import numpy import bornagain as ba -from bornagain import angstrom, nm, ba_plot as bp, deg, R3 +from bornagain import nm, ba_plot as bp, deg, R3 from bornagain.numpyutil import Arrayf64Converter as dac # q-range on which the simulation and fitting are to be performed @@ -46,8 +46,8 @@ def get_sample(P): material_layer = ba.MaterialBySLD("(Mg,Al,Fe)3O4", P["rho_Mafo"]*1e-6, 0, B) material_substrate = ba.MaterialBySLD("MgAl2O4", *sldMao) - r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 25*nm) - r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 25*nm) + r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*nm, 0.7, 25*nm) + r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*nm, 0.7, 25*nm) interlayer = ba.TanhInterlayer() @@ -55,7 +55,7 @@ def get_sample(P): r_substrate = ba.LayerRoughness(r_substrate_autocorr, interlayer) ambient_layer = ba.Layer(vacuum) - layer = ba.Layer(material_layer, P["t_Mafo"]*angstrom, r_Mafo) + layer = ba.Layer(material_layer, P["t_Mafo"]*nm, r_Mafo) substrate_layer = ba.Layer(material_substrate, r_substrate) sample = ba.Sample() @@ -200,9 +200,9 @@ if __name__ == '__main__': 'q_offset': 7.971243487467318e-05, 'rho_Mafo': 6.370140108715461, 'rhoM_Mafo': 0.27399566816062926, - 't_Mafo': 137.46913056084736, - 'r_Mao': 8.60487712674644, - 'r_Mafo': 3.7844265311293483 + 't_Mafo': 13.746913056084736, + 'r_Mao': 0.860487712674644, + 'r_Mafo': 0.37844265311293483 } def run_Simulation_pp(qzs, P): diff --git a/auto/Examples/fit/specular/PolarizedSpinAsymmetryFit.py b/auto/Examples/fit/specular/PolarizedSpinAsymmetryFit.py index 12abd08485d..1102cf911bc 100755 --- a/auto/Examples/fit/specular/PolarizedSpinAsymmetryFit.py +++ b/auto/Examples/fit/specular/PolarizedSpinAsymmetryFit.py @@ -58,9 +58,9 @@ if __name__ == '__main__': "q_offset": (0, -0.002, 0.002), "rho_Mafo": (6.3649, 2, 7), "rhoM_Mafo": (0, 0, 2), - "t_Mafo": (150, 60, 180), - "r_Mao": (1, 0, 12), - "r_Mafo": (1, 0, 12), + "t_Mafo": (15, 6, 18), + "r_Mao": (0.1, 0, 1.2), + "r_Mafo": (0.1, 0, 1.2), } PInitial = {d: v[0] for d, v in startParams.items()} diff --git a/auto/Examples/fit/specular/Pt_layer_fit.py b/auto/Examples/fit/specular/Pt_layer_fit.py index b23bb1c3eb3..4a3abd3db44 100755 --- a/auto/Examples/fit/specular/Pt_layer_fit.py +++ b/auto/Examples/fit/specular/Pt_layer_fit.py @@ -9,7 +9,7 @@ band of roughly 4-7 Ã… in 100 steps of 2theta. """ import bornagain as ba, numpy as np, os, matplotlib.pyplot as plt -from bornagain import angstrom +from bornagain import nm from bornagain.numpyutil import Arrayf64Converter as dac datadir = os.getenv('BA_DATA_DIR', '') @@ -32,14 +32,14 @@ def get_sample(P): interlayer = ba.TanhInterlayer() - si_autocorr = ba.K_CorrelationModel(P["r_si/nm"], 0.7, 250*angstrom) - pt_autocorr = ba.K_CorrelationModel(P["r_pt/nm"], 0.7, 250*angstrom) + si_autocorr = ba.K_CorrelationModel(P["r_si/nm"]*nm, 0.7, 25*nm) + pt_autocorr = ba.K_CorrelationModel(P["r_pt/nm"]*nm, 0.7, 25*nm) r_si = ba.LayerRoughness(si_autocorr, interlayer) r_pt = ba.LayerRoughness(pt_autocorr, interlayer) ambient_layer = ba.Layer(vacuum) - layer = ba.Layer(material_layer, P["t_pt/nm"], r_pt) + layer = ba.Layer(material_layer, P["t_pt/nm"]*nm, r_pt) substrate_layer = ba.Layer(material_substrate, r_si) sample = ba.Sample() diff --git a/auto/Examples/specular/MagneticLayerImperfect.py b/auto/Examples/specular/MagneticLayerImperfect.py index 5c605b80740..2b5abd8bdfa 100755 --- a/auto/Examples/specular/MagneticLayerImperfect.py +++ b/auto/Examples/specular/MagneticLayerImperfect.py @@ -6,7 +6,7 @@ similar to Devishvili et al., Rev. Sci. Instrum. 84, 025112 (2013). """ import numpy import bornagain as ba -from bornagain import angstrom, ba_plot as bp, deg, R3 +from bornagain import nm, ba_plot as bp, deg, R3 from math import sin, cos def get_sample(): @@ -19,14 +19,14 @@ def get_sample(): material_Fe = ba.MaterialBySLD("Fe", 8.0241e-06, 6.0448e-10, B) material_substrate = ba.MaterialBySLD("MgO", 5.9803e-06, 9.3996e-12) - autocorr = ba.K_CorrelationModel(20*angstrom, 0.7, 250*angstrom) + autocorr = ba.K_CorrelationModel(2*nm, 0.7, 25*nm) interlayer = ba.TanhInterlayer() roughness = ba.LayerRoughness(autocorr, interlayer) # Layers layer_vacuum = ba.Layer(vacuum) - layer_Pd = ba.Layer(material_Pd, 120*angstrom, roughness) - layer_Fe = ba.Layer(material_Fe, 1000*angstrom, roughness) + layer_Pd = ba.Layer(material_Pd, 12*nm, roughness) + layer_Fe = ba.Layer(material_Fe, 100*nm, roughness) layer_substrate = ba.Layer(material_substrate, roughness) # Multilayer diff --git a/auto/Examples/specular/PolarizedSpinAsymmetry.py b/auto/Examples/specular/PolarizedSpinAsymmetry.py index a5ba638a5e8..0e0261ae2f0 100755 --- a/auto/Examples/specular/PolarizedSpinAsymmetry.py +++ b/auto/Examples/specular/PolarizedSpinAsymmetry.py @@ -12,7 +12,7 @@ demonstration without the magnetically dead layer. import os import numpy import bornagain as ba -from bornagain import angstrom, ba_plot as bp, deg, R3 +from bornagain import nm, ba_plot as bp, deg, R3 from bornagain.numpyutil import Arrayf64Converter as dac @@ -47,8 +47,8 @@ def get_sample(P): material_layer = ba.MaterialBySLD("(Mg,Al,Fe)3O4", P["rho_Mafo"]*1e-6, 0, B) material_substrate = ba.MaterialBySLD("MgAl2O4", *sldMao) - r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 250*angstrom) - r_sub_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 250*angstrom) + r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*nm, 0.7, 25*nm) + r_sub_autocorr = ba.K_CorrelationModel(P["r_Mao"]*nm, 0.7, 25*nm) interlayer = ba.TanhInterlayer() @@ -56,7 +56,7 @@ def get_sample(P): r_substrate = ba.LayerRoughness(r_sub_autocorr, interlayer) ambient_layer = ba.Layer(vacuum) - layer = ba.Layer(material_layer, P["t_Mafo"]*angstrom, r_Mafo) + layer = ba.Layer(material_layer, P["t_Mafo"]*nm, r_Mafo) substrate_layer = ba.Layer(material_substrate, r_substrate) sample = ba.Sample() @@ -201,9 +201,9 @@ if __name__ == '__main__': 'q_offset': 7.971243487467318e-05, 'rho_Mafo': 6.370140108715461, 'rhoM_Mafo': 0.27399566816062926, - 't_Mafo': 137.46913056084736, - 'r_Mao': 8.60487712674644, - 'r_Mafo': 3.7844265311293483 + 't_Mafo': 13.746913056084736, + 'r_Mao': 0.860487712674644, + 'r_Mafo': 0.37844265311293483 } def run_Simulation_pp(qzs, P): diff --git a/auto/Examples/specular/RoughnessModel.py b/auto/Examples/specular/RoughnessModel.py index 23a23fd6290..745a79a7fbc 100755 --- a/auto/Examples/specular/RoughnessModel.py +++ b/auto/Examples/specular/RoughnessModel.py @@ -5,7 +5,7 @@ tanh and Nevot-Croce roughness model using BornAgain. """ import bornagain as ba -from bornagain import angstrom, ba_plot as bp, deg +from bornagain import angstrom, nm, ba_plot as bp, deg def get_sample(interlayer): @@ -16,13 +16,13 @@ def get_sample(interlayer): material_substrate = ba.MaterialBySLD("SiSubstrate", 2.0704e-06, 0) # Roughness - autocorr = ba.K_CorrelationModel(10*angstrom, 0.7, 250*angstrom) + autocorr = ba.K_CorrelationModel(1*nm, 0.7, 25*nm) roughness = ba.LayerRoughness(autocorr, interlayer) # create layers ambient_layer = ba.Layer(vacuum) - ti_layer = ba.Layer(material_ti, 30*angstrom, roughness) - ni_layer = ba.Layer(material_ni, 70*angstrom, roughness) + ti_layer = ba.Layer(material_ti, 3*nm, roughness) + ni_layer = ba.Layer(material_ni, 7*nm, roughness) substrate_layer = ba.Layer(material_substrate, roughness) # create periodic stack diff --git a/auto/Examples/specular/SpecularSimulationWithRoughness.py b/auto/Examples/specular/SpecularSimulationWithRoughness.py index 9a525198abd..ea29ced604b 100755 --- a/auto/Examples/specular/SpecularSimulationWithRoughness.py +++ b/auto/Examples/specular/SpecularSimulationWithRoughness.py @@ -5,7 +5,7 @@ with a rough sample using BornAgain. """ import bornagain as ba -from bornagain import angstrom, ba_plot as bp, deg, nm +from bornagain import nm, ba_plot as bp, deg, nm def get_sample(): @@ -22,8 +22,8 @@ def get_sample(): # Layers ambient_layer = ba.Layer(vacuum) - ti_layer = ba.Layer(material_ti, 30*angstrom, roughness) - ni_layer = ba.Layer(material_ni, 70*angstrom, roughness) + ti_layer = ba.Layer(material_ti, 3*nm, roughness) + ni_layer = ba.Layer(material_ni, 7*nm, roughness) substrate_layer = ba.Layer(material_substrate, roughness) # Periodic stack @@ -44,7 +44,7 @@ def get_sample(): def get_simulation(sample): n = 500 scan = ba.AlphaScan(n, 2*deg/n, 2*deg) - scan.setWavelength(1.54*angstrom) + scan.setWavelength(0.154*nm) return ba.SpecularSimulation(scan, sample) diff --git a/auto/FigExamples/fit/specular/Honeycomb_fit.py b/auto/FigExamples/fit/specular/Honeycomb_fit.py index d27a4e4c77b..fe04348a1e4 100755 --- a/auto/FigExamples/fit/specular/Honeycomb_fit.py +++ b/auto/FigExamples/fit/specular/Honeycomb_fit.py @@ -8,7 +8,7 @@ data without spin-flip for performance reasons. """ import bornagain as ba, numpy as np, os, matplotlib.pyplot as plt, scipy -from bornagain import angstrom, sample_tools as st +from bornagain import nm, sample_tools as st from bornagain.numpyutil import Arrayf64Converter as dac datadir = os.getenv('BA_DATA_DIR', '') @@ -46,11 +46,11 @@ def get_sample(P, sign, T): interlayer_model = ba.ErfInterlayer() - rPyOx_autocorr = ba.K_CorrelationModel(P["rPyOx"]*angstrom, 0.7, 250*angstrom) - rPy2_autocorr = ba.K_CorrelationModel(P["rPy2"]*angstrom, 0.7, 250*angstrom) - rPy1_autocorr = ba.K_CorrelationModel(P["rPy1"]*angstrom, 0.7, 250*angstrom) - rSiO2_autocorr = ba.K_CorrelationModel(P["rSiO2"]*angstrom, 0.7, 250*angstrom) - rSi_autocorr = ba.K_CorrelationModel(P["rSi"]*angstrom, 0.7, 250*angstrom) + rPyOx_autocorr = ba.K_CorrelationModel(P["rPyOx"]*nm, 0.7, 25*nm) + rPy2_autocorr = ba.K_CorrelationModel(P["rPy2"]*nm, 0.7, 25*nm) + rPy1_autocorr = ba.K_CorrelationModel(P["rPy1"]*nm, 0.7, 25*nm) + rSiO2_autocorr = ba.K_CorrelationModel(P["rSiO2"]*nm, 0.7, 25*nm) + rSi_autocorr = ba.K_CorrelationModel(P["rSi"]*nm, 0.7, 25*nm) rPyOx = ba.LayerRoughness(rPyOx_autocorr, interlayer_model) rPy2 = ba.LayerRoughness(rPy2_autocorr, interlayer_model) @@ -59,10 +59,10 @@ def get_sample(P, sign, T): rSi = ba.LayerRoughness(rSi_autocorr, interlayer_model) l_Air = ba.Layer(material_Air) - l_PyOx = ba.Layer(material_PyOx, P["t_PyOx"]*angstrom, rPyOx) - l_Py2 = ba.Layer(material_Py2, P["t_Py2"]*angstrom, rPy2) - l_Py1 = ba.Layer(material_Py1, P["t_Py1"]*angstrom, rPy1) - l_SiO2 = ba.Layer(material_SiO2, P["t_SiO2"]*angstrom, rSiO2) + l_PyOx = ba.Layer(material_PyOx, P["t_PyOx"]*nm, rPyOx) + l_Py2 = ba.Layer(material_Py2, P["t_Py2"]*nm, rPy2) + l_Py1 = ba.Layer(material_Py1, P["t_Py1"]*nm, rPy1) + l_SiO2 = ba.Layer(material_SiO2, P["t_SiO2"]*nm, rSiO2) l_Si = ba.Layer(material_Si, rSi) sample = ba.Sample() @@ -162,10 +162,10 @@ if __name__ == '__main__': # We start with rather good values so that the example takes not too much time startPnB = { "intensity": (0.5, 0.4, 0.6), - "t_PyOx": (77, 60, 100), - "t_Py2": (56, 46, 66), - "t_Py1": (56, 46, 66), - "t_SiO2": (22, 15, 29), + "t_PyOx": (7.7, 6.0, 10.0), + "t_Py2": (5.6, 4.6, 6.6), + "t_Py1": (5.6, 4.6, 6.6), + "t_SiO2": (2.2, 1.5, 2.9), } # For fixed parameters, bounds are ignored. We leave them here just @@ -183,11 +183,11 @@ if __name__ == '__main__': "sld_PyOx_real": (1.995, 1.92, 2.07), "sld_Py2_real": (5, 4.7, 5.3), "sld_Py1_real": (4.62, 4.32, 4.92), - "rPyOx": (27, 15, 35), - "rPy2": (12, 2, 20), - "rPy1": (12, 2, 20), - "rSiO2": (15, 5, 25), - "rSi": (15, 5, 25), + "rPyOx": (2.7, 1.5, 3.5), + "rPy2": (1.2, .2, 2.0), + "rPy1": (1.2, .2, 2.0), + "rSiO2": (1.5, .5, 2.5), + "rSi": (1.5, .5, 2.5), "msld_PyOx": (0.25, 0, 1), "msld_Py2": (0.63, 0, 1), "msld_Py1": (0.64, 0, 1), diff --git a/auto/FigExamples/fit/specular/PolarizedSpinAsymmetry.py b/auto/FigExamples/fit/specular/PolarizedSpinAsymmetry.py index ecdfbaeda65..86c264e9b68 100755 --- a/auto/FigExamples/fit/specular/PolarizedSpinAsymmetry.py +++ b/auto/FigExamples/fit/specular/PolarizedSpinAsymmetry.py @@ -12,7 +12,7 @@ demonstration without the magnetically dead layer. import os import numpy import bornagain as ba -from bornagain import angstrom, nm, ba_plot as bp, deg, R3 +from bornagain import nm, ba_plot as bp, deg, R3 from bornagain.numpyutil import Arrayf64Converter as dac # q-range on which the simulation and fitting are to be performed @@ -46,8 +46,8 @@ def get_sample(P): material_layer = ba.MaterialBySLD("(Mg,Al,Fe)3O4", P["rho_Mafo"]*1e-6, 0, B) material_substrate = ba.MaterialBySLD("MgAl2O4", *sldMao) - r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 25*nm) - r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 25*nm) + r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*nm, 0.7, 25*nm) + r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*nm, 0.7, 25*nm) interlayer = ba.TanhInterlayer() @@ -55,7 +55,7 @@ def get_sample(P): r_substrate = ba.LayerRoughness(r_substrate_autocorr, interlayer) ambient_layer = ba.Layer(vacuum) - layer = ba.Layer(material_layer, P["t_Mafo"]*angstrom, r_Mafo) + layer = ba.Layer(material_layer, P["t_Mafo"]*nm, r_Mafo) substrate_layer = ba.Layer(material_substrate, r_substrate) sample = ba.Sample() @@ -202,9 +202,9 @@ if __name__ == '__main__': 'q_offset': 7.971243487467318e-05, 'rho_Mafo': 6.370140108715461, 'rhoM_Mafo': 0.27399566816062926, - 't_Mafo': 137.46913056084736, - 'r_Mao': 8.60487712674644, - 'r_Mafo': 3.7844265311293483 + 't_Mafo': 13.746913056084736, + 'r_Mao': 0.860487712674644, + 'r_Mafo': 0.37844265311293483 } def run_Simulation_pp(qzs, P): diff --git a/auto/FigExamples/fit/specular/PolarizedSpinAsymmetryFit.py b/auto/FigExamples/fit/specular/PolarizedSpinAsymmetryFit.py index 5bee9fca96e..227ebbb3d5b 100755 --- a/auto/FigExamples/fit/specular/PolarizedSpinAsymmetryFit.py +++ b/auto/FigExamples/fit/specular/PolarizedSpinAsymmetryFit.py @@ -58,9 +58,9 @@ if __name__ == '__main__': "q_offset": (0, -0.002, 0.002), "rho_Mafo": (6.3649, 2, 7), "rhoM_Mafo": (0, 0, 2), - "t_Mafo": (150, 60, 180), - "r_Mao": (1, 0, 12), - "r_Mafo": (1, 0, 12), + "t_Mafo": (15, 6, 18), + "r_Mao": (0.1, 0, 1.2), + "r_Mafo": (0.1, 0, 1.2), } PInitial = {d: v[0] for d, v in startParams.items()} diff --git a/auto/FigExamples/fit/specular/Pt_layer_fit.py b/auto/FigExamples/fit/specular/Pt_layer_fit.py index b1edb462396..f7b5fc034a5 100755 --- a/auto/FigExamples/fit/specular/Pt_layer_fit.py +++ b/auto/FigExamples/fit/specular/Pt_layer_fit.py @@ -9,7 +9,7 @@ band of roughly 4-7 Ã… in 100 steps of 2theta. """ import bornagain as ba, numpy as np, os, matplotlib.pyplot as plt -from bornagain import angstrom +from bornagain import nm from bornagain.numpyutil import Arrayf64Converter as dac datadir = os.getenv('BA_DATA_DIR', '') @@ -32,14 +32,14 @@ def get_sample(P): interlayer = ba.TanhInterlayer() - si_autocorr = ba.K_CorrelationModel(P["r_si/nm"], 0.7, 250*angstrom) - pt_autocorr = ba.K_CorrelationModel(P["r_pt/nm"], 0.7, 250*angstrom) + si_autocorr = ba.K_CorrelationModel(P["r_si/nm"]*nm, 0.7, 25*nm) + pt_autocorr = ba.K_CorrelationModel(P["r_pt/nm"]*nm, 0.7, 25*nm) r_si = ba.LayerRoughness(si_autocorr, interlayer) r_pt = ba.LayerRoughness(pt_autocorr, interlayer) ambient_layer = ba.Layer(vacuum) - layer = ba.Layer(material_layer, P["t_pt/nm"], r_pt) + layer = ba.Layer(material_layer, P["t_pt/nm"]*nm, r_pt) substrate_layer = ba.Layer(material_substrate, r_si) sample = ba.Sample() diff --git a/auto/FigExamples/specular/MagneticLayerImperfect.py b/auto/FigExamples/specular/MagneticLayerImperfect.py index d4d8bacb20f..8a65a11c227 100755 --- a/auto/FigExamples/specular/MagneticLayerImperfect.py +++ b/auto/FigExamples/specular/MagneticLayerImperfect.py @@ -6,7 +6,7 @@ similar to Devishvili et al., Rev. Sci. Instrum. 84, 025112 (2013). """ import numpy import bornagain as ba -from bornagain import angstrom, ba_plot as bp, deg, R3 +from bornagain import nm, ba_plot as bp, deg, R3 from math import sin, cos def get_sample(): @@ -19,14 +19,14 @@ def get_sample(): material_Fe = ba.MaterialBySLD("Fe", 8.0241e-06, 6.0448e-10, B) material_substrate = ba.MaterialBySLD("MgO", 5.9803e-06, 9.3996e-12) - autocorr = ba.K_CorrelationModel(20*angstrom, 0.7, 250*angstrom) + autocorr = ba.K_CorrelationModel(2*nm, 0.7, 25*nm) interlayer = ba.TanhInterlayer() roughness = ba.LayerRoughness(autocorr, interlayer) # Layers layer_vacuum = ba.Layer(vacuum) - layer_Pd = ba.Layer(material_Pd, 120*angstrom, roughness) - layer_Fe = ba.Layer(material_Fe, 1000*angstrom, roughness) + layer_Pd = ba.Layer(material_Pd, 12*nm, roughness) + layer_Fe = ba.Layer(material_Fe, 100*nm, roughness) layer_substrate = ba.Layer(material_substrate, roughness) # Multilayer diff --git a/auto/FigExamples/specular/PolarizedSpinAsymmetry.py b/auto/FigExamples/specular/PolarizedSpinAsymmetry.py index 2fb6c6ce985..55dba54082c 100755 --- a/auto/FigExamples/specular/PolarizedSpinAsymmetry.py +++ b/auto/FigExamples/specular/PolarizedSpinAsymmetry.py @@ -12,7 +12,7 @@ demonstration without the magnetically dead layer. import os import numpy import bornagain as ba -from bornagain import angstrom, ba_plot as bp, deg, R3 +from bornagain import nm, ba_plot as bp, deg, R3 from bornagain.numpyutil import Arrayf64Converter as dac @@ -47,8 +47,8 @@ def get_sample(P): material_layer = ba.MaterialBySLD("(Mg,Al,Fe)3O4", P["rho_Mafo"]*1e-6, 0, B) material_substrate = ba.MaterialBySLD("MgAl2O4", *sldMao) - r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 250*angstrom) - r_sub_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 250*angstrom) + r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*nm, 0.7, 25*nm) + r_sub_autocorr = ba.K_CorrelationModel(P["r_Mao"]*nm, 0.7, 25*nm) interlayer = ba.TanhInterlayer() @@ -56,7 +56,7 @@ def get_sample(P): r_substrate = ba.LayerRoughness(r_sub_autocorr, interlayer) ambient_layer = ba.Layer(vacuum) - layer = ba.Layer(material_layer, P["t_Mafo"]*angstrom, r_Mafo) + layer = ba.Layer(material_layer, P["t_Mafo"]*nm, r_Mafo) substrate_layer = ba.Layer(material_substrate, r_substrate) sample = ba.Sample() @@ -203,9 +203,9 @@ if __name__ == '__main__': 'q_offset': 7.971243487467318e-05, 'rho_Mafo': 6.370140108715461, 'rhoM_Mafo': 0.27399566816062926, - 't_Mafo': 137.46913056084736, - 'r_Mao': 8.60487712674644, - 'r_Mafo': 3.7844265311293483 + 't_Mafo': 13.746913056084736, + 'r_Mao': 0.860487712674644, + 'r_Mafo': 0.37844265311293483 } def run_Simulation_pp(qzs, P): diff --git a/auto/FigExamples/specular/RoughnessModel.py b/auto/FigExamples/specular/RoughnessModel.py index b7b7c4efca7..93ddc33ae7a 100755 --- a/auto/FigExamples/specular/RoughnessModel.py +++ b/auto/FigExamples/specular/RoughnessModel.py @@ -5,7 +5,7 @@ tanh and Nevot-Croce roughness model using BornAgain. """ import bornagain as ba -from bornagain import angstrom, ba_plot as bp, deg +from bornagain import angstrom, nm, ba_plot as bp, deg def get_sample(interlayer): @@ -16,13 +16,13 @@ def get_sample(interlayer): material_substrate = ba.MaterialBySLD("SiSubstrate", 2.0704e-06, 0) # Roughness - autocorr = ba.K_CorrelationModel(10*angstrom, 0.7, 250*angstrom) + autocorr = ba.K_CorrelationModel(1*nm, 0.7, 25*nm) roughness = ba.LayerRoughness(autocorr, interlayer) # create layers ambient_layer = ba.Layer(vacuum) - ti_layer = ba.Layer(material_ti, 30*angstrom, roughness) - ni_layer = ba.Layer(material_ni, 70*angstrom, roughness) + ti_layer = ba.Layer(material_ti, 3*nm, roughness) + ni_layer = ba.Layer(material_ni, 7*nm, roughness) substrate_layer = ba.Layer(material_substrate, roughness) # create periodic stack diff --git a/auto/FigExamples/specular/SpecularSimulationWithRoughness.py b/auto/FigExamples/specular/SpecularSimulationWithRoughness.py index 8d9cc70eca2..250b1546e5e 100755 --- a/auto/FigExamples/specular/SpecularSimulationWithRoughness.py +++ b/auto/FigExamples/specular/SpecularSimulationWithRoughness.py @@ -5,7 +5,7 @@ with a rough sample using BornAgain. """ import bornagain as ba -from bornagain import angstrom, ba_plot as bp, deg, nm +from bornagain import nm, ba_plot as bp, deg, nm def get_sample(): @@ -22,8 +22,8 @@ def get_sample(): # Layers ambient_layer = ba.Layer(vacuum) - ti_layer = ba.Layer(material_ti, 30*angstrom, roughness) - ni_layer = ba.Layer(material_ni, 70*angstrom, roughness) + ti_layer = ba.Layer(material_ti, 3*nm, roughness) + ni_layer = ba.Layer(material_ni, 7*nm, roughness) substrate_layer = ba.Layer(material_substrate, roughness) # Periodic stack @@ -44,7 +44,7 @@ def get_sample(): def get_simulation(sample): n = 500 scan = ba.AlphaScan(n, 2*deg/n, 2*deg) - scan.setWavelength(1.54*angstrom) + scan.setWavelength(0.154*nm) return ba.SpecularSimulation(scan, sample) diff --git a/auto/MiniExamples/fit/specular/Honeycomb_fit.py b/auto/MiniExamples/fit/specular/Honeycomb_fit.py index d27a4e4c77b..fe04348a1e4 100755 --- a/auto/MiniExamples/fit/specular/Honeycomb_fit.py +++ b/auto/MiniExamples/fit/specular/Honeycomb_fit.py @@ -8,7 +8,7 @@ data without spin-flip for performance reasons. """ import bornagain as ba, numpy as np, os, matplotlib.pyplot as plt, scipy -from bornagain import angstrom, sample_tools as st +from bornagain import nm, sample_tools as st from bornagain.numpyutil import Arrayf64Converter as dac datadir = os.getenv('BA_DATA_DIR', '') @@ -46,11 +46,11 @@ def get_sample(P, sign, T): interlayer_model = ba.ErfInterlayer() - rPyOx_autocorr = ba.K_CorrelationModel(P["rPyOx"]*angstrom, 0.7, 250*angstrom) - rPy2_autocorr = ba.K_CorrelationModel(P["rPy2"]*angstrom, 0.7, 250*angstrom) - rPy1_autocorr = ba.K_CorrelationModel(P["rPy1"]*angstrom, 0.7, 250*angstrom) - rSiO2_autocorr = ba.K_CorrelationModel(P["rSiO2"]*angstrom, 0.7, 250*angstrom) - rSi_autocorr = ba.K_CorrelationModel(P["rSi"]*angstrom, 0.7, 250*angstrom) + rPyOx_autocorr = ba.K_CorrelationModel(P["rPyOx"]*nm, 0.7, 25*nm) + rPy2_autocorr = ba.K_CorrelationModel(P["rPy2"]*nm, 0.7, 25*nm) + rPy1_autocorr = ba.K_CorrelationModel(P["rPy1"]*nm, 0.7, 25*nm) + rSiO2_autocorr = ba.K_CorrelationModel(P["rSiO2"]*nm, 0.7, 25*nm) + rSi_autocorr = ba.K_CorrelationModel(P["rSi"]*nm, 0.7, 25*nm) rPyOx = ba.LayerRoughness(rPyOx_autocorr, interlayer_model) rPy2 = ba.LayerRoughness(rPy2_autocorr, interlayer_model) @@ -59,10 +59,10 @@ def get_sample(P, sign, T): rSi = ba.LayerRoughness(rSi_autocorr, interlayer_model) l_Air = ba.Layer(material_Air) - l_PyOx = ba.Layer(material_PyOx, P["t_PyOx"]*angstrom, rPyOx) - l_Py2 = ba.Layer(material_Py2, P["t_Py2"]*angstrom, rPy2) - l_Py1 = ba.Layer(material_Py1, P["t_Py1"]*angstrom, rPy1) - l_SiO2 = ba.Layer(material_SiO2, P["t_SiO2"]*angstrom, rSiO2) + l_PyOx = ba.Layer(material_PyOx, P["t_PyOx"]*nm, rPyOx) + l_Py2 = ba.Layer(material_Py2, P["t_Py2"]*nm, rPy2) + l_Py1 = ba.Layer(material_Py1, P["t_Py1"]*nm, rPy1) + l_SiO2 = ba.Layer(material_SiO2, P["t_SiO2"]*nm, rSiO2) l_Si = ba.Layer(material_Si, rSi) sample = ba.Sample() @@ -162,10 +162,10 @@ if __name__ == '__main__': # We start with rather good values so that the example takes not too much time startPnB = { "intensity": (0.5, 0.4, 0.6), - "t_PyOx": (77, 60, 100), - "t_Py2": (56, 46, 66), - "t_Py1": (56, 46, 66), - "t_SiO2": (22, 15, 29), + "t_PyOx": (7.7, 6.0, 10.0), + "t_Py2": (5.6, 4.6, 6.6), + "t_Py1": (5.6, 4.6, 6.6), + "t_SiO2": (2.2, 1.5, 2.9), } # For fixed parameters, bounds are ignored. We leave them here just @@ -183,11 +183,11 @@ if __name__ == '__main__': "sld_PyOx_real": (1.995, 1.92, 2.07), "sld_Py2_real": (5, 4.7, 5.3), "sld_Py1_real": (4.62, 4.32, 4.92), - "rPyOx": (27, 15, 35), - "rPy2": (12, 2, 20), - "rPy1": (12, 2, 20), - "rSiO2": (15, 5, 25), - "rSi": (15, 5, 25), + "rPyOx": (2.7, 1.5, 3.5), + "rPy2": (1.2, .2, 2.0), + "rPy1": (1.2, .2, 2.0), + "rSiO2": (1.5, .5, 2.5), + "rSi": (1.5, .5, 2.5), "msld_PyOx": (0.25, 0, 1), "msld_Py2": (0.63, 0, 1), "msld_Py1": (0.64, 0, 1), diff --git a/auto/MiniExamples/fit/specular/PolarizedSpinAsymmetry.py b/auto/MiniExamples/fit/specular/PolarizedSpinAsymmetry.py index ecdfbaeda65..86c264e9b68 100755 --- a/auto/MiniExamples/fit/specular/PolarizedSpinAsymmetry.py +++ b/auto/MiniExamples/fit/specular/PolarizedSpinAsymmetry.py @@ -12,7 +12,7 @@ demonstration without the magnetically dead layer. import os import numpy import bornagain as ba -from bornagain import angstrom, nm, ba_plot as bp, deg, R3 +from bornagain import nm, ba_plot as bp, deg, R3 from bornagain.numpyutil import Arrayf64Converter as dac # q-range on which the simulation and fitting are to be performed @@ -46,8 +46,8 @@ def get_sample(P): material_layer = ba.MaterialBySLD("(Mg,Al,Fe)3O4", P["rho_Mafo"]*1e-6, 0, B) material_substrate = ba.MaterialBySLD("MgAl2O4", *sldMao) - r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 25*nm) - r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 25*nm) + r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*nm, 0.7, 25*nm) + r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*nm, 0.7, 25*nm) interlayer = ba.TanhInterlayer() @@ -55,7 +55,7 @@ def get_sample(P): r_substrate = ba.LayerRoughness(r_substrate_autocorr, interlayer) ambient_layer = ba.Layer(vacuum) - layer = ba.Layer(material_layer, P["t_Mafo"]*angstrom, r_Mafo) + layer = ba.Layer(material_layer, P["t_Mafo"]*nm, r_Mafo) substrate_layer = ba.Layer(material_substrate, r_substrate) sample = ba.Sample() @@ -202,9 +202,9 @@ if __name__ == '__main__': 'q_offset': 7.971243487467318e-05, 'rho_Mafo': 6.370140108715461, 'rhoM_Mafo': 0.27399566816062926, - 't_Mafo': 137.46913056084736, - 'r_Mao': 8.60487712674644, - 'r_Mafo': 3.7844265311293483 + 't_Mafo': 13.746913056084736, + 'r_Mao': 0.860487712674644, + 'r_Mafo': 0.37844265311293483 } def run_Simulation_pp(qzs, P): diff --git a/auto/MiniExamples/fit/specular/PolarizedSpinAsymmetryFit.py b/auto/MiniExamples/fit/specular/PolarizedSpinAsymmetryFit.py index 5bee9fca96e..227ebbb3d5b 100755 --- a/auto/MiniExamples/fit/specular/PolarizedSpinAsymmetryFit.py +++ b/auto/MiniExamples/fit/specular/PolarizedSpinAsymmetryFit.py @@ -58,9 +58,9 @@ if __name__ == '__main__': "q_offset": (0, -0.002, 0.002), "rho_Mafo": (6.3649, 2, 7), "rhoM_Mafo": (0, 0, 2), - "t_Mafo": (150, 60, 180), - "r_Mao": (1, 0, 12), - "r_Mafo": (1, 0, 12), + "t_Mafo": (15, 6, 18), + "r_Mao": (0.1, 0, 1.2), + "r_Mafo": (0.1, 0, 1.2), } PInitial = {d: v[0] for d, v in startParams.items()} diff --git a/auto/MiniExamples/fit/specular/Pt_layer_fit.py b/auto/MiniExamples/fit/specular/Pt_layer_fit.py index b1edb462396..f7b5fc034a5 100755 --- a/auto/MiniExamples/fit/specular/Pt_layer_fit.py +++ b/auto/MiniExamples/fit/specular/Pt_layer_fit.py @@ -9,7 +9,7 @@ band of roughly 4-7 Ã… in 100 steps of 2theta. """ import bornagain as ba, numpy as np, os, matplotlib.pyplot as plt -from bornagain import angstrom +from bornagain import nm from bornagain.numpyutil import Arrayf64Converter as dac datadir = os.getenv('BA_DATA_DIR', '') @@ -32,14 +32,14 @@ def get_sample(P): interlayer = ba.TanhInterlayer() - si_autocorr = ba.K_CorrelationModel(P["r_si/nm"], 0.7, 250*angstrom) - pt_autocorr = ba.K_CorrelationModel(P["r_pt/nm"], 0.7, 250*angstrom) + si_autocorr = ba.K_CorrelationModel(P["r_si/nm"]*nm, 0.7, 25*nm) + pt_autocorr = ba.K_CorrelationModel(P["r_pt/nm"]*nm, 0.7, 25*nm) r_si = ba.LayerRoughness(si_autocorr, interlayer) r_pt = ba.LayerRoughness(pt_autocorr, interlayer) ambient_layer = ba.Layer(vacuum) - layer = ba.Layer(material_layer, P["t_pt/nm"], r_pt) + layer = ba.Layer(material_layer, P["t_pt/nm"]*nm, r_pt) substrate_layer = ba.Layer(material_substrate, r_si) sample = ba.Sample() diff --git a/auto/MiniExamples/specular/MagneticLayerImperfect.py b/auto/MiniExamples/specular/MagneticLayerImperfect.py index d4d8bacb20f..8a65a11c227 100755 --- a/auto/MiniExamples/specular/MagneticLayerImperfect.py +++ b/auto/MiniExamples/specular/MagneticLayerImperfect.py @@ -6,7 +6,7 @@ similar to Devishvili et al., Rev. Sci. Instrum. 84, 025112 (2013). """ import numpy import bornagain as ba -from bornagain import angstrom, ba_plot as bp, deg, R3 +from bornagain import nm, ba_plot as bp, deg, R3 from math import sin, cos def get_sample(): @@ -19,14 +19,14 @@ def get_sample(): material_Fe = ba.MaterialBySLD("Fe", 8.0241e-06, 6.0448e-10, B) material_substrate = ba.MaterialBySLD("MgO", 5.9803e-06, 9.3996e-12) - autocorr = ba.K_CorrelationModel(20*angstrom, 0.7, 250*angstrom) + autocorr = ba.K_CorrelationModel(2*nm, 0.7, 25*nm) interlayer = ba.TanhInterlayer() roughness = ba.LayerRoughness(autocorr, interlayer) # Layers layer_vacuum = ba.Layer(vacuum) - layer_Pd = ba.Layer(material_Pd, 120*angstrom, roughness) - layer_Fe = ba.Layer(material_Fe, 1000*angstrom, roughness) + layer_Pd = ba.Layer(material_Pd, 12*nm, roughness) + layer_Fe = ba.Layer(material_Fe, 100*nm, roughness) layer_substrate = ba.Layer(material_substrate, roughness) # Multilayer diff --git a/auto/MiniExamples/specular/PolarizedSpinAsymmetry.py b/auto/MiniExamples/specular/PolarizedSpinAsymmetry.py index 2fb6c6ce985..55dba54082c 100755 --- a/auto/MiniExamples/specular/PolarizedSpinAsymmetry.py +++ b/auto/MiniExamples/specular/PolarizedSpinAsymmetry.py @@ -12,7 +12,7 @@ demonstration without the magnetically dead layer. import os import numpy import bornagain as ba -from bornagain import angstrom, ba_plot as bp, deg, R3 +from bornagain import nm, ba_plot as bp, deg, R3 from bornagain.numpyutil import Arrayf64Converter as dac @@ -47,8 +47,8 @@ def get_sample(P): material_layer = ba.MaterialBySLD("(Mg,Al,Fe)3O4", P["rho_Mafo"]*1e-6, 0, B) material_substrate = ba.MaterialBySLD("MgAl2O4", *sldMao) - r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 250*angstrom) - r_sub_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 250*angstrom) + r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*nm, 0.7, 25*nm) + r_sub_autocorr = ba.K_CorrelationModel(P["r_Mao"]*nm, 0.7, 25*nm) interlayer = ba.TanhInterlayer() @@ -56,7 +56,7 @@ def get_sample(P): r_substrate = ba.LayerRoughness(r_sub_autocorr, interlayer) ambient_layer = ba.Layer(vacuum) - layer = ba.Layer(material_layer, P["t_Mafo"]*angstrom, r_Mafo) + layer = ba.Layer(material_layer, P["t_Mafo"]*nm, r_Mafo) substrate_layer = ba.Layer(material_substrate, r_substrate) sample = ba.Sample() @@ -203,9 +203,9 @@ if __name__ == '__main__': 'q_offset': 7.971243487467318e-05, 'rho_Mafo': 6.370140108715461, 'rhoM_Mafo': 0.27399566816062926, - 't_Mafo': 137.46913056084736, - 'r_Mao': 8.60487712674644, - 'r_Mafo': 3.7844265311293483 + 't_Mafo': 13.746913056084736, + 'r_Mao': 0.860487712674644, + 'r_Mafo': 0.37844265311293483 } def run_Simulation_pp(qzs, P): diff --git a/auto/MiniExamples/specular/RoughnessModel.py b/auto/MiniExamples/specular/RoughnessModel.py index 9b89abd8212..2157b328dab 100755 --- a/auto/MiniExamples/specular/RoughnessModel.py +++ b/auto/MiniExamples/specular/RoughnessModel.py @@ -5,7 +5,7 @@ tanh and Nevot-Croce roughness model using BornAgain. """ import bornagain as ba -from bornagain import angstrom, ba_plot as bp, deg +from bornagain import angstrom, nm, ba_plot as bp, deg def get_sample(interlayer): @@ -16,13 +16,13 @@ def get_sample(interlayer): material_substrate = ba.MaterialBySLD("SiSubstrate", 2.0704e-06, 0) # Roughness - autocorr = ba.K_CorrelationModel(10*angstrom, 0.7, 250*angstrom) + autocorr = ba.K_CorrelationModel(1*nm, 0.7, 25*nm) roughness = ba.LayerRoughness(autocorr, interlayer) # create layers ambient_layer = ba.Layer(vacuum) - ti_layer = ba.Layer(material_ti, 30*angstrom, roughness) - ni_layer = ba.Layer(material_ni, 70*angstrom, roughness) + ti_layer = ba.Layer(material_ti, 3*nm, roughness) + ni_layer = ba.Layer(material_ni, 7*nm, roughness) substrate_layer = ba.Layer(material_substrate, roughness) # create periodic stack diff --git a/auto/MiniExamples/specular/SpecularSimulationWithRoughness.py b/auto/MiniExamples/specular/SpecularSimulationWithRoughness.py index f022e089360..7876785f6eb 100755 --- a/auto/MiniExamples/specular/SpecularSimulationWithRoughness.py +++ b/auto/MiniExamples/specular/SpecularSimulationWithRoughness.py @@ -5,7 +5,7 @@ with a rough sample using BornAgain. """ import bornagain as ba -from bornagain import angstrom, ba_plot as bp, deg, nm +from bornagain import nm, ba_plot as bp, deg, nm def get_sample(): @@ -22,8 +22,8 @@ def get_sample(): # Layers ambient_layer = ba.Layer(vacuum) - ti_layer = ba.Layer(material_ti, 30*angstrom, roughness) - ni_layer = ba.Layer(material_ni, 70*angstrom, roughness) + ti_layer = ba.Layer(material_ti, 3*nm, roughness) + ni_layer = ba.Layer(material_ni, 7*nm, roughness) substrate_layer = ba.Layer(material_substrate, roughness) # Periodic stack @@ -44,7 +44,7 @@ def get_sample(): def get_simulation(sample): n = 50 scan = ba.AlphaScan(n, 2*deg/n, 2*deg) - scan.setWavelength(1.54*angstrom) + scan.setWavelength(0.154*nm) return ba.SpecularSimulation(scan, sample) diff --git a/rawEx/fit/specular/Honeycomb_fit.py b/rawEx/fit/specular/Honeycomb_fit.py index c440577bca2..8d8ceb65358 100755 --- a/rawEx/fit/specular/Honeycomb_fit.py +++ b/rawEx/fit/specular/Honeycomb_fit.py @@ -8,7 +8,7 @@ data without spin-flip for performance reasons. """ import bornagain as ba, numpy as np, os, matplotlib.pyplot as plt, scipy -from bornagain import angstrom, sample_tools as st +from bornagain import nm, sample_tools as st from bornagain.numpyutil import Arrayf64Converter as dac datadir = os.getenv('BA_DATA_DIR', '') @@ -46,11 +46,11 @@ def get_sample(P, sign, T): interlayer_model = ba.ErfInterlayer() - rPyOx_autocorr = ba.K_CorrelationModel(P["rPyOx"]*angstrom, 0.7, 250*angstrom) - rPy2_autocorr = ba.K_CorrelationModel(P["rPy2"]*angstrom, 0.7, 250*angstrom) - rPy1_autocorr = ba.K_CorrelationModel(P["rPy1"]*angstrom, 0.7, 250*angstrom) - rSiO2_autocorr = ba.K_CorrelationModel(P["rSiO2"]*angstrom, 0.7, 250*angstrom) - rSi_autocorr = ba.K_CorrelationModel(P["rSi"]*angstrom, 0.7, 250*angstrom) + rPyOx_autocorr = ba.K_CorrelationModel(P["rPyOx"]*nm, 0.7, 25*nm) + rPy2_autocorr = ba.K_CorrelationModel(P["rPy2"]*nm, 0.7, 25*nm) + rPy1_autocorr = ba.K_CorrelationModel(P["rPy1"]*nm, 0.7, 25*nm) + rSiO2_autocorr = ba.K_CorrelationModel(P["rSiO2"]*nm, 0.7, 25*nm) + rSi_autocorr = ba.K_CorrelationModel(P["rSi"]*nm, 0.7, 25*nm) rPyOx = ba.LayerRoughness(rPyOx_autocorr, interlayer_model) rPy2 = ba.LayerRoughness(rPy2_autocorr, interlayer_model) @@ -59,10 +59,10 @@ def get_sample(P, sign, T): rSi = ba.LayerRoughness(rSi_autocorr, interlayer_model) l_Air = ba.Layer(material_Air) - l_PyOx = ba.Layer(material_PyOx, P["t_PyOx"]*angstrom, rPyOx) - l_Py2 = ba.Layer(material_Py2, P["t_Py2"]*angstrom, rPy2) - l_Py1 = ba.Layer(material_Py1, P["t_Py1"]*angstrom, rPy1) - l_SiO2 = ba.Layer(material_SiO2, P["t_SiO2"]*angstrom, rSiO2) + l_PyOx = ba.Layer(material_PyOx, P["t_PyOx"]*nm, rPyOx) + l_Py2 = ba.Layer(material_Py2, P["t_Py2"]*nm, rPy2) + l_Py1 = ba.Layer(material_Py1, P["t_Py1"]*nm, rPy1) + l_SiO2 = ba.Layer(material_SiO2, P["t_SiO2"]*nm, rSiO2) l_Si = ba.Layer(material_Si, rSi) sample = ba.Sample() @@ -170,10 +170,10 @@ if __name__ == '__main__': # We start with rather good values so that the example takes not too much time startPnB = { "intensity": (0.5, 0.4, 0.6), - "t_PyOx": (77, 60, 100), - "t_Py2": (56, 46, 66), - "t_Py1": (56, 46, 66), - "t_SiO2": (22, 15, 29), + "t_PyOx": (7.7, 6.0, 10.0), + "t_Py2": (5.6, 4.6, 6.6), + "t_Py1": (5.6, 4.6, 6.6), + "t_SiO2": (2.2, 1.5, 2.9), } # For fixed parameters, bounds are ignored. We leave them here just @@ -191,11 +191,11 @@ if __name__ == '__main__': "sld_PyOx_real": (1.995, 1.92, 2.07), "sld_Py2_real": (5, 4.7, 5.3), "sld_Py1_real": (4.62, 4.32, 4.92), - "rPyOx": (27, 15, 35), - "rPy2": (12, 2, 20), - "rPy1": (12, 2, 20), - "rSiO2": (15, 5, 25), - "rSi": (15, 5, 25), + "rPyOx": (2.7, 1.5, 3.5), + "rPy2": (1.2, .2, 2.0), + "rPy1": (1.2, .2, 2.0), + "rSiO2": (1.5, .5, 2.5), + "rSi": (1.5, .5, 2.5), "msld_PyOx": (0.25, 0, 1), "msld_Py2": (0.63, 0, 1), "msld_Py1": (0.64, 0, 1), diff --git a/rawEx/fit/specular/PolarizedSpinAsymmetry.py b/rawEx/fit/specular/PolarizedSpinAsymmetry.py index e9a3919c958..4adcb72c5d0 100755 --- a/rawEx/fit/specular/PolarizedSpinAsymmetry.py +++ b/rawEx/fit/specular/PolarizedSpinAsymmetry.py @@ -12,7 +12,7 @@ demonstration without the magnetically dead layer. import os import numpy import bornagain as ba -from bornagain import angstrom, nm, ba_plot as bp, deg, R3 +from bornagain import nm, ba_plot as bp, deg, R3 from bornagain.numpyutil import Arrayf64Converter as dac # q-range on which the simulation and fitting are to be performed @@ -46,8 +46,8 @@ def get_sample(P): material_layer = ba.MaterialBySLD("(Mg,Al,Fe)3O4", P["rho_Mafo"]*1e-6, 0, B) material_substrate = ba.MaterialBySLD("MgAl2O4", *sldMao) - r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 25*nm) - r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 25*nm) + r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*nm, 0.7, 25*nm) + r_substrate_autocorr = ba.K_CorrelationModel(P["r_Mao"]*nm, 0.7, 25*nm) interlayer = ba.TanhInterlayer() @@ -55,7 +55,7 @@ def get_sample(P): r_substrate = ba.LayerRoughness(r_substrate_autocorr, interlayer) ambient_layer = ba.Layer(vacuum) - layer = ba.Layer(material_layer, P["t_Mafo"]*angstrom, r_Mafo) + layer = ba.Layer(material_layer, P["t_Mafo"]*nm, r_Mafo) substrate_layer = ba.Layer(material_substrate, r_substrate) sample = ba.Sample() @@ -206,9 +206,9 @@ if __name__ == '__main__': 'q_offset': 7.971243487467318e-05, 'rho_Mafo': 6.370140108715461, 'rhoM_Mafo': 0.27399566816062926, - 't_Mafo': 137.46913056084736, - 'r_Mao': 8.60487712674644, - 'r_Mafo': 3.7844265311293483 + 't_Mafo': 13.746913056084736, + 'r_Mao': 0.860487712674644, + 'r_Mafo': 0.37844265311293483 } def run_Simulation_pp(qzs, P): diff --git a/rawEx/fit/specular/PolarizedSpinAsymmetryFit.py b/rawEx/fit/specular/PolarizedSpinAsymmetryFit.py index ef4459ab14b..9a997bc3322 100755 --- a/rawEx/fit/specular/PolarizedSpinAsymmetryFit.py +++ b/rawEx/fit/specular/PolarizedSpinAsymmetryFit.py @@ -58,9 +58,9 @@ if __name__ == '__main__': "q_offset": (0, -0.002, 0.002), "rho_Mafo": (6.3649, 2, 7), "rhoM_Mafo": (0, 0, 2), - "t_Mafo": (150, 60, 180), - "r_Mao": (1, 0, 12), - "r_Mafo": (1, 0, 12), + "t_Mafo": (15, 6, 18), + "r_Mao": (0.1, 0, 1.2), + "r_Mafo": (0.1, 0, 1.2), } PInitial = {d: v[0] for d, v in startParams.items()} diff --git a/rawEx/fit/specular/Pt_layer_fit.py b/rawEx/fit/specular/Pt_layer_fit.py index a29bc69a088..7c15cc20783 100755 --- a/rawEx/fit/specular/Pt_layer_fit.py +++ b/rawEx/fit/specular/Pt_layer_fit.py @@ -9,7 +9,7 @@ band of roughly 4-7 Ã… in 100 steps of 2theta. """ import bornagain as ba, numpy as np, os, matplotlib.pyplot as plt -from bornagain import angstrom +from bornagain import nm from bornagain.numpyutil import Arrayf64Converter as dac datadir = os.getenv('BA_DATA_DIR', '') @@ -32,14 +32,14 @@ def get_sample(P): interlayer = ba.TanhInterlayer() - si_autocorr = ba.K_CorrelationModel(P["r_si/nm"], 0.7, 250*angstrom) - pt_autocorr = ba.K_CorrelationModel(P["r_pt/nm"], 0.7, 250*angstrom) + si_autocorr = ba.K_CorrelationModel(P["r_si/nm"]*nm, 0.7, 25*nm) + pt_autocorr = ba.K_CorrelationModel(P["r_pt/nm"]*nm, 0.7, 25*nm) r_si = ba.LayerRoughness(si_autocorr, interlayer) r_pt = ba.LayerRoughness(pt_autocorr, interlayer) ambient_layer = ba.Layer(vacuum) - layer = ba.Layer(material_layer, P["t_pt/nm"], r_pt) + layer = ba.Layer(material_layer, P["t_pt/nm"]*nm, r_pt) substrate_layer = ba.Layer(material_substrate, r_si) sample = ba.Sample() diff --git a/rawEx/specular/MagneticLayerImperfect.py b/rawEx/specular/MagneticLayerImperfect.py index 7a227be4b33..95ac6267d09 100755 --- a/rawEx/specular/MagneticLayerImperfect.py +++ b/rawEx/specular/MagneticLayerImperfect.py @@ -6,7 +6,7 @@ similar to Devishvili et al., Rev. Sci. Instrum. 84, 025112 (2013). """ import numpy import bornagain as ba -from bornagain import angstrom, ba_plot as bp, deg, R3 +from bornagain import nm, ba_plot as bp, deg, R3 from math import sin, cos def get_sample(): @@ -19,14 +19,14 @@ def get_sample(): material_Fe = ba.MaterialBySLD("Fe", 8.0241e-06, 6.0448e-10, B) material_substrate = ba.MaterialBySLD("MgO", 5.9803e-06, 9.3996e-12) - autocorr = ba.K_CorrelationModel(20*angstrom, 0.7, 250*angstrom) + autocorr = ba.K_CorrelationModel(2*nm, 0.7, 25*nm) interlayer = ba.TanhInterlayer() roughness = ba.LayerRoughness(autocorr, interlayer) # Layers layer_vacuum = ba.Layer(vacuum) - layer_Pd = ba.Layer(material_Pd, 120*angstrom, roughness) - layer_Fe = ba.Layer(material_Fe, 1000*angstrom, roughness) + layer_Pd = ba.Layer(material_Pd, 12*nm, roughness) + layer_Fe = ba.Layer(material_Fe, 100*nm, roughness) layer_substrate = ba.Layer(material_substrate, roughness) # Multilayer diff --git a/rawEx/specular/PolarizedSpinAsymmetry.py b/rawEx/specular/PolarizedSpinAsymmetry.py index 5e6e92c3aed..0ea01ac6bec 100755 --- a/rawEx/specular/PolarizedSpinAsymmetry.py +++ b/rawEx/specular/PolarizedSpinAsymmetry.py @@ -12,7 +12,7 @@ demonstration without the magnetically dead layer. import os import numpy import bornagain as ba -from bornagain import angstrom, ba_plot as bp, deg, R3 +from bornagain import nm, ba_plot as bp, deg, R3 from bornagain.numpyutil import Arrayf64Converter as dac @@ -47,8 +47,8 @@ def get_sample(P): material_layer = ba.MaterialBySLD("(Mg,Al,Fe)3O4", P["rho_Mafo"]*1e-6, 0, B) material_substrate = ba.MaterialBySLD("MgAl2O4", *sldMao) - r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*angstrom, 0.7, 250*angstrom) - r_sub_autocorr = ba.K_CorrelationModel(P["r_Mao"]*angstrom, 0.7, 250*angstrom) + r_Mafo_autocorr = ba.K_CorrelationModel(P["r_Mafo"]*nm, 0.7, 25*nm) + r_sub_autocorr = ba.K_CorrelationModel(P["r_Mao"]*nm, 0.7, 25*nm) interlayer = ba.TanhInterlayer() @@ -56,7 +56,7 @@ def get_sample(P): r_substrate = ba.LayerRoughness(r_sub_autocorr, interlayer) ambient_layer = ba.Layer(vacuum) - layer = ba.Layer(material_layer, P["t_Mafo"]*angstrom, r_Mafo) + layer = ba.Layer(material_layer, P["t_Mafo"]*nm, r_Mafo) substrate_layer = ba.Layer(material_substrate, r_substrate) sample = ba.Sample() @@ -207,9 +207,9 @@ if __name__ == '__main__': 'q_offset': 7.971243487467318e-05, 'rho_Mafo': 6.370140108715461, 'rhoM_Mafo': 0.27399566816062926, - 't_Mafo': 137.46913056084736, - 'r_Mao': 8.60487712674644, - 'r_Mafo': 3.7844265311293483 + 't_Mafo': 13.746913056084736, + 'r_Mao': 0.860487712674644, + 'r_Mafo': 0.37844265311293483 } def run_Simulation_pp(qzs, P): diff --git a/rawEx/specular/RoughnessModel.py b/rawEx/specular/RoughnessModel.py index 3267f3b02d9..1a98b14dadf 100755 --- a/rawEx/specular/RoughnessModel.py +++ b/rawEx/specular/RoughnessModel.py @@ -5,7 +5,7 @@ tanh and Nevot-Croce roughness model using BornAgain. """ import bornagain as ba -from bornagain import angstrom, ba_plot as bp, deg +from bornagain import angstrom, nm, ba_plot as bp, deg def get_sample(interlayer): @@ -16,13 +16,13 @@ def get_sample(interlayer): material_substrate = ba.MaterialBySLD("SiSubstrate", 2.0704e-06, 0) # Roughness - autocorr = ba.K_CorrelationModel(10*angstrom, 0.7, 250*angstrom) + autocorr = ba.K_CorrelationModel(1*nm, 0.7, 25*nm) roughness = ba.LayerRoughness(autocorr, interlayer) # create layers ambient_layer = ba.Layer(vacuum) - ti_layer = ba.Layer(material_ti, 30*angstrom, roughness) - ni_layer = ba.Layer(material_ni, 70*angstrom, roughness) + ti_layer = ba.Layer(material_ti, 3*nm, roughness) + ni_layer = ba.Layer(material_ni, 7*nm, roughness) substrate_layer = ba.Layer(material_substrate, roughness) # create periodic stack diff --git a/rawEx/specular/SpecularSimulationWithRoughness.py b/rawEx/specular/SpecularSimulationWithRoughness.py index 3ebda63f5ab..60d59fbb927 100755 --- a/rawEx/specular/SpecularSimulationWithRoughness.py +++ b/rawEx/specular/SpecularSimulationWithRoughness.py @@ -5,7 +5,7 @@ with a rough sample using BornAgain. """ import bornagain as ba -from bornagain import angstrom, ba_plot as bp, deg, nm +from bornagain import nm, ba_plot as bp, deg, nm def get_sample(): @@ -22,8 +22,8 @@ def get_sample(): # Layers ambient_layer = ba.Layer(vacuum) - ti_layer = ba.Layer(material_ti, 30*angstrom, roughness) - ni_layer = ba.Layer(material_ni, 70*angstrom, roughness) + ti_layer = ba.Layer(material_ti, 3*nm, roughness) + ni_layer = ba.Layer(material_ni, 7*nm, roughness) substrate_layer = ba.Layer(material_substrate, roughness) # Periodic stack @@ -44,7 +44,7 @@ def get_sample(): def get_simulation(sample): n = <%= test_mode ? 50 : 500 %> scan = ba.AlphaScan(n, 2*deg/n, 2*deg) - scan.setWavelength(1.54*angstrom) + scan.setWavelength(0.154*nm) return ba.SpecularSimulation(scan, sample) -- GitLab