[Rcpp-commits] r3782 - pkg/RcppEigen/vignettes

noreply at r-forge.r-project.org noreply at r-forge.r-project.org
Sat Sep 29 22:45:26 CEST 2012


Author: edd
Date: 2012-09-29 22:45:26 +0200 (Sat, 29 Sep 2012)
New Revision: 3782

Modified:
   pkg/RcppEigen/vignettes/RcppEigen-intro-nojss.Rnw
Log:
Committed JSS version as vignette in nojss format
Added on paragraph about this corresponding to a forthcoming paper


Modified: pkg/RcppEigen/vignettes/RcppEigen-intro-nojss.Rnw
===================================================================
--- pkg/RcppEigen/vignettes/RcppEigen-intro-nojss.Rnw	2012-09-26 21:23:03 UTC (rev 3781)
+++ pkg/RcppEigen/vignettes/RcppEigen-intro-nojss.Rnw	2012-09-29 20:45:26 UTC (rev 3782)
@@ -1,28 +1,27 @@
 \documentclass[shortnames,article,nojss]{jss}
-%]{jss}
+\usepackage{booktabs,bm,amsmath}
 %\VignetteIndexEntry{RcppEigen-intro}
 %\VignetteKeywords{linear algebra, template programming, C++, R, Rcpp}
 %\VignettePackage{RcppEigen}
 
-%\usepackage{booktabs,flafter,bm,amsmath}
-\usepackage{booktabs,bm,amsmath}
-
+%% VIGNETTE
 <<echo=FALSE,print=FALSE>>=
-prettyVersion <- packageDescription("RcppEigen")$Version
-rcppeigen.date <- packageDescription("RcppEigen")$Date
+pkgVersion <- packageDescription("RcppEigen")$Version
+pkgDate <- packageDescription("RcppEigen")$Date
 prettyDate <- format(Sys.Date(), "%B %e, %Y")
 #require("RcppEigen")
 #eigenVersion <- paste(unlist(.Call("eigen_version", FALSE)), collapse=".")
 @
 
-\author{Douglas Bates\\Univ.~of Wisconsin/Madison \And Dirk Eddelbuettel\\Debian Project} % \And Romain Fran\c{c}ois\\R Enthusiasts}
+\author{Douglas Bates\\Univ.~of Wisconsin/Madison \And Dirk Eddelbuettel\\Debian Project}
 \title{Fast and Elegant Numerical Linear Algebra\\ Using the \pkg{RcppEigen} Package}
-\date{\pkg{RcppEigen} version \Sexpr{prettyVersion} as of \Sexpr{prettyDate}}
+\date{\pkg{RcppEigen} version 0.3.1 as of September 26, 2012}
 
-\Plainauthor{Douglas Bates, Dirk Eddelbuettel} %, Romain Fran\c{c}ois}
+\Plainauthor{Douglas Bates, Dirk Eddelbuettel}
 \Plaintitle{Fast and Elegant Numerical Linear Algebra Using the RcppEigen Package}
 \Shorttitle{Fast and Elegant Numerical Linear Algebra with RcppEigen}
 
+
 \Abstract{
   \noindent
   The \pkg{RcppEigen} package provides access from \proglang{R}
@@ -54,13 +53,6 @@
   River Forest, IL, USA\\
   E-mail: \email{edd at debian.org}\\
   URL: \url{http://dirk.eddelbuettel.com}\\
-
-  % Romain Fran\c{c}ois\\
-  % Professional R Enthusiast\\
-  % 1 rue du Puits du Temple, 34 000 Montpellier\\
-  % FRANCE \\
-  % E-mail: \email{romain at r-enthusiasts.com}\\
-  % URL: \url{http://romainfrancois.blog.free.fr}
 }
 
 %% need no \usepackage{Sweave.sty}
@@ -93,9 +85,19 @@
 % ------------------------------------------------------------------------
 
 \begin{document}
+\SweaveOpts{engine=R,eps=FALSE}
 
-%\SweaveOpts{engine=R,eps=FALSE}
+\begin{quote} \footnotesize
+  This vignette corresponds to a paper forthcoming %published
+  in the \textsl{Journal of Statistical Software}. % fill in vol,nb later
+  It is currently still identical to the published paper.  Over time, this
+  vignette version may receive minor
+  updates. %For citations, please use the publication \citep{JSS:RcppEigen}.
 
+  This version corresponds to \pkg{RcppEigen} version \Sexpr{pkgVersion} and was
+  typeset on \Sexpr{prettyDate}.
+\end{quote}
+
 \section{Introduction}
 \label{sec:intro}
 
@@ -138,8 +140,8 @@
 package and call
 \begin{verbatim}
 R> .Call("eigen_version", FALSE)
-major minor patch 
-    3     1     1 
+major minor patch
+    3     1     1
 \end{verbatim}
 
 \pkg{Eigen} is of interest as the \proglang{R} system for statistical
@@ -406,7 +408,7 @@
 method is used in what follows to create the transpose of numeric or
 integer matrices.
 
-
+\pagebreak                      % Achim may hate me
 \subsection{Products and cross-products}
 \label{sec:products}
 
@@ -485,6 +487,7 @@
 For self-adjoint views the \code{rankUpdate} method adds a scalar multiple
 of $\bm A\bm A^\prime$ to the current symmetric matrix.  The scalar
 multiple defaults to 1.  The code in Figure~\ref{crossprod} produces
+both $\bm A^\prime\bm A$ and $\bm A\bm A^\prime$ from a matrix $\bm A$.
 
 \begin{figure}[htb]
   \hrule \smallskip
@@ -1120,6 +1123,7 @@
 % const VectorXd        betahat(VDp * VDp.adjoint() * X.adjoint() * y);
 % const VectorXd             se(s * VDp.rowwise().norm());
 
+\pagebreak                      % Achim may hate me
 \subsection{Least squares using the column-pivoted QR decomposition}
 \label{sec:colPivQR}
 
@@ -1421,6 +1425,7 @@
 method.
 
 
+\pagebreak                      % Achim may hate me
 \section{Delayed evaluation}
 \label{sec:delayed}
 
@@ -1436,11 +1441,12 @@
 
 As \pkg{Eigen} has developed some of these unevaluated expressions
 have been modified.  In \pkg{Eigen 3.1}, which is incorporated in
-version \Sexpr{prettyVersion} of \pkg{RcppEigen}, the \code{.adjoint()} method applied
+version 0.3.1 of \pkg{RcppEigen}, the \code{.adjoint()} method applied
 to a real dense matrix copies the contents of the original matrix, flags
 it as row-major and interchanges the number of rows and columns.  This
-is indeed the adjoint of the original matrix but the \code{wrap} method
-is not prepared to handle a row-major matrix and throws an error.
+is indeed the adjoint of the original matrix but, at one time, the
+\code{wrap} method for the \pkg{Eigen} dense matrix classes would fail
+on row-major matrices.
 
 In the code for the transpose of an integer matrix shown in
 Figure~\ref{trans} the transpose is assigned to a \code{MatrixXi}



More information about the Rcpp-commits mailing list