44
55import bornagain as ba
66from bornagain import angstrom
7+ from bornagain .numpyutil import Arrayf64Converter as dac
78
89
910def get_sample (slabs ):
1011 """
1112 Defines sample and returns it. Note that SLD-based materials are used.
1213 """
1314 # creating materials
14- multi_layer = ba .MultiLayer ()
15+ multi_layer = ba .Sample ()
1516
1617 ambient = ba .MaterialBySLD ("ma" , slabs [0 , 1 ] * 1e-6 , 0 )
1718 layer = ba .Layer (ambient )
1819 multi_layer .addLayer (layer )
1920
2021 for slab in slabs [1 :- 1 ]:
2122 material = ba .MaterialBySLD ("stuff" , slab [1 ] * 1e-6 , slab [2 ] * 1e-6 )
22- layer = ba .Layer (material , slab [0 ] * angstrom )
2323
24- roughness = ba .LayerRoughness ( )
25- roughness . setSigma ( slab [ 3 ] * angstrom )
24+ autocorr = ba .SelfAffineFractalModel ( slab [ 3 ] * angstrom , 0.7 , 250 * angstrom )
25+ roughness = ba . Roughness ( autocorr , ba . ErfTransient () )
2626
27- multi_layer .addLayerWithTopRoughness (layer , roughness )
27+ layer = ba .Layer (material , slab [0 ] * angstrom , roughness )
28+ multi_layer .addLayer (layer )
2829
2930 substrate = ba .MaterialBySLD ("msub" , slabs [- 1 , 1 ] * 1e-6 , 0 )
30- layer = ba .Layer (substrate )
31- roughness = ba .LayerRoughness ()
32- roughness .setSigma (slabs [- 1 , 3 ] * angstrom )
33- multi_layer .addLayerWithTopRoughness (layer , roughness )
3431
35- multi_layer .setRoughnessModel (ba .RoughnessModel .NEVOT_CROCE )
32+ autocorr = ba .SelfAffineFractalModel (slabs [- 1 , 3 ] * angstrom , 0.7 , 250 * angstrom )
33+ roughness = ba .Roughness (autocorr , ba .ErfTransient ())
34+
35+ layer = ba .Layer (substrate , 0 , roughness )
36+
37+ multi_layer .addLayer (layer )
3638
3739 return multi_layer
3840
@@ -101,7 +103,7 @@ def resolution_test(slabs, data):
101103 simulation = get_simulation_smeared (data [:, 0 ], data [:, - 1 ], sample )
102104
103105 res = simulation .simulate ()
104- R = res .array ( )
106+ R = dac . asNpArray ( res .dataArray () )
105107
106108 assert R .shape == data [:, 1 ].shape
107109
@@ -122,7 +124,7 @@ def kernel_test(slabs, data):
122124 sample = get_sample (slabs )
123125 simulation = get_simulation (data [:, 0 ], sample )
124126 res = simulation .simulate ()
125- R = res .array ( )
127+ R = dac . asNpArray ( res .dataArray () )
126128
127129 assert R .shape == data [:, 1 ].shape
128130
0 commit comments