Quiet@Remove["Global`*"];
$HistoryLength=2;
SetDirectory[NotebookDirectory[]];

(*dosazení uložených energií*)
{elektrina,plynPo,plynPred}=(1/(3600*(10^3)))*<<"energy";

(*cena energií*)
cenakWhPl=1.41;
cenakWhEl=1.68;
IN = 189000;(*Investiční náklady*)
nnplynPred=plynPred*cenakWhPl;
nnplynPo=plynPo*cenakWhPl;
nnelektrinu=elektrina*cenakWhEl;
(*Cash flow*)
CF=(nnplynPred-nnplynPo)-nnelektrinu;
(***Prostá doba návratnosti*)
Ts=Floor[(IN/CF)+1];

Tz=20; (*předpokládaná doba životnosti projektu*)
r=0.04; (*Diskontní činitel *)
l=0.015;(*Činitel respektující růst cen energií*)
(*Diskontovaný cash flow*)
DCF[T_]:=CF*(((1+l))^(-T))*(((1+r))^(-T))
sumaDCF[T_] =Sum[DCF[t-1],{t,1,T}];

(*Reálná doba návratnosti*)
resT=Flatten[FindRoot[IN==sumaDCF[T],{T,10}]];
(*intgrDCF[T_]:=Integrate[CF*(((1+r))^(-t)),{t,0,T}];
resT1=Flatten[Solve[intgrDCF[x]==IN]]*)
Tds=Floor[T+1]/.resT;

(*Čistá současná hodnota toku hotovosti*)
NPV=sumaDCF[Tz];

(*Vnitřní výnosové procento*)
resIRR=FindRoot[IN==Sum[CF*(((1+irr))^(-t)),{t,1,Tz}],{irr,0.08}];
IRR =Round[100*irr,0.1]/.resIRR;

(*---Výpis výsledků---*)
Print["Roční náklady za plyn před projektem jsou ", nnplynPred," Kč"]
Print["Roční náklady za plyn po projektu jsou ", nnplynPo," Kč"]
Print["Roční náklady za elektřinu pro pohon TČ jsou ", nnelektrinu," Kč"]
Print["IN = ", IN," Kč, ","CF = ",CF" Kč"]
Print["Prostá doba návratnosti projektu je ", Ts," let"]
Print["Reálná doba návratnosti projektu je ", Tds," let"]
Print["Čistá současná hodnota toku je ",NPV," Kč"]
Print["Vnitřní výnosové procento je ", IRR," %"]