% Do not modify this file since it was automatically generated from:
%  ./laplacianFromA.R
% by the Rdoc compiler part of the R.oo package.


\title{Calculates the Laplacian associated to an adjacency matrix}

 Calculates the Laplacian associated to an adjacency matrix.

\usage{laplacianFromA(A, k=1, ltype=c("meanInfluence", "normalized", "unnormalized", "totalInfluence"))}

  \item{A}{The adjacency matrix of the graph.}
  \item{ltype}{A \code{\link[base]{character}} value specifying the type of Laplacian to be
    calculated.  Defaults to meanInfluence.}

 A \code{\link[base]{list}} containing the following components:
   \item{U}{Eigenvectors of the graph Laplacian.}
   \item{l}{Eigenvalues of the graph Laplacian}
   \item{kIdx}{Multiplicity of '0' as eigenvalue.}

\author{Laurent Jacob, Pierre Neuvial and Sandrine Dudoit}


## Create a random graph
graph <- randomWAMGraph(nnodes=5, nedges=7, verbose=TRUE)

## Retrieve its adjacency matrix
A <- graph@adjMat

## write it to KGML file
grPathname <- "randomWAMGraph.xml"
writeAdjacencyMatrix2KGML(A, pathname=grPathname, verbose=TRUE, overwrite=TRUE)

## read it from file
gr <- parseKGML2Graph(grPathname)

## Two examples of Laplacians from the same graph
lapMI <- laplacianFromA(A, ltype="meanInfluence")

lapN <- laplacianFromA(A, ltype="normalized")

U <- lapN$U
p <- nrow(A)
sigma <- diag(p)/sqrt(p)

X <- twoSampleFromGraph(100, 120, shiftM2=1, sigma, U=U, k=3)

## T2
t <- T2.test(X$X1,X$X2)

tu <- graph.T2.test(X$X1, X$X2, lfA=lapMI, k=3)