- Corrected typos and made cosmetic improvements to the package manual.
- Put new version on CRAN to assist in investigating the CRAN package check errors and warnings for the revdbayes package, which imports functions from rust. Update (18/08/2024): ultimately, the errors on r-release-macos-x86_64 and r-oldrel-macos-x86_64 stemming from revdbayes' unit tests disappeared after Rcpp v1.0.13 bedded in on CRAN.
- The issue described at RcppCore/Rcpp#1287 has been fixed to avoid WARNINGs from CRAN checks on some platforms. Thank you to Dirk Eddelbuettel for providing the fix so quickly!
-
The unnecessary C++11 specification has been dropped to avoid a CRAN Package Check NOTE.
-
README.md: Used app.codecov.io as base for codecov link.
ru()
andru_rcpp()
have an additional argumentmode
that allows the user to specify the known mode of the input functionlogf
instead of finding it using numerical methods.
-
An extra example has been added to
ru()
, involving different Box-Cox transformation parameters for different component variables. -
The list object returned from the function
ru()
has an extra component namedtrans_fn
. This is an R function that performs the inverse transformation from the transformed variable$\rho$ , on which the generalised ratio-of-uniforms method is performed, back to the original variable$\theta$ . -
The documentation of the functions
ru()
andru_rcpp()
now note that if the argumentn = 0
is passed then the ratio-of-uniforms bounding box is returned but no simulation is performed. This may be useful if the bounding box itself is of interest. -
In the description of the argument
logf
toru()
andru_rcpp()
it is advised thatlogf =
should be provided explicitly to avoid the potential for argument matching problems. -
In
plot.ru()
the argumentsxlabs
andylabs
have been super-seeded by an argumentvar_names
, which can be used to provide variable names for use as axis labels. -
Improvements to the package manual.
-
Activated 3rd edition of the
testthat
package -
WARNINGs in the CRAN package check results, like "init.c:60:47: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes] extern SEXP _revdbayes_RcppExport_registerCCallable();" have been avoided.
- In help files and vignettes DOIs are used rather than URLs.
LazyData: TRUE
has been removed from DESCRIPTION, because there is no data/ directory in rust.
- In
ru()
ifisTRUE()
is used to deal correctly with instances where there are missing values in the generalised ratio-of-uniforms test condition.
- This is a patch that avoids the CRAN package check NOTEs resulting from the use of revdbayes::: instead of revdbayes::.
- This is a patch aimed at avoiding false positive CRAN package check warnings on some platforms.
-
Dependence on the spatstat package has been removed.
-
In the S3 plot method
plot.ru()
warnings, stemming from stats::regularize.values(), which is called by stats::approx(), have been suppressed. -
A very basic S3 print method
print.ru()
has been added, which simply prints the call toru()
orru_rcpp()
.
-
An extra argument
shoof
has been added toru()
andru_rcpp()
to enable the user to have control over the initial value used to check that a non-zero convergence indicator is indeed spurious. -
Functions that are not intended to be called by the user have been moved to rust-internal.R
-
Use
inherits()
to check the class of objects returned fromtry()
, rather thanclass()
. -
Hyperlinks corrected in vignettes.
-
pkgdown documentation at https://paulnorthrop.github.io/rust/
-
Further steps are taken in the opimisations used to set up the ratio-of-uniforms bounding box (specifically in find_a() and in cpp_find_a()) to avoid erroneous (lack of) convergence warnings. These can occur if we start the optimisation algorithm too close to the solution.
-
LF line endings used in inst/include/rust.h and inst/include/rust_RcppExports.h to avoid CRAN NOTE
-
The summary method for class "ru" is now set up according to Section 8.1 of the R FAQ at (https://cran.r-project.org/doc/FAQ/R-FAQ.html).
-
In the extra checks used to try to avoid erroneous convergence warnings lower and upper bounds on the parameters are now used.
-
Corrected minor typo in the penultimate sentence of the "Cauchy density" subsection in the "When can rust be used vignette": b1* should be b1+.
- Removed unnecessary dependence on the current release of R that caused an installation error on r-oldrel.
- New vignette. "When can rust be used?".
-
In
ru()
andru_rcpp()
the constanthscale
is used to shiftlogf
(and hence scale the target density f) in functionlogf
in the returned object. This helps to avoid over/under-flow when contouring f inplot.ru
whend = 2
. -
The
var_names
argument toru_rcpp
didn't work. This has been corrected. -
The arguments
lower, upper
toru
andru_rcpp
are now used, at least partly even whenrotate = TRUE
. See the updated description oflower, upper
in the documentation ofru
andru_rcpp
. -
That the function
logf
supplied toru
orru_rcpp
should return-Inf
when the density f is zero is stated explicitly in the help files. -
ru() did not work when
trans = "user"
andd
> 1. This has been corrected. -
Extra checks are used to try to avoid erroneous convergence warnings.
-
Incorrectly formatted link to the Rcpp Gallery webpage corrected in the vignette "Rusting Faster: Simulation using Rcpp".
-
Extra examples provided for
ru
and forru_rcpp
: (a) Cauchy, (b) half-Cauchy and (c) bivariate normal x bivariate student-t.
- An overloading ambiguity has been corrected to ensure installation on Solaris.
-
Corrected C++ function
vecpow
to avoid compilation errors on some platforms. -
Unnecessary dependence on packages
devtools
androxygen2
via Suggests is removed. -
Minor edit to vignette: provide link directly to example C++ file
user_fns.cpp
insrc
directory, rather than the the (identical)example_user_fns.cpp
file in thevignettes
directory.
-
Packages Rcpp (https://CRAN.R-project.org/package=Rcpp) and RcppArmadillo (https://CRAN.R-project.org/package=RcppArmadillo) are used to speed up the computations if the user provides a C++ function to evaluate their target log-density.
-
New functions:
ru_rcpp
,find_lambda_rcpp
andfind_lambda_one_d_rcpp
. -
New vignette. "Rusting faster: Simulation using Rcpp".
-
Bug fixed in
plot.ru()
: previouslyplot.ru()
failed whend > 2
and no axis label names were provided. -
Bug fixed in
plot.ru
: previously, in thed = 2
case, providing the graphical parametercol
produced an error becausecol = 8
was hard-coded in a call topoints
. Now the extra argumentpoints_par
enables the user to provide a list of arguments topoints
. -
"using
pairs()
" removed from the last sentence Description ofplot.ru()
becausepairs()
is not used whend > 2
, rather a single plot is produced for each pair of variables. -
Obsolete function
rho_to_theta()
removed from functionru
inru_sampling.R
. -
If the user calls
ru
(orru_rcpp
) withtrans = "user"
but doesn't supplyphi_to_theta
then an error is returned. -
plot.ru
edited to avoid warning message that occurred in thed=1
case whenbreaks
was supplied as an argument. -
The functions
rgpd
,gpd_sum_stats
,gpd_init
andgpd_logpost
are now exported.
-
plot.ru()
can now be used whend > 2
: it produces pairwise plots of the simulated values. -
find_lamba()
: argumentinit_lambda
added to enable the user to supply an initial value for the Box-Cox transformation vectorlambda
.
-
Unnecessary print statement
print(dim(phi))
removed from functionfind_lambda()
. -
Unnecessary print statement
print(a_algor)
removed from functionru()
. -
Correct
lambda$init
tolambda$init_psi
inru()
when extracting Box-Cox information. -
Documentation of
ru()
updated to include a description of the returned functionlogf_rho()
and simulated valuessim_vals_rho
and to clarify the meaning of the returned value off_mode
. -
ru()
: the expression for the inverse Box-Cox transformation in the case where lambda is exactly 0 has been corrected. -
find_lambda()
: carry out calculation of the target on a shifted log scale to avoid underflow. -
Set up
plot.ru()
so that if the user supplies axis labels then they are used and otherwise the column name(s) ofru_object$sim_vals
are used. Also enable plotmath symbols to be rendered in the axis labels.