This document derives a simple energy balance model with two layers (troposphere and stratosphere) and the ground. The aim is to derive an equation for stratosphere temperature to answer how Ts changes with increasing CO2, i.e. Does the stratosphere temperature increase, decrease or remains constant with CO2 increase.
Below is a pdf of derivation of the EBM. Later we use R to substitute approximate realistic values into our equation. We then vary the stratosphere longwave emissivity (e_lw) and troposphere longwave emissivity (e_T) to assess how Ts responds to them.
Below is my attempt at the derivation of stratosphere temperature with a troposphere in the model
Let us input some realistic approximate values into the above model.
# Define constants
# solar constant
S0 = 1370
# short wave emissivity
# based on this article https://sciencing.com/percent-uv-ozone-absorb-20509.html
# and assuming the sun emits uniformly across the spectrum (gross approximation)
# e_sw = 50% of 400 to 320 nm + 90% of 320 to 280 nm and 99% of 280 to 100nm
e_sw = 0.5*80/300 + 0.9*40/300 + 0.99*180/300
# albedo
a = 0.3
# Stefan-Boltzmann constant
s = 5.7e-8
# Now we define constants K and L
K = e_sw*S0/4 + e_sw*a*(1-e_sw)*S0/4
L = (1-a)*(1-e_sw)*S0/4
# Now we define the equation for Ts
Ts = function(e_lw = 0.03, e_T = 0.97) {
return( (( K/2/e_lw/s + L/2/s + e_T*L/2/s/(1-e_T) )/( 1 - e_lw/2 - e_T*e_lw*(2-e_T)/2/(1-e_T) ))^(1/4) )
}
Let’s plot this model to see how Ts responds to increasing e_lw and e_T.
# Let us increase e_lw and e_T by 0.02% for 50 steps (1% increase all together)
e_lw.timeseries <- sapply(0:50, function(n) {0.03 + 0.03*0.02*0.01*n})
e_T.timeseries <- sapply(0:50, function(n) {0.97 + 0.97*0.02*0.01*n})
Ts.timeseries <- sapply(0:50, FUN = function(n) {Ts(e_lw = e_lw.timeseries[n], e_T = e_T.timeseries[n])})
It looks like our simple model predicts an increase in stratospheric temperatures with an increase in CO2. However, maybe our guesses for emissivity put us on a section of Ts profile where Ts increases with CO2. Perhaps there are other values of emissivity where an increase in both emissivities results in a decrease in Ts. To find out we will have to create a 3D plot exploring the entire parameter space of e_lw and e_T.
Looks like there are many sections where increasing e_T and e_lw results in a decrease in Ts. So even with a troposphere stratosphere temperatures can decrease with increasing CO2 according to our two layer simple model.
Tune e_lw and e_T based on the previous 3D plot to find a region where Ts decreases with increasing e_lw and e_T.
# Let us increase e_lw by 0.01 (from 0.03 to 0.04) and e_T by 0.03 (from 0.91 to 0.94) in 50 steps
# this is still about the same percentage change in e_lw and e_T
e_lw.timeseries <-seq(0.03, 0.04, length.out = 50) #sapply(0:350, function(n) {0.03 + 0.03*0.02*0.01*n})
e_T.timeseries <- seq(0.91, 0.94, length.out = 50) # sapply(0:350, function(n) {0.90 + 0.90*0.02*0.01*n})
Ts.timeseries <- unlist(sapply(0:50, FUN = function(n) {Ts(e_lw = e_lw.timeseries[n], e_T = e_T.timeseries[n])}))
Now we see a decrease in stratospheric temperature! So we conclude that a decrease in Stratosphere temperature with increasing CO2 (which is what we see in observational records) is a possible scenario according to our simple model.
Note that the absolute temperatures clearly do not look right. They should be closer to around 270K. It is possible I have made a mistake in my derivation. If you spot it please send me an email so I can correct it.