Category Archives: Biogeochemistry

Volunteer team working on UEA Broad

UEA Broad Time-Series Project

A team of undergrad student volunteers will be working on the UEA broad project for the coming weeks. Led by a funded internship through UEA’s springboard programme ( a team of students will be running the project, collating and managing the data, making additional measurements and trying to establish a sustainable model for the project to continue as a student-run volunteer project into the future.

For the past ~2 years regular (weekly) water samples have been taken from the lake by me and a couple of PhD student volunteers and analysed for a wide range of biogeochemical parameters including inorganic and organic nutrients, major ions, pH, conductivity, carbonate chemistry etc by the excellent analytical labs in the School of Environmental Sciences. This dataset is pretty unique in its broad range of chemical parameters measured at such high resolution, but there are some key measurements missing. For instance, we don’t…

View original post 206 more words


Slightly plagiarised! AIBU?

Here’s the introduction to a paper I wrote in 2008  and following it, the introduction to a paper which came out by some other completely different authors this February. I won’t name them here. The two paragraphs are all but identical!

…In the atmosphere and ocean, ammonia and its protonated form, ammonium (NH4+) are ubiquitous. Naturally and anthropogenically produced NHx (NH3 + NH4+) is transported through the atmosphere and generally occurs in decreasing concentration in air with distance from land. It has been suggested that in preindustrial times the oceans were probably a net source of NHx to the continents [Duce et al., 1991], but this is not the case today. … NHx is produced in surface waters by the biological reduction of nitrate (either directly or via the degradation of biologically synthesized organic nitrogenous material). In solution it is partitioned between ammonium and ammonia according to equilibrium thermodynamics: The proportion of NHx that occurs as NH3 (dependent on pH, temperature and ionic strength of the medium) is available for emission to the atmosphere; the phase partitioning being dependent on the Henry’s Law coefficient. Ammonia is also emitted to the atmosphere by plants and animals in terrestrial environments (both directly and through breakdown of organic nitrogen) by soil microorganisms and by various industrial and agricultural processes, including the direct volatilization of solid ammonium nitrate salts in fertilizer. There is also evidence of a volcanic source of NHx to the atmosphere [Uematsu et al., 2004], and of substantial ammonia emissions from seabird and seal colonies [Blackall et al., 2007Theobald et al., 2006].

In the atmosphere and ocean, NH3 and its ionized form NH+4 are ubiquitous. Naturally and anthropogenically produced NHx (NH3 + NH+4 ) are transported through the atmosphere and generally their concentrations in air decrease as the distance from land increases. It has been suggested that in preindustrial times, the oceans were probably a net source of NHx of the continents (Duce et al., 1991), but this is not the case today (Sutton et al., 1995, 2000). NHx is produced in surface water by the biological reduction of nitrate (either directly or via the degradation of biologically synthesized organic nitrogenous material/agricultural run-off). In a solution, NHx is partitioned between NH+4 and NH3 according to equilibrium thermodynamics: the proportion of NHx that occurs as NH3 (depending on pH, temperature and ionic strength of the medium) is available for emission to the atmosphere (Aneja et al., 2001). NH3 is also emitted to the atmosphere by plants, animals and its environments, by soil micro-organisms and by various industrial and agricultural processes, including the direct volatilization of solid NH4NO3 salts and fertilizers (Sutton et al., 2000; Li et al., 2006; Sharma et al., 2010a, b). There is also evidence of volcanic source of NHx to the atmosphere (Uematsu et al., 2004) and of substantial NH3 emissions from seabird colonies (Blackall et al., 2007; Theobald et al., 2006).

I have mixed feelings about this. It’s no big deal – nobody’s stolen my data (they could, cos it’s mostly online…), or passed off my  paradigm-changing hypothesis as their own (I don’t have one of those, in case you’re wondering!). However, putting together a concise but informative introductory paragraph for that paper would have taken me a good few hours at the time and actually represents the end of a long process of reading and synthesis and understanding of the background literature over the course of my PhD some years back. This was my killer summary of environmental ammonia. I remember being rather pleased with it at the time. Someone else has come along and spent 15 minutes changing the odd word here or there and adding in one or two more up to date references (mine was maybe a bit sparse reference-wise) and there they have it.

But why shouldn’t they? Better that than they waste their time re-doing a job already done. Instead, they augment it with some extra references to bring it a bit more up to date and make it more information-rich. That’s exactly what hypothify/synthify is all about and I’m all for reducing the amount of repeated work (i.e. inefficiency) in research. And imitation is the ultimate form of flattery, of course.

I suppose the reason it feels rough is the complete lack of attribution for the work. They look clever through my hard work. When the name of the game in science is essentially looking clever, then they’ve got one up on me in a competitive environment. Just dropping a reference to my original paper into that paragraph would go along way to making me feel better about it. That’s all they could really do under the current publishing system.  Don’t get me wrong, I’m not really cross about this, and it’s not going to spoil my day (it’s already been spoiled by grant proposal writing!), I’m just saying. Attribution please!

For future reference, I hereby release the above paragraphs under a creative commons CC-by license, so anybody can use them,  so long as they attribute them properly!

Rock-eating moss

In a paper published today we demonstrate how the first land plants (which were something like modern-day moss) could have had a significant effect on global temperature and atmospheric carbon dioxide. Moss was grown on a series of different rock types (Indonesian Basalt the pics below) and we found that in the process of growing the mosses weathered the rocks i.e. they released elements locked up in the rocks. Some went into the moss and some into the water which was in the microcosms the experiments were done in. As well as weathering of elements which are essential for plant growth in substantial amounts (Iron and Phosphorous), other elements which play an important role in the balance of carbon dioxide between the ocean and atmosphere were released. These alkaline earth metals change the balance of carbon chemistry in seawater and lead to uptake of carbon dioxide from the atmosphere. At the time when the first moss-like plants colonised the land surface, about 450 million years ago, there was a series of deep glaciations where global temperatures dropped substantially. It was previously though that the small rooted mosses couldn’t perform significant rock weathering and thus couldn’t be responsible for these glaciations through driving ocean uptake of carbon dioxide. This paper suggests that it may indeed have been the cause.

Photos courtesy of Mike Crouch / Andrew Davis / John Innes Centre

Media coverage:–earth-s-first-plants-may-have-triggered-series-of-ice-ages-study-finds

Also, we made slashdot 🙂

Oh, and this Continuing their CO2 fixation scientists now claim plants cause ice ages (

Research frontiers in the analysis of coupled biogeochemical cycles

Adrien C Finzi, Jonathan J Cole, Scott C Doney, Elisabeth A Holland, and Robert B Jackson. 2011. Research frontiers in the analysis of coupled biogeochemical cycles. Frontiers in Ecology and the Environment 9: 74–80.

This is an interesting paper discussing research frontiers in global biogeochemistry. The authors identify our understanding of the coupling between the major (C,P,N,Si) elemental cycles with trace element cycles as being particularly lacking. For example, the coupling between the nitrogen and carbon cycles and the iron (Fe) and molybdenum (Mo) cycles. Fe and Mo are required for N-fixing apparatus in photosynthetic organisms, which allow plants to grow and thus take up carbon by taking nitrogen from the atmosphere when it is otherwise unavailable. This sets up a potentially important coupling between e.g. weathering of iron (Fe) and Molybdenum (Mo) on land and carbon uptake in the ocean.

They also identify the cross-boundary linkages between ecosystems as key understudied areas, for example streams, connecting the terrestrial biosphere with rivers and the ocean, or wildfires connecting terrestrial biomass and soils with the atmosphere and ocean and rebalancing soil nutrient stoichiometry.

In the context of understanding what mankind’s activity might do to the climate and ecosystem functioning of our planet we need predictive capacity and therefore better regional and global models of the Earth-system (so-called ‘coupled’ models which include physics, chemistry and biology all interacting simultaneously). As the authors recognise, to better constrain these models we need better understanding of the key underlying processes (often even to identify which processes are key!) and high qualtiy, high resolution time-series data with which to validate the biogeochemical interactions in the models. This is fundamental to being able to predict what might happen in the future – as multiple interacting processes can lead to highly non-linear responses to perturbations in the systems. 

“Feedback” is a word that appears only once in the paper, which is maybe a little surprising as this is ultimately what the understanding of the planet’s complex biogeochemistry is all about – how the whole system, or important parts of it, respond to the major changes we are visiting upon it? Will the Earth ‘bounce back’ from the huge temperature, carbon and nitrogen perturbations of the current period (negative feedback), or will it fly off to a new state that is much less hospitable to humans and the other inhabitants of this planet (positive feedback)? The Earth-system is made up of many interacting feedback loops, any of which may involve a number of different elemental cycles, physical and chemical processes, ecosystems and geographical regions in the ocean, atmosphere and on land. We can’t hope to identify all these ‘by hand’ so our best option is to represent all processes in coupled Earth-system models and  hope that the right balance of feedbacks falls out of the models at the end! Without the major ones being identified, we can’t hope to predict what effect our planet-wide changes are going to have, or what the side-effects of possible action (geoengineering) to ameliorate our negative effects could be.

How to calculate air-sea gas fluxes using R

A geeky post. If you haven’t a clue what I’m talking about, then apologies. If you’d like to know more, let me know and I’ll start from scratch some time.

A few months back I published a paper in the Open Access journal, Ocean Science, which described how to calculate the air-sea transfer velocity for any gas. It’s long and pretty tedious but brings together a whole bunch of stuff to enable other people to use the scheme to get the numbers they need without having to spend months trawling the literature for solubility data, diffusion coefficients, the equation of state for seawater etc. So all in all I hope it’s a useful contribution to science.

Along with the paper was an implementation of the scheme in R which is free for anybody to use. Since then I’ve put a copy up on github under an open source license. AS well as the core scheme from the paper there is a set of R functions which allow the reproduction of all the figures in the paper. I will also add extensions to the scheme into the github repository as I deem them useable by the community and/or publish them in future papers. Coming soon: chemical enhancement in the liquid and gas phases. Very exciting.

A few people have recently taken an interest in using the program to calculate air-sea trace gas fluxes for their gases of interest so I thought it would be useful to document how you might do that, starting with a spreadsheet containing temperature, salinity, wind speed and concentrations in both phases of the gas in question on each row, when one row equates to one flux calculation.

Here’s an example of some input data. It’s not very realistic a) because all the data is generated by picking random numbers from a gaussian distribution – most environmental data is skewed, especially concentration data and b) I don’t have time to check what a realistic concentration range for CH3I in atmosphere or ocean is. If someone would like to populate that spreadsheet with more realistic data in the future that’d be grand.

