Example #1
0
 def cumulative_distribution_function(self,
                                      x: Array) -> Union[float, np.ndarray]:
     self.check_fit()
     u, v = split_matrix(x)
     a = self.alpha
     c = np.power(u, -a) + np.power(v, -a) - 1
     return np.power(c, -np.divide(1, a))
Example #2
0
 def cumulative_distribution_function(self,
                                      x: Array) -> Union[float, np.ndarray]:
     self.check_fit()
     u, v = split_matrix(x)
     a = self.alpha
     b = np.power(-np.log(u), a) + np.power(-np.log(v), a)
     c = -np.power(b, np.divide(1, a))
     return np.exp(c)
Example #3
0
 def cumulative_distribution_function(self,
                                      x: Array) -> Union[float, np.ndarray]:
     self.check_fit()
     u, v = split_matrix(x)
     a = self.alpha
     up = np.multiply(np.exp(-a * u) - 1, np.exp(-a * v) - 1)
     down = np.exp(-a) - 1
     return -np.divide(1, a) * np.log(1 + np.divide(up, down))
Example #4
0
 def probability_density_function(self,
                                  x: Array) -> Union[float, np.ndarray]:
     self.check_fit()
     u, v = split_matrix(x)
     a = self.alpha
     up = (a + 1) * np.power(u * v, a)
     c = np.power(u, a) + np.power(v, a) - np.power(u * v, a)
     down = np.power(c, 1 / a + 2)
     return np.divide(up, down)
Example #5
0
 def probability_density_function(self,
                                  x: Array) -> Union[float, np.ndarray]:
     self.check_fit()
     u, v = split_matrix(x)
     a = self.alpha
     up = a * (1 - np.exp(-a)) * np.exp(-a * (u + v))
     c = np.exp(-a) - 1 + (np.exp(-a * u) - 1) * (np.exp(-a * v) - 1)
     down = np.power(c, 2)
     return np.divide(up, down)
Example #6
0
 def probability_density_function(self,
                                  x: Array) -> Union[float, np.ndarray]:
     self.check_fit()
     u, v = split_matrix(x)
     a = self.alpha
     w = np.power(-np.log(u), a) + np.power(-np.log(v), a)
     m = np.power(u * v, -1)
     n = np.power(np.log(u) * np.log(v), a - 1)
     o = np.power(w, 2 / a - 2) + (a - 1) * np.power(w, 1 / a - 2)
     return m * n * o * self.cumulative_distribution_function(x)
Example #7
0
 def cumulative_distribution_function(self, x: Array) -> Union[float, np.ndarray]:
     u, v = split_matrix(x)
     r = self.rho
     s = norm.ppf(u)
     t = norm.ppf(v)
Example #8
0
 def pdf(self, x: Array) -> Union[float, np.ndarray]:
     self.check_fit()
     u, v = split_matrix(x)
     return 1 + self.alpha * (2 * u - 1) * (2 * v - 1)
Example #9
0
 def cdf(self, x: Array) -> Union[float, np.ndarray]:
     self.check_fit()
     u, v = split_matrix(x)
     return u * v * (1 + self.alpha * (1 - u) * (1 - v))