a
    `                     @   sB   d dl Z d dlZd dlZd dlmZ d dlmZ G dd dZdS )    N)Alfit)Dofrec                   @   s.   e Zd Zdd Zdd Zdd Zddd	Zd
S )Tifinc                 C   s.   || _ t| j | _t| j | _d| _d | _d S )NF)er   alfitr   dofre
do_verbosedofs)selferimp r   !/home/ernad/ernad/python/tifin.py__init__   s    zTifin.__init__c                 C   s0   d}|D ]"}||vrq||| ||  7 }q|S )z)--> cross product for two alfits by papidr   r   )r
   Zfits1Zfits2outfitr   r   r   cropro   s    zTifin.croproc                 C   sf   | j d urdS | j }|d u r4tdtjd t  td| d ddd t|| _ td	dd
 dS )NFz-tifin: there are no dofres. I can't continue.)fileztifin loads z ... T )flushenddone)r   )	r	   r   fufiprintsysstderrquitfilerload)r
   r   r   r   r   	load_dofs   s    

zTifin.load_dofsFc           
      C   s   | j  s| jdu r|   d}i }i }|D ].}d|d }|| | }|||< ||7 }q,t|}	|D ]f}t|| |	 ||< | jdus| j  sj|| jvr| jrtd| d qj|| | j|  ||< qj|S )z$parts copied from vemli's feed_papidNr       'z' has no dof.)	r   
is_testingr	   r   countmathsqrtr   r   )
r
   fitsZno_dofsZsumfZtefsr   r   lengthaddZ	root_sumfr   r   r   beaks,   s&    


zTifin.beaksN)F)__name__
__module____qualname__r   r   r   r)   r   r   r   r   r      s   	r   )r$   r   r   r   r   r   r   r   r   r   r   r   <module>   s
   