Trait ObservationMetrics
pub trait ObservationMetrics {
Show 24 methods
// Required methods
fn auc_blq(
&self,
outeq: usize,
method: &AUCMethod,
blq_rule: &BLQRule,
) -> Vec<Result<f64, MetricsError>>;
fn auc_interval_blq(
&self,
outeq: usize,
start: f64,
end: f64,
method: &AUCMethod,
blq_rule: &BLQRule,
) -> Vec<Result<f64, MetricsError>>;
fn cmax_blq(
&self,
outeq: usize,
blq_rule: &BLQRule,
) -> Vec<Result<f64, MetricsError>>;
fn tmax_blq(
&self,
outeq: usize,
blq_rule: &BLQRule,
) -> Vec<Result<f64, MetricsError>>;
fn clast_blq(
&self,
outeq: usize,
blq_rule: &BLQRule,
) -> Vec<Result<f64, MetricsError>>;
fn tlast_blq(
&self,
outeq: usize,
blq_rule: &BLQRule,
) -> Vec<Result<f64, MetricsError>>;
fn aumc_blq(
&self,
outeq: usize,
method: &AUCMethod,
blq_rule: &BLQRule,
) -> Vec<Result<f64, MetricsError>>;
// Provided methods
fn auc(
&self,
outeq: usize,
method: &AUCMethod,
) -> Vec<Result<f64, MetricsError>> { ... }
fn auc_interval(
&self,
outeq: usize,
start: f64,
end: f64,
method: &AUCMethod,
) -> Vec<Result<f64, MetricsError>> { ... }
fn cmax(&self, outeq: usize) -> Vec<Result<f64, MetricsError>> { ... }
fn tmax(&self, outeq: usize) -> Vec<Result<f64, MetricsError>> { ... }
fn clast(&self, outeq: usize) -> Vec<Result<f64, MetricsError>> { ... }
fn tlast(&self, outeq: usize) -> Vec<Result<f64, MetricsError>> { ... }
fn aumc(
&self,
outeq: usize,
method: &AUCMethod,
) -> Vec<Result<f64, MetricsError>> { ... }
fn auc_first(
&self,
outeq: usize,
method: &AUCMethod,
) -> Result<f64, MetricsError> { ... }
fn cmax_first(&self, outeq: usize) -> Result<f64, MetricsError> { ... }
fn tmax_first(&self, outeq: usize) -> Result<f64, MetricsError> { ... }
fn clast_first(&self, outeq: usize) -> Result<f64, MetricsError> { ... }
fn tlast_first(&self, outeq: usize) -> Result<f64, MetricsError> { ... }
fn aumc_first(
&self,
outeq: usize,
method: &AUCMethod,
) -> Result<f64, MetricsError> { ... }
fn auc_interval_first(
&self,
outeq: usize,
start: f64,
end: f64,
method: &AUCMethod,
) -> Result<f64, MetricsError> { ... }
fn auc_blq_first(
&self,
outeq: usize,
method: &AUCMethod,
blq_rule: &BLQRule,
) -> Result<f64, MetricsError> { ... }
fn cmax_blq_first(
&self,
outeq: usize,
blq_rule: &BLQRule,
) -> Result<f64, MetricsError> { ... }
fn auc_interval_blq_first(
&self,
outeq: usize,
start: f64,
end: f64,
method: &AUCMethod,
blq_rule: &BLQRule,
) -> Result<f64, MetricsError> { ... }
}Expand description
Observation-level pharmacokinetic metrics (AUC, Cmax, Tmax, etc.)
Methods without _blq default to BLQRule::Exclude.
The _first variants return a single result for the first occasion.
use pharmsol::prelude::*;
let auc = subject.auc(0, &AUCMethod::Linear);
let cmax_val = subject.cmax_first(0).unwrap();Required Methods§
fn auc_blq(
&self,
outeq: usize,
method: &AUCMethod,
blq_rule: &BLQRule,
) -> Vec<Result<f64, MetricsError>>
fn auc_blq( &self, outeq: usize, method: &AUCMethod, blq_rule: &BLQRule, ) -> Vec<Result<f64, MetricsError>>
Calculate AUC from time 0 to Tlast with explicit BLQ handling
fn auc_interval_blq(
&self,
outeq: usize,
start: f64,
end: f64,
method: &AUCMethod,
blq_rule: &BLQRule,
) -> Vec<Result<f64, MetricsError>>
fn auc_interval_blq( &self, outeq: usize, start: f64, end: f64, method: &AUCMethod, blq_rule: &BLQRule, ) -> Vec<Result<f64, MetricsError>>
Calculate partial AUC over a time interval with explicit BLQ handling
fn cmax_blq(
&self,
outeq: usize,
blq_rule: &BLQRule,
) -> Vec<Result<f64, MetricsError>>
fn cmax_blq( &self, outeq: usize, blq_rule: &BLQRule, ) -> Vec<Result<f64, MetricsError>>
Get Cmax with explicit BLQ handling
fn tmax_blq(
&self,
outeq: usize,
blq_rule: &BLQRule,
) -> Vec<Result<f64, MetricsError>>
fn tmax_blq( &self, outeq: usize, blq_rule: &BLQRule, ) -> Vec<Result<f64, MetricsError>>
Get Tmax with explicit BLQ handling
fn clast_blq(
&self,
outeq: usize,
blq_rule: &BLQRule,
) -> Vec<Result<f64, MetricsError>>
fn clast_blq( &self, outeq: usize, blq_rule: &BLQRule, ) -> Vec<Result<f64, MetricsError>>
Get Clast with explicit BLQ handling
Provided Methods§
fn auc(
&self,
outeq: usize,
method: &AUCMethod,
) -> Vec<Result<f64, MetricsError>>
fn auc( &self, outeq: usize, method: &AUCMethod, ) -> Vec<Result<f64, MetricsError>>
Calculate AUC from time 0 to Tlast
fn auc_interval(
&self,
outeq: usize,
start: f64,
end: f64,
method: &AUCMethod,
) -> Vec<Result<f64, MetricsError>>
fn auc_interval( &self, outeq: usize, start: f64, end: f64, method: &AUCMethod, ) -> Vec<Result<f64, MetricsError>>
Calculate partial AUC over a time interval
fn auc_first(
&self,
outeq: usize,
method: &AUCMethod,
) -> Result<f64, MetricsError>
fn auc_first( &self, outeq: usize, method: &AUCMethod, ) -> Result<f64, MetricsError>
Calculate AUC for the first occasion
fn cmax_first(&self, outeq: usize) -> Result<f64, MetricsError>
fn cmax_first(&self, outeq: usize) -> Result<f64, MetricsError>
Get Cmax for the first occasion
fn tmax_first(&self, outeq: usize) -> Result<f64, MetricsError>
fn tmax_first(&self, outeq: usize) -> Result<f64, MetricsError>
Get Tmax for the first occasion
fn clast_first(&self, outeq: usize) -> Result<f64, MetricsError>
fn clast_first(&self, outeq: usize) -> Result<f64, MetricsError>
Get Clast for the first occasion
fn tlast_first(&self, outeq: usize) -> Result<f64, MetricsError>
fn tlast_first(&self, outeq: usize) -> Result<f64, MetricsError>
Get Tlast for the first occasion
fn aumc_first(
&self,
outeq: usize,
method: &AUCMethod,
) -> Result<f64, MetricsError>
fn aumc_first( &self, outeq: usize, method: &AUCMethod, ) -> Result<f64, MetricsError>
Calculate AUMC for the first occasion
fn auc_interval_first(
&self,
outeq: usize,
start: f64,
end: f64,
method: &AUCMethod,
) -> Result<f64, MetricsError>
fn auc_interval_first( &self, outeq: usize, start: f64, end: f64, method: &AUCMethod, ) -> Result<f64, MetricsError>
Calculate partial AUC for the first occasion
fn auc_blq_first(
&self,
outeq: usize,
method: &AUCMethod,
blq_rule: &BLQRule,
) -> Result<f64, MetricsError>
fn auc_blq_first( &self, outeq: usize, method: &AUCMethod, blq_rule: &BLQRule, ) -> Result<f64, MetricsError>
Calculate AUC for the first occasion with explicit BLQ handling
fn cmax_blq_first(
&self,
outeq: usize,
blq_rule: &BLQRule,
) -> Result<f64, MetricsError>
fn cmax_blq_first( &self, outeq: usize, blq_rule: &BLQRule, ) -> Result<f64, MetricsError>
Get Cmax for the first occasion with explicit BLQ handling
fn auc_interval_blq_first(
&self,
outeq: usize,
start: f64,
end: f64,
method: &AUCMethod,
blq_rule: &BLQRule,
) -> Result<f64, MetricsError>
fn auc_interval_blq_first( &self, outeq: usize, start: f64, end: f64, method: &AUCMethod, blq_rule: &BLQRule, ) -> Result<f64, MetricsError>
Calculate partial AUC for the first occasion with explicit BLQ handling