Help with Irradiance and Temperature

Hlynkacg

Aspiring rocket scientist
Addon Developer
Tutorial Publisher
Donator
Joined
Dec 27, 2010
Messages
1,870
Reaction score
3
Points
0
Location
San Diego
So I'm trying to model a thermal control system. I have what I think is the equation for calculating equilibrium but the results I've been getting are unrealistically low (as in 1* Kelvin) and I need some body to check my math/code.

First I calculate irradiance

Code:
long double DistAU = vessel_Sun / 149597870700; // conversion of vessel_Sun distance from meters to AU 
double Irradiance = 1361 * pow((1/DistAU), 2);	// Irradiance from sun calculated using inverse square law

Then I calculate area exposed to sunlight. (lsunPos is a normalised vector of the sun's position in local frame)

Code:
	VECTOR3	CrossSec;
	double	TotalArea, ExposedArea, ShadowArea;

	v->GetCrossSections(CrossSec);
	TotalArea = (CrossSec.x + CrossSec.y + CrossSec.z);
	if (InShadow) ExposedArea = 0; 
	else ExposedArea = fabs(lsunPos.x)*CrossSec.x + fabs(lsunPos.y)*CrossSec.y + fabs(lsunPos.z)*CrossSec.z;
	ShadowArea = TotalArea - ExposedArea;

Finally we calc radiative heat input/output

Code:
double Absorptivity = 0.25;
double Emissivity = 0.39;
double StefanBoltzmann = 5.67e-8;
	
double RadInput = (Irradiance * Absorptivity * ExposedArea) + WasteHeat;
double RadOutput =  Emissivity * StefanBoltzmann * ShadowArea;

double eTemp = pow((RadInput/RadOutput), 1/4);

sprintf(oapiDebugString(),"In %0.2f, Out %0.2f, Equilibrium %0.2f", RadInput, RadOutput, eTemp);

The Absorptivity and Emissivity values are based on painted aluminium at 294 K. Waste heat is in watts provided by a seperate function.

Clearly I shouldn't be getting values of 0.91 K in earth orbit

What did I miss?
 

jedidia

shoemaker without legs
Addon Developer
Joined
Mar 19, 2008
Messages
10,864
Reaction score
2,127
Points
203
Location
between the planets
Heh, I happen to know a lot about that by now...

One problem (though not an error) I see here:

double RadInput = (Irradiance * Absorptivity * ExposedArea) + WasteHeat;

Putting external irradiation and WasteHeat together completely ignores insulation, which will lead to erratic temperature differeces between day and night periods. You should use the irradiance to just heat up the exterior hull, then calculate how much of that is transferred to your interior, where it combines with the waste heat produced inside.

double RadOutput = Emissivity * StefanBoltzmann * ShadowArea;

double eTemp = pow((RadInput/RadOutput), 1/4);

However, I have no idea what you are trying to calculate here. I assume it is a misinterpretation of the Stefan Boltzman law, as I had to get rid of a similar misinterpretation in the IMS code.

The stefan Boltzmann law states that radiated power in Watt/m^2 = temperature^4 * Stefan's constant. As far as I can see, you try to infer temperature without knowing the actual radiative power, which of course won't work. (I.E. you'd need this equation to calculate RadOutput, for which you'd need the surface temperature, or you'd already need RadOutput given to get the temperature. You cannot calculate both with the same equation!)

Add to that what I said about insulation above: Insulation in effect means that your outer hull will be a lot hotter than your interior, in order to reject more heat. The ISS outer hull ranges from something like 450 K to 170 K, depending on exposition. Often both temperatures are present at the same time on different sides. So one thing you want to know is how that is for the LEM, and how well insulated it is.

The next you need to know is the heat capacity of the LEM interior (that is, how many joules it takes to increase temperature by one Kelvin). The whole process then goes something like this:

-Heat up exterior hull where exposed to the sun, until irradiation/emission reaches equilibrium.
-Transfer heat to LEM interior according to insulation values. To that heat, add the internally produced waste heat.
-calculate temperature increase of LEM interior based on added energy and heat capacity.

Here's where I usually move energy from the interior to a radiator. I don't know how exactly the LEM gets rid of its waste heat. Does it just have a heat exchangers tat can transfer the heat to the cool side of the hull (would probably be enough for that bit of power)?
Anyways, from here you have to see that the heat that just accumulated inside gets to heat up a surface (that has to be colder than the interior, otherwise it can't receive any heat from it) that then can radiate that heat away again.
 
Last edited:

Hlynkacg

Aspiring rocket scientist
Addon Developer
Tutorial Publisher
Donator
Joined
Dec 27, 2010
Messages
1,870
Reaction score
3
Points
0
Location
San Diego
Putting external irradiation and WasteHeat together completely ignores insulation, which will lead to erratic temperature differeces between day and night periods. You should use the irradiance to just heat up the exterior hull, then calculate how much of that is transferred to your interior, where it combines with the waste heat produced inside.

Noted, but I've been able to find no data on or even mention of insualtion for the LEM.

How much insulation does 14 gauge aluminium sheeting provide?

I have no idea what you are trying to calculate here. I assume it is a misinterpretation of the Stefan Boltzman law, as I had to get rid of a similar misinterpretation in the IMS code.

The stefan Boltzmann law states that radiated power in Watt/m^2 = temperature^4 * Stefan's constant. As far as I can see, you try to infer temperature without knowing the actual radiative power, which of course won't work. (I.E. you'd need this equation to calculate RadOutput, for which you'd need the surface temperature, or you'd already need RadOutput given to get the temperature. You cannot calculate both with the same equation!)

I seems to me that it should be possible to solve for temp. or rather a temprature at witch the Hull will reach equilibrium for a given distance.

That is what I was trying to do.

From there I figured I could calculate heatflow to/from the hull to the interior.
 

jedidia

shoemaker without legs
Addon Developer
Joined
Mar 19, 2008
Messages
10,864
Reaction score
2,127
Points
203
Location
between the planets
or rather a temprature at witch the Hull will reach equilibrium for a given distance.

That's just turning the equation around like you did, just without the division by the radiative power:

eTemp = pow(RadInput, 1/4) / stefan's constant

This will give you the hull temperature at the sun facing side, no more, no less.
 

Hlynkacg

Aspiring rocket scientist
Addon Developer
Tutorial Publisher
Donator
Joined
Dec 27, 2010
Messages
1,870
Reaction score
3
Points
0
Location
San Diego
That's just turning the equation around like you did, just without the division by the radiative power:

This will give you the hull temperature at the sun facing side, no more, no less.

Are you sure it's divided by the Stephan constant not multiplied because now I'm geting an equilibrium temprature of 1763844563 degrees kelvin at 1 AU
 

jedidia

shoemaker without legs
Addon Developer
Joined
Mar 19, 2008
Messages
10,864
Reaction score
2,127
Points
203
Location
between the planets
Sorry, had about 5 seconds to finish the post before leaving the house :p

P = T^4 * sc, ergo T = (P / sc)^0.25, not P^0.25 / sc.

As for insulation values, I have no idea. It's very hard to come by such information even for more contemporary spacecraft like the ISS. I assume that the LEM too was insulated by an MLI coating, in which case the important thing to know would not be the material, but the number of layers. It works like this:

If you have just one hull layer, insulated from the rest of the vessel by a vacuum, the layer will transfer the above P/2 per square meter to the inside (as it will radiate on the front and back side). Add an other layer behind it, and that one will radiate P/4 to the front layer, and P/4 to the inside. Add more layers, you get the picture (even if those layers only have a few micrometers of vacuum between them, doesn't make a difference. Vacuum does not conduct, no matter how much of it there is).

Of course, you have the problem that the front layer will absorb the P/4 from the inner layer and radiate half of that back again, so the whole thing isn't a simple division, Wikipedia states this as heat transfer for an MLI with n layers:


6e06724f0f6b120145d85a241861167a.png
 
Last edited:

Hlynkacg

Aspiring rocket scientist
Addon Developer
Tutorial Publisher
Donator
Joined
Dec 27, 2010
Messages
1,870
Reaction score
3
Points
0
Location
San Diego
Sorry, had about 5 seconds to finish the post before leaving the house :p

P = T^4 * sc, ergo T = (P / sc)^0.25, not P^0.25 / sc.

Ahh...

That would do it :LOL:

So like you I've been kind of busy but here's some more detailed answers

The LEM's thermal control system consisted of glycol/h2o circulation tubes in the skin of the Ascent stage that would redistribute heat from the sun-side to shadow. Otherwise it relied on MLI and passive cooling.

The LEM also had a flash-evaporater at the back of the Ascent stage but it was there mainly for contingancies/emergancies rather than normal operations.

For calculating heat capacity I know that the Cabin had a volume of 6.58 m^3 and was ordinarily pressurized to 5 PSI (+/- .5) with a 3/4 mixture of oxygen and other gasses, but haven't been able to find any details beyond that.
 
Last edited:
Top