
    ch'                     :    d dl ZddlmZmZ ddlmZ d Zd Zd Z	y)    N   )+obter_diferenciais_temperatura_tipo_telhado0obter_diferenciais_temperatura_insolacao_telhado)carregar_temperaturas_projetoc                 d   t        |       }|j                  }t        |dd      }t        |dd      }t        |dd      }|dk(  r||z
  }n8t               }	|	j	                  |t        j                  t        |                  }|||
||z  |z  }
|
S t        j                  t        |            }
|
S )ui   
    Calcula a carga térmica de temperatura para um telhado com base no diferencial de temperatura.
    tipo_telhadoNarea_telhadocoeficiente_telhadoexterno)r   temperatura_internagetattrr   getnpzeroslen)
projeto_idtelhadotermicostemperaturas_externasr   r   r	   r
   diferencialdiferenciais_temperaturacarga_termicas              =/var/www/html/cagpublico/cag/calculotermica/cargastelhados.pycalcular_carga_termica_telhador   	   s    
 :*E"667ND9L7ND9L!'+@$G y +.AA#N#P .22<#NcJdAef <#;@S@_+l:[H  %:!;<    c                     t               }t        |dd      }|j                  |t        j                  d            }t        |dd      }t        |dd      }||
||z  |z  }|S t        j                  d      }|S )u`   
    Calcula a carga de insolação para um telhado com base no diferencial de insolação.
    diferencial_insolacao_telhadoN   r	   r
   )r   r   r   r   r   )	r   r   r   diferenciais_insolacaokeydiferencial_insolacaor	   r
   carga_insolacaos	            r    calcular_carga_insolacao_telhador#   $   s     NO
':D
AC266sBHHRLI7ND9L!'+@$G $7$C-<?TT  ((2,r   c                     t        j                  d      }t        j                  d      }|D ]&  }t        | ||      }t        | ||      }||z  }||z  }( ||fS )u   
    Agrega as cargas térmicas e de insolação para todos os telhados do ambiente.
    Retorna dois arrays: cargas térmicas e cargas de insolação para todos os horários.
    r   )r   r   r   r#   )r   telhadosr   cargas_termo_telhados_totalcargas_insolacao_telhados_totalr   r   r"   s           r   calcular_cargas_telhadosr(   8   sr    
 #%((2,&(hhrl# ;6z7HU::wPXY 	$}4#'?:'; '(GGGr   )
numpyr   ctermicacalcr   r   cargasparedesr   r   r#   r(    r   r   <module>r-      s"     96(Hr   