a
    kh&
                     @   sL   d Z ddlmZ ddlmZmZmZmZmZ ddl	Z
ddlmZ dd ZdS )aL  
unit test describing the hyperbolic half-plane with the Poincare metric. This
is a basic model of hyperbolic geometry on the (positive) half-space

{(x,y) \in R^2 | y > 0}

with the Riemannian metric

ds^2 = (dx^2 + dy^2)/y^2

It has constant negative scalar curvature = -2

https://en.wikipedia.org/wiki/Poincare_half-plane_model
    )diag)twoform_to_matrixmetric_to_Christoffel_1stmetric_to_Christoffel_2ndmetric_to_Riemann_componentsmetric_to_Ricci_componentsN)ImmutableDenseNDimArrayc                  C   s  t jj} t jjj}|j}|j}|j}| ||| || |d  }t|}t	|d |d }||ksfJ t
|}|d dks~J |d |d  ksJ |d |d  ksJ |d dksJ |d |d  ksJ |d	 dksJ |d
 dksJ |d |d ksJ t|}	|	d dks J |	d |d  ks8J |	d |d  ksPJ |	d dksbJ |	d |d  kszJ |	d	 dksJ |	d
 dksJ |	d |d ksJ t|}
|
d dksJ |
d dksJ |
d dksJ |
d dksJ |
d dksJ |
d |d  ks.J |
d |d ksDJ |
d dksVJ |
d dkshJ |
d |d ks~J |
d |d  ksJ |
d dksJ |
d dksJ |
d dksJ |
d dksJ |
d dksJ t|}|d |d  ksJ |d dks"J |d dks4J |d |d  ksLJ |t|d  dd|d  gd kstJ |d |d!  |d"  }|dksJ |d" dksJ d S )#N)r   r   r   r   )r   r      )r   r
   r   )r   r
   r
   )r
   r
   r
   )r
   r
   r   )r
   r   r
   )r
   r   r   )r   r   r   r   )r   r   r   r
   )r   r   r
   r   )r   r   r
   r
   )r   r
   r   r   )r   r
   r   r
   )r   r
   r
   r   )r   r
   r
   r
   )r
   r   r   r   )r
   r   r   r
   )r
   r   r
   r   )r
   r   r
   r
   )r
   r
   r   r   )r
   r
   r   r
   )r
   r
   r
   r   )r
   r
   r
   r
   )r   r   )r   r
   )r
   r   )   r   )r
   r
   r   )sympyZdiffgeomZTensorProductZrnR2ydydxr   r   r   r   r   r   r   )ZTPr   r   r   r   gZautomatmatZgamma1Zgamma2ZRmZRicR r   X/var/www/auris/lib/python3.9/site-packages/sympy/diffgeom/tests/test_hyperbolic_space.pytest_H2   sj    
(r   )__doc__Zsympy.matrices.denser   Zsympy.diffgeomr   r   r   r   r   Zsympy.diffgeom.rnr   Zsympy.tensor.arrayr   r   r   r   r   r   <module>   s
   