- add
-D_HAS_AUTO_PTR_ETC=0
flag to disable deprecated features used in boost.
-
fix
NA
handling into_pseudo_obs()
(#260) -
add
emp_cdf()
for the tail corrected empirical cdf (#261)
- fix marginal PIT for discrete variables (see issue #257, thanks @rplzzz)
- fix warning about C++17 attribute extension 'nodiscard' (#255)
- replace bitwise operations on Boolean variables.
Release following the updates of vinecopulib to 0.6.2, see https://github.com/vinecopulib/vinecopulib/releases. The most relevant changes are summarized below.
-
improved documentation (discrete and missing dat, Rosenblatt transforms)
-
better parallelization when there is a small number of edges (#555)
- avoid bitwise operations on Boolean variables.
- enforce use on recent version of RcppThread for proper handling of linker flags
-
remove illegal pragmas from json header (#245)
-
allow tree restriction in summary functions (#244)
Release following the updates of vinecopulib to 0.6.1, see https://github.com/vinecopulib/vinecopulib/releases. The most relevant changes are summarized below.
-
improved documentation (#241, #239)
-
use
num_threads
in recursive calls to the inverse Rosenblatt -
force TLL to be nonnegative (#238)
-
fix number of parameters for TLL
Maintenance release following the changes to all.equal()
in R 4.1.x.
Release following the updates of vinecopulib to 0.5.5, see https://github.com/vinecopulib/vinecopulib/releases. The most relevant changes are summarized below.
-
fix little bug in copula selection based on mBIC
-
stabilize BB7 copula pdf
-
fix threshold selection for (near-)independent data
-
fix vine copula selection for 1-dimensional models with discrete variables
-
fix user-visible variable types
Release following the updates of vinecopulib to 0.5.4, see https://github.com/vinecopulib/vinecopulib/releases. The most relevant changes are summarized below.
-
fix uninitialized number of parameters for TLL family
-
fix Kendall's tau of Frank copula for par <= 3
-
fix
dvinecop()
when discrete variables are present (#222)
Release following the updates of vinecopulib to 0.5.3, see https://github.com/vinecopulib/vinecopulib/releases. The most relevant changes are summarized below.
-
allow 1-dimensional models (#216)
-
make AIC default selection criterion (#213)
-
catch na in ktau_to_par (#214)
-
make Bicop/Vinecop objects indepent of copied-from-objects
-
enforce parameters bounds in tau_to_parameters for Archimedean families
Release following the updates of vinecopulib to 0.5.2, see https://github.com/vinecopulib/vinecopulib/releases. The most relevant changes are summarized below.
NEW FEATURES
-
single-integer constructors for
dvine_structure()
/cvine_structure()
. (#203) -
add
var_names = "hide"
option inplot.vinecop_dist()
. (#203) -
add function
plot.rvine_matrix()
. (#203)
BUG FIXES
-
fix bug for (negative) tau to parameter conversion for Frank family. (#207)
-
fix rare error
rvine_structure_sim()/rvine_matrix_sim()
-
safeguard
"tll"
family against comonotonic data. -
stabilize archimedean h-functions near independence.
Release following the updates of vinecopulib to 0.5.1, see https://github.com/vinecopulib/vinecopulib/releases.
BUG FIX
- fix out of range bug for weighted TLL influence when sample size is small.
Release following the updates of vinecopulib to 0.5.0, see https://github.com/vinecopulib/vinecopulib/releases. The most relevant changes are summarized below.
NEW FEATURES
-
modelling discrete variables with bivariate or vine copulas. (#195)
-
selection of partially specified R-vine structures. (#195)
-
convenience classes
dvine_structure()
/cvine_structure()
for D- and C-vine structures. (#195) -
new criterion for tree selection:
"joe"
corresponds to -log(1-r^2), where r is the pairwise partial correlation. (#195) -
random sampling of R-vine structures. (#197)
-
add
weights
argument tovine()
. (#188) -
parallelized fitting of margins in
vine()
. (#198)
API BREAK
- The new
var_types
argument for discrete models has been placed early inbicop()/vinecop()
due to its importance. This might break old code calling these functions with unnamed arguments.
BUG FIXES AND OTHER IMPROVEMENTS
-
better support for 0-truncated structures. (#195)
-
ensure consistency of TLL likelihood during and after fit. (#195)
-
fixed order of ranks in
pseudo_obs(.., ties.method = "first")
. (#195) -
safer computation of multivariate normal cdf. (#195)
-
improved memory efficiency. (#195)
Release following the updates of vinecopulib to 0.3.2, see https://github.com/vinecopulib/vinecopulib/releases. The most relevant changes are summarized below.
NEW FEATURES
-
improved extensibility for packages including on the C++-headers of vinecopulib (#178)
-
new EDA function
pairs_copula_data()
(#181).
BUG FIXES
-
ensure that input and output type of
pseudo_obs()
match (#182). -
fix printing of
"tll"
family in `summary.vinecop() (#183).
Release following the updates of vinecopulib to 0.3.1, see https://github.com/vinecopulib/vinecopulib/releases. The most relevant changes are summarized below.
NEW FEATURES
-
import vinecopulib 0.3.1 (#171)
-
improve documentation (#168, #170)
-
warning message for wrong family in itau method (#169)
-
refactoring for enhanced extensibility of the class
Vinecop
(vinecopulib #407) -
simplify algorithms by reversing definition of natural order (vinecopulib #387)
-
improve selection of truncation level (vinecopulib #373)
-
add truncate methods for
TriangularArray
,RVineStructure
andVinecop
(vinecopulib #372)
BUG FIXES
- don't strip debug symbols unconditionally on linux (#174)
BUG FIXES
-
fix non-portable use of
log()
in C++ code (#147). -
remove parallelized unit test to avoid segfault on Solaris (#147).
Release following the updates of vinecopulib to 0.3.0, see https://github.com/vinecopulib/vinecopulib/releases. The most relevant changes are summarized below.
NEW FEATURES
-
new generic
truncate_model()
to truncated vine structures and models (#144). -
new functions
rosenblatt()
andinverse_rosenblatt()
for computing the (inverse) Rosenblatt transformation (#142). -
faster algorithms for nonparametric copulas based on bilinear interpolation.
-
refactor vine structures and related algorithms with triangular arrays to improve efficiency of truncated models (#136).
-
new classes
rvine_structure
andrvine_matrix
for storing the vine structure includingas_
- andis.
-generics (#136). -
allow for generating quasi-random numbers (#126).
-
improved parallelization: faster of fitting vine copula models and parallelized versions of many algorithms including pdf, cdf and simulation (#339, #363).
-
allow weights for observations (#118).
-
faster compilation using only a single wrapper file (#124).
-
improved print and summary generics (#131).
BUG FIXES
-
fix cdf of StudentBicop
-
improved numerical stability.
-
fix gcc-8 warning.
-
fix missing variable names for class
vine
.
Release following the updates of vinecopulib to 0.2.8, see https://github.com/vinecopulib/vinecopulib/releases. The most relevant changes are summarized below.
NEW FEATURES
-
new
vine_dist
andvine
classes for data with non-uniform margins (#97). -
new function
truncate_model()
forvinecop_dist
andvine_dist
objects (#95, #97). -
new convenience functions
get_pair_copula()
,get_parameters()
,get_ktau()
,get_family()
forbicop_dist
,vinecop_dist
andvine_dist
objects (#95, #107, #109). -
new convenience functions
get_matrix()
,get_all_pair_copulas()
,get_all_parameters()
,get_all_ktaus()
,get_all_families()
forvinecop_dist
andvine_dist
objects (#95, #107, #109). -
new (
dim
) and improved (print
,summary
andlogLik
) generic methods forvinecop_dist
andvine_dist
objects (#104, #109, #110). -
new function
pseudo_obs
to compute pseudo-observations (#108). -
improved documentation (#98, #100).
-
improved sanity checks and error messages (#99, #102).
BUG FIXES
-
make mcor correction less aggressive (#103).
-
fix truncation of pdf values (#103).
-
use increased search interval for parameter estimation when initial fit is unreasonable (#103).
-
ensure that boundaries are respected for Joe's
hinv
methods (#103). -
improve numerical stability by more restrictive parameter bounds for Joe and BB7 copulas (#103).
Release following the updates of vinecopulib to 0.2.7, see https://github.com/vinecopulib/vinecopulib/releases. The most relevant changes are summarized below.
NEW FEATURES
- new criterion for tree selection
"mcor"
.
BUG FIXES
- fix bandwidth scaling for family
"tll"
.
Patch of rvinecopulib 0.2.6.1.0.
BUG FIXES
- corrected documentation items.
Release following the updates of vinecopulib to 0.2.6, see https://github.com/vinecopulib/vinecopulib/releases. The most relevant changes are summarized below.
NEW FEATURES
-
add checks for data in (0, 1).
-
improved bandwidth selection for method
"tll"
by scaling with maximum-correlation coefficient. -
add mBICV criterion to select the truncation level and threshold along with new function
mBICV()
.
BUG FIXES
- fix calculation of Hoeffding's D.
Release following the updates of vinecopulib to 0.2.4 and 0.2.5, see https://github.com/vinecopulib/vinecopulib/releases. The most relevant changes are summarized below.
NEW FEATURES
-
faster simulation and pdf functions for truncated vines.
-
speed up vine copula algorithms by pre-computing information related to the vine structure.
-
the selected threshold parameter can be returned from an
vinecop
object.
BUG FIXES
-
make bb8 lower bound ensure feasible computations in
par_to_tau()
. -
default initialize
Rcout
(#277). -
fix storage order of pair copulas when structure is fixed.
-
fixed selection algorithm for threshold and truncation level.
Release following the update of vinecopulib to 0.2.3, see https://github.com/vinecopulib/vinecopulib/releases/tag/v0.2.3. The most relevant changes are summarized below.
NEW FEATURES
- faster implementation of Archimedean pdfs.
BUG FIXES
-
add safeguards for
bicop()
/vinecop()
called with insufficient data. -
fix segfault issue in completing a truncated vine fit.
-
make
par_method = "itau"
respect the parameter bounds.
Release following the updates of vinecopulib to 0.2.1 and 0.2.2, see https://github.com/vinecopulib/vinecopulib/releases/tag/v0.2.1 and https://github.com/vinecopulib/vinecopulib/releases/tag/v0.2.2. The most relevant changes are summarized below.
NEW FEATURES
-
faster vine copula estimation and selection by parallelizing further sub-routines.
-
enhanced cross-platform compatibility.
-
increased precision of maximum-likelihood estimators.
-
allow
"loglik"
as selection criterion.
BUG FIXES
-
fixed
itau
estimation method for Frank copulas (only allowed for positive parameters). -
make interpolation grid symmetric around (0.5, 0.5) again (for
"tll"
estimator).
Release following the update of vinecopulib to 0.2.0, see https://github.com/vinecopulib/vinecopulib/releases/tag/v0.2.0. The most relevant changes are summarized below.
PACKAGING/DEPENDECY
-
the C++ core of the library (besides wrappers) is now header only, so other R packages can access its functionality easily via LinkingTo.
-
removed dependency on
NLopt
.
NEW FEATURES
-
NA handling.
-
parallelized selection/estimation of (pair-) copulas, see the
cores
argument inbicop()
andvinecop()
. -
efficient storage and fitting of truncated vines.
-
Brent line search for (profile-) maximum-likelihood estimation of one-parameter families.
-
more restrictive parameter bounds for Archimedean families, ensuring their numerical stability.
BUG FIXES
-
error thrown whenever
vinecop()
orbicop()
are called with data sets containing a single row. -
made order of
rvinecop(..., U)
consistent for d = 2 and d > 2. -
fixed bug in interpolation of kernel estimators near upper right corner.
-
interpolation grid is now symmetric around (0.5, 0.5).
-
stabilized quadratic tll estimator near zero.
-
stabilized Archimedean pdfs.
BUG FIXES
- Improve portability when using mathematical functions
Initial release.