
    J0g:.                     f    d dl Zd Zd Zd dl Zd Zd dl Zd Zd dl Zd Zd Zd dl Zd dl Zd Zd	 Z	dS )
    Nc                  \   t          j        g d          t          j        g d          t          j        g d          t          j        g d          t          j        g d          t          j        g d          t          j        g d          t          j        g d          d} | S )u   
    Retorna os diferenciais de temperatura para paredes internas com áreas climatizadas e não climatizadas,
    agora com 13 valores para representar as 13 horas do dia (06:00 às 18:00).
    )       @      @      @      @333333@      @r	   r   ffffff@      @皙@      ?333333?)r   ?r   r   皙@r   皙	@r   ffffff@r   r   r   r   )r         @r	         @      @r	   g@r   r   r   r   r   r   )r   r   r
   r   g@r   g@r   r   r   r   r   r   )   r   r   r   r   r   r   r   r   r   r   r   r   interna_nao_climatizada_norteinterna_nao_climatizada_sulinterna_nao_climatizada_lesteinterna_nao_climatizada_oesteinterna_climatizada_norteinterna_climatizada_sulinterna_climatizada_lesteinterna_climatizada_oestenparraydiferenciais_temperaturas    0/var/www/html/cag/calculotermica/ctermicacalc.py&obter_diferenciais_temperatura_paredesr&      s     *,2s2s2s)t)t)+2s2s2s)t)t)+2s2s2s)t)t)+2s2s2s)t)t%'X.U.U.U%V%V#%8,S,S,S#T#T%'X.U.U.U%V%V%'X.U.U.U%V%V
  
  $#    c                     t          j        g d          t          j        g d          t          j        g d          t          j        d          t          j        d          t          j        d          t          j        g d          t          j        g d          t          j        g d          t          j        g d          t          j        g d	          t          j        g d
          d} | S )u   
    Retorna os diferenciais de temperatura devido à insolação para cada orientação
    e cor da parede, com 13 valores representando o intervalo de 06h às 18h.
    )r   r   r   r   r   r   r   r   r   r   r         ?      ?)r   r   r   r   r	   r   r   r   r   r   r   r   r)   )r   r   r   r	   r   r	   r   r   r   r   r   r   r      )r   r	   r   r   r	   r   r   r   r   r   r)   r*   g?)r   r   r   r   r   r	   r   r   r   r   r   r)   r*   )r	   r         @r,   r   r   r	   r   r   r   r   r   r)   )r*   r)   r   r   r   r   r   r	   r   r	   r   r   r   )r)   r   r   r   r   r   r   r   r   r   r	   r   r   )r   r   r   r   r   r   r	   r   r,   r   r   r	   r   )parede_clara_norteparede_media_norteparede_escura_norteparede_clara_sulparede_media_sulparede_escura_sulparede_clara_lesteparede_media_lesteparede_escura_lesteparede_clara_oesteparede_media_oesteparede_escura_oester!   r"   zeros)diferenciais_insolacaos    r%   /obter_diferenciais_temperatura_insolacao_pareder<      s     !h'h'h'hii h'h'h'hii!x(i(i(ijj HRLLHRLLXb\\ !h'h'h'hii h'h'h'hii!x(i(i(ijj !h'h'h'hii h'h'h'hii!x(i(i(ijj' * "!r'   c                  l   t          j        g d          t          j        g d          t          j        g d          t          j        g d          t          j        dgdz            t          j        dgdz            t          j        dgdz            t          j        dgdz            d} | S )u  
    Retorna os diferenciais de temperatura por condução para vidros internos,
    considerando se o ambiente adjacente é climatizado ou não, e a orientação solar.
    Os valores são estimativas médias para uso em simulações térmicas horárias (06h às 18h).
    r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r)   r   r   r   r   r   r   r   r   r   r   r   r   r   r)   r+   r   r    )diferenciais_temperatura_vidross    r%   %obter_diferenciais_temperatura_vidrosrB   A   s     *,2s2s2s)t)t)+2s2s2s)t)t)+2s2s2s)t)t)+2s2s2s)t)t &(Xsebj%9%9%'Xsebj%9%9%'Xsebj%9%9%'Xsebj%9%9' '# +*r'   c                     t          j        g d          t          j        g d          t          j        dgdz            t          j        d          t          j        d          t          j        d          t          j        g d          t          j        g d          t          j        dgdz            t          j        g d          t          j        g d          t          j        dgdz            d} | S )u   
    Retorna os diferenciais de temperatura devido à insolação para vidros em diferentes orientações,
    considerando valores mais conservadores com base na literatura técnica.
    )r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r)   r)   r+   )r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r	   r   r   r   r   r   r   r   r   r   )vidro_transparente_nortevidro_cortina_clara_nortevidro_blackout_preto_nortevidro_transparente_sulvidro_cortina_clara_sulvidro_blackout_preto_sulvidro_transparente_lestevidro_cortina_clara_lestevidro_blackout_preto_lestevidro_transparente_oestevidro_cortina_clara_oestevidro_blackout_preto_oester9   )diferenciais_insolacao_vidross    r%   /obter_diferenciais_temperatura_insolacao_vidrosrQ   [   s     %'H-n-n-n$o$o%'X.o.o.o%p%p&(hurz&:&: #%(2,,#%8B<<$&HRLL %'H-n-n-n$o$o%'X.o.o.o%p%p&(hurz&:&: %'H-n-n-n$o$o%'X.o.o.o%p%p&(hurz&:&:'% %!, )(r'   c                  l   t          j        g d          t          j        g d          t          j        g d          t          j        g d          t          j        dgdz            t          j        dgdz            t          j        dgdz            t          j        dgdz            d} | S )u    
    Retorna os diferenciais de temperatura por condução térmica (∆T) entre ambientes internos e externos,
    para diferentes orientações e tipos de ambiente.
    r>   r?   r@   r)   r+   r   r    r#   s    r%   $obter_diferenciais_temperatura_portarS      s     *,2s2s2s)t)t)+2s2s2s)t)t)+2s2s2s)t)t)+2s2s2s)t)t%'Xsebj%9%9%'Xsebj%9%9%'Xsebj%9%9%'Xsebj%9%9
  
  $#r'   c                     i } i ddddddddd	d
ddddddddddddddddddddddddddddd}g d d!gd"z  g d#g d$d%}g d&g d'g d(g d)g d(g d*g d+d,}|                                 D ]x\  }}|                                 D ]^\  }}|D ]V}| d-| }	d.|	 d-| }
|                    |	d          }t          j        t          j        |          |z  d/          }|| |
<   W_y| S )0u   
    Retorna os diferenciais de temperatura devido à insolação para portas
    em diferentes materiais e orientações, com valores mais conservadores
    baseados em literatura técnica.
    clarar   mediar   escurar   transparenter   cortina_clarag333333@blackoutr)   aluminio_refletivor   aluminio_neutror   aluminio_absorvedorr   aco_refletivoaco_convencionalaco_expostor   pvc_refletivor   
