From abcf04bac0fe9b7b8358af6ed4e2f11d9bbb0fc8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Constantin=20Ri=C3=9F?= Date: Sat, 6 Feb 2010 00:19:05 +0100 Subject: .................................... --- Temparray.cpp | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) (limited to 'Temparray.cpp') diff --git a/Temparray.cpp b/Temparray.cpp index ddbcc25..0686ef0 100644 --- a/Temparray.cpp +++ b/Temparray.cpp @@ -154,7 +154,7 @@ void Temparray::calcTemp(){ inputpower = loadableenergy; input -= loadableenergy; } - else if (input <= loadableenergy) { + else if (input < loadableenergy) { inputpower = input; input = 0; } @@ -165,6 +165,24 @@ void Temparray::calcTemp(){ *thermalresistance*factor*(1-exp(-(1/tau12))); } } + if (input < 0){ + if(unloadableenergy <= 0) + inputpower = 0; + else if (input > unloadableenergy) { + inputpower = unloadableenergy; + input -= unloadableenergy; + } + else if (input <= unloadableenergy) { + inputpower = input; + input = 0; + } + if(inputpower > 0) { + factor = inputpower/unloadableenergy; + temperaturenew(i, j, k, l, m) = + temperaturenew(i, j, k, l, m) + (21.5-temperatureold(i, j, k, l, m)) + *thermalresistance*factor*(1-exp(-(1/tau12))); + } + } } } } -- cgit v1.2.3