def METHOD_NAME(self, X: DNDarray) -> DNDarray:
    """
    Callable to get the Laplacian matrix from the dataset ``X`` according to the specified Laplacian
    Parameters
    ----------
    X : DNDarray
        The data matrix, Shape = (n_samples, n_features)
    """
    S = self.similarity_metric(X)
    S.fill_diagonal(0.0)
    if self.mode == "eNeighbour":
        if self.epsilon[0] == "upper":
            if self.weighted:
                S = ht.where(S < self.epsilon[1], S, 0)
            else:
                S = ht.int(S < self.epsilon[1])
        else:
            if self.weighted:
                S = ht.where(S > self.epsilon[1], S, 0)
            else:
                S = ht.int(S > self.epsilon[1])
    if self.definition == "simple":
        L = self._simple_L(S)
    elif self.definition == "norm_sym":
        L = self._normalized_symmetric_L(S)
    return L