Пример #1
0
    def pdf(
        self,
        x: ztyping.XTypeInput,
        norm: ztyping.LimitsTypeInput = None,
        *,
        norm_range=None,
    ) -> ztyping.XType:
        """Probability density function, normalized over `norm`.

        Args:
          norm ():
          x: `float` or `double` `Tensor`.
          norm: :py:class:`~zfit.Space` to normalize over

        Returns:
          :py:class:`tf.Tensor` of type `self.dtype`.
        """
        assert norm_range is None
        norm = self._check_input_norm(norm, none_is_error=True)
        with self._convert_sort_x(x) as x:
            value = self._single_hook_pdf(x=x, norm=norm)
            if run.numeric_checks:
                z.check_numerics(
                    value,
                    message="Check if pdf output contains any NaNs of Infs")
            return znp.asarray(z.to_real(value))
Пример #2
0
    def pdf(self,
            x: ztyping.XTypeInput,
            norm_range: ztyping.LimitsTypeInput = None,
            name: str = "model") -> ztyping.XType:
        """Probability density function, normalized over `norm_range`.

        Args:
          x (numerical): `float` or `double` `Tensor`.
          norm_range (tuple, :py:class:`~zfit.Space`): :py:class:`~zfit.Space` to normalize over
          name (str): Prepended to names of ops created by this function.

        Returns:
          :py:class:`tf.Tensor` of type `self.dtype`.
        """
        norm_range = self._check_input_norm_range(norm_range,
                                                  caller_name=name,
                                                  none_is_error=True)
        with self._convert_sort_x(x) as x:
            value = self._single_hook_pdf(x=x,
                                          norm_range=norm_range,
                                          name=name)
            if run.numeric_checks:
                assert_op = z.check_numerics(
                    value,
                    message="Check if pdf output contains any NaNs of Infs")
                assert_op = [assert_op]
            else:
                assert_op = []
            with tf.control_dependencies(assert_op):
                return z.to_real(value)
Пример #3
0
    def pdf(self, x: ztyping.XTypeInput, norm_range: ztyping.LimitsTypeInput = None) -> ztyping.XType:
        """Probability density function, normalized over `norm_range`.

        Args:
          x (numerical): `float` or `double` `Tensor`.
          norm_range (tuple, :py:class:`~zfit.Space`): :py:class:`~zfit.Space` to normalize over

        Returns:
          :py:class:`tf.Tensor` of type `self.dtype`.
        """
        norm_range = self._check_input_norm_range(norm_range, none_is_error=True)
        with self._convert_sort_x(x) as x:
            value = self._single_hook_pdf(x=x, norm_range=norm_range)
            if run.numeric_checks:
                z.check_numerics(value, message="Check if pdf output contains any NaNs of Infs")
            return z.to_real(value)