From a241661eed6cd38d0b8f073a3ef86bd97e0fcc4d Mon Sep 17 00:00:00 2001 From: "Joachim Wuttke (h)" <j.wuttke@fz-juelich.de> Date: Sun, 15 Nov 2020 18:34:23 +0100 Subject: [PATCH] prefer explicit lattice c'tor in Py code --- .../Interference2DCenteredSquareLattice.py | 2 +- .../Interference2DLatticeSumOfRotated.py | 2 +- .../Interference2DSquareFiniteLattice.py | 4 +- .../Interference2DSquareLattice.py | 2 +- .../SpheresAtHexLattice.py | 3 +- .../MaterialProfileWithParticles.py | 2 +- .../BoxesWithSpecularPeak.py | 2 +- .../CylindersInAverageLayer.py | 2 +- .../HalfSpheresInAverageTopLayer.py | 2 +- .../InterferenceFunctionFinite2DLattice.cpp | 24 ----- .../InterferenceFunctionFinite2DLattice.h | 5 - auto/Wrap/doxygenSample.i | 2 +- auto/Wrap/libBornAgainSample.py | 18 ---- auto/Wrap/libBornAgainSample_wrap.cpp | 94 ------------------- 14 files changed, 12 insertions(+), 152 deletions(-) diff --git a/Examples/python/simulation/ex03_InterferenceFunctions/Interference2DCenteredSquareLattice.py b/Examples/python/simulation/ex03_InterferenceFunctions/Interference2DCenteredSquareLattice.py index a5ac25677f0..ea4363117a2 100644 --- a/Examples/python/simulation/ex03_InterferenceFunctions/Interference2DCenteredSquareLattice.py +++ b/Examples/python/simulation/ex03_InterferenceFunctions/Interference2DCenteredSquareLattice.py @@ -17,7 +17,7 @@ def get_sample(): m_particle = ba.HomogeneousMaterial("Particle", 6e-4, 2e-8) # collection of particles - interference = ba.InterferenceFunction2DLattice.createSquare(25.0*nm, 0) + interference = ba.InterferenceFunction2DLattice(ba.SquareLattice(25.0*nm, 0)) pdf = ba.FTDecayFunction2DCauchy(300.0*nm/2.0/numpy.pi, 100.0*nm/2.0/numpy.pi, 0) interference.setDecayFunction(pdf) diff --git a/Examples/python/simulation/ex03_InterferenceFunctions/Interference2DLatticeSumOfRotated.py b/Examples/python/simulation/ex03_InterferenceFunctions/Interference2DLatticeSumOfRotated.py index 2e987129e11..47942350d79 100644 --- a/Examples/python/simulation/ex03_InterferenceFunctions/Interference2DLatticeSumOfRotated.py +++ b/Examples/python/simulation/ex03_InterferenceFunctions/Interference2DLatticeSumOfRotated.py @@ -17,7 +17,7 @@ def get_sample(): substrate_layer = ba.Layer(m_substrate) p_interference_function = \ - ba.InterferenceFunction2DLattice.createSquare(25.0*nm, 0) + ba.InterferenceFunction2DLattice(ba.SquareLattice(25.0*nm, 0)) pdf = ba.FTDecayFunction2DCauchy(300.0*nm/2.0/numpy.pi, 100.0*nm/2.0/numpy.pi, 0) p_interference_function.setDecayFunction(pdf) diff --git a/Examples/python/simulation/ex03_InterferenceFunctions/Interference2DSquareFiniteLattice.py b/Examples/python/simulation/ex03_InterferenceFunctions/Interference2DSquareFiniteLattice.py index ad783998dc3..0319d13ca30 100644 --- a/Examples/python/simulation/ex03_InterferenceFunctions/Interference2DSquareFiniteLattice.py +++ b/Examples/python/simulation/ex03_InterferenceFunctions/Interference2DSquareFiniteLattice.py @@ -16,8 +16,8 @@ def get_sample(): m_particle = ba.HomogeneousMaterial("Particle", 6e-4, 2e-8) # collection of particles - interference = ba.InterferenceFunctionFinite2DLattice.createSquare( - 25.0*nm, 0.0, 40, 40) + interference = ba.InterferenceFunctionFinite2DLattice( + ba.SquareLattice(25.0*nm, 0.0), 40, 40) interference.setPositionVariance(1.0) cylinder_ff = ba.FormFactorCylinder(3.*nm, 3.*nm) diff --git a/Examples/python/simulation/ex03_InterferenceFunctions/Interference2DSquareLattice.py b/Examples/python/simulation/ex03_InterferenceFunctions/Interference2DSquareLattice.py index de7eb3b86dd..b4404934317 100644 --- a/Examples/python/simulation/ex03_InterferenceFunctions/Interference2DSquareLattice.py +++ b/Examples/python/simulation/ex03_InterferenceFunctions/Interference2DSquareLattice.py @@ -16,7 +16,7 @@ def get_sample(): m_particle = ba.HomogeneousMaterial("Particle", 6e-4, 2e-8) # collection of particles - interference = ba.InterferenceFunction2DLattice.createSquare(25.0*nm, 0*deg) + interference = ba.InterferenceFunction2DLattice(ba.SquareLattice(25.0*nm, 0*deg)) pdf = ba.FTDecayFunction2DCauchy(300.0*nm/2.0/numpy.pi, 100.0*nm/2.0/numpy.pi, 0) interference.setDecayFunction(pdf) diff --git a/Examples/python/simulation/ex03_InterferenceFunctions/SpheresAtHexLattice.py b/Examples/python/simulation/ex03_InterferenceFunctions/SpheresAtHexLattice.py index 3acb9d9be9a..5813247a2a4 100644 --- a/Examples/python/simulation/ex03_InterferenceFunctions/SpheresAtHexLattice.py +++ b/Examples/python/simulation/ex03_InterferenceFunctions/SpheresAtHexLattice.py @@ -19,7 +19,8 @@ def get_sample(): particle_layout = ba.ParticleLayout() particle_layout.addParticle(sphere) - interference = ba.InterferenceFunction2DLattice.createHexagonal(20.0*nm, 0*deg) + interference = ba.InterferenceFunction2DLattice( + ba.HexagonalLattice(20.0*nm, 0*deg)) pdf = ba.FTDecayFunction2DCauchy(10*nm, 10*nm, 0) interference.setDecayFunction(pdf) diff --git a/Examples/python/simulation/ex06_Reflectometry/MaterialProfileWithParticles.py b/Examples/python/simulation/ex06_Reflectometry/MaterialProfileWithParticles.py index cb941cb2474..2fd471de834 100644 --- a/Examples/python/simulation/ex06_Reflectometry/MaterialProfileWithParticles.py +++ b/Examples/python/simulation/ex06_Reflectometry/MaterialProfileWithParticles.py @@ -35,7 +35,7 @@ def get_sample(): particle = ba.Particle(m_particle, ff) layout = ba.ParticleLayout() layout.addParticle(particle) - iff = ba.InterferenceFunction2DLattice.createSquare(10 * nm, 0) + iff = ba.InterferenceFunction2DLattice(ba.SquareLattice(10 * nm, 0)) layout.setInterferenceFunction(iff) ambient_layer.addLayout(layout) ambient_layer.setNumberOfSlices(20) diff --git a/Examples/python/simulation/ex07_Miscellaneous/BoxesWithSpecularPeak.py b/Examples/python/simulation/ex07_Miscellaneous/BoxesWithSpecularPeak.py index 9f87fcc2ae2..aa060d9272e 100644 --- a/Examples/python/simulation/ex07_Miscellaneous/BoxesWithSpecularPeak.py +++ b/Examples/python/simulation/ex07_Miscellaneous/BoxesWithSpecularPeak.py @@ -21,7 +21,7 @@ def get_sample(): particle_layout.addParticle(box) # interference function - interference = ba.InterferenceFunction2DLattice.createSquare(8*nm, 0*deg) + interference = ba.InterferenceFunction2DLattice(ba.SquareLattice(8*nm, 0*deg)) pdf = ba.FTDecayFunction2DCauchy(100*nm, 100*nm, 0) interference.setDecayFunction(pdf) particle_layout.setInterferenceFunction(interference) diff --git a/Examples/python/simulation/ex07_Miscellaneous/CylindersInAverageLayer.py b/Examples/python/simulation/ex07_Miscellaneous/CylindersInAverageLayer.py index 917a65dd866..96af9bfa209 100644 --- a/Examples/python/simulation/ex07_Miscellaneous/CylindersInAverageLayer.py +++ b/Examples/python/simulation/ex07_Miscellaneous/CylindersInAverageLayer.py @@ -23,7 +23,7 @@ def get_sample(cyl_height=5*nm): particle_layout.addParticle(cylinder, 1.0, position) # interference function - interference = ba.InterferenceFunction2DLattice.createSquare(15*nm, 0*deg) + interference = ba.InterferenceFunction2DLattice(ba.SquareLattice(15*nm, 0*deg)) pdf = ba.FTDecayFunction2DCauchy(300*nm, 300*nm, 0) interference.setDecayFunction(pdf) particle_layout.setInterferenceFunction(interference) diff --git a/Examples/python/simulation/ex07_Miscellaneous/HalfSpheresInAverageTopLayer.py b/Examples/python/simulation/ex07_Miscellaneous/HalfSpheresInAverageTopLayer.py index b486ffdd191..2ecf336360f 100644 --- a/Examples/python/simulation/ex07_Miscellaneous/HalfSpheresInAverageTopLayer.py +++ b/Examples/python/simulation/ex07_Miscellaneous/HalfSpheresInAverageTopLayer.py @@ -26,7 +26,7 @@ def get_sample(): particle_layout.addParticle(half_sphere) # interference function - interference = ba.InterferenceFunction2DLattice.createSquare(10*nm, 0*deg) + interference = ba.InterferenceFunction2DLattice(ba.SquareLattice(10*nm, 0*deg)) pdf = ba.FTDecayFunction2DCauchy(100*nm, 100*nm, 0) interference.setDecayFunction(pdf) particle_layout.setInterferenceFunction(interference) diff --git a/Sample/Aggregate/InterferenceFunctionFinite2DLattice.cpp b/Sample/Aggregate/InterferenceFunctionFinite2DLattice.cpp index ef2f13ab6be..817a5802e74 100644 --- a/Sample/Aggregate/InterferenceFunctionFinite2DLattice.cpp +++ b/Sample/Aggregate/InterferenceFunctionFinite2DLattice.cpp @@ -60,30 +60,6 @@ InterferenceFunctionFinite2DLattice* InterferenceFunctionFinite2DLattice::clone( return ret; } -//! Creates square lattice. -//! @param lattice_length: length of first and second lattice vectors in nanometers -//! @param xi: rotation of lattice with respect to x-axis in radians -//! @param N_1: number of lattice cells in the first lattice direction -//! @param N_2: number of lattice cells in the second lattice direction -InterferenceFunctionFinite2DLattice* -InterferenceFunctionFinite2DLattice::createSquare(double lattice_length, double xi, unsigned N_1, - unsigned N_2) -{ - return new InterferenceFunctionFinite2DLattice(SquareLattice(lattice_length, xi), N_1, N_2); -} - -//! Creates hexagonal lattice. -//! @param lattice_length: length of first and second lattice vectors in nanometers -//! @param xi: rotation of lattice with respect to x-axis in radians -//! @param N_1: number of lattice cells in the first lattice direction -//! @param N_2: number of lattice cells in the second lattice direction -InterferenceFunctionFinite2DLattice* -InterferenceFunctionFinite2DLattice::createHexagonal(double lattice_length, double xi, unsigned N_1, - unsigned N_2) -{ - return new InterferenceFunctionFinite2DLattice(HexagonalLattice(lattice_length, xi), N_1, N_2); -} - void InterferenceFunctionFinite2DLattice::setIntegrationOverXi(bool integrate_xi) { m_integrate_xi = integrate_xi; diff --git a/Sample/Aggregate/InterferenceFunctionFinite2DLattice.h b/Sample/Aggregate/InterferenceFunctionFinite2DLattice.h index 1cd85527e6b..dfbaf0ba7c4 100644 --- a/Sample/Aggregate/InterferenceFunctionFinite2DLattice.h +++ b/Sample/Aggregate/InterferenceFunctionFinite2DLattice.h @@ -33,11 +33,6 @@ public: void accept(INodeVisitor* visitor) const override final { visitor->visit(this); } - static InterferenceFunctionFinite2DLattice* createSquare(double lattice_length, double xi, - unsigned N_1, unsigned N_2); - static InterferenceFunctionFinite2DLattice* createHexagonal(double lattice_length, double xi, - unsigned N_1, unsigned N_2); - unsigned numberUnitCells1() const { return m_N_1; } unsigned numberUnitCells2() const { return m_N_2; } diff --git a/auto/Wrap/doxygenSample.i b/auto/Wrap/doxygenSample.i index 78454a6859c..bc13c775997 100644 --- a/auto/Wrap/doxygenSample.i +++ b/auto/Wrap/doxygenSample.i @@ -8942,7 +8942,7 @@ Generate vertices of centered ellipse with given semi-axes at height z. // File: LayersWithAbsorptionBySLDBuilder_8cpp.xml -%feature("docstring") middle_layer_thickness "const double middle_layer_thickness(60.0 *Units::nanometer) +%feature("docstring") middle_layer_thickness "const double middle_layer_thickness(60.0 *Units::nm) "; diff --git a/auto/Wrap/libBornAgainSample.py b/auto/Wrap/libBornAgainSample.py index 4d3bee3ced3..d32636d4c33 100644 --- a/auto/Wrap/libBornAgainSample.py +++ b/auto/Wrap/libBornAgainSample.py @@ -7547,16 +7547,6 @@ class InterferenceFunctionFinite2DLattice(IInterferenceFunction): """ return _libBornAgainSample.InterferenceFunctionFinite2DLattice_accept(self, visitor) - @staticmethod - def createSquare(lattice_length, xi, N_1, N_2): - r"""createSquare(double lattice_length, double xi, unsigned int N_1, unsigned int N_2) -> InterferenceFunctionFinite2DLattice""" - return _libBornAgainSample.InterferenceFunctionFinite2DLattice_createSquare(lattice_length, xi, N_1, N_2) - - @staticmethod - def createHexagonal(lattice_length, xi, N_1, N_2): - r"""createHexagonal(double lattice_length, double xi, unsigned int N_1, unsigned int N_2) -> InterferenceFunctionFinite2DLattice""" - return _libBornAgainSample.InterferenceFunctionFinite2DLattice_createHexagonal(lattice_length, xi, N_1, N_2) - def numberUnitCells1(self): r""" numberUnitCells1(InterferenceFunctionFinite2DLattice self) -> unsigned int @@ -7618,14 +7608,6 @@ class InterferenceFunctionFinite2DLattice(IInterferenceFunction): # Register InterferenceFunctionFinite2DLattice in _libBornAgainSample: _libBornAgainSample.InterferenceFunctionFinite2DLattice_swigregister(InterferenceFunctionFinite2DLattice) -def InterferenceFunctionFinite2DLattice_createSquare(lattice_length, xi, N_1, N_2): - r"""InterferenceFunctionFinite2DLattice_createSquare(double lattice_length, double xi, unsigned int N_1, unsigned int N_2) -> InterferenceFunctionFinite2DLattice""" - return _libBornAgainSample.InterferenceFunctionFinite2DLattice_createSquare(lattice_length, xi, N_1, N_2) - -def InterferenceFunctionFinite2DLattice_createHexagonal(lattice_length, xi, N_1, N_2): - r"""InterferenceFunctionFinite2DLattice_createHexagonal(double lattice_length, double xi, unsigned int N_1, unsigned int N_2) -> InterferenceFunctionFinite2DLattice""" - return _libBornAgainSample.InterferenceFunctionFinite2DLattice_createHexagonal(lattice_length, xi, N_1, N_2) - class InterferenceFunctionFinite3DLattice(IInterferenceFunction): r""" diff --git a/auto/Wrap/libBornAgainSample_wrap.cpp b/auto/Wrap/libBornAgainSample_wrap.cpp index eda9505dddd..ad061e0a871 100644 --- a/auto/Wrap/libBornAgainSample_wrap.cpp +++ b/auto/Wrap/libBornAgainSample_wrap.cpp @@ -54409,98 +54409,6 @@ fail: } -SWIGINTERN PyObject *_wrap_InterferenceFunctionFinite2DLattice_createSquare(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - double arg1 ; - double arg2 ; - unsigned int arg3 ; - unsigned int arg4 ; - double val1 ; - int ecode1 = 0 ; - double val2 ; - int ecode2 = 0 ; - unsigned int val3 ; - int ecode3 = 0 ; - unsigned int val4 ; - int ecode4 = 0 ; - PyObject *swig_obj[4] ; - InterferenceFunctionFinite2DLattice *result = 0 ; - - if (!SWIG_Python_UnpackTuple(args, "InterferenceFunctionFinite2DLattice_createSquare", 4, 4, swig_obj)) SWIG_fail; - ecode1 = SWIG_AsVal_double(swig_obj[0], &val1); - if (!SWIG_IsOK(ecode1)) { - SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "InterferenceFunctionFinite2DLattice_createSquare" "', 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 '" "InterferenceFunctionFinite2DLattice_createSquare" "', argument " "2"" of type '" "double""'"); - } - arg2 = static_cast< double >(val2); - ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3); - if (!SWIG_IsOK(ecode3)) { - SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "InterferenceFunctionFinite2DLattice_createSquare" "', argument " "3"" of type '" "unsigned int""'"); - } - arg3 = static_cast< unsigned int >(val3); - ecode4 = SWIG_AsVal_unsigned_SS_int(swig_obj[3], &val4); - if (!SWIG_IsOK(ecode4)) { - SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "InterferenceFunctionFinite2DLattice_createSquare" "', argument " "4"" of type '" "unsigned int""'"); - } - arg4 = static_cast< unsigned int >(val4); - result = (InterferenceFunctionFinite2DLattice *)InterferenceFunctionFinite2DLattice::createSquare(arg1,arg2,arg3,arg4); - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_InterferenceFunctionFinite2DLattice, SWIG_POINTER_OWN | 0 ); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_InterferenceFunctionFinite2DLattice_createHexagonal(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - double arg1 ; - double arg2 ; - unsigned int arg3 ; - unsigned int arg4 ; - double val1 ; - int ecode1 = 0 ; - double val2 ; - int ecode2 = 0 ; - unsigned int val3 ; - int ecode3 = 0 ; - unsigned int val4 ; - int ecode4 = 0 ; - PyObject *swig_obj[4] ; - InterferenceFunctionFinite2DLattice *result = 0 ; - - if (!SWIG_Python_UnpackTuple(args, "InterferenceFunctionFinite2DLattice_createHexagonal", 4, 4, swig_obj)) SWIG_fail; - ecode1 = SWIG_AsVal_double(swig_obj[0], &val1); - if (!SWIG_IsOK(ecode1)) { - SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "InterferenceFunctionFinite2DLattice_createHexagonal" "', 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 '" "InterferenceFunctionFinite2DLattice_createHexagonal" "', argument " "2"" of type '" "double""'"); - } - arg2 = static_cast< double >(val2); - ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3); - if (!SWIG_IsOK(ecode3)) { - SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "InterferenceFunctionFinite2DLattice_createHexagonal" "', argument " "3"" of type '" "unsigned int""'"); - } - arg3 = static_cast< unsigned int >(val3); - ecode4 = SWIG_AsVal_unsigned_SS_int(swig_obj[3], &val4); - if (!SWIG_IsOK(ecode4)) { - SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "InterferenceFunctionFinite2DLattice_createHexagonal" "', argument " "4"" of type '" "unsigned int""'"); - } - arg4 = static_cast< unsigned int >(val4); - result = (InterferenceFunctionFinite2DLattice *)InterferenceFunctionFinite2DLattice::createHexagonal(arg1,arg2,arg3,arg4); - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_InterferenceFunctionFinite2DLattice, SWIG_POINTER_OWN | 0 ); - return resultobj; -fail: - return NULL; -} - - SWIGINTERN PyObject *_wrap_InterferenceFunctionFinite2DLattice_numberUnitCells1(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; InterferenceFunctionFinite2DLattice *arg1 = (InterferenceFunctionFinite2DLattice *) 0 ; @@ -73668,8 +73576,6 @@ static PyMethodDef SwigMethods[] = { "void InterferenceFunctionFinite2DLattice::accept(INodeVisitor *visitor) const override final\n" "\n" ""}, - { "InterferenceFunctionFinite2DLattice_createSquare", _wrap_InterferenceFunctionFinite2DLattice_createSquare, METH_VARARGS, "InterferenceFunctionFinite2DLattice_createSquare(double lattice_length, double xi, unsigned int N_1, unsigned int N_2) -> InterferenceFunctionFinite2DLattice"}, - { "InterferenceFunctionFinite2DLattice_createHexagonal", _wrap_InterferenceFunctionFinite2DLattice_createHexagonal, METH_VARARGS, "InterferenceFunctionFinite2DLattice_createHexagonal(double lattice_length, double xi, unsigned int N_1, unsigned int N_2) -> InterferenceFunctionFinite2DLattice"}, { "InterferenceFunctionFinite2DLattice_numberUnitCells1", _wrap_InterferenceFunctionFinite2DLattice_numberUnitCells1, METH_O, "\n" "InterferenceFunctionFinite2DLattice_numberUnitCells1(InterferenceFunctionFinite2DLattice self) -> unsigned int\n" "unsigned InterferenceFunctionFinite2DLattice::numberUnitCells1() const\n" -- GitLab