B
    )t^Q                 @   s$   d dl Z d dlZdd Zdd ZdS )    Nc             C   s,   t j| |d dd}t j| |dd}||gS )N   midpoint)interpolation)np
percentile)dataiiminimax r   =/home/disk/rocinante/DATA/temp/WRF/test/kingcounty/calc_bc.pyget_pct   s    r   c          	   C   s  t |jt j}t |jt j}| t |   }| t |  }| t |  }	|j|	jB r| }
|	 }|dkrd|||k < t t |t 	dddk }t ||}d|
||k< d||	|k< nd}g }x@t
|dD ]0}t||\}}t||\}}t|	|\}}||kr0||k}||k}|	|k}nT|dkrT||k}||k}|	|k}n0||k||k@ }||k||k@ }|	|k|	|k@ }||kr|n
t||}||kr|n
t||}|dkrtd|   kr|krn n
d||< q|dkr|| ||< q|| ||< qW d S )Nprecr   d   r   )r   fullshapenanisnansizecopyargminr   arangeranger   meanZgcm_avg)ZobsdataZhisdataZfutdatamodeZddthresZhis_outZfut_outobshisfutZbc_hisZbc_futZpidx_minobsZ	pmin_zeroZpminZ	ratio_avgr   Zobs_iminZobs_imaxZhis_iminZhis_imaxZfut_iminZfut_imaxZfobsZfhisZffutZobs_avgZhis_avgr   r   r   calc_bc   sN     



 

r   )sysnumpyr   r   r   r   r   r   r   <module>   s   