+
    ‹°³jÜ)  ã                   ó´   € R t ^ RIHt ^ RIHt ^ RIHtHt ^ RIH	t	H
t
 ^ RIHtHt ^ RIHtHtHtHtHt ^ RIHt ^ RIHt ^ R	IHt ^ R
IHt  ! R R]
4      tR# )z4Parabolic geometrical entity.

Contains
* Parabola

)ÚS)Úordered)Ú_symbolÚsymbols)ÚGeometryEntityÚGeometrySet)ÚPointÚPoint2D)ÚLineÚLine2DÚRay2DÚ	Segment2DÚLinearEntity3D)ÚEllipse)Úsign)Úsimplify)Úsolvec                   ó¾   a € ] tR t^t o RtRR lt]R 4       t]R 4       t]R 4       t	]R 4       t
RR lt]R	 4       t]R
 4       tR t]R 4       t]R 4       tRtV tR# )ÚParabolaa  A parabolic GeometryEntity.

A parabola is declared with a point, that is called 'focus', and
a line, that is called 'directrix'.
Only vertical or horizontal parabolas are currently supported.

Parameters
==========

focus : Point
    Default value is Point(0, 0)
directrix : Line

Attributes
==========

focus
directrix
axis of symmetry
focal length
p parameter
vertex
eccentricity

Raises
======
ValueError
    When `focus` is not a two dimensional point.
    When `focus` is a point of directrix.
NotImplementedError
    When `directrix` is neither horizontal nor vertical.

Examples
========

>>> from sympy import Parabola, Point, Line
>>> p1 = Parabola(Point(0, 0), Line(Point(5, 8), Point(7,8)))
>>> p1.focus
Point2D(0, 0)
>>> p1.directrix
Line2D(Point2D(5, 8), Point2D(7, 8))

Nc                óÐ   € V'       d   \        V^R7      pM\        ^ ^ 4      p\        V4      pVP                  V4      '       d   \        R4      h\        P
                  ! WV3/ VB # )é   )Údimz*The focus must not be a point of directrix)r   r
   ÚcontainsÚ
ValueErrorr   Ú__new__)ÚclsÚfocusÚ	directrixÚkwargss   &&&,ÚX/home/luca/screen-checking/.venv/lib/python3.14/site-packages/sympy/geometry/parabola.pyr   ÚParabola.__new__A   sZ   € çÜ˜% QÔ'‰Eä˜!˜Q“KˆEä˜“Oˆ	à×Ñ˜e×$Ò$ÜÐIÓJÐJä×%Ò% c°)ÑF¸vÑFÐFó    c                ó   € ^# )a   Returns the ambient dimension of parabola.

Returns
=======

ambient_dimension : integer

Examples
========

>>> from sympy import Parabola, Point, Line
>>> f1 = Point(0, 0)
>>> p1 = Parabola(f1, Line(Point(5, 8), Point(7, 8)))
>>> p1.ambient_dimension
2

© ©Úselfs   &r   Úambient_dimensionÚParabola.ambient_dimensionO   s   € ñ& r!   c                óL   € V P                   P                  V P                  4      # )a‚  Return the axis of symmetry of the parabola: a line
perpendicular to the directrix passing through the focus.

Returns
=======

axis_of_symmetry : Line

See Also
========

sympy.geometry.line.Line

Examples
========

