"""Despesa detalhada do projeto 13 (tambaqui de 2 kg para a merenda, 1 ha). Imprime as tabelas usadas no arquivo 02."""
POVO = 2850
SOBREV = 0.90
PRECO_RACAO = 5.00
# peso médio ao fim de cada mês de engorda (kg) — curva [INF] calibrada para 2,0 kg em 12 meses (5,4 g por dia em média;
# a Embrapa mediu 5,1 g por dia em viveiro)
PESO = [0.05, 0.11, 0.20, 0.32, 0.46, 0.62, 0.80, 0.99, 1.19, 1.39, 1.60, 1.80, 2.00]
TOTAL_RACAO = 10260.0   # 5.130 kg x conversão 2,0

def n_peixes(m):                       # perda distribuída ao longo do ciclo
    return POVO * (1 - (1 - SOBREV) * m / 12)

def conv_fase(p):                      # conversão por fase, antes do ajuste
    if p <= 0.20: return 1.1
    if p <= 0.70: return 1.6
    if p <= 1.00: return 2.0
    return 2.6

def proteina(p):
    if p <= 0.20: return "36–42%"
    if p <= 0.70: return "32–36%"
    return "28–32%"

linhas = []
for m in range(1, 13):
    ganho = n_peixes(m) * PESO[m] - n_peixes(m - 1) * PESO[m - 1]
    linhas.append([m, PESO[m], n_peixes(m), n_peixes(m) * PESO[m], ganho, conv_fase(PESO[m])])
bruto = sum(l[4] * l[5] for l in linhas)
k = TOTAL_RACAO / bruto                # ajuste para fechar na conversão global de 2,0
print("fator de ajuste:", round(k, 3))
print("mes | peso kg | peixes | biomassa kg | racao kg | kg/dia | sacos | R$ | acumulado R$ | proteina")
acum = 0; tot = 0
for m, p, n, bio, ganho, c in linhas:
    r = ganho * c * k; tot += r; custo = r * PRECO_RACAO; acum += custo
    print(f"{m:>2} | {p:.2f} | {n:,.0f} | {bio:,.0f} | {r:,.0f} | {r/30:,.0f} | {r/25:,.0f} | {custo:,.0f} | {acum:,.0f} | {proteina(p)}")
print("total racao", round(tot), "R$", round(tot * PRECO_RACAO))

inv = {"limpeza e roçagem": 1000, "hora-máquina (15 h x R$ 400)": 6000, "saída de água": 1500, "telas e filtro": 300,
       "aerador de emergência": 2500, "oxímetro": 1000, "kit de análise": 400, "rede, puçás, balança, caixas": 3500, "documentos e projeto": 1500}
print("investimento", sum(inv.values()))
fixo_ano = 1030 + 1480 + 354 + 1144
print("fixo ano", fixo_ano, "13 meses", round(fixo_ano * 13 / 12))
kg = POVO * SOBREV * 2.0
ciclo = 51300 + 1710 + 2000 + 1539 + 1200 + 960 + 620 + 600 + 500 + 300
print("kg", kg, "ciclo", ciclo, "por kg", round(ciclo / kg, 2), "por peixe colhido", round(ciclo / (POVO * SOBREV), 2), "por mes", round(ciclo / 13))
print("--- sensibilidade (resultado por ciclo a R$ 15) ---")
fixo = fixo_ano * 13 / 12
outros = ciclo - 51300
for nome, conv, preco in (("base", 2.0, 5.00), ("conv 1,8", 1.8, 5.00), ("conv 2,2", 2.2, 5.00), ("ração 4,20", 2.0, 4.20), ("ração 5,50", 2.0, 5.50), ("conv 1,8 + ração 4,20", 1.8, 4.20), ("conv 2,2 + ração 5,50", 2.2, 5.50)):
    rac = kg * conv * preco; tot_c = rac + outros + fixo
    print(f"{nome}: ração R$ {rac:,.0f} | custo total R$ {tot_c:,.0f} | R$/kg {tot_c/kg:.2f} | resultado R$ {kg*15 - tot_c:,.0f} | por mês R$ {(kg*15 - tot_c)/13:,.0f}")
for s in (0.80, 0.85, 0.90, 0.95):
    kgs = POVO * s * 2.0; rac = kgs * 2.0 * 5.0; gelo = kgs * 0.30
    tot_c = rac + (outros - 1539) + gelo + fixo
    print(f"sobrevivência {int(s*100)}%: {kgs:,.0f} kg | custo R$ {tot_c:,.0f} | R$/kg {tot_c/kgs:.2f} | resultado a R$ 15: R$ {kgs*15 - tot_c:,.0f}")
horas = 2.5 * 395
print("mão de obra familiar: horas", horas, "diárias de 8 h", round(horas / 8), "valor a R$ 100", round(horas / 8 * 100))
