Question
Asked by:
mohsen
mohsen
Rating : No Rating
Questions Asked: 40
Tutorials Posted: 0
 

$50.00 model temperature changes in a cooling fin of a large, air-cooled engine. This will give you e

  • From Computer-Science: General-CS
  • Closed, but you can still post tutorials
  • Due on Apr. 14, 2009
  • Asked on Apr. 10, 2009 at 01:00:28AM
Q:
In this program, you will model temperature changes in a cooling fin of a large, air-cooled engine. This will give you experience in manipulating two dimensional arrays and a practical application for all the programming skills you have developed. This assignment is roughly based on problem 8-18 (p.413) but we’ll make it a little more practical.



We’ll model a cross-section of a cooling fin, which is 10mm wide (thick) and 100mm long (the distance it sticks out from the engine block). Ignore the third dimension by assuming that there are no temperature differences in that direction. The end next to the cylinder is exposed to a constant temperature of 500C. The far end and both edges are exposed to air at 20C. Model the heat transfer (temperature changes) through the fin and report the maximum and minimum temperatures in the fin once it reaches steady state. How many time cycles does it take to reach steady state? Finally, print out a temperature profile across the fin at 5, 10, 15 and 20mm from the cylinder end.

Hints: Abstract the fin as an array of 1mm squares – the boundary on one end is kept at 500C. The boundary on the other three sides is kept at 20C. To start with, let the entire fin (except for the 500 degree end) be at the 20C air temperature. As discussed in the book, you can model the temperature of each square at time T+1 as the average of the temperatures of all the surrounding squares (or outer surfaces) at time T. This suggests using two arrays, one at time T and one at time T+1. After you calculate the new temperature of each square in the T+1 array, then it becomes the T array for the next iteration. Assume steady state has been reached when no square's temperature changes by more the 0.1 degrees between iterations. (Don't be confused by the way the problem is stated - we are modeling a physical process, but you don't need any knowledge of physics or thermodynamics to solve it. The units (degrees and millimeters) are just to give you a sense of scale.)
 


   
   
   
   
 
Available Tutorials to this Question
Posted by:
CMBLUE
CMBLUE
Rating (17): A+
Questions Asked: 0
Tutorials Posted: 74, earned $284.70
 

$40.00 Cooling model in Java

  • This tutorial hasn't been purchased yet.
  • Posted on Apr 10, 2009 at 11:04:22PM
A:
Preview: ... temperatures[i][j] = AIR_TEMP;<br> }<br> }<br> }<br> time = 0;<br> }<br><br> /**<br> * Run one iteration of the simulation updating the values in the temperatures array.<br> * @return true if at least one square has changed by at least 0.1 in this iteration, false otherwise<br> */<br> public boolean nextIteration(){<br> double[][] nextTemperatures = new double[LENGTH][WIDTH];<br> time ++;<br> for(int i = 0; i < LENGTH; i++){<br> for(int j = 0; j < WIDTH; j++){<br> nextTemperatures[i][j] = getNextTemp(i, j);<br> }<br> }<br> boolean tempsChanged = haveTempsChanged(nextTemperatures);<br> temperatures = nextTemperatures;<br> return tempsChanged;<br> }<br><br> /**<br> * Get the temperature at a specific location on the fin.<br> * @param i The horizontal index<br> * @param j The vertical index<br> * @return The temperature at the specified location<br> * ...

The full tutorial is about 485 words long plus attachments.

Attachments:
CoolingFinModel.java (4K) (Preview)
   
Join Now or Log In
Get Tutoring
Get Paid
Academic Honesty