>>> from sympy import Parabola, Point, Line
>>> p1 = Parabola(Point(0, 0), Line(Point(5, 8), Point(7, 8)))
>>> p1.axis_of_symmetry
Line2D(Point2D(0, 0), Point2D(0, 1))

)r   Úperpendicular_liner   r$   s   &r   Úaxis_of_symmetryÚParabola.axis_of_symmetryd   s   € ð0 �~‰~×0Ñ0°·±Ó<Ð<r!   c                ó(   € V P                   ^,          # )a1  The directrix of the parabola.

Returns
=======

directrix : Line

See Also
========

sympy.geometry.line.Line

Examples
========

>>> from sympy import Parabola, Point, Line
>>> l1 = Line(Point(5, 8), Point(7, 8))
>>> p1 = Parabola(Point(0, 0), l1)
>>> p1.directrix
Line2D(Point2D(5, 8), Point2D(7, 8))

©Úargsr$   s   &r   r   ÚParabola.directrix~   ó   € ð0 �y‰y˜�|Ðr!   c                ó"   € \         P                  # )a7  The eccentricity of the parabola.

Returns
=======

eccentricity : number

A parabola may also be characterized as a conic section with an
eccentricity of 1. As a consequence of this, all parabolas are
similar, meaning that while they can be different sizes,
they are all the same shape.

See Also
========

https://en.wikipedia.org/wiki/Parabola


Examples
========

>>> from sympy import Parabola, Point, Line
>>> p1 = Parabola(Point(0, 0), Line(Point(5, 8), Point(7, 8)))
>>> p1.eccentricity
1

Notes
-----
The eccentricity for every Parabola is 1 by definition.

)r   ÚOner$   s   &r   ÚeccentricityÚParabola.eccentricity˜   s   € ôB �u‰uˆr!   c                ó@  € \        VRR7      p\        VRR7      pV P                  P                  pV\        P                  J d`   ^V P
                  ,          WP                  P                  ,
          ,          pW P                  P                  ,
          ^,          pWE,
          # V^ 8X  d`   ^V P
                  ,          W P                  P                  ,
          ,          pWP                  P                  ,
          ^,          pWE,
          # V P                  w  rgV P                  P                  R,          w  r‰W,
          ^,          W',
          ^,          ,           pV P                  P                  W4      ^,          V^,          V	^,          ,           ,          pWE,
          # )aÚ  The equation of the parabola.

Parameters
==========
x : str, optional
    Label for the x-axis. Default value is 'x'.
y : str, optional
    Label for the y-axis. Default value is 'y'.

Returns
=======
equation : SymPy expression

Examples
========

>>> from sympy import Parabola, Point, Line
>>> p1 = Parabola(Point(0, 0), Line(Point(5, 8), Point(7, 8)))
>>> p1.equation()
-x**2 - 16*y + 64
>>> p1.equation('f')
-f**2 - 16*y + 64
>>> p1.equation(y='z')
-x**2 - 16*z + 64

T©Úreal:Nr   N)r   r   Úsloper   ÚInfinityÚp_parameterÚvertexÚxÚyr   ÚcoefficientsÚequation)
r%   r<   r=   ÚmÚt1Út2ÚaÚbÚcÚds
   &&&       r   r?   ÚParabola.equation»   s%  € ô6 �A˜DÔ!ˆÜ�A˜DÔ!ˆà�N‰N× Ñ ˆØ”—
