% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/getCylinderRoots.R
\name{getCylinderRoots}
\alias{getCylinderRoots}
\title{Characteristic root of an inhomogeneous truncated shear beam}
\usage{
getCylinderRoots(mo, lo, no = 1, model = "nlm", extrapolate = TRUE, OSF = 0.1)
}
\arguments{
\item{mo}{Double. Inhomogeneity ratio of the shear-modulus profile.
\code{mo = 0} is a homogeneous column. Range 0 to 0.95.}

\item{lo}{Double. Truncation ratio (top-radius / bottom-radius);
\code{lo = 0} is a fully truncated cone. Range 0 to 0.495.}

\item{no}{Integer. Mode number, 1..8. Default 1 (fundamental).}

\item{model}{Character. Interpolation model: \code{"lm"} (linear
GLM), \code{"nlm"} (non-linear GLM with interactions, default),
\code{"dt"} (decision tree), or \code{"rf"} (random forest).}

\item{extrapolate}{Logical. If \code{TRUE} (default), allow
\code{mo}/\code{lo} outside the table support and warn; if
\code{FALSE}, clamp to the table maxima.}

\item{OSF}{Double. Outlier scale factor used by the random-forest
model to shrink the training set around the query point. Default
0.10.}
}
\value{
Double. Characteristic root \code{an} for the requested
mode and parameters.
}
\description{
Returns the eigenvalue \code{an} of mode \code{no} for a Gazetas &
Dakoulas (1985) inhomogeneous truncated shear beam parameterised by
inhomogeneity ratio \code{mo} and truncation ratio \code{lo}. The
value is interpolated from the precomputed \code{CylinderRoots} table
using the requested model (linear glm, non-linear glm, decision
tree, or random forest).
}
\examples{
getCylinderRoots(mo = 0.45, lo = 0.20, no = 1, model = "nlm")
}
