def get_incident_radiation(self):
        incident_radiation = IncidentRadiation(
            wavelength=OWGenericWidget.get_fit_parameter_from_widget(
                self, "wavelength", self.get_parameters_prefix()))

        if self.is_multiple_wavelength == 1:
            secondary_wavelengths = []
            secondary_wavelengths_weights = []

            for index in range(0, 4):
                var_wl = "wavelength_" + str(2 + index)
                var_we = "weight_" + str(2 + index)

                secondary_wavelength = OWGenericWidget.get_fit_parameter_from_widget(
                    self, var_wl, self.get_parameters_prefix())
                secondary_wavelength_weight = OWGenericWidget.get_fit_parameter_from_widget(
                    self, var_we, self.get_parameters_prefix())

                if secondary_wavelength.value > 0.0:
                    secondary_wavelengths.append(secondary_wavelength)
                    secondary_wavelengths_weights.append(
                        secondary_wavelength_weight)

            incident_radiation.set_multiple_wavelengths(
                self.xray_tube_key,
                secondary_wavelengths,
                secondary_wavelengths_weights,
                recalculate=True)

        return incident_radiation
Example #2
0
    def get_size_parameters(self):
        if self.active == 1:
            if not self.mu_function == 1:
                congruence.checkStrictlyPositiveNumber(self.mu, "\u03bc or D")
            if self.cb_distribution.currentText(
            ) != Distribution.DELTA and not self.sigma_function == 1:
                congruence.checkStrictlyPositiveNumber(self.sigma, "\u03c3")
            if self.cb_distribution.currentText(
            ) == Distribution.DELTA and not self.fit_global_parameters.measured_dataset.phases[
                    self.index].use_structure:
                raise Exception(
                    "Delta Distribution cannot be used when the structural model is not activated"
                )

        return SizeParameters(
            shape=self.cb_shape.currentText(),
            distribution=self.cb_distribution.currentText(),
            mu=OWGenericWidget.get_fit_parameter_from_widget(
                self, "mu", self.get_parameters_prefix()),
            sigma=None
            if self.cb_distribution.currentText() == Distribution.DELTA else
            OWGenericWidget.get_fit_parameter_from_widget(
                self, "sigma", self.get_parameters_prefix()),
            truncation=OWGenericWidget.get_fit_parameter_from_widget(
                self, "truncation", self.get_parameters_prefix()) if
            (self.cb_distribution.currentText() == Distribution.LOGNORMAL
             and self.cb_shape.currentText() == Shape.WULFF) else None,
            cube_face=self.cb_cube_face.currentText() if
            (self.cb_distribution.currentText() == Distribution.LOGNORMAL
             and self.cb_shape.currentText() == Shape.WULFF) else None,
            add_saxs=self.add_saxs if self.cb_distribution.currentText()
            == Distribution.DELTA else False,
            normalize_to=self.normalize_to if
            self.cb_distribution.currentText() == Distribution.DELTA else None,
            active=self.active == 1)