‘
‹?Ø�d×&Ñ&Õ'¨1¯{©{¯}©}Õ+<Õ=ˆBØ—k‘k—m‘mÕ# aÕ'ˆBð �wˆð �!ŒVØ�d×&Ñ&Õ'¨1¯{©{¯}©}Õ+<Õ=ˆBØ—k‘k—m‘mÕ# aÕ'ˆBð �wˆð	 —:‘:‰DˆAØ—>‘>×.Ñ.¨rÕ2‰DˆAØ•%˜!•˜q�u q�jÕ(ˆBØ—‘×(Ñ(¨Ó.°Õ1°1°aµ4¸!¸Q½$µ;Õ?ˆBØ�wˆr!   c                ób   € V P                   P                  V P                  4      pV^,          pV# )aÉ  The focal length of the parabola.

Returns
=======

focal_lenght : number or symbolic expression

Notes
=====

The distance between the vertex and the focus
(or the vertex and directrix), measured along the axis
of symmetry, is the "focal length".

See Also
========

https://en.wikipedia.org/wiki/Parabola

Examples
========

>>> from sympy import Parabola, Point, Line
>>> p1 = Parabola(Point(0, 0), Line(Point(5, 8), Point(7, 8)))
>>> p1.focal_length
4

)r   Údistancer   )r%   rI   Úfocal_lengths   &  r   rJ   ÚParabola.focal_lengthç   s+   € ð< —>‘>×*Ñ*¨4¯:©:Ó6ˆØ •zˆàÐr!   c                ó(   € V P                   ^ ,          # )a  The focus of the parabola.

Returns
=======

focus : Point

See Also
========

sympy.geometry.point.Point

Examples
========

>>> from sympy import Parabola, Point, Line
>>> f1 = Point(0, 0)
>>> p1 = Parabola(f1, Line(Point(5, 8), Point(7, 8)))
>>> p1.focus
Point2D(0, 0)

r-   r$   s   &r   r   ÚParabola.focus
  r0   r!   c           
     ór  € \        RRR7      w  r#V P                  4       p\        V\        4      '       dZ   W9   d   V.# \	        \        \        WAP                  4       .W#.RR7      ^,           Uu. uF  p\        V4      NK  	  up4      4      # \        V\        4      '       dK   \        VP                  W!P                  ^ ,          3W1P                  ^,          3.4      4      ^ 8X  d   V.# . # \        V\        \        34      '       dˆ   \        V\        VP                  ^ ,          VP                  ^,          4      P                  4       .W#.RR7      ^,          p\	        \        V Uu. uF  qUV9   g   K  \        V4      NK  	  up4      4      # \        V\        \         34      '       dQ   \	        \        \        WAP                  4       .W#.RR7      ^,           Uu. uF  p\        V4      NK  	  up4      4      # \        V\"        4      '       d   \%        R4      h\%        R4      hu upi u upi u upi )ab  The intersection of the parabola and another geometrical entity `o`.

Parameters
==========

o : GeometryEntity, LinearEntity

Returns
=======

intersection : list of GeometryEntity objects

Examples
========

>>> from sympy import Parabola, Point, Ellipse, Line, Segment
>>> p1 = Point(0,0)
>>> l1 = Line(Point(1, -2), Point(-1,-2))
>>> parabola1 = Parabola(p1, l1)
>>> parabola1.intersection(Ellipse(Point(0, 0), 2, 5))
[Point2D(-2, 0), Point2D(2, 0)]
>>> parabola1.intersection(Line(Point(-7, 3), Point(12, 3)))
[Point2D(-4, 3), Point2D(4, 3)]
>>> parabola1.intersection(Segment((-12, -65), (14, -68)))
[]

zx yTr6   )Úsetz5Entity must be two dimensional, not three dimensionalzWrong type of argument were put)r   r?   Ú
isinstancer   Úlistr   r   r   r	   r   ÚsubsÚ_argsr   r   r   Úpointsr   r   Ú	TypeError)r%   Úor<   r=   Úparabola_eqÚiÚresults   &&     r   ÚintersectionÚParabola.intersection$  sÿ  € ô8 �u 4Ô(‰ˆØ—m‘m“oˆÜ�aœ×"Ò"ØŒyØ�s�
äœG´uØ §*¡*£,Ð/°!°¸Tô8CØCDö8Fó %Gñ 8F°!¤U¨1¦Xñ 8Fñ %Gó Hó Ið Iä˜œ7×#Ò#Ü˜×(Ñ(¨1¯g©g°a­j¨/¸A¿w¹wÀq½z¸?Ð)KÓLÓMÐQRÔRØ�s�
à�	Ü˜œI¤uÐ-×.Ò.Ü˜KÜ�q—x‘x •{ A§H¡H¨Q¥KÓ0×9Ñ9Ó;ð=à�˜Dô"à"#õ%ˆFô œ±VÓ F±V°ÀA¹v¤¤¨¦±VÑ FÓGÓHÐHÜ˜œF¤GÐ,×-Ò-Üœ´UØŸj™j›lÐ+¨a¨V¸ô6?Ø?@ö6Bó !Cñ 6B°¤¨¦ñ 6Bñ !Có Dó Eð Eä˜œ>×*Ò*ÜÐSÓTÐTäÐ=Ó>Ð>ùò%%Gùò !Gùò!Cs   Á0H*Å+H/Å8H/ÇH4c                ó^  € V P                   P                  pV\        P                  J dL   V P                   P                  ^,          p\        V P                  P                  ^ ,          V,           4      pM§V^ 8X  dL   V P                   P                  ^,          p\        V P                  P                  ^,          V,           4      pMUV P                   P                  V P                  4      p\        V P                  P                  VP                  ,
          4      pW0P                  ,          # )ae  P is a parameter of parabola.

Returns
=======

p : number or symbolic expression

Notes
=====

The absolute value of p is the focal length. The sign on p tells
which way the parabola faces. Vertical parabolas that open up
and horizontal that open right, give a positive value for p.
Vertical parabolas that open down and horizontal that open left,
give a negative value for p.


See Also
========

https://www.sparknotes.com/math/precalc/conicsections/section2/

Examples
========

>>> from sympy import Parabola, Point, Line
>>> p1 = Parabola(Point(0, 0), Line(Point(5, 8), Point(7, 8)))
>>> p1.p_parameter
-4

)r   r8   r   r9   r>   r   r   r.   Ú
projectionr<   rJ   )r%   r@   r<   Úpr=   rF   s   &     r   r:   ÚParabola.p_parameterZ  sÈ   € ðB �N‰N× Ñ ˆØ”—
‘
‹?Ø—‘×+Ñ+¨AÕ.ˆAÜ�T—Z‘Z—_‘_ QÕ'¨!Õ+Ó,‰AØ�!ŒVØ—‘×+Ñ+¨AÕ.ˆAÜ�T—Z‘Z—_‘_ QÕ'¨!Õ+Ó,‰Aà—‘×)Ñ)¨$¯*©*Ó5ˆAÜ�T—Z‘Z—\‘\ A§C¡CÕ'Ó(ˆAØ×$Ñ$Õ$Ð$r!   c                óÈ  € V P                   pV P                  P                  pV\        P                  J dB   \        VP                  ^ ,          V P                  ,
          VP                  ^,          4      pV# V^ 8X  dB   \        VP                  ^ ,          VP                  ^,          V P                  ,
          4      pV# V P                  P                  V 4      ^ ,          pV# )a  The vertex of the parabola.

