step_earthtide: Lagged Earth tide response

Description Usage Arguments Details Value See Also Examples

View source: R/step_earthtide.R

Description

'step_earthtide' creates a *specification* of a recipe step that are the Earth tide harmonics for a particular location. Requires the *earthtide* package

Usage

1
2
3
4
5
6
7
step_earthtide(recipe, ..., role = "earthtide", trained = FALSE,
  method = "gravity", astro_update = 1L, latitude = 0,
  longitude = 0, elevation = 0, azimuth = 0, gravity = 0,
  earth_radius = 6378136.3, earth_eccen = 0.0066943979514,
  cutoff = 1e-06, wave_groups = NULL, catalog = "ksm04",
  eop = NULL, scale = TRUE, prefix = "earthtide_", default = NA,
  columns = NULL, skip = FALSE, id = rand_id("earthtide"))

Arguments

recipe

A recipe object. The step will be added to the sequence of operations for this recipe.

...

One or more selector functions to choose which variables are affected by the step. See [selections()] for more details. For the 'tidy' method, these are not currently used.

role

Defaults to "earthtide"

trained

A logical to indicate if the quantities for preprocessing have been estimated.

method

One or more of "gravity", "tidal_potential", "tidal_tilt", "vertical_displacement", "horizontal_displacement", "n_s_displacement", "e_w_displacement", "vertical_strain", "areal_strain", "volume_strain", "horizontal_strain", or "ocean_tides", "pole_tide", "lod_tide". The pole tide and lod_tide are used in predict mode even if do_predict is FALSE. More than one value can only be used if do_predict == TRUE.

astro_update

Integer that determines how often to phases are updated in number of samples. Defaults to 1 (every sample), but speed gains are realized with larger values. Typically updating every hour will have speed gains and keep precision (ie 3600 for one second data, 60 for minute data, 1 for hourly data).

latitude

The station latitude (numeric) defaults to 0.

longitude

The station longitude (numeric) defaults to 0.

elevation

The station elevation (m) (numeric) defaults to 0.

azimuth

Earth azimuth (numeric) defaults to 0.

gravity

Gravity at the station (m/s^2) (numeric) 0 to estimate gravity from elevation and latitude.

earth_radius

Radius of earth (m) (numeric) defaults to 6378136.3

earth_eccen

Eccentricity of earth (numeric) defaults to 6.69439795140e-3

cutoff

Cutoff amplitude for constituents (numeric) defaults to 1e-6.

wave_groups

Two column data.frame having start and end of frequency groups (data.frame). This data.frame must have two columns with the names 'start', and 'end' signifying the start and end of the wave groupings. An optional third column 'multiplier' can be provided to scale the particular wave group. If column names do no match, the inferred column positions are start, end, multiplier.

catalog

Use the "hw95s" catalog or "ksm04" catalog (character).

eop

User defined Earth Orientation Parameter (EOP) data.frame with the following columns: datetime, ddt, ut1_utc, lod, x, y, dx, dy

scale

Scale results when do_predict is FALSE

prefix

A prefix for generated column names, default to "earthtide_".

default

Passed to dplyr::lag, determines what fills empty rows left by lagging (defaults to NA).

columns

A character string of variable names that will be populated (eventually) by the terms argument.

skip

A logical. Should the step be skipped when the recipe is baked by bake.recipe()? While all operations are baked when prep.recipe() is run, some operations may not be able to be conducted on new data (e.g. processing the outcome variable(s)). Care should be taken when using skip = TRUE as it may affect the computations for subsequent operations

id

A character string that is unique to this step to identify it.

Details

'step_earthtide' calculates the Earth tide harmonics

Value

An updated version of 'recipe' with the new step added to the sequence of existing steps (if any). For the 'tidy' method, a tibble with columns 'terms' which is the columns that will be affected and 'holiday'.

See Also

[step_earthtide()] [recipe()] [prep.recipe()] [bake.recipe()]

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
library(earthtide)
data(transducer)
data(eterna_wavegroups)

rec <- recipe(wl ~ .,
              data = transducer[1:1000, list(datetime, wl)])

wg <- na.omit(eterna_wavegroups[eterna_wavegroups$time == '1 month',])
with_et <- rec %>%
  step_earthtide(datetime, 
                 latitude = 34, 
                 longitude = -118.5, 
                 wave_groups = wg) %>% 
  prep() %>%
  juice()

jkennel/waterlevel documentation built on Dec. 1, 2019, 6:24 p.m.