Example #3
0
    def get_strain_parameters(self):
        if self.active == 1:
            if not self.rho_function == 1:
                congruence.checkStrictlyPositiveNumber(self.rho, "\u03c1")
            if not self.Re_function == 1:
                congruence.checkStrictlyPositiveNumber(self.Re, "Re")
            if not self.mix_function == 1:
                congruence.checkPositiveNumber(self.mix, "mix")
            if not self.b_function == 1:
                congruence.checkStrictlyPositiveNumber(self.b, "b")

        return KrivoglazWilkensModel(
            rho=OWGenericWidget.get_fit_parameter_from_widget(
                self, "rho", self.get_parameters_prefix()),
            Re=OWGenericWidget.get_fit_parameter_from_widget(
                self, "Re", self.get_parameters_prefix()),
            Ae=OWGenericWidget.get_fit_parameter_from_widget(
                self, "Ae", self.get_parameters_prefix()),
            Be=OWGenericWidget.get_fit_parameter_from_widget(
                self, "Be", self.get_parameters_prefix()),
            As=OWGenericWidget.get_fit_parameter_from_widget(
                self, "As", self.get_parameters_prefix()),
            Bs=OWGenericWidget.get_fit_parameter_from_widget(
                self, "Bs", self.get_parameters_prefix()),
            mix=OWGenericWidget.get_fit_parameter_from_widget(
                self, "mix", self.get_parameters_prefix()),
            b=OWGenericWidget.get_fit_parameter_from_widget(
                self, "b", self.get_parameters_prefix()),
            active=self.active == 1)
 def get_strain_parameters(self):
     if self.laue_id == 12:
         return InvariantPAHLaueGroup13(
             aa=OWGenericWidget.get_fit_parameter_from_widget(
                 self, "aa", self.get_parameters_prefix()),
             bb=OWGenericWidget.get_fit_parameter_from_widget(
                 self, "bb", self.get_parameters_prefix()),
             e1=OWGenericWidget.get_fit_parameter_from_widget(
                 self, "e1", self.get_parameters_prefix()),
             e4=OWGenericWidget.get_fit_parameter_from_widget(
                 self, "e4", self.get_parameters_prefix()),
             active=self.active == 1)
     elif self.laue_id == 13:
         return InvariantPAHLaueGroup14(
             aa=OWGenericWidget.get_fit_parameter_from_widget(
                 self, "aa", self.get_parameters_prefix()),
             bb=OWGenericWidget.get_fit_parameter_from_widget(
                 self, "bb", self.get_parameters_prefix()),
             e1=OWGenericWidget.get_fit_parameter_from_widget(
                 self, "e1", self.get_parameters_prefix()),
             e4=OWGenericWidget.get_fit_parameter_from_widget(
                 self, "e4", self.get_parameters_prefix()),
             active=self.active == 1)
     else:
         return None
 def get_background(self):
     return ExpDecayBackground(a0=OWGenericWidget.get_fit_parameter_from_widget(self, "a0", self.get_parameters_prefix()),
                               b0=OWGenericWidget.get_fit_parameter_from_widget(self, "b0", self.get_parameters_prefix()),
                               a1=OWGenericWidget.get_fit_parameter_from_widget(self, "a1", self.get_parameters_prefix()),
                               b1=OWGenericWidget.get_fit_parameter_from_widget(self, "b1", self.get_parameters_prefix()),
                               a2=OWGenericWidget.get_fit_parameter_from_widget(self, "a2", self.get_parameters_prefix()),
                               b2=OWGenericWidget.get_fit_parameter_from_widget(self, "b2", self.get_parameters_prefix()))
 def get_background(self):
     return ChebyshevBackground(
         c0=OWGenericWidget.get_fit_parameter_from_widget(
             self, "c0", self.get_parameters_prefix()),
         c1=OWGenericWidget.get_fit_parameter_from_widget(
             self, "c1", self.get_parameters_prefix()),
         c2=OWGenericWidget.get_fit_parameter_from_widget(
             self, "c2", self.get_parameters_prefix()),
         c3=OWGenericWidget.get_fit_parameter_from_widget(
             self, "c3", self.get_parameters_prefix()),
         c4=OWGenericWidget.get_fit_parameter_from_widget(
             self, "c4", self.get_parameters_prefix()),
         c5=OWGenericWidget.get_fit_parameter_from_widget(
             self, "c5", self.get_parameters_prefix()),
         c6=OWGenericWidget.get_fit_parameter_from_widget(
             self, "c6", self.get_parameters_prefix()),
         c7=OWGenericWidget.get_fit_parameter_from_widget(
             self, "c7", self.get_parameters_prefix()),
         c8=OWGenericWidget.get_fit_parameter_from_widget(
             self, "c8", self.get_parameters_prefix()),
         c9=OWGenericWidget.get_fit_parameter_from_widget(
             self, "c9", self.get_parameters_prefix()))
 def get_instrumental_profile(self):
     return Caglioti(U=OWGenericWidget.get_fit_parameter_from_widget(
         self, "U", self.get_parameters_prefix()),
                     V=OWGenericWidget.get_fit_parameter_from_widget(
                         self, "V", self.get_parameters_prefix()),
                     W=OWGenericWidget.get_fit_parameter_from_widget(
                         self, "W", self.get_parameters_prefix()),
                     a=OWGenericWidget.get_fit_parameter_from_widget(
                         self, "a", self.get_parameters_prefix()),
                     b=OWGenericWidget.get_fit_parameter_from_widget(
                         self, "b", self.get_parameters_prefix()),
                     c=OWGenericWidget.get_fit_parameter_from_widget(
                         self, "c", self.get_parameters_prefix()))
 def get_peak_shift(self):
     return Lab6TanCorrection(ax=OWGenericWidget.get_fit_parameter_from_widget(self, "ax", self.get_parameters_prefix()),
                              bx=OWGenericWidget.get_fit_parameter_from_widget(self, "bx", self.get_parameters_prefix()),
                              cx=OWGenericWidget.get_fit_parameter_from_widget(self, "cx", self.get_parameters_prefix()),
                              dx=OWGenericWidget.get_fit_parameter_from_widget(self, "dx", self.get_parameters_prefix()),
                              ex=OWGenericWidget.get_fit_parameter_from_widget(self, "ex", self.get_parameters_prefix()))
Example #9
0
 def get_peak_shift(self):
     return ZeroError(shift=OWGenericWidget.get_fit_parameter_from_widget(
         self, "shift", self.get_parameters_prefix()))
Example #10
0
    def get_peak_shift(self):
        congruence.checkStrictlyPositiveNumber(self.goniometer_radius, "Goniometer Radius")

        return SpecimenDisplacement(goniometer_radius=self.goniometer_radius,
                                    displacement=OWGenericWidget.get_fit_parameter_from_widget(self, "displacement", self.get_parameters_prefix()))