Anyway, step one is to generate a comma spaced value (.csv) file from your spreadsheet. In the case of the above you can get a csv version here, or in the case of your own data in (god forbid) Excel or some other spreadsheet, there’ll be a save as csv option.

So you’ve got your CSV file. Here I’ll assume that you have a working install of R pointed at your working directory which already contains the files from the github repository which make up the transfer velocity scheme. To test if the latter is the case, type (at the R console)


If nothing happens (i.e. R doesn’t complain that it has no idea what you’re talking about) then you’re good to go. Put your CSV file in the same directory (or somewhere else of your choosing if your happy to manipulate paths etc).

Now, to load that file in:


read.csv assumes that the first row is headings for each of the columns so this has worked out of the box. If your data is formatted differently you might need to use read.table, or specify header=FALSE in the command. For more info type


Anyway, the data is in and all is good at my end so we’ll press on.

In an R data frame you can get to each column of data in a number of ways. e.g.

> my_data[,3]
[1] 35.76926 35.36087 35.61887 35.35569 35.78936 35.47348 35.67157 35.45667
[9] 35.38169 35.77596 35.13184 35.57471 35.74122 35.60888 35.26568 34.96617
[17] 35.24797 35.19071 35.32195 35.34880
> my_data[,"Salinity"]
[1] 35.76926 35.36087 35.61887 35.35569 35.78936 35.47348 35.67157 35.45667
[9] 35.38169 35.77596 35.13184 35.57471 35.74122 35.60888 35.26568 34.96617
[17] 35.24797 35.19071 35.32195 35.34880

