def test_new_disp(self): from sas.models.dispersion_models import GaussianDispersion disp_rm = GaussianDispersion() self.model.set_dispersion('radius', disp_rm) self.model.dispersion['radius']['width'] = 0.1666666667 self.model.dispersion['radius']['npts'] = 10 self.model.dispersion['radius']['nsigmas'] = 2
def test_new_disp(self): from sas.models.dispersion_models import GaussianDispersion disp_rm = GaussianDispersion() self.model.set_dispersion('radius', disp_rm) self.model.dispersion['radius']['width'] = 0.1666666667 self.model.dispersion['radius']['npts'] = 10 self.model.dispersion['radius']['nsigmas'] = 2 disp_rr = GaussianDispersion() self.model.set_dispersion('thickness', disp_rr) self.model.dispersion['thickness']['width'] = 0.2 self.model.dispersion['thickness']['npts'] = 10 self.model.dispersion['thickness']['nsigmas'] = 2 self.assertAlmostEqual(self.model.run(0.001), 1.16747510*407.344127907553, 3)
def test_new_disp(self): from sas.models.dispersion_models import GaussianDispersion disp_rm = GaussianDispersion() self.model.set_dispersion('radius_a', disp_rm) self.model.dispersion['radius_a']['width'] = 0.25 self.model.dispersion['radius_a']['npts'] = 10 self.model.dispersion['radius_a']['nsigmas'] = 2 disp_rr = GaussianDispersion() self.model.set_dispersion('radius_b', disp_rr) self.model.dispersion['radius_b']['width'] = 0.125 self.model.dispersion['radius_b']['npts'] = 10 self.model.dispersion['radius_b']['nsigmas'] = 2 self.assertAlmostEqual(self.model.run(0.001), 1.10650710*11948.72581312305, 3) self.assertAlmostEqual(self.model.runXY([0.001,0.001]), 1.105898*11811.972359807551, 2)
def test_gauss(self): from sas.models.dispersion_models import GaussianDispersion disp_g = GaussianDispersion() self.model.set_dispersion('radius', disp_g) self.model.dispersion['radius']['width'] = 0.2 self.model.dispersion['radius']['npts'] = 100 self.model.dispersion['radius']['nsigmas'] = 10 for ind in range(len(self.output_gauss.x)): self.assertAlmostEqual(self.model.run(self.output_gauss.x[ind]), self.output_gauss.y[ind], 2)
def test_gaussian_zero(self): from sas.models.dispersion_models import GaussianDispersion disp = GaussianDispersion() self.model.set_dispersion('radius', disp) self.model.dispersion['radius']['width'] = 0.0 self.model.dispersion['radius']['npts'] = 100 self.model.dispersion['radius']['nsigmas'] = 2.5 self.model.setParam('scale', 1.0) self.assertAlmostEqual(self.model.run(0.001), 450.355, 3) self.assertAlmostEqual(self.model.runXY([0.001,0.001]), 452.299, 3)
def test_gaussian(self): from sas.models.dispersion_models import GaussianDispersion disp = GaussianDispersion() self.model.set_dispersion('radius', disp) self.model.dispersion['radius']['width'] = 0.25 self.model.dispersion['radius']['npts'] = 100 self.model.dispersion['radius']['nsigmas'] = 2 self.model.setParam('scale', 10.0) self.assertAlmostEqual(self.model.run(0.001), 1.1804794*4723.32213339, 3) self.assertAlmostEqual(self.model.runXY([0.001,0.001]), 1.180454*4743.56, 2)
def test_new_disp(self): from sas.models.dispersion_models import GaussianDispersion disp_rm = GaussianDispersion() self.model.set_dispersion('r_minor', disp_rm) self.model.dispersion['r_minor']['width'] = 0.25 self.model.dispersion['r_minor']['npts'] = 10 self.model.dispersion['r_minor']['nsigmas'] = 2 disp_rr = GaussianDispersion() self.model.set_dispersion('r_ratio', disp_rr) self.model.dispersion['r_ratio']['width'] = 0.25/1.5 self.model.dispersion['r_ratio']['npts'] = 10 self.model.dispersion['r_ratio']['nsigmas'] = 2 disp_len = GaussianDispersion() self.model.set_dispersion('length', disp_len) self.model.dispersion['length']['width'] = 50.0/400 self.model.dispersion['length']['npts'] = 10 self.model.dispersion['length']['nsigmas'] = 2 self.assertAlmostEqual(self.model.run(0.001), 1.23925910*711.18048194151925, 3) self.assertAlmostEqual(self.model.runXY([0.001,0.001]), 1.238955*704.63525988095705, 0)
def test_new_disp(self): from sas.models.dispersion_models import GaussianDispersion disp_rm = GaussianDispersion() self.model.set_dispersion('radius', disp_rm) self.model.dispersion['radius']['width'] = 0.25 self.model.dispersion['radius']['npts'] = 10 self.model.dispersion['radius']['nsigmas'] = 2 disp_rr = GaussianDispersion() self.model.set_dispersion('thickness', disp_rr) self.model.dispersion['thickness']['width'] = 0.2 self.model.dispersion['thickness']['npts'] = 10 self.model.dispersion['thickness']['nsigmas'] = 2 disp_len = GaussianDispersion() self.model.set_dispersion('length', disp_len) self.model.dispersion['length']['width'] = 1.0/8.0 self.model.dispersion['length']['npts'] = 10 self.model.dispersion['length']['nsigmas'] = 2 self.assertAlmostEqual(self.model.run(0.001), 1.07832610*358.44062724936009, 3) self.assertAlmostEqual(self.model.runXY([0.001,0.001]), 1.07844010*360.22673635224584, 3)
def test_clone(self): from sas.models.dispersion_models import GaussianDispersion disp = GaussianDispersion() self.model.set_dispersion('radius', disp) self.model.dispersion['radius']['width'] = 5.0 / 20.0 self.model.dispersion['radius']['npts'] = 100 self.model.dispersion['radius']['nsigmas'] = 2.0 self.model.setParam('scale', 10.0) new_model = self.model.clone() print "gaussian", self.model.run(0.001) self.assertAlmostEqual(new_model.run(0.001), 1.1804794 * 4723.32213339, 3) self.assertAlmostEqual(new_model.runXY([0.001, 0.001]), 1.180454 * 4743.56, 2)