C-vines
A C-vine assigns a root variable to each tree. The first root connects to every other variable, the second root connects the remaining variables conditional on the first, and so on.
Explicit construction
julia
C12 = GaussianCopula(2, 0.5)
C13 = ClaytonCopula(2, 1.2)
C23_1 = FrankCopula(2, 2.0)
vine = CVineCopula([1, 2, 3], [[C12, C13], [C23_1]])Fitting
Fix the root order:
julia
fit(CVineCopula, U; order=[1, 2, 3])or let the package select an order from the data:
julia
fit(CVineCopula, U; tree_criterion=:tau)The fit is sequential: pair copulas are estimated tree by tree and their h-functions generate the conditional data required by the next tree.