pvc_neutropvc_absorvedorcomposta_refletivacomposta_neutrar   r   )composta_absorvedoraisolante_convencionalisolante_refletivoisolante_multicamadas)ffffff??r)   皙?r)   rk   rj   rk   r)   rk   rj   r*   g333333?g        r+   )rk   r)   rl   r   rl   r)   rk   r)   rl   r)   rk   皙?rj   )r)   rl   r   g?r   rl   r)   rl   r   rl   r)   rk   rm   )nortesullesteoeste)rU   rV   rW   )rX   rY   rZ   )	refletivoneutro
absorvedor)rr   convencionalexposto)	refletivaneutraabsorvedora)ru   rr   multicamadas)madeiravidroaluminioacopvccompostaisolante_porta_   )itemsgetr!   roundr"   )diferenciais	materiaisorientacoescombinacoes
orientacaopesos	categoriatipostipo
chave_tipochave
valor_basediferencials                r%   .obter_diferenciais_temperatura_insolacao_portar      s>    L 	# 		
 	 	C 	c 	3 	s 	 	C 	s 	 	c 	#  	c!" 	3#$ !$!$!!$+  I4 SRRRRRRRR	 K 0//>>>999777444:::AAA K )..00 2 2
E + 1 1 3 3 	2 	2Iu 2 2 )22D22
:::j::&]]:s;;
 hrx'CQGG&1U##2	2 r'   c                  d    t          j        g d          t          j        dgdz            d} | S )u   
    Retorna os diferenciais de temperatura para telhados de diferentes tipos e condições
    (externo, interno não climatizado, interno climatizado).
    )r         @      "@      &@      *@      -@      .@      +@r   r         @r,   r   r   r+   )interno_nao_climatizadointerno_climatizador    ) diferenciais_temperatura_telhados    r%   +obter_diferenciais_temperatura_tipo_telhador      sB     $&8,s,s,s#t#t  "x
33( ($ ,+r'   c            
      2   t          j        g d          t          j        g d          t          j        g d          t          j        g d          t          j        g d          t          j        g d          t          j        g d          d} | S )	uk   
    Retorna os diferenciais de temperatura devido à insolação para tipos de telhados específicos.
    )      !@      '@      ,@      1@      3@g     5@      6@      4@r   r   r         #@r   )      (@      /@r   g      7@      ;@g      >@g      ?@g      <@g      8@r   r   r   r   )r   r   r   r   r   g     0@r   r         )@      $@r   r   r   )       @      %@r   r   r   g     2@r   r   r   r   r   r   r   )r   r   r   g      0@      2@g     3@r   r   r   r   r   r   r   )r   r   r         @@      B@g      C@g     C@r   r   g      :@r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r	   r   )telhado_laje_claratelhado_laje_escuratelhado_americanatelhado_colonialtelhado_portuguesatelhado_metal_simplestelhado_metal_sanduicher    )diferenciais_insolacao_telhados    r%   0obter_diferenciais_temperatura_insolacao_telhador      s     !h'r'r'rss  "x(v(v(vwwX&o&o&oppX&p&p&pqq h'r'r'rss "$*x*x*x!y!y $&8,q,q,q#r#r& &"$ *)r'   )
numpyr!   r&   r<   rB   rQ   rS   r   r   r    r'   r%   <module>r      s       $ $ $&" " "N    + + +0    ) ) )R    $ $ $,= = =R        , , , * * * * *r'   