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

Some interesting new R packages

Some of the packages that appeared in CRAN during June seem interesting. I haven’t tried them yet but have been listed at the R Views blog in Joseph Rickert’s regular column, which I recommend to anyone wanting to keep up to date on new packages.

  • genesysr: Genesys PGR Client. Access data on plant genetic resources from genebanks around the world published on Genesys (<>).
  • rppo: Access the Global Plant Phenology Data Portal. An R interface to the Global Plant Phenology Data Portal, which is accessible online at <>.
  • spectralAnalysis: Pre-Process, Visualize and Analyse Process Analytical Data, by Spectral Data Measurements Made During a Chemical Process. Infrared, near-infrared and Raman spectroscopic data measured during chemical reactions, provide structural fingerprints by which molecules can be identified and quantified.
  • BiocManager: Access the Bioconductor Project Package Repository. A convenient tool to install and update Bioconductor packages.
  • pkgbuild: Find Tools Needed to Build R Packages. Provides functions used to build R packages. Locates compilers needed to build R packages on various platforms and ensures the PATH is configured appropriately so R can use them.
  • ssh: Secure Shell (SSH) Client for R. Connect to a remote server over SSH to transfer files via SCP, setup a secure tunnel, or run a command or script on the host while streaming stdout and stderr directly to the client.