ó
    Êðhñ  ã                   óR   • S r SSKJr  SSKrS/r\R                  " SS9SS j5       rg)	z
Vitality measures.
é    )ÚpartialNÚcloseness_vitalityÚweight)Ú
edge_attrsc                 óö   • Uc  [         R                  " XS9nUb5  [         R                  " U R                  [        U 5      U1-
  5      US9nX4-
  $ [	        [
        XUS9nU  Vs0 s H	  ofU" US9_M     sn$ s  snf )añ  Returns the closeness vitality for nodes in the graph.

The *closeness vitality* of a node, defined in Section 3.6.2 of [1],
is the change in the sum of distances between all node pairs when
excluding that node.

Parameters
----------
G : NetworkX graph
    A strongly-connected graph.

weight : string
    The name of the edge attribute used as weight. This is passed
    directly to the :func:`~networkx.wiener_index` function.

node : object
    If specified, only the closeness vitality for this node will be
    returned. Otherwise, a dictionary mapping each node to its
    closeness vitality will be returned.

Other parameters
----------------
wiener_index : number
    If you have already computed the Wiener index of the graph
    `G`, you can provide that value here. Otherwise, it will be
    computed for you.

Returns
-------
dictionary or float
    If `node` is None, this function returns a dictionary
    with nodes as keys and closeness vitality as the
    value. Otherwise, it returns only the closeness vitality for the
    specified `node`.

    The closeness vitality of a node may be negative infinity if
    removing that node would disconnect the graph.

Examples
--------
>>> G = nx.cycle_graph(3)
>>> nx.closeness_vitality(G)
{0: 2.0, 1: 2.0, 2: 2.0}

See Also
--------
closeness_centrality

References
----------
.. [1] Ulrik Brandes, Thomas Erlebach (eds.).
       *Network Analysis: Methodological Foundations*.
       Springer, 2005.
       <http://books.google.com/books?id=TTNhSm7HYrIC>

)r   )r   Úwiener_index)Únode)Únxr   ÚsubgraphÚsetr   r   )ÚGr	   r   r   ÚafterÚvitalityÚvs          ÚN/var/www/html/env/lib/python3.13/site-packages/networkx/algorithms/vitality.pyr   r      sz   € ðt ÑÜ—’ qÑ8ˆØÑÜ—’ §
¡
¬3¨q«6°T°F©?Ó ;ÀFÑKˆØÑ#Ð#ÜÔ)¨1È,ÑW€HÙ)*Ó+ª A‰x˜QÑÒ©Ñ+Ð+ùÒ+s   Á#A6)NNN)Ú__doc__Ú	functoolsr   Únetworkxr
   Ú__all__Ú_dispatchabler   © ó    r   Ú<module>r      s9   ðñõ ã àÐ
 €ð ×Ò˜XÑ&ó?,ó 'ñ?,r   