
ITc           @   s  d  Z  d d l Td d l Td d l Td d l Td d l Td d l Td d l m Z d d l	 Z	 d d l
 Z
 d d l Z d d l m Z m Z d d l m Z m Z d d l m Z m Z m Z d d l m Z d	 GHe d
  d e Z e d  d e Z e d  d e Z e d e  e d e  e d e  e d e  e d  Z e d  Z e d  Z  e d  Z! e  d k  re" Z n  e d k re" Z n  e d k  re" Z n  d Ge Gd Ge Gd Ge GHd Ge Gd Ge Gd Ge  Gd Ge! GHy e#   Z$ e$ dR \ Z% Z& e$ j' Z( e) e* e%  d! e+ Z, e, e- e e% d"  d# k  OZ, e, e- e e% d"  d" k  OZ, e, e- e e% d"  d" k  OZ, e. e/ e%   Z0 Wn e1 k
 rZ2 d$ Ge2 GHn Xg  Z3 x e4 e$ d%  j5 d&  D] Z6 yi e j7 d' e6  rCe j8 d( d) e6  Z6 e j8 d* d+ e6  Z6 e3 j9 e: e6   d, Ge: e6  Gd- GHn  Wqe1 k
 rhZ2 d. Ge4 e2  GHqXqWx9 e; e* e3   D]% Z6 e d/ e4 e6 d0  e3 e6  qWd1 Ge3 GHd2   Z< d3   Z= d4   Z> d5   Z? d6   Z@ d7   ZA d d d8  ZC d9   ZD d:   ZE d;   ZF d<   ZG d=   ZH d>   ZI d?   ZJ d@   ZK dA   ZL dB   ZM dC   ZN dD   ZO dE   ZP dF   ZQ dG   ZR dH   ZS dI   ZT dJ   ZU dK   ZV dL   ZW dM   ZX dN   ZY dO   ZZ dP dQ  Z[ d S(S   s.    CREATED: 7/2012
    AUTHOR: MICHAL ODSTRČIL
i(   t   *(   t   leastsqN(   t   spdiagst   eye(   t   spsolvet   splu(   t   medfiltt   fftconvolvet   convolve(   t
   mquantiless   ------------basicdiagn --------t
   Tcd_aktualgư>t
   Tbd_aktualt
   Tst_aktualt   Tbt   Tbdt   Tcdt   Tstt   Ub_limitt	   Ucd_limitt	   Ubd_limitt	   Ust_limiti
   i    t   CdFieldTriggert   BdFieldTriggert   StFieldTriggert   BVoltaget	   CdVoltaget	   BdVoltaget	   StVoltaget   anyt   btort   dtypeg-C6
?gMb@?s   Basicdiagn failure: t
   wwwcommentt   =s   \d+.*s   (\ *[\d\,\.]+).*s   \1t   ,t   .t   parametrt   loadeds"   Error in loading data from commentt   param_i   s   ===================paramsc          B   sE   d d d d d d g }  x& |  D] } d | d | d	 d  Uq Wd  S(
   Nt#   ToroidalMagneticFieldCoilInductancet    TororoidalMagneticFieldCapacitort   BreakDownElectricFieldCapacitort"   CurrentDriveElectricFieldCapacitort   StabilizationCapacitort   Zeffs   saveconst("s   ", t   )(    (   t   namest   i(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   save_config[   s    	c          C   s   t  d  }  t j d t |  d d ! t |  d d ! t |  d    } t  d  }  t j t |  d d ! t |  d d ! t |  d d !  } t d |  t d	 |  d  S(
   Nt   datei  i   i   i   t	   starttimei    t	   shot_datet	   shot_time(   t   catt   datetimeR0   t   intt   timet   save(   t   sR2   R3   (    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   getDateh   s    =<c         C   s5   t  |  } | | k } | r% |  n |  }  | |  f S(   N(   R4   (   t   signalt   orientation_filet   normal_orientationt   orientationt   reverse(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   reverse_if_changedt   s    c    	      C   s  t  d \ }  } t t t t t t g  d d  } t | |  | k   } t | |  | k   } | | 8} t	 |  t
 t } t | d d  \ } } t d |  t |  } t |  } t d | d	 d
 t d |  |  t d |  |  t d |  | | | | f S(   NR   R   g-C6?gMb`?s   ../../../Bt_orientationt   ACWt	   ReversedBt   BtMaxt   fmts   %.3ft	   Btoroidalt   dBdt_toroidalt   noise_level(   s   anyR   (   t   St   maxt   nanmint   TororoidalMagneticFieldTriggerR   R   R   t   meant   stdt   cumsumt   dtt   Bt_calibrationR@   t	   saveconstt   amaxt   save_adv(	   t   tvect   dBtt   min_timet   mBtt   sBtt   BtRB   RC   t   BtMean(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   getBtoroidal{   s    %
c          C   s   t  d \ }  } | t 9} |  t d k  } d | | <t | d d  \ } } t d |  d | | <t | d  d } t t |   } t d	 | d
 d t d |  |  | | | | f S(   NR   t   uloopg-C6?i    s   ../../../CD_orientationt   CWt
   ReversedCDgGz?t   UloopMaxRD   s   %.3ft   Uloop(   s   anyR\   (	   RH   t   UloopCalibrationRK   R@   RQ   R	   RL   t   absRS   (   RT   R`   t   ind_zeroR^   R_   t	   UloopMean(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   getUloop   s    


c   	   	   C   s  t  d \ } } |  r# | d 9} n  t | | t t t t t t g  d d  k   } d | t | t t d g  k  @<| | 8} t	 |  t
 } | t 9} yZ t d  d } | t t | | d	 d
 d k t | | d	 d
 d k B d d } Wn t } n Xd G| GHd | | | d k  <t t t |   d  d } t t |  d  d } t d | d d t d | d d t d | |  t d | |  | | | | f S(   NR   t   irogig-C6?gMb`?i    g{Gz?i   t   modet   sameg?i   t   I_startg\(\?t   dIdt_rogMaxRD   s   %.3ft   IrogowskiMaxt	   Irogowskit   dIdt_rogowski(   s   anyRf   (   RH   RL   RI   RJ   RK   R   R   R   t	   ind_wrongRN   RO   t   RogowskiCalibrationt   onest   whereR   t   nanR	   Rb   t   diffRQ   RS   (	   R^   RT   t   dIrogt   Ibiast   Irogt   kerRi   Rj   t   IrogMax(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   getIrogowski   s,    5 


J
		c      	      s  t  j    } t d t g  } d } | d  k	 rZ t | k t t | d | |  k  @ n t | k t | | k  @ t     f d  } d }	 t }
 | }
 | |
 d t } t	 d |
 d t
  t	 d |
 d	    | } d
 } d } d } t | | t
 | |  \ } } | d  k	 rt | t t | d  d k   } t | t t | d  d k   } | | | | } | | | } | | t | 8} n  d GHt | k  t d t |  f } t |   GH| t |   8} t |   |  <d | t t t t t t t g  d d  k  <t t t | t d  d d d   t
 } t d t |  t d t |  t	 d |  | | f S(   Ng333333?g~jtX?g-C6?c            s   t  t t   } | s/ t  d  d  n t d t t   } x@ | D]8 }  | |  d | | d |  d |  d | | <qK W| r | S  |  S(   Ni    ii   (   t   zerost   lenRT   t   range(   t   paramt   resultt   Icht   search_rangeR.   (   Rv   R`   t   ind(    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   fit  s    26i    R~   t   ChamberInduktancet   ChamberResistancei   gמY?i<   g{Gz?gMbP?gMb@?s"    correction of drift after plasma gMb`?id   Rg   Rh   t   IplasmaR   t   plasma_current_decay(   R7   t   arrayR   t   NoneRT   t   mint   FalseRr   t   TrueRQ   RO   t   deconvolveExpt   medianRb   t   r_Rs   RN   RI   RJ   RK   R   R   R   RR   R   Rp   RS   (   R`   Rv   Ri   t   PlasmaStartt	   PlasmaEndt   t0t   x0t   time_lagR   t   convt   xR   t   Iplt   t_expt   wint   regularizationt   retrofitt   Ipl1t   Ipl0t   at   bt   dIplR   (    (   Rv   R`   R   sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt
   getIplasma   sH    	*
B
$$/0c         C   sP  t  d | f \ } } t | | t t t t g  d k   } | | 8} t | d  } | d 7} | t t | | |  k | | k  @  9} y | |  k  | | k B} t	 t
 |  d f  } t d t | d  | d  d   d f <t d t | d  | d  d   d f <t j | | d  d   f | |  d }	 t |	 j | j  j }
 | |
 8} Wn" t k
 r~} d	 Gt |  GHn Xt d
 k rt d k  st d k r)t j   } | d k rt | d t d d  \ } } n7 | d k rt | d t d d  \ } } | d 9} n  d Gt j   | GHn  t | | |  t | |  | |  | S(   NR   g-C6?i   gMbP?i   id   i   i    s,   getPhotod: power sockets subtraction failed i)  ia2  i13  t   Photodi,  t   PhotodHalphaga2U0*C?iX  gffffff?s    dekonvoluce  =================(   RH   R   RJ   R   R   R   R   t   signRL   Rp   R{   t   cost   pit   sint   linalgt   lstsqt   dott   Tt	   Exceptiont   strt   shotR7   R   RO   RS   t   getMeanPhotod(   R   R   t   channelt   nameRT   R   t   biasR   t   power_suplyt   projt   corrt   et   tt   _(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt	   getPhotod  s6    )

*((*$!c      	   C   s  t  |   } |  j   }  d |  t t d k  <t t  |   d d  } t |  d  d  |  t d t | d  d d  } t t |  t | t d t | d  d d  } t	 | t
 d  d d d	 } d
 } | j   } d | | d k  <y t d  d  |  t | t d t |  |  k t | d  |  @ d d } t d  d  |  t | t d t |  |  k   d d }	 | d 7} |	 d 8}	 Wn t } t }	 n Xt t |  ot |	   o| |	 k  }
 |
 st } t }	 n  |	 | } t d | d d d t d | d d t d |	 d d t d |	 d d d t d |
  t d | d d t d t d  d  |  | t t |   |  |
 | |	 | f S(   Ni    g-C6?i  i   ga2U0*3?i   i   Rg   Rh   g     j@g?igMb0?t   PlasmaStartAdvancedRD   s   %.5fR   R   t   PlasmaEndDelayedg?t   Plasmat   PlasmaTimeLengtht   PlasmaDetect(   R{   t   copyRT   RK   RI   R   R6   RO   Rs   R   Rp   Rq   RR   Rn   R   t   aminRr   t   isnanRQ   RS   Rb   (   R   Rj   R`   t   N_stepst
   downsamplet   dt   min_dIt   d_startR   R   R   R   (    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyR     s>    67P?

,	
1c         C   sP   t  |  t | k t | k  @ } t d | d d t d t | d k   | S(   NRZ   RD   s   %.3ft
   ReversedBti    (   RL   RT   RQ   R6   (   t   BtorR   R   t   MeanBt(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt	   getMeanBt  s     c         C   s5   t  |  t | k t | k  @ } t | d |  | S(   Nt   Mean(   R   RT   RQ   (   R   R   R   R   t
   MeanPhotod(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyR     s     c         C   s[   |  t  |   d t } t | t | k t | k  @ } t |  } t d | d d | S(   Ni   t   TotalChargeRD   s   %.3f(   Rb   RO   RN   RT   RL   RQ   (   t   IplaR   R   R   (    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   getTotalCharge	  s
     c         C   s7   t  |  t | k t | k  @ } t d | d d | S(   Nt   IplaMeanRD   s   %.1f(   R   RT   RQ   (   R   R   R   t   MeanIpla(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   getMeanCurrent  s     c         C   s7   t  |  t | k t | k  @ } t d | d d | S(   NRd   RD   s   %.2f(   R   RT   RQ   (   R`   R   R   t	   MeanUloop(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   getMeanUloop  s     c         C   s'   t  |  |  } t d | d d | S(   Nt   OhmicHeatingPowerMeanRD   s   %.2f(   Rb   RQ   (   R   t   MeanPlasmaCurrentt   OhmicHeatingPower(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   getOhmicHeatingPower   s    c         C   s?   d t  t d t t t |  |  } t d | d d | S(   Ni   t	   QedgeMeanRD   s   %.1f(   R   t   MeanPlasmaRadiust   Mu0t   MajorRadiusRb   RQ   (   R   R   t   Qedge(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   getQedge'  s    (c         C   se   t  t d d t d t t  d d d d t | |  d  d d } t d | d	 d
 | S(   Ni   i   i   g     @g       @i   gMbP?t   ElectronTemperatureMeanRD   s   %.1f(   R   R   R+   t   sqrtt   AspectRb   RQ   (   R   R   t   ElectronTemperature(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   getMeanElectronTemperature.  s    Nc   	      C   s1  t  | k t  | k  @} t t d d t d t t  d d d d t | t |   d  d d } t | | | d k B<t |  d	 } t	 | d | d  } t
 |  } t | | t |  | d
 d | | <t | t  | k t  | k  @d  d } t d t  |  t d | d d | | | f S(   Ni   i   i   g     @g       @i   gMbP?id   i  Rg   Rh   gGz?i    t   ElectronTempt   ElectronTempMaxRD   s   %.1f(   RT   R   R   R+   R   R   Rb   Rr   t   sumR   R   R   Rp   R	   RS   RQ   (	   R`   R   R   R   R   t   ElectronTempTimeRw   t   medElectronTempt   maxT(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   getElectronTemperature7  s    T''c         C   s   | | d } t  | | k t  | | k  @} t |  d t t |  | d   } |  | } t  | }	 | | }
 | | } t d | d d t d |	  t d |
  t d	 |  | |	 |
 | f S(
   Ni2   i    i   t   BreakDownVoltageRD   s   %.1ft   BreakDownTimet   BreakDownBtt   BreakDownIp(   RT   Rq   t   argmaxR   RQ   (   R`   R   R   R   R   RO   R   t	   break_indt   Umaxt   Btimet   Bbreakt   Bipla(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   getBreakDownVoltageP  s    '



c         C   s#   |  d t  t } t d |  | S(   Ni  t   StateEqElectronDensity(   t   kBt   RoomTemperatureRQ   (   t   Aktual_PfeifferMerkaVakuaR   (    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   getStateEqElectronDensityp  s    c         C   s9   d d t  | t | t | |   } t d |  | S(   Ng      @i   t"   ElectronConfinementTimeFirstApprox(   t   PlasmaVolumet   eVRb   RQ   (   R   R   R   R   R   (    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt%   getElectronConfinementTimeFirstApproxv  s    (c         C   sZ   |  r! t  d  } t  d  } n t  d  } t  d  } t | |  } t d |  | S(   NR   R   R_   Rk   t   ChamberResistance_old(   t	   loadconstRb   RQ   (   R   t   Ibdt   UbdR   (    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   getChamberResistance~  s    c   	      C   sp  d } t  |  d k  r% | d 7} n  t  |  d k  rJ |  rJ | d 7} n  t  |  d k  ri | d 7} n  t  |  d k  r | d	 7} n  t  |  d k  r | d
 7} n  t  |  d k  r | d 7} n  | d k r d } n  d G| GHt d |  | d k rlt d t d d t d t d d t d t d d t d t d d t d t d d t d d  n  | S(   Nt    i   s   Failure (UloopMax < 1V);i   s   Too low Uloop (MeanUloop < 3V);g{Gz?s   Failure (dIdt_rogMax < 0.01V);g333333?s   Failure (MeanUloop) < 0.3V);s   Failure (BtMax) < 0.01T);s   Failure (MeanBt) < 0.01T);t   OKs   PlasmaStatus: t   PlasmaStatusR   RD   s   %.5fR   R   R   R   R   i    (   Rb   RQ   Rr   (	   R   R_   Rj   R   RC   R   R   R   R  (    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   Failures  s2    		c         C   s.   d |  t  t d d } t d t |  | S(   Ngư>i   g@xDt   GreenwaldDensity(   R   R   RS   RT   (   R   t   N_gw(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   getGreenwaldDensity  s    c         C   s>   |  | } | | } t  d t |  t  d t |  | | f S(   NR   t   OhmicHeatingChamber(   RS   RT   (   R   R   R`   t   Powert   PowerCh(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   getOhmicHeatingPowerTime  s
    

c         C   st   d t  t d t t t |  | d  } t | t | k  t | k B<t | | d t |  k <t d t |  | S(   Ni   gMbP?R   (	   R   R   R   R   Rb   Rr   RT   t	   nanmedianRS   (   R   R   R   R   t	   QedgeTime(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   getQedgeTime  s
    ,c         C   s2   t  |  t |    d t } t d t |  | S(   Ni   t   TotalMagneticFlux(   RN   Rb   RO   RS   RT   (   R`   t   Flux(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   getMagneticFlux  s    c         C   s^   | d k r- t  |  t | k   t t } n t  |   t t } t |  } t d |  | S(   Ni   t   TransformatorSaturation(   RN   RT   RO   t   MaxTransformatorSaturationRR   RQ   (   R`   R   R   RH   (    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   getTransformatorSaturation  s    !c         C   s  t  d d t  } | t t d t } t t t  d t t  d } | | } | | d d }	 | |  d d }
 |
 |	 } d } d } t |
 |	 t | |  \ } } } t |  } | | } | |  } d } t	 |  t	 |  d	  } d
 d } | | } | | | | | } | | | | | | } t
 d t |  t
 d t |  t
 d t |  t
 d t |  t d t | t | k t | k  @  | | | | f S(   Ngffffff?g{Gz?i   i   i   i  g      ?i   g?i   gHPsׂ?t
   PowerTotalt   PowerMagnetict   PowerPlasmat   PowerChambert   MeanPowerPlasma(   t   logt   nuR   R   R   R   t
   DiffFilterRO   t   squeezeRb   RS   RT   RQ   RL   (   R   Rv   R`   R   R   t   l_it   L_it   L_et   Lt   W_et   W_it   W_magR   t   lamt   P_magR   t   chi2t   P_totalt   P_inputt   L_correctiont   sigma_plasmat   sigma_chambert   P_plasmat	   P_chamber(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   EnergyBalance  s2     

"


(c          C   s   d d l  m }  t d d k rA t d d k rA t d d } n
 t d } |  d	 t d
 d t d d t d d t d d t d d t d d k  } t d d k r t d d k r t } n  t d |  d  S(   Ni(   t   predictt   shotnoiB;  t   working_gast   Ht   pressureg333333@t   Ubt   ubt   Ucdt   ucdR   t   tcdt   gas_fillingt   preionizationi    t   breakdown_probability(   t   pygolem_lite.breakdownR2  RH   Rr   RQ   (   R2  R6  t   bd_proba(    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   BreakdownProba  s     
K 	g-C6:?c            s  t  | | d k t  | | d k  @} t d t |  d  } t  | | d  d  |   t |  | | d  d  d  |    t    f d  } t d d d g  } t }	 t | | d d d	 d }
 |
 \ } } } } } | d k r d GHt }	 n  d G| G| GHt | |  d  t    t |  } | | } t	 | d  d } t
 | d  d } t  | d k t  | d k  @} t t  | | |  |  t     t  | | t   t d | | | f  t d  t d  t d  t d t  d  d   d  f   d  d   d  f g  d d |	 sB| d k r^d G|	 G| GHt } t } n  t d |  t d |  | | f S(   Ni   i   i2   g       @c            sD   |  d t  d  t |  d   |  d } | s<   | S| Sd  S(   Ni    g     @@i   i   (   t   expRb   (   R}   R~   t   ipla_exp(   t   ipla_tmpt   tvec_tmp(    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyR     s    .i    t   xtolgh㈵>t   full_outputi   i   s   fitting faileds   fitting breakdown donegMbP?g-C6:?ga2U0*C?s"   Exp. Rate const= %g+-%g, window=%gs   I [A]s   Time from breakdown [s]s   rate.pngt   dataRD   s   %gg{Gz?s   convergence failedt   breakdown_ratet   breakdown_rate_err(   i   i   i   i   (   i   i   (   RT   RI   R   t   smoothR   R   R   R   R{   Rb   R   t   plott   titlet   ylabelt   xlabelt   savefigt   savetxtt   hstackR   Rr   RQ   (   R   R   R   R   t   trangeR   t   downR   R   t   convergencet   resR}   t   pcovt   infodictt   errmsgt   iert   s_sqt   ratet   errt   ind_ext(    (   RD  RE  sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   getBreakDownRate  sB    &$	*



? 	(   s   anys   btor(\   t   __doc__t   numpyt   pygolem_lite.configt   pygolem_lite.modulest   pygolem_lite.utilitiest   pygolem_litet   matplotlib.pyplott   scipy.optimizeR   R7   R5   t   ret   scipy.sparseR   R   t   scipy.sparse.linalgR   R   t   scipy.signalR   R   R   t   scipy.stats.mstatsR	   R   RK   R   R   R   RQ   R   R   R   R   Rr   t   ShotRH   RT   t   tmpt   shot_numR   Rz   R{   t   boolRn   Rb   RL   Rs   RO   R   R   t   paramsR   t   splitR.   t   matcht   subt   appendt   floatR|   R/   R:   R@   R[   Re   Ry   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R  R  R	  R  R  R  R  R1  RA  R_  (    (    (    sS   /golem/database/velin//includes/analysis/Basics/0411ShotHomepage.ONN/basic_diagn.pyt   <module>   s   





$			!		 #						0	5	)	4												 				"			
				$	