pub struct DVineCopula { /* private fields */ }Expand description
D-vine copula (Drawable vine).
In a D-vine, each tree has a path structure. Tree 1: copulas C_{j,j+1} for j=1,…,d-1 Tree 2: copulas C_{j,j+2|j+1} for j=1,…,d-2 etc.
§Example Structure (4D)
Tree 1: C_{12}, C_{23}, C_{34} Tree 2: C_{13|2}, C_{24|3} Tree 3: C_{14|23}
Implementations§
Trait Implementations§
Source§impl Clone for DVineCopula
impl Clone for DVineCopula
Source§fn clone(&self) -> DVineCopula
fn clone(&self) -> DVineCopula
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Copula for DVineCopula
impl Copula for DVineCopula
Source§fn sample<R: Rng + ?Sized>(&self, n: usize, rng: &mut R) -> Result<DMatrix<f64>>
fn sample<R: Rng + ?Sized>(&self, n: usize, rng: &mut R) -> Result<DMatrix<f64>>
Sample by inverting the Rosenblatt transform (Aas et al., 2009, Algorithm 2).
Two tables of conditional distribution values are kept, indexed by
variable j and by k, the size of the conditioning set plus one:
fwd[j][k]= F(x_j | x_{j-k+1}, …, x_{j-1})bwd[j][k]= F(x_j | x_{j+1}, …, x_{j+k-1})
with fwd[j][1] = bwd[j][1] = u_j. They satisfy
fwd[i][k+1] = h(fwd[i][k] | bwd[i-k][k])usingtrees[k-1][i-k]bwd[j][k+1] = h(bwd[j][k] | fwd[j+k][k])usingtrees[k-1][j]
Variable i is drawn by setting fwd[i][i+1] = w[i] and inverting the
first recursion down to fwd[i][1]; the second recursion then extends
bwd for the variables that follow.
Source§fn cdf(&self, u: &[f64]) -> Result<f64>
fn cdf(&self, u: &[f64]) -> Result<f64>
Evaluate the copula cumulative distribution function (CDF) at point u. Read more
Source§fn pdf(&self, u: &[f64]) -> Result<f64>
fn pdf(&self, u: &[f64]) -> Result<f64>
Evaluate the copula probability density function (PDF) at point u. Read more
Source§fn conditional_cdf(&self, u: &[f64], given: &[usize]) -> Result<f64>
fn conditional_cdf(&self, u: &[f64], given: &[usize]) -> Result<f64>
Compute the conditional copula CDF given some variables. Read more
Source§fn tail_dependence(&self) -> Result<(f64, f64)>
fn tail_dependence(&self) -> Result<(f64, f64)>
Compute the tail dependence coefficients. Read more
Source§fn has_closed_form(&self) -> (bool, bool)
fn has_closed_form(&self) -> (bool, bool)
Check if the copula has analytical forms for CDF and PDF. Read more
Source§fn family_name(&self) -> &'static str
fn family_name(&self) -> &'static str
Get a string identifier for the copula family.
Auto Trait Implementations§
impl Freeze for DVineCopula
impl RefUnwindSafe for DVineCopula
impl Send for DVineCopula
impl Sync for DVineCopula
impl Unpin for DVineCopula
impl UnsafeUnpin for DVineCopula
impl UnwindSafe for DVineCopula
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> SendAlias for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.