a
    
d                     @   s6   d dl Z G dd dZG dd dZG dd dZdS )    Nc                   @   s   e Zd ZdddZdd ZdS )
EDMScaling      ?c                 C   s
   || _ d S )N)
sigma_data)selfr    r   t/var/www/html/stable-diffusion-webui/repositories/generative-models/sgm/modules/diffusionmodules/denoiser_scaling.py__init__   s    zEDMScaling.__init__c                 C   sn   | j d |d | j d   }|| j  |d | j d  d  }d|d | j d  d  }d|  }||||fS )N   r      g      ?)r   logr   sigmac_skipc_outc_inc_noiser   r   r   __call__   s
     zEDMScaling.__call__N)r   )__name__
__module____qualname__r   r   r   r   r   r   r      s   
r   c                   @   s   e Zd Zdd ZdS )
EpsScalingc                 C   s>   t j||jd}| }d|d d d  }| }||||fS )N)devicer
   r	         ?r   )torch	ones_liker   cloner   r   r   r   r      s
    zEpsScaling.__call__Nr   r   r   r   r   r   r   r   r      s   r   c                   @   s   e Zd Zdd ZdS )VScalingc                 C   sN   d|d d  }| |d d d  }d|d d d  }|  }||||fS )Nr   r	   r   )r   r   r   r   r   r      s
    zVScaling.__call__Nr   r   r   r   r   r      s   r   )r   r   r   r   r   r   r   r   <module>   s   	