clear
PgN = 5000;
TwN = 20;
TgzN = 90;
TgpN = 70;
TzewN = -20;
cpw = 4175;
ew = 1000;
Vw = 0.1 * 1 * 1;
Cvw = cpw * ew * Vw;
cpp = 1000;
ep = 1.2;
Vp = 3 * 2.5 * 3;
Cvg = cpp * ep * Vp;
TgsrN = (TgzN + TgpN)/2;
kg = PgN / (TgsrN - TwN);
kstr = PgN / (TwN - TzewN);
fN = PgN / (2 * cpw * ew * (TgzN - TgsrN));
Qd0 = 0;
f0 = fN;
Tgz0 = TgzN;
Tzew0 = TzewN;
Qd0 = 0;
f0 = fN;
Tgz0 = 0;
Tzew0 = 0;
Tgsr0 = (2 * cpw * ew * fN * kstr * Tgz0 + kg * (Qd0 + 2 * cpw * ew * fN * Tgz0 + kstr * Tzew0))/(kg * kstr + 2 * cpw * ew * fN * (kg + kstr));
Tw0 = (Qd0 + kg * Tgsr0 + kstr * Tzew0) / (kg + kstr);
Qd1 = Qd0;
t1 = 2000;
Tgz1 = Tgz0;
Tzew1 = Tzew0+10;
f1 = f0;
num1 = 2*kg*cpw*ew*f0;
num2 = [(Cvg*kstr) 2*cpw*ew*f0*kstr+kg*kstr];
num3 = [Cvg 2*cpw*ew*f0+kg];
den = [(Cvw*Cvg) (2*Cvw*cpw*ew*f0 + kg*Cvw + kg*Cvg + kstr*Cvg) (2*cpw*ew*f0)*(kg+kstr) + kg*kstr];
[A1,B1,C1,D1] = tf2ss(num1,den);
[A2,B2,C2,D2] = tf2ss(num2,den);
[A3,B3,C3,D3] = tf2ss(num3,den);
simtime = 11000;
model = 'sim1_model';
colors = ['r', 'g', 'b'];
clf;
hold on;
sim(model);
plot(t,Tw, colors(1));
plot(t,TwTF, colors(2));
plot(t,TwSS, colors(3));
hold off;
xlabel('czas [s]');
ylabel('temperatura [C]');
title('Wplyw Temperatury zewnętrznej na temperaturę pomieszczenia');
legend('Model Rzeczywisty','Model Operatorowy','Model Przestrzeni Stanów');