
    \h&
                     J    S r SSKJr  SSKJrJrJrJrJr  SSK	r
SSKJr  S rg)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                     [         R                  R                  n [         R                  R                  R                  nUR
                  nUR                  nUR                  nU " XD5      U " X35      -   US-  -  n[        U5      n[        US-  US-  5      nXv:X  d   e[        U5      nUS   S:X  d   eUS   US-  * :X  d   eUS   US-  * :X  d   eUS   S:X  d   eUS   US-  * :X  d   eUS	   S:X  d   eUS
   S:X  d   eUS   US-  :X  d   e[        U5      n	U	S   S:X  d   eU	S   US-  * :X  d   eU	S   US-  * :X  d   eU	S   S:X  d   eU	S   US-  * :X  d   eU	S	   S:X  d   eU	S
   S:X  d   eU	S   US-  :X  d   e[        U5      n
U
S   S:X  d   eU
S   S:X  d   eU
S   S:X  d   eU
S   S:X  d   eU
S   S:X  d   eU
S   US-  * :X  d   eU
S   US-  :X  d   eU
S   S:X  d   eU
S   S:X  d   eU
S   US-  :X  d   eU
S   US-  * :X  d   eU
S   S:X  d   eU
S   S:X  d   eU
S   S:X  d   eU
S   S:X  d   eU
S   S:X  d   e[        U5      nUS   US-  * :X  d   eUS   S:X  d   eUS   S:X  d   eUS   US-  * :X  d   eU[        US-  * SSUS-  * /S 5      :X  d   eUS   US!   -   US"-  -  nUS:X  d   eUS"-  S:X  d   eg )#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   )sympydiffgeomTensorProductrnR2ydydxr   r   r   r   r   r   r	   )TPr   r   r   r   gautomatmatgamma1gamma2RmRicRs                b/var/www/auris/envauris/lib/python3.13/site-packages/sympy/diffgeom/tests/test_hyperbolic_space.pytest_H2r"      s   		%	%B					B
A	B	B	Bbj	 !b')A"G
q2wB
 C>>&q)F'?a'?q2wh&&&'?q2wh&&&'?a'?q2wh&&&'?a'?a'?a"g%%%&q)F'?a'?q2wh&&&'?q2wh&&&'?a'?q2wh&&&'?a'?a'?a"g%%%	%a	(Bj>Qj>Qj>Qj>Qj>Qj>a"gX%%%j>QW$$$j>Qj>Qj>QW$$$j>a"gX%%%j>Qj>Qj>Qj>Qj>Q
$Q
'Ct9R   t9>>t9>>t9R   )AG8QAG8*DfMMMM 
TSY	1$A7N7 Q3"99    )__doc__sympy.matrices.denser   sympy.diffgeomr   r   r   r   r   sympy.diffgeom.rnr   sympy.tensor.arrayr	   r"    r#   r!   <module>r*      s)    &V V  6Dr#   