for convenience, let’s define some variables which are easy to remember:

> sal<-my_data[,"Salinity"]
> temp<-my_data[,"Temperature"]
> wind<-my_data[,"Windspeed"]
> sw_concn<-my_data[,6]
> atm_concn<-my_data[,5]

Simples. Next we need to use the K_calcs… program to calculate the transfer velocity for each compound.

make sure it’s loaded:


The function Kw calculates total transfer velocity for a gas with respect to a water phase concentration gradient.

You can see what a function does in R by calling it with no parentheses:

> Kw
#calculate total transfer velocity (Kw) after Liss and Slater

You can see from the above that the transfer velocity scheme is a series of nested function with the key parameters [compound, temperature, wind speed etc] all passed around between them. you can trace these through by looking at each function in turn in the same way as we did above for Kw. In fact you can call any function directly so if, e.g. you need the diffusivity of ammonia in air at 30 degrees you can call:

> D_air("NH3",30)
[1] 0.2111959

(diffusivities are in cm2/s)

Back to Kw. To calculate a single Kw value (e.g. for CH3I at 20 celcius, 5m/s windspeed and S=35) you’d do this:

> Kw("CH3I",20,5,35)
[1] 1.550430e-05

Which is great, but we want to calulate Kw for all the rows in our data at once. This is where R is particularly powerful. We can define a new column in my_data and use values in the other columns to calculate the value for each row of this new column, all at once!:

