def __init__(self, mean: Union[float, Array], std: Union[float, Array]):
        """
        Diagonal Multivariate Gaussian class.

        :param mean: Union[float, Array]
            Mean parameter.
        :param std: Union[float, Array]
            Standard deviation parameter. If multi-dimensional, this represents the square-root of the diagonal of the
            covariance matrix.
        """
        self.mean = mean
        self.std = std
        self.dim = 1 if type(mean) in [int, float] else len(mean)

        Diagonal Multivariate Gaussian class.

        :param mean: Union[float, Array]
            Mean parameter.
        :param std: Union[float, Array]
            Standard deviation parameter. If multi-dimensional, this represents the square-root of the diagonal of the
            covariance matrix.
        
fortuna/distribution/gaussian.py