From 932a190de286e50797f474aacd0f207e87d29da1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Constantin=20Ri=DF?= Date: Sun, 31 Jan 2010 20:21:17 +0100 Subject: Kollektor bearbeitet... --- Temparray.cpp | 44 ++++++++++++++++++++++++++++++++++---------- 1 file changed, 34 insertions(+), 10 deletions(-) (limited to 'Temparray.cpp') diff --git a/Temparray.cpp b/Temparray.cpp index 83008cc..83f91f0 100644 --- a/Temparray.cpp +++ b/Temparray.cpp @@ -122,6 +122,30 @@ void Temparray::calcTemp(){ depth = cubehole(i, j, k, l).getDepth(); innerwidth = cubehole(i, j, k, l).getInnerWidth(); innerdepth = cubehole(i, j, k, l).getInnerDepth(); + + if(m % 2 == 0)area = (((depth - innerdepth)/2)*((width + innerwidth)/2)) + / 0.9 * meterperunit; + if(m % 2 == 1)area = (((width - innerwidth)/2)*((depth + innerdepth)/2)) + / 0.9 * meterperunit; + + if(m % 2 == 0)thermalresistance = ((depth - innerdepth)/2) + /0.9 * meterperunit /(conductivity * area); + if(m % 2 == 1)thermalresistance = ((width - innerwidth)/2) + /0.9 * meterperunit /(conductivity * area); + + if(m % 2 == 0)capacity = specificcapacity *((((depth - innerdepth)/2)* + ((width + innerwidth)/2)*height) + / 0.9 * meterperunit); + if(m % 2 == 1)capacity = specificcapacity *((((width - innerwidth)/2)* + ((depth + innerdepth)/2)*height) + / 0.9 * meterperunit); + + tau12 = capacity * thermalresistance; + + temperaturenew(i, j, k, l, m) = + temperaturenew(i, j, k, l, m) - ((temperatureold(i, j, k, l, m) - probetemp) + *(1-exp(-(1/tau12)))); + if(j > 0) { width2 = cubehole(i, j-1, k, l).getWidth(); height2 = cubehole(i, j-1, k, l).getHeight(); @@ -158,10 +182,10 @@ void Temparray::calcTemp(){ temperaturenew(i, j, k, l, m) = temperaturenew(i, j, k, l, m) - ((temperatureold(i, j, k, l, m) - - temperatureold(i, j, k, l-1, m))*(1-exp(-(1/tau12)))); - temperaturenew(i, j, k, l-1, m) = - temperaturenew(i, j, k, l-1, m) + ((temperatureold(i, j, k, l, m) - - temperatureold(i, j, k, l-1, m))*(1-exp(-(1/tau21)))); + temperatureold(i, j-1, k, l, m))*(1-exp(-(1/tau12)))); + temperaturenew(i, j-1, k, l, m) = + temperaturenew(i, j-1, k, l, m) + ((temperatureold(i, j, k, l, m) - + temperatureold(i, j-1, k, l, m))*(1-exp(-(1/tau21)))); } if(m == 0) { @@ -262,7 +286,7 @@ void Temparray::calcTemp(){ if(m % 2 == 1)area = (((width - innerwidth)/2)*((depth + innerdepth)/2)) / 0.9 * meterperunit; - thermalresistance = 3 + (height/2 / 0.9 * meterperunit /(conductivity * area)); + thermalresistance = (3 + height/2) / 0.9 * meterperunit /(conductivity * area); if(m % 2 == 0)capacity = specificcapacity *((((depth - innerdepth)/2)* ((width + innerwidth)/2)*height) @@ -314,7 +338,7 @@ void Temparray::calcTemp(){ area = (((depth + innerdepth)/2)*height) / 0.9 * meterperunit; - thermalresistance = 3 + ((width - innerwidth)/4) / 0.9 * meterperunit / + thermalresistance = (3 + (width - innerwidth)/4) / 0.9 * meterperunit / (conductivity * area); capacity = specificcapacity *((((depth + innerdepth)/2)*((width - innerwidth)/2)* @@ -360,7 +384,7 @@ void Temparray::calcTemp(){ area = (((width + innerwidth)/2)*height) / 0.9 * meterperunit; - thermalresistance = 3 + ((depth - innerdepth)/4) / 0.9 * meterperunit / + thermalresistance = (3 + (depth - innerdepth)/4) / 0.9 * meterperunit / (conductivity * area); capacity = specificcapacity *((((width + innerwidth)/2)*((depth - innerdepth)/2)* @@ -379,9 +403,9 @@ void Temparray::calcTemp(){ // std::cerr << temperaturenew(2, 2, 2, 1, 2) << std::endl; // std::cerr << temperaturenew(2, 2, 2, 2, 2) << std::endl; // std::cerr << temperaturenew(2, 2, 2, 3, 2) << "\n" << std::endl; - std::cerr << " " << temperatureold(2, 2, 2, 1, 2) << std::endl; - std::cerr << temperatureold(2, 2, 2, 2, 1) << " " << temperatureold(2, 2, 2, 2, 2) << " " << temperatureold(2, 2, 2, 2, 3) << std::endl; - std::cerr << " " << temperatureold(2, 2, 2, 3, 2) << "\n" << std::endl; +// std::cerr << " " << temperatureold(2, 2, 2, 1, 2) << std::endl; +// std::cerr << temperatureold(2, 2, 2, 2, 1) << " " << temperatureold(2, 2, 2, 2, 2) << " " << temperatureold(2, 2, 2, 2, 3) << std::endl; +// std::cerr << " " << temperatureold(2, 2, 2, 3, 2) << "\n" << std::endl; } std::list Temparray::getTriangles(){ -- cgit v1.2.3