> my_data[,"Kw"]<-Kw("CH3I",temp,wind,sal)
[1] 7.708174e-06 5.370894e-05 8.074108e-05 2.681450e-05 1.489535e-05
[6] 3.510663e-05 3.820262e-05 5.879458e-05 4.813323e-05 1.059725e-04
[11] 4.354995e-05 2.856864e-05 1.078323e-05 1.036024e-05 4.048401e-06
[16] 3.977783e-05 6.687053e-05 2.779482e-05 3.426026e-05 3.584965e-07

Sweet huh?

So next let’s add a column which is the dimensionless henry’s law constant for CH3I at the temperature in each row:

> my_data[,"H"]<-KH("CH3I",temp,sal)
> my_data[,"H"]
[1] 0.1660876 0.1644287 0.1858428 0.1836445 0.1487224 0.1621694 0.1746626
[8] 0.2077991 0.1671034 0.1882404 0.2030620 0.1269990 0.1507726 0.1790700
[15] 0.1742638 0.1406145 0.1847995 0.1601485 0.2361064 0.1669096

Finally we can add a column which is the flux calculation, according to the flux equation:

F = Kw(Ca/H – Cw)

where F is the flux, Ca is the air concentration, Cw the water concentration, H the Henry’s law constant. [make sure all your units are correct -easy to go wrong here. The way I’m laying it out here is one correct way, but there are many others. Feel free to get in touch if you get stuck…]

In the case below I’ve multiplied by minus one to make a positive value of F represent a flux from sea to air – the way I like it ;-):

> my_data[,"F"]<-(my_data[,"Kw"]*((atm_concn/my_data[,"H"])-sw_concn))*(-1)

[1] 3.415365e-05 2.715205e-04 2.514285e-04 2.717888e-04 7.330746e-05
[6] 4.749550e-05 3.759730e-06 5.432819e-04 2.955133e-04 8.373667e-04
[11] 1.502132e-04 9.293719e-05 7.623237e-05 5.816068e-05 2.731569e-05
[16] 2.445745e-04 2.239382e-04 -1.252216e-05 3.216200e-04 6.304133e-07

* disclaimer: this has been done in a rush in the half hour before going away on holiday for a week – please check carefully before you rely on this. I’ll check it in detail when I get back.

You can then tell R to write you a nice CSV of all the data:


Download it here

Sorry about the ridiculous number of ‘significant’ figures throughout. R can be tamed in that respect but I haven’t had time. Example here.

Bob’s your uncle as they say.

Arctic research proposal

The last few weeks have been increasingly dominated by writing a research proposal to the NERC Arctic funding programme. I’ll write down just how insane the process of applying for money to do research is some time soon, but right now just want to share what we’re planning to do, because I’m actually quite excited about it. Here are the summary and objectives sections of the online form that has to be filled in (just a tiny part of the whole proposal, but a good overview).

The Arctic is a key focus of Environmental research today, because it plays an important but not well understood role in the Earth’s climate system, and because it is subject to double the average warming to date. This project will improve our understanding of the role of the Arctic seas in releasing or taking up various gases which are important in the functioning of Earth’s atmosphere and climate system and the functioning of the underlying Arctic ocean ecosystem and how this may change in the future. This will be achieved by grouping the Arctic Ocean region (AOR) into separate areas based on their physical, chemical and biological (‘biogeochemical’) properties, i.e. where a particular area has specific characteristics which are different to adjacent areas. This process is called bioregionalisation.

This will allow us to ‘scale-up’ the relatively limited data on gas concentrations and other important biogeochemical measurements to the whole AOR. This will help us to better estimate the emission or uptake of gases which play an important role in climate (e.g. methane, nitrous oxide) or atmospheric chemistry (e.g. ammonia, dimethylsulfide). We will use satellite data on the AOR for the last decade to define these biogeochemical regions up to the present-day, and output from the latest generation of climate models to predict their changes into the future. This is an important approach because it bridges the gap between full-coverage, high resolution datasets such as satellite or model data and data collected by scientists in the field, which is relatively limited in space and time. By generalising from the high detail datasets, we can better extrapolate from the very valuable but low detail measurements, increasing their value to understanding global and regional processes.

