diff --git a/GUI/View/Realspace/RealspaceBuilder.cpp b/GUI/View/Realspace/RealspaceBuilder.cpp index 74ec96b73a738f22f97fb098d873405106dd4660..2a512a8bc30bc266af78ef1e1f18a01f1a6d6ede 100644 --- a/GUI/View/Realspace/RealspaceBuilder.cpp +++ b/GUI/View/Realspace/RealspaceBuilder.cpp @@ -105,7 +105,7 @@ std::unique_ptr<const double2d_t> layerRoughnessMap(const LayerItem& layerItem, roughItem->certainInterlayerModel()->createModel(); auto roughness = LayerRoughness(autocorrelation.get(), interlayer.get()); - if (roughness.sigma() == 0) + if (roughness.rms() == 0) return result; int n = sceneGeometry.numRoughnessPointsAlongAxis; diff --git a/Resample/Processed/ReSample.cpp b/Resample/Processed/ReSample.cpp index 9c10b553f74761c3bc801501e1c3751cf3a42881..2d03aa05aaf3dcc6df3a57553274aab7afa5b96d 100644 --- a/Resample/Processed/ReSample.cpp +++ b/Resample/Processed/ReSample.cpp @@ -402,7 +402,7 @@ bool ReSample::polarizing() const bool ReSample::hasRoughness() const { for (const auto& slice : m_stack) - if (slice.topRoughness() && slice.topRoughness()->sigma() > 0) + if (slice.topRoughness() && slice.topRoughness()->rms() > 0) return true; return false; } diff --git a/Resample/Slice/ProfileHelper.cpp b/Resample/Slice/ProfileHelper.cpp index 0e25c53674886136c9072816f5cd0c1209b7c6f2..c969445e83c3afb840999ec14fb06a6fb352d7ac 100644 --- a/Resample/Slice/ProfileHelper.cpp +++ b/Resample/Slice/ProfileHelper.cpp @@ -27,7 +27,7 @@ double Transition(double x, const LayerRoughness* roughness) if (!roughness) return Math::Heaviside(x); - return roughness->interlayerModel()->transient(x, roughness->sigma()); + return roughness->interlayerModel()->transient(x, roughness->rms()); } const std::string SLD = "SLD"; @@ -113,9 +113,9 @@ std::pair<double, double> ProfileHelper::defaultLimits() const const LayerRoughness* bottomRoughness = m_stack.back().topRoughness(); double top_margin = - topRoughness && topRoughness->sigma() > 0 ? 5.0 * topRoughness->sigma() : default_margin; - double bottom_margin = bottomRoughness && bottomRoughness->sigma() > 0 - ? 5.0 * bottomRoughness->sigma() + topRoughness && topRoughness->rms() > 0 ? 5.0 * topRoughness->rms() : default_margin; + double bottom_margin = bottomRoughness && bottomRoughness->rms() > 0 + ? 5.0 * bottomRoughness->rms() : default_margin; double z_min = m_stack.back().hig() - bottom_margin; double z_max = m_stack.front().low() + top_margin; diff --git a/Resample/Specular/ComputeFluxMagnetic.cpp b/Resample/Specular/ComputeFluxMagnetic.cpp index 83e5b8a730254c0b409d43aeeb2bf7da8980bb8c..63b2380f5c5da6a009b218a376f8b5e65c8c8057 100644 --- a/Resample/Specular/ComputeFluxMagnetic.cpp +++ b/Resample/Specular/ComputeFluxMagnetic.cpp @@ -182,7 +182,7 @@ std::vector<MatrixFlux> computeTR(const SliceStack& slices, const std::vector<co for (size_t i = N - 1; i > 0; --i) { const auto* roughness = slices.bottomRoughness(i); - const double sigma = roughness ? roughness->sigma() : 0.; + const double sigma = roughness ? roughness->rms() : 0.; const auto* r_model = roughness ? roughness->interlayerModel() : nullptr; // compute the 2x2 blocks of the transfer matrix @@ -288,7 +288,7 @@ SpinMatrix Compute::polarizedReflectivity(const SliceStack& slices, for (size_t i = N - 1; i > 0; --i) { MatrixFlux tr_i = createCoeff(i - 1); const auto* roughness = slices.bottomRoughness(i - 1); - const double sigma = roughness ? roughness->sigma() : 0.; + const double sigma = roughness ? roughness->rms() : 0.; const auto* r_model = roughness ? roughness->interlayerModel() : nullptr; // compute the 2x2 blocks of the transfer matrix diff --git a/Resample/Specular/ComputeFluxScalar.cpp b/Resample/Specular/ComputeFluxScalar.cpp index 7f8a70ddeacf043c87177eb10d8ed4be63b615d7..b4be0a72c9b4250a085e4fe62e48dc4c4c8c2a70 100644 --- a/Resample/Specular/ComputeFluxScalar.cpp +++ b/Resample/Specular/ComputeFluxScalar.cpp @@ -84,7 +84,7 @@ std::vector<Spinor> computeTR(const SliceStack& slices, const std::vector<comple const size_t jthis = X[i - 1]; const size_t jlast = X[i]; const auto* roughness = slices.bottomRoughness(jthis); - const double sigma = roughness ? roughness->sigma() : 0.; + const double sigma = roughness ? roughness->rms() : 0.; const auto* r_model = roughness ? roughness->interlayerModel() : nullptr; const auto [slp, slm] = transition(kz[jthis], kz[jlast], sigma, r_model); @@ -138,7 +138,7 @@ complex_t Compute::scalarReflectivity(const SliceStack& slices, const std::vecto for (size_t i = N - 1; i > 0; i--) { const auto* roughness = slices.bottomRoughness(i - 1); - const double sigma = roughness ? roughness->sigma() : 0.; + const double sigma = roughness ? roughness->rms() : 0.; const auto* r_model = roughness ? roughness->interlayerModel() : nullptr; const auto [sp, sm] = ::transition(kz[i - 1], kz[i], sigma, r_model); diff --git a/Sample/Interface/AutocorrelationModels.cpp b/Sample/Interface/AutocorrelationModels.cpp index 78d7877b5d578353f7dbcea2912aed7e5eda9324..e95b678f6f86fe87e4409e915efba75361673980 100644 --- a/Sample/Interface/AutocorrelationModels.cpp +++ b/Sample/Interface/AutocorrelationModels.cpp @@ -28,7 +28,7 @@ AutocorrelationModel::AutocorrelationModel(double maxSpatFrequency) std::vector<std::string> AutocorrelationModel::validationErrs() const { std::vector<std::string> errs; - requestGt0(errs, m_max_spatial_frequency, "maxSpatFrequency"); + requestGt0(errs, m_max_spatial_frequency, "maxSpatialFrequency"); return errs; } @@ -40,7 +40,7 @@ std::string AutocorrelationModel::pythonArguments() const //------------------------------------------------------------------------------------------------- -//! @param sigma: rms of the roughness in nanometers +//! @param sigma: height scale of the roughness in nanometers (usually close to rms) //! @param hurstParameter: hurst parameter which describes how jagged the interface, //! dimensionless (0.0, 1.0], where 0.0 gives more spikes, 1.0 more smoothness //! @param lateralCorrLength: lateral correlation length of the roughness in nanometers @@ -115,3 +115,9 @@ double K_CorrelationModel::corrFunction(const R3& r) const return m_sigma * m_sigma * std::pow(2., 1 - H) / tgamma(H) * std::pow(R / clength, H) * gsl_sf_bessel_Knu(H, R / clength); } + +double K_CorrelationModel::rms() const +{ + // integration of spectral function: rms^2 = Integrate[PSD(f) * 2*pi*f, {f, 0, max_frequency}] + return 0; +} diff --git a/Sample/Interface/AutocorrelationModels.h b/Sample/Interface/AutocorrelationModels.h index dc2a99961f10726dd84896ce7ba0e08b29892a83..ab49076278d7e75013cf53fb79feb7731099aff2 100644 --- a/Sample/Interface/AutocorrelationModels.h +++ b/Sample/Interface/AutocorrelationModels.h @@ -23,7 +23,7 @@ class AutocorrelationModel : public ICloneable, public INode { public: AutocorrelationModel* clone() const override = 0; - virtual double sigma() const = 0; + virtual double rms() const = 0; virtual double spectralFunction(const R3& k) const = 0; virtual double corrFunction(const R3& k) const = 0; @@ -60,10 +60,12 @@ public: double corrFunction(const R3& r) const override; + double rms() const override; + //! Sets rms of roughness void setSigma(double sigma) { m_sigma = sigma; } //! Returns rms of roughness - double sigma() const override { return m_sigma; } + double sigma() const { return m_sigma; } //! Sets hurst parameter. It describes how jagged the surface is. void setHurstParameter(double hurstParameter) { m_hurst_parameter = hurstParameter; } diff --git a/Sample/Interface/CrosscorrelationModels.cpp b/Sample/Interface/CrosscorrelationModels.cpp index 7f9e47f789140b88dfa524b14706c542c1b1623f..d821c3e4ce8b1af99376b434f617e0e7a51e72ef 100644 --- a/Sample/Interface/CrosscorrelationModels.cpp +++ b/Sample/Interface/CrosscorrelationModels.cpp @@ -27,15 +27,15 @@ double cross_spectrum(const AutocorrelationModel* up, const AutocorrelationModel { ASSERT(up && low); - const double sigma_up = up->sigma(); - const double sigma_low = low->sigma(); + const double rms_up = up->rms(); + const double rms_low = low->rms(); - if (sigma_up <= 0 || sigma_low <= 0) + if (rms_up <= 0 || rms_low <= 0) return 0; const double spectrum_up = up->spectralFunction(qvec); const double spectrum_low = low->spectralFunction(qvec); - return 0.5 * ((sigma_low / sigma_up) * spectrum_up + (sigma_up / sigma_low) * spectrum_low); + return 0.5 * ((rms_low / rms_up) * spectrum_up + (rms_up / rms_low) * spectrum_low); } } // namespace diff --git a/Sample/Interface/LayerRoughness.h b/Sample/Interface/LayerRoughness.h index 711445d47578d001aa105634895866643faf7b35..796e868eb442862de08a9fd6045dd9a58be9974f 100644 --- a/Sample/Interface/LayerRoughness.h +++ b/Sample/Interface/LayerRoughness.h @@ -35,15 +35,8 @@ public: std::string className() const final { return "LayerRoughness"; } std::vector<const INode*> nodeChildren() const override; -#ifndef SWIG - bool showInScriptOrGui() const; -#endif - //! Returns rms of roughness - double sigma() const - { - return m_autocorrelation_model->sigma(); - } + double rms() const { return m_autocorrelation_model->rms(); } void setAutocorrelationModel(const AutocorrelationModel* autocorrelation); const AutocorrelationModel* autocorrelationModel() const @@ -52,10 +45,7 @@ public: } void setInterlayerModel(const InterlayerModel* interlayer); - const InterlayerModel* interlayerModel() const - { - return m_interlayer_model.get(); - } + const InterlayerModel* interlayerModel() const { return m_interlayer_model.get(); } void setCrosscorrelationModel(const CrosscorrelationModel* crosscorrelation); const CrosscorrelationModel* crosscorrelationModel() const @@ -63,6 +53,10 @@ public: return m_crosscorrelation_model.get(); } +#ifndef SWIG + bool showInScriptOrGui() const; +#endif + private: std::unique_ptr<AutocorrelationModel> m_autocorrelation_model; // never nullptr std::unique_ptr<InterlayerModel> m_interlayer_model; // never nullptr diff --git a/Sample/Interface/RoughnessMap.cpp b/Sample/Interface/RoughnessMap.cpp index d79718316c64e8cddf21420045421dcf1ed5a5ff..187d6a7554d54eec0643047a63761b42ff2d5302 100644 --- a/Sample/Interface/RoughnessMap.cpp +++ b/Sample/Interface/RoughnessMap.cpp @@ -70,7 +70,7 @@ double2d_t RoughnessMap::generateMap() double2d_t RoughnessMap::mapFromHeights() const { const size_t z_steps = 3999; - const double sigma = m_layerRoughness->sigma(); + const double sigma = m_layerRoughness->rms(); const double sigma_factor = m_layerRoughness->interlayerModel()->sigmaRange(); const double z_limit = sigma * sigma_factor; const double step = 2 * z_limit / (z_steps - 1); @@ -196,7 +196,7 @@ double2d_t RoughnessMap::applyHeightsToSpectrum(const double2d_t& h_map, void RoughnessMap::createMap() { - if (m_layerRoughness->sigma() < 1e-10) { + if (m_layerRoughness->rms() < 1e-10) { m_rough_map = double2d_t(m_y_points, std::vector<double>(m_x_points)); return; } diff --git a/Sim/Computation/RoughMultiLayerContribution.cpp b/Sim/Computation/RoughMultiLayerContribution.cpp index 6d8d2e0fe55424ea3d5122c3ddd4838c93431fbd..2ddcea80f7ea4d2f0e29f42719a52f84b725e169 100644 --- a/Sim/Computation/RoughMultiLayerContribution.cpp +++ b/Sim/Computation/RoughMultiLayerContribution.cpp @@ -87,7 +87,7 @@ complex_t get_sum8terms(const ReSample& re_sample, size_t i_layer, const Diffuse const complex_t qz4_B = -qz1_B; const LayerRoughness* roughness = re_sample.averageSlices().bottomRoughness(i_layer); - const double sigma = roughness ? roughness->sigma() : 0.; + const double sigma = roughness ? roughness->rms() : 0.; const complex_t term1 = T_i_A * T_f_A * ::h_above(qz1_A * sigma); const complex_t term2 = T_i_A * R_f_A * ::h_above(qz2_A * sigma); const complex_t term3 = R_i_A * T_f_A * ::h_above(qz3_A * sigma); diff --git a/Tests/Unit/Sample/MultiLayerTest.cpp b/Tests/Unit/Sample/MultiLayerTest.cpp index 29b10dfff5259d5a7285d300a19c0218522908ef..dfd83c098499dfb9f9ade60abd1aefbf8bb59c2c 100644 --- a/Tests/Unit/Sample/MultiLayerTest.cpp +++ b/Tests/Unit/Sample/MultiLayerTest.cpp @@ -87,17 +87,17 @@ TEST_F(MultiLayerTest, LayerInterfaces) const LayerInterface* interface0 = mLayer.layerInterface(0); EXPECT_TRUE(nullptr != interface0); EXPECT_TRUE(nullptr != interface0->roughness()); - EXPECT_EQ(interface0->roughness()->sigma(), 0.0); + EXPECT_EQ(interface0->roughness()->rms(), 0.0); const LayerInterface* interface1 = mLayer.layerInterface(1); EXPECT_TRUE(nullptr != interface1); EXPECT_TRUE(nullptr != interface1->roughness()); - EXPECT_EQ(interface1->roughness()->sigma(), 0.0); + EXPECT_EQ(interface1->roughness()->rms(), 0.0); const LayerInterface* interface2 = mLayer.layerInterface(2); EXPECT_TRUE(nullptr != interface2); EXPECT_TRUE(nullptr != interface2->roughness()); - EXPECT_EQ(interface2->roughness()->sigma(), 0.0); + EXPECT_EQ(interface2->roughness()->rms(), 0.0); } TEST_F(MultiLayerTest, Clone) @@ -119,19 +119,19 @@ TEST_F(MultiLayerTest, Clone) const LayerInterface* interface0 = mLayerClone->layerInterface(0); EXPECT_TRUE(nullptr != interface0); EXPECT_TRUE(nullptr != interface0->roughness()); - EXPECT_EQ(interface0->roughness()->sigma(), 0.0); + EXPECT_EQ(interface0->roughness()->rms(), 0.0); EXPECT_TRUE(nullptr == interface0->roughness()->crosscorrelationModel()); const LayerInterface* interface1 = mLayerClone->layerInterface(1); EXPECT_TRUE(nullptr != interface1); EXPECT_TRUE(nullptr != interface1->roughness()); - EXPECT_EQ(interface1->roughness()->sigma(), 0.0); + EXPECT_EQ(interface1->roughness()->rms(), 0.0); EXPECT_TRUE(nullptr == interface1->roughness()->crosscorrelationModel()); const LayerInterface* interface2 = mLayerClone->layerInterface(2); EXPECT_TRUE(nullptr != interface2); EXPECT_TRUE(nullptr != interface2->roughness()); - EXPECT_EQ(interface2->roughness()->sigma(), 0.0); + EXPECT_EQ(interface2->roughness()->rms(), 0.0); EXPECT_TRUE(nullptr == interface2->roughness()->crosscorrelationModel()); delete mLayerClone; @@ -157,12 +157,12 @@ TEST_F(MultiLayerTest, WithRoughness) dynamic_cast<const K_CorrelationModel*>(roughness0->autocorrelationModel()); EXPECT_TRUE(roughness0_AC); - EXPECT_EQ(1.1, roughness0->sigma()); + EXPECT_EQ(1.1, roughness0->rms()); EXPECT_EQ(.3, roughness0_AC->hurst()); EXPECT_EQ(0.1, roughness0_AC->lateralCorrLength()); EXPECT_TRUE(roughness1); - EXPECT_EQ(roughness1->sigma(), 0.0); + EXPECT_EQ(roughness1->rms(), 0.0); } TEST_F(MultiLayerTest, CloneWithRoughness) @@ -196,7 +196,7 @@ TEST_F(MultiLayerTest, CloneWithRoughness) dynamic_cast<const K_CorrelationModel*>(roughness0->autocorrelationModel()); EXPECT_TRUE(roughness0_AC); - EXPECT_EQ(2.1, roughness0->sigma()); + EXPECT_EQ(2.1, roughness0->rms()); EXPECT_EQ(.3, roughness0_AC->hurst()); EXPECT_EQ(12.1, roughness0_AC->lateralCorrLength()); @@ -204,7 +204,7 @@ TEST_F(MultiLayerTest, CloneWithRoughness) dynamic_cast<const K_CorrelationModel*>(roughness1->autocorrelationModel()); EXPECT_TRUE(roughness1_AC); - EXPECT_EQ(1.1, roughness1->sigma()); + EXPECT_EQ(1.1, roughness1->rms()); EXPECT_EQ(.3, roughness1_AC->hurst()); EXPECT_EQ(0.1, roughness1_AC->lateralCorrLength()); diff --git a/auto/Wrap/libBornAgainSample.py b/auto/Wrap/libBornAgainSample.py index 716bd55a52543777f9911861fa3747f823acb823..50d24f07ead2b332927725ad7ac74c16500f389e 100644 --- a/auto/Wrap/libBornAgainSample.py +++ b/auto/Wrap/libBornAgainSample.py @@ -4191,9 +4191,9 @@ class LayerRoughness(ISampleNode): r"""nodeChildren(LayerRoughness self) -> swig_dummy_type_const_inode_vector""" return _libBornAgainSample.LayerRoughness_nodeChildren(self) - def sigma(self): - r"""sigma(LayerRoughness self) -> double""" - return _libBornAgainSample.LayerRoughness_sigma(self) + def rms(self): + r"""rms(LayerRoughness self) -> double""" + return _libBornAgainSample.LayerRoughness_rms(self) def setAutocorrelationModel(self, autocorrelation): r"""setAutocorrelationModel(LayerRoughness self, AutocorrelationModel autocorrelation)""" @@ -4326,9 +4326,9 @@ class AutocorrelationModel(libBornAgainBase.ICloneable, libBornAgainParam.INode) r"""clone(AutocorrelationModel self) -> AutocorrelationModel""" return _libBornAgainSample.AutocorrelationModel_clone(self) - def sigma(self): - r"""sigma(AutocorrelationModel self) -> double""" - return _libBornAgainSample.AutocorrelationModel_sigma(self) + def rms(self): + r"""rms(AutocorrelationModel self) -> double""" + return _libBornAgainSample.AutocorrelationModel_rms(self) def spectralFunction(self, k): r"""spectralFunction(AutocorrelationModel self, R3 k) -> double""" @@ -4387,6 +4387,10 @@ class K_CorrelationModel(AutocorrelationModel): r"""corrFunction(K_CorrelationModel self, R3 r) -> double""" return _libBornAgainSample.K_CorrelationModel_corrFunction(self, r) + def rms(self): + r"""rms(K_CorrelationModel self) -> double""" + return _libBornAgainSample.K_CorrelationModel_rms(self) + def setSigma(self, sigma): r"""setSigma(K_CorrelationModel self, double sigma)""" return _libBornAgainSample.K_CorrelationModel_setSigma(self, sigma) diff --git a/auto/Wrap/libBornAgainSample_wrap.cpp b/auto/Wrap/libBornAgainSample_wrap.cpp index 07d646c2cfb211a5f8d68daef6577fc667066c6b..f782b5f0b269462e617650738c699e3e5c70a422 100644 --- a/auto/Wrap/libBornAgainSample_wrap.cpp +++ b/auto/Wrap/libBornAgainSample_wrap.cpp @@ -50738,7 +50738,7 @@ fail: } -SWIGINTERN PyObject *_wrap_LayerRoughness_sigma(PyObject *self, PyObject *args) { +SWIGINTERN PyObject *_wrap_LayerRoughness_rms(PyObject *self, PyObject *args) { PyObject *resultobj = 0; LayerRoughness *arg1 = (LayerRoughness *) 0 ; void *argp1 = 0 ; @@ -50751,12 +50751,12 @@ SWIGINTERN PyObject *_wrap_LayerRoughness_sigma(PyObject *self, PyObject *args) swig_obj[0] = args; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_LayerRoughness, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "LayerRoughness_sigma" "', argument " "1"" of type '" "LayerRoughness const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "LayerRoughness_rms" "', argument " "1"" of type '" "LayerRoughness const *""'"); } arg1 = reinterpret_cast< LayerRoughness * >(argp1); { try { - result = (double)((LayerRoughness const *)arg1)->sigma(); + result = (double)((LayerRoughness const *)arg1)->rms(); } catch (const std::exception& ex) { // message shown in the Python interpreter const std::string msg { @@ -52085,7 +52085,7 @@ fail: } -SWIGINTERN PyObject *_wrap_AutocorrelationModel_sigma(PyObject *self, PyObject *args) { +SWIGINTERN PyObject *_wrap_AutocorrelationModel_rms(PyObject *self, PyObject *args) { PyObject *resultobj = 0; AutocorrelationModel *arg1 = (AutocorrelationModel *) 0 ; void *argp1 = 0 ; @@ -52098,12 +52098,12 @@ SWIGINTERN PyObject *_wrap_AutocorrelationModel_sigma(PyObject *self, PyObject * swig_obj[0] = args; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_AutocorrelationModel, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AutocorrelationModel_sigma" "', argument " "1"" of type '" "AutocorrelationModel const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "AutocorrelationModel_rms" "', argument " "1"" of type '" "AutocorrelationModel const *""'"); } arg1 = reinterpret_cast< AutocorrelationModel * >(argp1); { try { - result = (double)((AutocorrelationModel const *)arg1)->sigma(); + result = (double)((AutocorrelationModel const *)arg1)->rms(); } catch (const std::exception& ex) { // message shown in the Python interpreter const std::string msg { @@ -52879,6 +52879,40 @@ fail: } +SWIGINTERN PyObject *_wrap_K_CorrelationModel_rms(PyObject *self, PyObject *args) { + PyObject *resultobj = 0; + K_CorrelationModel *arg1 = (K_CorrelationModel *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + double result; + + (void)self; + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_K_CorrelationModel, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "K_CorrelationModel_rms" "', argument " "1"" of type '" "K_CorrelationModel const *""'"); + } + arg1 = reinterpret_cast< K_CorrelationModel * >(argp1); + { + try { + result = (double)((K_CorrelationModel const *)arg1)->rms(); + } catch (const std::exception& ex) { + // message shown in the Python interpreter + const std::string msg { + "BornAgain C++ Exception: " + std::string(ex.what()) + }; + SWIG_exception(SWIG_RuntimeError, msg.c_str()); + } + } + resultobj = SWIG_From_double(static_cast< double >(result)); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *_wrap_K_CorrelationModel_setSigma(PyObject *self, PyObject *args) { PyObject *resultobj = 0; K_CorrelationModel *arg1 = (K_CorrelationModel *) 0 ; @@ -74592,7 +74626,7 @@ static PyMethodDef SwigMethods[] = { { "LayerRoughness_clone", _wrap_LayerRoughness_clone, METH_O, "LayerRoughness_clone(LayerRoughness self) -> LayerRoughness"}, { "LayerRoughness_className", _wrap_LayerRoughness_className, METH_O, "LayerRoughness_className(LayerRoughness self) -> std::string"}, { "LayerRoughness_nodeChildren", _wrap_LayerRoughness_nodeChildren, METH_O, "LayerRoughness_nodeChildren(LayerRoughness self) -> swig_dummy_type_const_inode_vector"}, - { "LayerRoughness_sigma", _wrap_LayerRoughness_sigma, METH_O, "LayerRoughness_sigma(LayerRoughness self) -> double"}, + { "LayerRoughness_rms", _wrap_LayerRoughness_rms, METH_O, "LayerRoughness_rms(LayerRoughness self) -> double"}, { "LayerRoughness_setAutocorrelationModel", _wrap_LayerRoughness_setAutocorrelationModel, METH_VARARGS, "LayerRoughness_setAutocorrelationModel(LayerRoughness self, AutocorrelationModel autocorrelation)"}, { "LayerRoughness_autocorrelationModel", _wrap_LayerRoughness_autocorrelationModel, METH_O, "LayerRoughness_autocorrelationModel(LayerRoughness self) -> AutocorrelationModel"}, { "LayerRoughness_setInterlayerModel", _wrap_LayerRoughness_setInterlayerModel, METH_VARARGS, "LayerRoughness_setInterlayerModel(LayerRoughness self, InterlayerModel interlayer)"}, @@ -74628,7 +74662,7 @@ static PyMethodDef SwigMethods[] = { { "MultiLayer_swigregister", MultiLayer_swigregister, METH_O, NULL}, { "MultiLayer_swiginit", MultiLayer_swiginit, METH_VARARGS, NULL}, { "AutocorrelationModel_clone", _wrap_AutocorrelationModel_clone, METH_O, "AutocorrelationModel_clone(AutocorrelationModel self) -> AutocorrelationModel"}, - { "AutocorrelationModel_sigma", _wrap_AutocorrelationModel_sigma, METH_O, "AutocorrelationModel_sigma(AutocorrelationModel self) -> double"}, + { "AutocorrelationModel_rms", _wrap_AutocorrelationModel_rms, METH_O, "AutocorrelationModel_rms(AutocorrelationModel self) -> double"}, { "AutocorrelationModel_spectralFunction", _wrap_AutocorrelationModel_spectralFunction, METH_VARARGS, "AutocorrelationModel_spectralFunction(AutocorrelationModel self, R3 k) -> double"}, { "AutocorrelationModel_corrFunction", _wrap_AutocorrelationModel_corrFunction, METH_VARARGS, "AutocorrelationModel_corrFunction(AutocorrelationModel self, R3 k) -> double"}, { "AutocorrelationModel_setMaxSpatialFrequency", _wrap_AutocorrelationModel_setMaxSpatialFrequency, METH_VARARGS, "AutocorrelationModel_setMaxSpatialFrequency(AutocorrelationModel self, double val)"}, @@ -74643,6 +74677,7 @@ static PyMethodDef SwigMethods[] = { { "K_CorrelationModel_validate", _wrap_K_CorrelationModel_validate, METH_O, "K_CorrelationModel_validate(K_CorrelationModel self) -> std::string"}, { "K_CorrelationModel_spectralFunction", _wrap_K_CorrelationModel_spectralFunction, METH_VARARGS, "K_CorrelationModel_spectralFunction(K_CorrelationModel self, R3 q) -> double"}, { "K_CorrelationModel_corrFunction", _wrap_K_CorrelationModel_corrFunction, METH_VARARGS, "K_CorrelationModel_corrFunction(K_CorrelationModel self, R3 r) -> double"}, + { "K_CorrelationModel_rms", _wrap_K_CorrelationModel_rms, METH_O, "K_CorrelationModel_rms(K_CorrelationModel self) -> double"}, { "K_CorrelationModel_setSigma", _wrap_K_CorrelationModel_setSigma, METH_VARARGS, "K_CorrelationModel_setSigma(K_CorrelationModel self, double sigma)"}, { "K_CorrelationModel_sigma", _wrap_K_CorrelationModel_sigma, METH_O, "K_CorrelationModel_sigma(K_CorrelationModel self) -> double"}, { "K_CorrelationModel_setHurstParameter", _wrap_K_CorrelationModel_setHurstParameter, METH_VARARGS, "K_CorrelationModel_setHurstParameter(K_CorrelationModel self, double hurstParameter)"},