Using the Quick TUV Calculator

As the latest version (0.4.15) of our package ‘photobiologyInOut’ supports the automatic import of the files returned by the Quick TUV Calculator we show here how to produce such files, and link to an example of their import and plotting in R.

The TUV model is a well known model of atmospheric chemistry that also simulates the solar spectrum within the atmosphere or at ground level using a radiation transfer approach. The model is written in FORTRAN and available for local use. When one needs just to compute a few spectra with no special conditions, it is possible to use the on-line interface provided by the National Centre of Atmospheric Research (NCAR) under the name of Quick TUV Calculator.

This interface is easy to use once one understands the different options and required input data. (This video, authored by Pedro J. Aphalo is published with the express permission of Sasha Madronich, creator of the TUV model.)

An R notebook demonstrating how the solar spectrum is affected by variation in the atmospheric composition, solar elevation and observer elevation is available for reading and/or download. The R code used in embedded in this HTML file. Click on the image below to access the article. (The article is still a draft. Corrections and suggestions for improving it are most welcome.)

toc image

photobiologyInOut 0.4.15

The main changes from version 0.4.14 the previous CRAN release, are:

  • Add read_yoctopuce_csv() to read CSV files from YoctoPuce modules.
  • Add read_qtuv_txt() to read spectral data output files from the on-line Quick TUV calculator.
  • Add read_tuv_usrout2mspct() wrapper of read_tuv_usrout() and subset2mspct() useful to import multiple TUV simulations into a collection of spectra.
  • Revise read_tuv_usrout() with new formal parameter ozone.du and fix a bug in the setting of "where.measured" attribute.
  • Revise all read functions so that they store the header of the imported file as a vector of character strings to attribute "file.header".

The main changes from version 0.4.13 an earlier CRAN release, are:

  • Implement class coercion methods (“as.” methods) to complement earlier functions, tracking changes in ‘photobiology’ 0.9.20.
  • Move coercion methods from and to matrix objects to ‘photobiology’ 0.9.20.
  • Update to track API changes in ‘colorSpec’ 0.7-3.
  • Translate vignette to Rmarkdown.

Documentation web site at

NOTE: The updated package is on its ways to CRAN.

Please raise issues concerning bugs or enhancements to this package through Bitbucket at