
    tKg
                     L    d dl Z d dlZd dlmZ d dlmZ d dlm	Z	  G d d      Z
y)    N)assert_allclose)FuncDatac                   b   e Zd Zej                  j                  dej                  ddfdej                  dfddej                  fdej                  dfej                  ddfddej                  fej                  ddfej                  ddfg      d        Zej                  j                  dej                   dfej                  dfg      d        Z
d Zd Zej                  j                  d	dddej                  fd
g      d        Zej                  j                  dg d      d        Zy)TestVoigtProfilezx, sigma, gamma   r   c                 \    t        j                  t        j                  |||            sJ y N)npisnanscvoigt_profile)selfxsigmagammas       e/home/alanp/www/video.onchill/myenv/lib/python3.12/site-packages/scipy/special/tests/test_faddeeva.pytest_nanzTestVoigtProfile.test_nan   s%     xx((E59:::    z
x, desiredc                 <    t        j                  |dd      |k(  sJ y )Nr   r   r   )r   r   desireds      r   test_infzTestVoigtProfile.test_inf   s!    
 1a(G333r   c                     t        j                  g dg dg dg dg dg dg dg dg d	g d
g
      }t        t        j                  |dddd      j                          y )N)g(\gHzF@gp=
ף@gk?)ggQ@gzG!8@ge9?)g(\+gGz0@g(\/E@g3y?)gRQ)gzG?gHzG@g,<i?)gGz&@g      @g(\5@gI?)gQ'gffffff4@gHz>@gxD?)gףp=
W"g\(9@gp=
ף @g
ڇ?)gףp=
0@g2@g      @gZA.Y?)gQ8"@g(\ @g
ףp=C@g|͵d?)g
ףp=Eg333333?gףp=
F@ghsn?)r   r         r   V瞯<)atolrtol)r
   arrayr   r   r   check)r   pointss     r   test_against_mathematicaz)TestVoigtProfile.test_against_mathematica   s`    
 :9<9:<999;
  		
 %'r   c                     t        j                  ddd      }t        t        j                  |dd      t        j                  | dd      dd       y )Nr   
      r   r   r   r   r
   linspacer   r   r   )r   r   s     r   test_symmetryzTestVoigtProfile.test_symmetry9   sH    KK2r"Q1%aRA&		
r   zx, sigma, gamma, desired)r   r   r   r   c                 <    t        j                  |||      |k(  sJ y r	   r   )r   r   r   r   r   s        r   test_corner_casesz"TestVoigtProfile.test_corner_casesB   s!    
 5%0G;;;r   zsigma1, gamma1, sigma2, gamma2))r   r   缉ؗҜ<r   )r   r   r   r,   )r   r   r,   r,   c                     t        j                  ddd      }t        t        j                  |||      t        j                  |||      dd       y )Nr   r$   r%   r,   r&   r'   )r   sigma1gamma1sigma2gamma2r   s         r   test_continuityz TestVoigtProfile.test_continuityI   sH     KK2r"Q/Q/		
r   N)__name__
__module____qualname__pytestmarkparametrizer
   nanr   infr   r"   r)   r+   r2    r   r   r   r   	   sI   [[.	A	
BFFA	
Arvv	
BFFA	A	
Arvv	A	A	1 	;	; [[\
&&!	, 4	44
 [[7	
Aq"&&: <	< [[= @ 



r   r   )r6   numpyr
   numpy.testingr   scipy.specialspecialr   scipy.special._testutilsr   r   r;   r   r   <module>rA      s       )  -L
 L
r   