% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/tracer_dxa_is.R
\name{tracer_dxa_is}
\alias{tracer_dxa_is}
\title{Compute tracer/DXA-based insulin sensitivity indices}
\usage{
tracer_dxa_is(
  data,
  col_map = NULL,
  normalize = NULL,
  na_action = c("keep", "omit", "error"),
  na_warn_prop = 0.2,
  verbose = TRUE
)
}
\arguments{
\item{data}{A data.frame or tibble containing raw measurements.}

\item{col_map}{Named list with entries (depending on mode):
Adipose-only required:
- I0: fasting insulin (pmol/L)
- rate_glycerol, rate_palmitate: tracer rates (mumol/min)
- fat_mass, weight, bmi: body composition
- HDL_c: HDL cholesterol (mmol/L)
Full mode additionally requires:
- G0, G30, G120: glucose (mmol/L)
- I30, I120: insulin (pmol/L)
- TG: triglycerides (mmol/L)
- FFA: free fatty acids (mmol/L)}

\item{normalize}{Ignored (kept for backward compatibility).}

\item{na_action}{One of c("keep","omit","error") for NA handling on required inputs. Default "keep".}

\item{na_warn_prop}{Proportion \eqn{[0,1]} to trigger high-missingness warnings on required inputs. Default 0.2.}

\item{verbose}{Logical; if TRUE, prints progress messages and a completion summary.}
}
\value{
\itemize{
\item Adipose-only tibble columns: LIRI_inv, Lipo_inv, ATIRI_inv
\item Full-mode tibble columns: I_AUC, FFA_AUC, tracer_palmitate_SI, tracer_glycerol_SI, LIRI_inv, Lipo_inv, ATIRI_inv
}
}
\description{
Uses stable isotope tracer infusion rates and DXA-measured fat mass
to compute peripheral and adipose insulin sensitivity and related metrics.
}
\details{
Modes:
\itemize{
\item Adipose-only indices when only adipose-related keys are mapped (no OGTT glucose/insulin time series)
\item Full indices otherwise
}

Expected units:
\itemize{
\item Glucose: mmol/L (internally converted to mg/dL when needed)
\item Insulin: pmol/L (internally converted to muU/mL via /6)
\item TG: mmol/L (to mg/dL via *88.57); HDL-c: mmol/L (to mg/dL via *38.67)
\item Tracer rates: mumol/min
\item Fat mass, weight: kg; BMI: kg/m^2
}
}
\note{
\code{tracer_palmitate_SI} and \code{tracer_glycerol_SI} are simple rate/fat_mass
ratios; the Steele (1959) non-steady-state tracer equation is \strong{not}
implemented here. The LIRI formula coefficients (-0.091, 0.4, 0.346,
-0.408, 0.435) are attributed to Gastaldelli et al. but the paper cited
(\code{gastaldelli2004betacell}) covers beta-cell dysfunction, not LIRI
derivation; the primary LIRI source should be verified. In adipose-only
mode (I30 absent) the mean-insulin term uses I0 twice as a fallback.
}
\examples{
df <- data.frame(
  I0 = c(60, 75), rate_glycerol = c(2.1, 2.8), rate_palmitate = c(1.8, 2.3),
  fat_mass = c(18, 24), weight = c(72, 85), BMI = c(24, 29),
  HDL_c = c(1.3, 1.1)
)
col_map <- list(I0="I0", rate_glycerol="rate_glycerol",
                rate_palmitate="rate_palmitate", fat_mass="fat_mass",
                weight="weight", bmi="BMI", HDL_c="HDL_c")
tracer_dxa_is(df, col_map = col_map)

}
\references{
\insertRef{groop1989tracer}{HealthMarkers} (tracer lipolysis methodology; background)
\insertRef{steele1959glucose}{HealthMarkers} (tracer dilution theory; Steele equation not directly implemented — background)
\insertRef{roden1996ffa}{HealthMarkers} (FFA-induced insulin resistance mechanism; background)
\insertRef{gastaldelli2004betacell}{HealthMarkers} (beta-cell dysfunction context; LIRI formula source unverified — background)
\insertRef{karpe2011ffa}{HealthMarkers} (FFA and insulin resistance review; background)
\insertRef{petersen2007muscleinsulin}{HealthMarkers} (muscle insulin resistance and metabolic syndrome; background)
\insertRef{santomauro1999acipimox}{HealthMarkers} (FFA lowering and insulin sensitivity; background)
}
