U
    6c5                     @   s    d dl Zd	ddZd
ddZdS )    NFc              
   C   s  | \}}t j|t jd}t j|t jd}t ||\}}|d }|d }t dddddg}t ddgd	dgd
dgdd	gddgg}	t dddddg}
t |}tt|D ]T}||| t || |	|df  d || |	|df  d   |
| d   7 }q|rvt 	|| d d d || d d d  dk || d d d || d d d  dk }t j
j||d}|||fS )ai  Return simple test data consisting of the sum of two gaussians.

    Args:
        shape (tuple(int, int)): 2D shape of data to return.
        want_mask (bool, optional): Whether test data should be masked or not, default ``False``.

    Return:
        Tuple of 3 arrays: ``x``, ``y``, ``z`` test data, ``z`` will be masked if
        ``want_mask=True``.
    Zdtypeg      ?g      g?ggffffff?g?g?g333333?g?g      ?g?g?r                 g{Gz?g?g{Gz?mask)nparangefloat64meshgridZasarrayZ
zeros_likerangelenexp
logical_ormaarray)shapeZ	want_masknynxxyZxscaleZyscaleampZmidwidthzir    r   7/tmp/pip-unpacked-wheel-9ja4spaj/contourpy/util/data.pysimple   s&    (
R**r     r   c           
      C   s   | \}}t j|t jd}t j|t jd}t ||\}}t j|}|j| d}|dkrt|d}|j| d|k }	t jj	||	d}|||fS )a  Return random test data..

    Args:
        shape (tuple(int, int)): 2D shape of data to return.
        seed (int, optional): Seed for random number generator, default 2187.
        mask_fraction (float, optional): Fraction of elements to mask, default 0.

    Return:
        Tuple of 3 arrays: ``x``, ``y``, ``z`` test data, ``z`` will be masked if
        ``mask_fraction`` is greater than zero.
    r   )sizer   gGz?r   )
r   r	   r
   r   randomZdefault_rnguniformminr   r   )
r   seedZmask_fractionr   r   r   r   rngr   r   r   r   r   r    *   s    
r    )F)r   r   )Znumpyr   r   r    r   r   r   r   <module>   s   
&