1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
//! Data structures and utilities for pharmacometric modeling
//!
//! This module provides types for representing pharmacokinetic/pharmacodynamic data,
//! including subjects, dosing events, observations, and covariates. It also includes
//! utilities for reading and manipulating this data.
//!
//! # Key Components
//!
//! - **Events**: Dosing events (bolus, infusion) and observations
//! - **Covariates**: Time-varying subject characteristics
//! - **Subjects**: Collections of events and covariates for a single individual
//! - **Data**: Collections of subjects, representing a complete dataset
//! - **Error Models**: Two types for different algorithm families:
//! - [`ErrorModel`]: Observation-based (assay error) for non-parametric algorithms
//! - [`ResidualErrorModel`]: Prediction-based (residual error) for parametric algorithms
//!
//! # Examples
//!
//! Creating a subject with the builder pattern:
//!
//! ```rust
//! use pharmsol::*;
//!
//! let subject = Subject::builder("patient_001")
//! .bolus(0.0, 100.0, 0)
//! .observation(1.0, 10.5, 0)
//! .observation(2.0, 8.2, 0)
//! .covariate("weight", 0.0, 70.0)
//! .build();
//! ```
pub use *;
pub use *;
pub use *;
pub use *;
pub use ;