summaryrefslogtreecommitdiffstats
path: root/Temparray.cpp
diff options
context:
space:
mode:
authorConstantin Riß <constantin.riss@dre.de>2010-02-06 00:19:05 +0100
committerConstantin Riß <constantin.riss@dre.de>2010-02-06 00:19:05 +0100
commitabcf04bac0fe9b7b8358af6ed4e2f11d9bbb0fc8 (patch)
tree41107cece5c8cf38d78b6001af2b0f9b4845a399 /Temparray.cpp
parent7fdd05d8c937fab5816267f49a53dcf1f70c6a33 (diff)
downloadc3d-abcf04bac0fe9b7b8358af6ed4e2f11d9bbb0fc8.tar
c3d-abcf04bac0fe9b7b8358af6ed4e2f11d9bbb0fc8.zip
....................................
Diffstat (limited to 'Temparray.cpp')
-rw-r--r--Temparray.cpp20
1 files changed, 19 insertions, 1 deletions
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)));
+ }
+ }
}
}
}