
    oIcD
                     @    d Z ddlZddlZddlZddlmZ  G d d      Zy)za denominator for the grund    N)Lensuc                   &    e Zd ZddZd Zd Zd Zy)Entsic                     || _         t        | j                         | _        | j                   j                  d   | _        | j                  dz   | _        t        |d      r|j                  | _        i | _        y )Nfitliz/entsi.json.gz
do_verbose)	er   lensudirsfolderfufihasattrr   data)selferimpr   s      !/home/ernad/ernad/python/entsi.py__init__zEntsi.__init__   s^    466]
ffkk'*KK"22	5,'#..DO	    c                    d}| j                   j                         | _        | j                  t        dt        j
                         y| j                  D ]  }|| j                  |   z  } i }d}| j                  j                         D ]4  }t        | j                  |         |z  }||||<   |}(||   |z   ||<   |}6 |D ]P  }t        ||         }|dk  rd||<   |dk\  rd||<   'd|z  t        j                  |      z  t        |      z  ||<   R t        |       t        j                  | j                  |       y)zuse entropy and sizer   Nentsi has no lensu datafile   r
   loadr   printsysstderrkeysintfloatmathlog2filerdumpr   r   totalcountr   previousfreqcumuls          r   run_with_sizezEntsi.run_with_size   :   JJOO%	99+#**=YYETYYu%%E YY^^%Etyy'(50D"U x.4/DKH & E$u+&EzUzU+		%(885<GDK  	d

499d#r   c                    d}| j                   j                         | _        | j                  t        dt        j
                         y| j                  D ]  }|| j                  |   z  } i }d}| j                  j                         D ]4  }t        | j                  |         |z  }||||<   |}(||   |z   ||<   |}6 |D ]P  }t        ||         }|dk  rd||<   |dk\  rd||<   'd|z  t        j                  |      z  t        |      z  ||<   R t        |       t        j                  | j                  |       y)zuse entropy and scoper   Nr   r   r   r   r   r'   s          r   run_with_scopezEntsi.run_with_scope9   r.   r   c                 D    t        j                  | j                        }|S )N)r%   r   r   )r   r   s     r   r   z
Entsi.loadY   s    zz$))$r   N)F)__name__
__module____qualname__r   r-   r0   r    r   r   r   r      s    	$B$@r   r   )__doc__r   r#   r%   r
   r   r   r5   r   r   <module>r7      s"    !    P Pr   