We will use our institution’s high performance computing facilities to work through the large satellite and model datasets, using a set of rigorous statistical criteria in a computer program to determine the bioregionalisation i.e. there will be no subjective human eye defining the boundaries between the regions. This is important because it is very easy to see shapes and boundaries which don’t really exist (like picking out the face of “the man in the moon”), and to miss ones which do, particularly when we will be using multiple overlaid sets of data. Key datasets for defining the bioregions will be the amount of chlorophyll (a measure of the algal productivity of the ocean) and sea-surface temperature (SST, related to the source of the water and thus the nutrients provided for algal growth). The computer programs will output data ‘maps’ of the divisions between different bioregions as they change over time from the turn of the century to 2100. These ‘data products’ and the software we will write to produce them will be publicly available on the web for others to use. This will especially benefit scientists working in the Arctic or funded by the NERC Arctic programme.

In collaboration with international colleagues we will compile datasets of measured gas concentrations in the Arctic ocean and atmosphere. Using the time and place they were collected we will be able to allocate the measurements to a particular bioregion. We will then use this information, along with the cycles of chlorophyll in each bioregion, to determine the seasonal cycles of gas concentrations in the present-day and into the future, allowing us to calculate and predict fluxes of these gases with greater certainty previously possible. This data will feed into better estimates of future climate by providing improved input data to the new generation of Earth-system models which are beginning to have sophisticated atmospheric chemistry models nested inside them to better predict cloud formation, methane oxidation and other climate-relevant processes. All of the data we produce on gas fluxes and the models and data we use to produce it will be shared openly as a public resource.

The overarching aims of this work are:

1) To improve present-day and future estimates of the net ocean-atmosphere flux of a core list of biogeochemically important trace gases (see below) over the Arctic Ocean region (AOR), by applying objective “bioregionalisation” algorithms to delineate biogeochemically-similar regions of the Arctic Ocean from satellite data and Earth-system model (ESM) output;

2) To provide a novel framework (of data products, input files and tuned statistical algorithms within an integrated set of software tools) to allow the community to undertake their own bioregionalisation and contextualisation of biogeochemial parameters (including, but not limited to, trace gas fluxes) across the AOR (or elsewhere in the global ocean, given that new input data files will need to be generated);

3) To support other NERC Arctic Programme and other Arctic-focussed studies in quantifying present and future Arctic-wide marine emissions of their gases of interest (not limited to the core gases listed below).

This will be achieved by fulfilling the following specific objectives, which are not listed in the science case, but are intended to provide and overview of the work propsed in detail within the science case document:

1) Calibration and evaluation of two proven algorithms for delineation of biogeochemical sub-provinces (BSPs) for use in the AOR, working at finer spatial scale than more traditional methods (e.g. ‘Longhurst’ biogeochemical provinces), hence ‘sub-provinces’.

2) Application of these calibrated algorithms to ten years (2002-2012) of satellite chlorophyll-a concentrations, other satellite datasets (SST, water-column penetrating LIDAR) and ancillary data to provide week-averaged, month-averaged and decadal (climatological monthly) data products delineating the BSPs, the strength of the boundaries between them, and the characteristic values of their key biogeochemical variables (SST, salinity, chlorophyll-a) for each week/ month / climatological month.

3) Re-calibration of the algorithms to best reproduce the data in objective 2) using input data from the new generation Hadley Centre ESM (HADGEM2-ES), using baseline HADGEM2 runs for 2002-2012 from the latest phase of the Coupled Model Intercomparison Project (CMIP5) and production of data products to match those produced from the satellite data. Other models ESMs and high resolution ocean and coupled models will be used for comparison.

4) Application of the algorithms to HADEM2-ES runs for the 4 main emission scenarios run in CMIP5 for 2010-2100 to produce data products of month-averaged and decadal monthly climatologies of BSPs and related data (as in objective 2) for the AOR.

5) Using SST, salinity and windspeed data extracted from satellite and model outputs used above, calculate high-resolution gridded fields of gas transfer velocities and assoc iated uncertainties for a suite trace gases of biogeochemical importance (gases and their properties already compiled by R-CoI Johnson in recent publication).

6) In collaboration with project collaborators, other NERC-Arctic projects and the wider scientific community, compile datasets of marine and atmospheric concentrations of the core trace gases which are the focus of this project (CH4, N2O, DMS, Halocarbons, NH3) and use the satellite-derived BSPs to extrapolate observations to produce seasonal AOR concentration fields and calculate spatially-resolved fluxes for the period 2002-2012.

7) Using predicted BSP fields, project AOR trace gas fluxes to 2100 along the 4 emission scenarios.

8 ) Disseminate findings through academic publications and public engagement and the framework through open online access to data and software.