Returns
=======

vertex : Point

See Also
========

sympy.geometry.point.Point

Examples
========

>>> from sympy import Parabola, Point, Line
>>> p1 = Parabola(Point(0, 0), Line(Point(5, 8), Point(7, 8)))
>>> p1.vertex
Point2D(0, 4)

)
r   r   r8   r   r9   r   r.   r:   r*   rZ   )r%   r   r@   r;   s   &   r   r;   ÚParabola.vertex‡  s®   € ð. —
‘
ˆØ�N‰N× Ñ ˆØ”—
‘
‹?Ü˜5Ÿ:™: a�=¨4×+;Ñ+;Õ;¸U¿Z¹ZÈ½]ÓKˆFð
 ˆð	 �!ŒVÜ˜5Ÿ:™: a�=¨%¯*©*°Q­-¸$×:JÑ:JÕ*JÓKˆFð ˆð ×*Ñ*×7Ñ7¸Ó=¸aÕ@ˆFØˆr!   r#   )NN)r<   r=   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   Úpropertyr&   r*   r   r3   r?   rJ   r   rZ   r:   r;   Ú__static_attributes__Ú__classdictcell__)Ú__classdict__s   @r   r   r      sÀ   ø‡ € ñ*ôXGð ñó ðð( ñ=ó ð=ð2 ñó ðð2 ñ ó ð ôD*ðX ñ ó ð ðD ñó ðò24?ðl ñ*%ó ð*%ðX ñó ör!   r   N)rf   Ú
sympy.corer   Úsympy.core.sortingr   Úsympy.core.symbolr   r   Úsympy.geometry.entityr   r   Úsympy.geometry.pointr   r	   Úsympy.geometry.liner
   r   r   r   r   Úsympy.geometry.ellipser   Úsympy.functionsr   Úsympy.simplify.simplifyr   Úsympy.solvers.solversr   r   r#   r!   r   Ú<module>ru      s;   ðñõ Ý &ß .ß =ß /ß NÕ NÝ *Ý  Ý ,Ý 'ôRˆ{ö Rr!   