Package 'rroad'

Title: Road Condition Analysis
Description: Computation of the International Roughness Index (IRI) given a longitudinal road profile. The IRI can be calculated for a single road segment or for a sequence of segments with a fixed length (e. g. 100m). For the latter, an overlap of the segments can be selected. The IRI and likewise the algorithms for its determination are defined in Sayers, Michael W; Gillespie, Thomas D; Queiroz, Cesar A.V. 1986. The International Road Roughness Experiment (IRRE) : establishing correlation and a calibration standard for measurements. World Bank technical paper; no. WTP 45. Washington, DC : The World Bank. (ISBN 0-8213-0589-1) available from <http://documents.worldbank.org/curated/en/326081468740204115>.
Authors: Viliam Simko [cre, aut], Kevin Laubis [aut]
Maintainer: Viliam Simko <[email protected]>
License: MIT + file LICENSE
Version: 0.0.5
Built: 2024-11-10 03:59:22 UTC
Source: https://github.com/vsimko/rroad

Help Index


Computes the IRI for a continuously increasing segment given a road profile

Description

Depending on the sample size a certain buffer has to be attached to the profile for calculation the slope at the end.

Usage

CalculateIRIContinuously(profile, iri_coef)

Arguments

profile

Road profile (as numeric vector in mm) whose IRIs are to be calculated.

iri_coef

Set of coefficients for specific sample size (e. g. IRI_COEF_250).

Value

Calculated IRIs (m/km) for increasing segments (as numeric vector) of the given profile.

Examples

generate_test_profile <- function (x) {
if (x < 1) return(0)
if (x >= 1 && x < 3) return(x - 1)
if (x >= 3 && x < 5) return(5 - x)
if (x >= 5) return(0)
}
x <- seq(.25, 30, by = .25)
test_profile <- data.frame(x = x, profile=sapply(x, generate_test_profile))
test_profile$iri <- CalculateIRIContinuously(
                      test_profile$profile, IRI_COEF_250)
plot(x = test_profile$x, y = test_profile$profile, ylim = c(0, 8),
     xlim = c(0,25), type = "l")
lines(x = test_profile$x, y = test_profile$iri*10)

Computes the IRI for fixed length segments (e.g. 100m segments) given a road profile.

Description

Computes the IRI for fixed length segments (e.g. 100m segments) given a road profile.

Usage

CalculateIRIperSegments(profile, iri_coef, segment.length = 100)

Arguments

profile

Road profile (as numeric vector in mm) whose IRI is to be calculated.

iri_coef

Set of coefficients for specific sample size (e. g. IRI_COEF_100).

segment.length

Distance (in m) for which the IRI is to be calculated. Default is 100 m.

Value

Calculated IRI (m/km) per segment (as numeric) of the given profile.

Examples

profile <- rnorm(10000)
iri <- CalculateIRIperSegments(profile, IRI_COEF_100, 20)
par(mfrow = c(1,2))
plot(profile, type="l",
   xlab="Distance [dm]", ylab="Profile [m]",
   main="Read profile (Laser measurement)")
plot(iri, type="s",
   xlab="Segment", ylab="IRI [m/km]",
   main="International Roughness Index (IRI)\nsample = 10cm, segment = 20m")

Computes the IRI for fixed length overlapping segments (e.g. 100 m segments) with an offset (e.g. 20 m) given a road profile

Description

Computes the IRI for fixed length overlapping segments (e.g. 100 m segments) with an offset (e.g. 20 m) given a road profile

Usage

CalculateIRIperSegmentsOverlapping(profile, iri_coef, segment.length = 100,
  segment.offset = 20)

Arguments

profile

Road profile (as numeric vector in mm) whose IRI is to be calculated.

iri_coef

Set of coefficients for specific sample size (e. g. IRI_COEF_100).

segment.length

Distance (in m) for which the IRI is to be calculated. Default is 100 m.

segment.offset

Offset (in m) for which the segments will not overlap. Default is 20 m.

Value

Calculated IRI (m/km) per segment (as numeric) of the given profile.

Examples

profile <- rnorm(10000)
iri <- CalculateIRIperSegments(profile, IRI_COEF_100, 20)
par(mfrow = c(1,2))
plot(profile, type="l",
   xlab="Distance [dm]", ylab="Profile [m]",
   main="Read profile (Laser measurement)")
plot(iri, type="s",
   xlab="Segment (with 20 m offset)", ylab="IRI [m/km]",
   main="International Roughness Index (IRI)\nsample = 10cm, segment = 20m")

precomputed coeficients 100 mm segments (lazily evaluated promise)

Description

precomputed coeficients 100 mm segments (lazily evaluated promise)


precomputed coeficients 250 mm segments (lazily evaluated promise)

Description

precomputed coeficients 250 mm segments (lazily evaluated promise)