Calculate physical indices for a timeseries.

Share:

Description

Functions for simplifying the calculation of physical indices for a timeseries of observation data. Can usually be called directly on data loaded directly using load.ts and load.bathy.

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
  ts.meta.depths(wtr, slope = 0.1, na.rm=FALSE, ...)

  ts.thermo.depth(wtr, Smin = 0.1, na.rm=FALSE, ...)

  ts.schmidt.stability(wtr, bathy, na.rm=FALSE)

  ts.lake.number(wtr, wnd, wnd.height, bathy, seasonal=TRUE)
  
  ts.uStar(wtr, wnd, wnd.height, bathy, seasonal=TRUE)

	ts.internal.energy(wtr, bathy, na.rm=FALSE)

Arguments

wtr

A data frame of water temperatures (in Celsius). Loaded using load.ts. Must have columns datetime, wtr_##.# where ##.# is depth in meters.

slope

The minimum density gradient (kg/m^3/m) that can be called the thermocline

Smin

The minimum density gradient cutoff (kg/m^3/m) defining the metalimion

bathy

A data frame containing hypsometric data. Loaded using load.bathy

wnd

A data frame of wind speeds (in m/s). Loaded using load.ts

wnd.height

Height of the anemometer above the lake surface in meters

seasonal

Boolean indicating if seasonal thermocline should be used in calculation.

na.rm

Boolean indicated if step-by-step removal of NA's should be tried. If false, a timestep with any NA values will return an NA value. If true, best effort will be made to calculate indices despite NA values.

...

Additional parameters passed to underlying base function (e.g., index=TRUE for thermo.depth)

Details

These are wrapper functions that accept a timeseries of data and call the core physical metric functions (like schmidt.stability) on each timestep.

Value

Returns a data frame with the timeseries of calculated derivatives. All include a ‘datetime’ column, but derivative columns differ between functions.

Author(s)

Luke Winslow

See Also

For loading input data load.ts, load.bathy.

For the underlying functions operating at each timestep meta.depths, thermo.depth, schmidt.stability, lake.number, internal.energy.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
	#Get the path for the package example file included
	exampleFilePath <- system.file('extdata', 'Sparkling.daily.wtr', package="rLakeAnalyzer")
	
	#Load
	sparkling.temp = load.ts(exampleFilePath)
	
	#calculate and plot the metalimnion depths
	m.d = ts.meta.depths(sparkling.temp)
	
	plot(m.d$datetime, m.d$top, type='l', ylab='Meta Depths (m)', xlab='Date', col='blue')
	lines(m.d$datetime, m.d$bottom, col='red')
  
  
  #calculate and plot the thermocline depth
	t.d = ts.thermo.depth(sparkling.temp)
	
	plot(t.d$datetime, t.d$thermo.depth, type='l', ylab='Thermocline Depth (m)', xlab='Date')
  

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.