Skip to content

Supported pair-copula families

VineCopulas.jl uses bivariate copulas from Copulas.jl. A family is considered supported as a vine pair-copula when the following pieces are available and tested:

  1. bivariate density/log-density,

  2. hfunc1 and hfunc2,

  3. hinv1 and hinv2 for simulation and inverse Rosenblatt transforms,

  4. tests in the vine interface.

Current support table

GroupFamily examplesVine pair-copula statusDensity path
IndependenceIndependentCopulaSupportedFast path
EllipticalGaussianSupported and benchmark-orientedClosed-form fast path
EllipticalStudent-tSupported, correctness-orientedClosed-form bivariate t copula path using scalar Student-t CDF/quantile routines
Archimedean one-parameterClayton, Frank, Gumbel, JoeSupportedClosed form for Clayton/Frank/Gumbel; generator path for Joe
rvinecopulib BB familiesBB1, BB6, BB7, BB8SupportedGenerator path with family-specific hooks
Additional ArchimedeanAMH, Gumbel–Barnett, Inverse Gaussian, BB2, BB3, BB9, BB10Supported by Copulas.jl integrationGenerator path
Extreme-valueLogistic, Galambos, Hüsler–Reiss, Mixed, asymmetric tails, Marshall–Olkin, Cuadras–Augé, BC2, extreme-tSupported/testedExisting extreme-value path
Survival/rotatedSurvivalCopula wrappersSupported when the base family has valid h-functions/inversesFlip rules
Plackett, FGM, Raftery, M, WSeveral miscellaneous Copulas.jl familiesNot advertised as stable v0.1 vine familiesGeneric fallback
Empirical/Bernstein/Beta/CheckerboardNonparametric objectsNot part of stable v0.1 vine interfaceNot targeted

The parametric family set overlapping with rvinecopulib is explicitly represented in the source layout: independence, Gaussian, Student-t, Clayton, Gumbel, Frank, Joe, BB1, BB6, BB7 and BB8. Nonparametric tll is not part of the stable v0.1 Julia interface.

Performance-oriented layout

Pair-copula methods are organized under src/PairCopulas/:

text
src/PairCopulas/
  Generic.jl
  Ellipticals/GaussianCopula.jl
  Ellipticals/TCopula.jl
  Archimedeans/ArchimedeanCopula.jl
  Archimedeans/ClaytonCopula.jl
  Archimedeans/GumbelCopula.jl
  Archimedeans/FrankCopula.jl
  Archimedeans/JoeCopula.jl
  Archimedeans/BB1Copula.jl
  Archimedeans/BB6Copula.jl
  Archimedeans/BB7Copula.jl
  Archimedeans/BB8Copula.jl
  ExtremeValue/ExtremeValueCopula.jl
  Miscellaneous/IndependentCopula.jl
  Miscellaneous/MiscellaneousCopulas.jl

This layout separates the generic vine engines from family-specific numerical primitives. The long-term development pattern is to add closed-form _pair_logpdf, hfunc1, hfunc2, hinv1, and hinv2 methods in the corresponding family file.

Why the table is conservative

It is not enough for a bivariate copula to have a density. Vine simulation requires inverse conditional distributions. A family should only be documented as fully supported after it passes pair-copula conditional tests and vine-level density/simulation tests.

Survival and rotations

Rotations are handled through Copulas.SurvivalCopula when the underlying base family has valid h-functions and inverse h-functions. The flip logic is implemented at the conditional level.