
    M/Ph                     h    d dl Zd dlmZ d dlmZmZ d dlm	c m
c mZ d dlmZ  G d d          ZdS )    N)mv_mixture_rvsMixtureDistribution)statsc                   2    e Zd Zd Zd Zd Zd Zd Zd ZdS )TestMixtureDistributionsc           
         t           j                            d           t                      }|                    ddgdt
          j        t
          j        gt          dd          t          dd          f	          }t          j	        t          j
        |                                |                                |                                g          t          j
        g d
          d           d S )Nr         ?      ?i        ?locscale   distkwargs)r   g      r   decimal)nprandomseedr   rvsr   normdictnptassert_almost_equalarraystdmeanvarselfmixress      l/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/statsmodels/distributions/tests/test_mixture.pytest_mixture_rvs_randomz0TestMixtureDistributions.test_mixture_rvs_random   s    
	q!##ggs3iUZ,D"2&&&t';';';<  > >#''))CHHJJswwyy9::$$	 	 	 	 	 	    c                 H   t          j        g dg dg dg          }t          j        g d          }t          j        g d          }t          j        ||          }t          j        ||dz            }t           j                            d           t          dd	gd
||gd          }t          j        t          j        |	                                |
                                |                                g          t          j        g d          d           d S )Ng      ?r   r	   r   g      ?333333?r	   r,          @r   g        r.      r.   r.   r.   r   g?r,   i     )gCl?g|?5^?gjt@r   r   )r   r   mvdMVNormalr   r   r   r   r   r   r    r!   r#   cov3mumu2mvn3mvn32r%   s          r&   test_mv_mixture_rvs_randomz3TestMixtureDistributions.test_mv_mixture_rvs_random   s   x...,,,,,,. / / Xnnn%%h}}}%%|B%%S$r'**
	qc3Ze}a@@#''))CHHJJswwyy9::,,,--	 	 	 	 	 	r(   c           
      B   t                      }t          j        ddd          }|                    |ddgt          j        t          j        gt          dd          t          d	d
          f          }t          j        |t          j	        g d                     d S )Nr1   
   UUUUUU?UUUUUU?r   r
   r   r   r	   r   )
g\=g|^r|>g)y)?gճY?gc.Ѣ?g3@?gR?gZ?gfƂ.{?g<H/?)
r   r   linspacepdfr   r   r   r   r   r   r#   r$   gridr%   s       r&   test_mixture_pdfz)TestMixtureDistributions.test_mixture_pdf'   s    !##{2a$$ggdT$Kuz5:.F"3'''(=(=(=>  @ @ , , , - -	. 	. 	. 	. 	.r(   c           
      B   t                      }t          j        ddd          }|                    |ddgt          j        t          j        gt          dd          t          d	d
          f          }t          j        |t          j	        g d                     d S )Nr=   r1   r>   r?   r@   r   r
   r   r   r	   r   )
gCe.=gC.1N>g^d*=>gNڲş?g}u"5?gkE?gU*?gy@?g%=B?g?)
r   r   rA   cdfr   r   r   r   r   r   rC   s       r&   test_mixture_cdfz)TestMixtureDistributions.test_mixture_cdf3   s    !##{2a$$ggdT$Kuz5:.FRc***4AC+@+@+@A  C C ) ) ) * *	+ 	+ 	+ 	+ 	+r(   c           
      T   t                      }t          j                            d           |                    ddgdt
          j        t
          j        gt          dd          t          dd          f	          }t          j	        |t          j
        g d
                     d S )N  g333333?g333333?2   r   r   r   r   r   )2gE[:gg[=7gˑ3gJbg6D.(gLUgHg^|veglͿgvl<gTgLѡ>geg"޿gt݄g'(,V?gzz?gW$gOXE, gχvgh6BHg>>?gm>gg0{gO	gnahgtEp?gˆ\^g~U8g)J׆ig'^gb[ّg6?g
Ag8񴀹տgBӎgѕE^g3pg[۸gt%?gK=g`T|?gQ	gP[tӿg46lBg޸?gZD5 3g 	9g3)r   r   r   r   r   r   r   r   r   r   r   r"   s      r&   test_mixture_rvs_fixedz/TestMixtureDistributions.test_mixture_rvs_fixed?   s    !##
	tggs3i5:uz*B!"%%%dr&;&;&;<  > > 6 6 6 7 7	8 	8 	8 	8 	8r(   c                    t           j                            d           t          j        g dg dg dg          }t          j        g d          }t          j        g d          }t	          j        ||          }t	          j        ||dz            }t          dd	gd
||gd          }t          j        |t          j        g dg dg dg dg dg dg dg dg dg dg
                     d S )NrJ   r*   r+   r-   r/   r0      g?g?r>   r2   )gC߼οgw?g?)gofA*@gU?g>B<d?)gHN`x@g.k(@g/<'@)g@gkf?g=a1O@)gʫ@g\ @gJ?)g8@g/$d?gHJ@m@)g+x@g@g0P?)ggj;}@g_mZc+?g}?)gXB_@g+{\e?g QZH?)g
6I@g#L @g2f@)	r   r   r   r   r3   r4   r   r   r   r5   s          r&   test_mv_mixture_rvs_fixedz2TestMixtureDistributions.test_mv_mixture_rvs_fixedT   sH   
	tx...,,,,,,. / / Xnnn%%h}}}%%|B%%S$q&))c3ZdE]A>>AAA>>>>>>>>>>>>>>>>>>>>>>>>>>>	@ 	A 	A	B 	B 	B 	B 	Br(   N)	__name__
__module____qualname__r'   r;   rE   rH   rL   rO    r(   r&   r   r      ss        	 	 	  
. 
. 
.
+ 
+ 
+8 8 8*B B B B Br(   r   )numpyr   numpy.testingtestingr   %statsmodels.distributions.mixture_rvsr   r   +statsmodels.sandbox.distributions.mv_normalsandboxdistributions	mv_normalr3   scipyr   r   rS   r(   r&   <module>r]      s             H H H H H H H H 9 9 9 9 9 9 9 9 9 9 9 9      ^B ^B ^B ^B ^B ^B ^B ^B ^B ^Br(   