Skip to contents

Computes sqrt(x) with protection against negative inputs. Negative values are clamped to min_val before taking the root.

Usage

safe_sqrt(x, min_val = 0, warn = TRUE, param_name = "value")

Arguments

x

Numeric value or vector

min_val

Minimum value before sqrt, default 0

warn

Logical; issue a warning when clamping occurs, default TRUE

param_name

Name used in warning messages

Value

sqrt(x), or sqrt(min_val) for negative values

Examples

safe_sqrt(4)
#> [1] 2
suppressWarnings(safe_sqrt(-1))
#> [1] 0