o
    h                     @   s>   d dl mZ d dlmZ d dlmZ dgZG dd deZdS )    )Tensor)constraints)GammaChi2c                       sL   e Zd ZdZdejiZd fdd	Zd fdd	Ze	de
fd	d
Z  ZS )r   a  
    Creates a Chi-squared distribution parameterized by shape parameter :attr:`df`.
    This is exactly equivalent to ``Gamma(alpha=0.5*df, beta=0.5)``

    Example::

        >>> # xdoctest: +IGNORE_WANT("non-deterministic")
        >>> m = Chi2(torch.tensor([1.0]))
        >>> m.sample()  # Chi2 distributed with shape df=1
        tensor([ 0.1046])

    Args:
        df (float or Tensor): shape parameter of the distribution
    dfNc                    s   t  jd| d|d d S )Ng      ?)validate_args)super__init__)selfr   r   	__class__ l/var/www/html/construction_image-detection-poc/venv/lib/python3.10/site-packages/torch/distributions/chi2.pyr	      s   zChi2.__init__c                    s   |  t|}t ||S N)_get_checked_instancer   r   expand)r
   batch_shape	_instancenewr   r   r   r      s   zChi2.expandreturnc                 C   s
   | j d S )N   )concentration)r
   r   r   r   r   #   s   
zChi2.dfr   )__name__
__module____qualname____doc__r   positivearg_constraintsr	   r   propertyr   r   __classcell__r   r   r   r   r   
   s    
N)torchr   torch.distributionsr   torch.distributions.gammar   __all__r   r   r   r   r   <module>   s
   