On Colour

  • Chromaticity diagrams represent all colours that can be perceived by the human eye. The Luv colour space (“CIE 1976”, illustrated above at a particular luminosity L) is believed to be approximately “perceptually uniform” which means that the distance between any two colour points is proportional to the colour difference perceived by humans.
  • The colours of the rainbow (spectrum of visible light) correspond to saturated colours on the curved boundary of the uv-diagram. These monochromatic colours (indicated above at 20nm intervals) are not distributed uniformly in uv space. In other words the colour acuity of the human eye depends on wavelength.  There is a strong peak at 484nm (cyan) and another broader peak at 592nm (orange).
  • The colours of the rainbow are shown below, firstly as a linear function of wavelength and secondly in perceptually uniform space. Notice that the cyan, blue-green and orange areas expand, while green, red and violet shrink.
  • Digital photographers are familiar with tristimulus sRGB, Adobe RGB and proPhoto colour triangles. In uv space, these cover 33%, 39% and 77% of perceivable colours respectively. Of course, colours outside the sRGB gamut cannot be displayed correctly on any sRGB device. In particular, strictly speaking none of the colours of the rainbow are displayed correctly in sRGB (or ARGB). 
  • Assuming that it is perceptually uniform, the uv-diagram can be used to compute the colour error for the visible light spectrumARGB reduces the colour error at all wavelengths relative to sRGB, because the sRGB gamut is a subset of the ARGB gamut. However there is still a significant error at the 484nm colour acuity peak. proPhoto has the nice property that the colour error is zero in the vicinity of the cyan and orange colour acuity peaks. Unfortunately no proPhoto displays exist at the present time.
  • There is an excellent discussion of the difficulties in rendering the visible light spectrum here.

R Code

Computations were done using R’s colorscience and rgeos packages.


Posted in Uncategorized | Leave a comment

Trees, volcanoes and climate

..large eruptions in the tropics and high latitudes were primary drivers of interannual-to-decadal temperature variability in the Northern Hemisphere during the past 2,500 years. Overall, cooling was proportional to the magnitude of volcanic forcing and persisted for up to ten years after some of the largest eruptive episodes. Our revised timescale now firmly implicates volcanic eruptions as catalysts in the major century pandemics, famines, and socioeconomic disruptions in Eurasia and Mesoamerica..[1]


  • a large volcanic eruption injects tens of millions of tons of sulphur dioxide into the stratosphere, causing global or hemispheric dimming. The cooling effect may last for several years.
  • the box-and-whisker graph above shows distributions of the annual growth of trees at two subarctic (taiga) forest sites in Quebec and  Russia and at a subalpine forest in France, from 1300 to the present day. These sites are close to the tree line where temperature is likely to have been the limiting factor for growth. The graph suggests that volcanic cooling had a significant impact on forest growth.
  • tree ring chronologies for each site were created by detrending raw data from individual trees and averaging. While this procedure loses information about climatic shifts lasting longer than a few decades, shorter term variability (for example, from volcanoes) is retained.
  • sulfur deposition in Antarctic ice cores was taken as the measure of volcanic aerosols. A simple annual average from 21 carefully dated Antarctic ices cores was taken[1]. To allow for the fact that aerosol effects can last for more than one year, an exponentially weighted moving average with decay constant of 3 years was computed. Years in which this average exceeded a threshold (40ng/g) were deemed “volcanic”. There were 30 such years since 1300, an average of 4 per century. Interestingly there have been no such years since 1821.
  • the list of “volcanic” years according to the above criterion since 1300 are: 1347 1459 1460 1461 1462 1463 1464 1465 1466 1600 1601 1602 1603 1604 1643 1644 1696 1697 1698 1810 1811 1812 1813 1815 1816 1817 1818 1819 1820 1821. Most of these correspond to years following well-known historical eruptions such as Kuwae 1453, Huaynaputina 1600, Tambora 1815 and the mystery 1809 volcano.
  • strangely, the impact of volcanoes appears weaker if Greenland ice core data is used instead of Antarctic data. Furthermore, the relation between tree-ring and ice core data appears much weaker in the pre-1300 data. For example, there is little evidence of the very large 1257 Samalas eruption in the growth indices at the sites selected (below).





Calculation Details

Tree ring indices were calculated from raw research data (.rwl files) archived by NOAA paleoclimate. For example, the Quebec l1 data is available here:


Growth index chronologies were calculated in R using the dendrochronology dplR package. Simple negative exponential detrending was used, which attempts to capture mean biological growth rates over the life of a tree (typically conifer ~ 100 years). For example, the raw Quebec l1 site index chronology (Gennaretti et al ) was calculated as follows:

Antarctic sulfate ice core data described in Sigl et al are available in this spreadsheet.

[1] Timing and climate forcing of volcanic eruptions for the past 2,500 years. Sigl, M., Winstrup, M., McConnell, J. R., Welten, K. C., Plunkett, G., Ludlow, F., … Woodruff, T. E. (2015).  Nature, 523(7562), 543–549. DOI: 10.1038/nature14565

Posted in Climate, ecosystem model, Forests, Uncategorized | Leave a comment