WHAT IS MULTIPLE LINEAR REGRESSION?
==> A brief overview of multiple
linear regression
FORTRAN AND IDL LINEAR REGRESSION ROUTINES (I've written these to
be self contained - i.e., no calls to external routines):
==> Trend analysis Fortran subroutine
"ZTREND.F" (For geophysical trend analysis of global sea suface
temperature, ozone, outgoing longwave radiation, or whatever)
==> Trend analysis IDL procedure
"ZTREND.PRO" (For geophysical trend analysis of global sea suface
temperature, ozone, outgoing longwave radiation, or whatever)
EXAMPLE PROGRAMS FOR THE ABOVE ROUTINES (all IDL programs include
postscript graphics output)
==> Example #1 Fortran program for Fortran
subroutine ZREGR.F. This example program models a cosine function
with several near-periodicity sine and cosine functions.
==> Example #1 IDL program for IDL
procedure ZREGR.PRO. This example program models a cosine function
with several near-periodicity sine and cosine functions.
==> Example #2 IDL program for IDL
procedure ZREGR.PRO. Since 1947 solar radiation has been carefully
monitored in Canada by measuring Earth-surface solar radiation at 10.7
cm wavelength (frequency 2.8 GHz). For several centuries the number
of visible solar sun spots over the disk of the sun have been
monitored in Belgium and other countries and exhibit a strong positive
correlation relationship with the 10.7 cm solar flux. This example
IDL program employs a simple cubic polynomial regression between these
two data sets using monthly means for the time period January 1947
through December 2000. The regression coefficients derived from the
1947-2000 data are then applied to monthly and annual mean sun spot
numbers to estimate 10.7 cm solar flux time series back to the 1700's.
The final result of this example program are two regression modeled
time series of 10.7 cm solar flux: "Monthly mean F10.7 for years
1750-2000" (see graphics GIF image #5 below), and "Annual mean F10.7 for years
1700-2000" (see graphics GIF image #6 below). IMPORTANT NOTE:
This example program will require the ASCII data files "monthssn.dat", "yearssn.dat", and "solar47-00.mon" in order to run.
==> Example #2 Fortran program for
Fortran subroutine ZTREND.F. This example program provides a trend
analysis of a monthly mean time series (January 1979 - December 1992)
of zonally averaged (i.e., averaged around the Earth at a fixed
latitude) total column ozone in the northern middle latitudes. The
regression model isolates long term trends by removing most of the
variabilities in stratospheric ozone caused by the 11-year solar cycle
and quasi-biennial oscillation (QBO). The derived monthly trends show
negative trends of around -5 to -6 percent per decade around the
months of February and March. IMPORTANT NOTE: This example program
will require the ASCII data file "data.txt"
in order to run.
==> Example #3 IDL program for IDL
procedure ZTREND.PRO. This example program provides a trend analysis
of a monthly mean time series (January 1979 - December 1992) of total
column ozone in the northern middle latitudes. The regression model
isolates long term trends by removing most variabilities in
stratospheric ozone caused by the 11-year solar cycle and
quasi-biennial oscillation (QBO). The derived monthly trends show
negative trends of around -5 to -6 percent per decade around the
months of February and March. IMPORTANT NOTE: This example program
will require the ASCII data file "data.txt"
in order to run.
GRAPHICS GIF IMAGES FROM THE ABOVE EXAMPLE IDL PROGRAMS
==> Graphics image from the FIRST
IDL Example program listed above. Image: Original and regression
model time series.
==> Graphics image #1 from the
SECOND IDL Example program listed above. Image: Monthly mean solar
sun spot number and solar 10.7 cm radiation time series for years
1947-2000.
==> Graphics image #2 from the
SECOND IDL Example program listed above. Image: Scatter plot of
monthly solar 10.7 cm radiation versus monthly mean sun spot number
for January 1947 - December 2000 data (plot also shows the derived
cubic polynomial regression fit).
==> Graphics image #3 from the
SECOND IDL Example program listed above. Image: Original 10.7 cm
solar flux time series plotted with derived regression model time
series for months January 1947 - December 2000.
==> Graphics image #4 from the
SECOND IDL Example program listed above. Image: The residual (i.e.,
"error") time series between the original and modeled monthly mean
time series plotted in image #3.
==> Graphics image #5 from the
SECOND IDL Example program listed above. Image: Monthly mean time
series of regression modeled 10.7 cm solar flux for January 1750 -
December 2000. This F10.7 time series was generated by applying the
regression coefficients from the 1947-2000 regression analysis to the
1750-2000 sun spot number monthly mean time series.
==> Graphics image #6 from the
SECOND IDL Example program listed above. Image: Annual mean time
series of regression modeled 10.7 cm solar flux for January 1700 -
December 2000. This F10.7 time series was generated by applying the
regression coefficients from the 1947-2000 regression analysis to the
1700-2000 sun spot number annual mean time series.
==> Graphics image #1 from the
THIRD (trend analysis) IDL Example program. Image: Original,
regression model fit, and residual time series for January 1979 -
December 1992.
==> Graphics image #2 from the
THIRD (trend analysis) IDL Example program. Image: Monthly regression
coefficients (i.e., seasonal cycle, linear trend, QBO, and solar F10.7
monthly varying coefficients). Included in the plot are the +/-
2-sigma uncertainties in the coefficients which were derived using
multivariate statistics.
==> Graphics image #3 from the
THIRD (trend analysis) IDL Example program. Image: Monthly 1979-1992
regression time series fits for the individual terms in the regression
model (i.e., seasonal cycle fit, linear trend fit, QBO fit, and solar
F10.7 fit).