% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/grip_layout.R
\name{legacy.grip}
\alias{legacy.grip}
\title{Compute the legacy GRIP layout}
\usage{
legacy.grip(
  edges = NULL,
  n = NULL,
  adj_list = NULL,
  weight_list = NULL,
  edge_weights = NULL,
  dim = 3,
  placement = c("barycenter", "circle"),
  preset = NULL,
  rounds = 20,
  final_rounds = 25,
  num_init = 36,
  num_nbrs = 10,
  r = 0.15,
  s = 3,
  repulsion_factor = 1,
  tinit_factor = 6,
  seed = 6,
  disconnected = c("components", "error")
)
}
\arguments{
\item{edges}{Two-column integer matrix of edges (1-based vertex ids).}

\item{n}{Number of vertices.}

\item{adj_list}{Adjacency list (1-based) for undirected graphs.}

\item{weight_list}{Optional parallel list of edge weights (edge lengths).
If NULL, all edges are treated as weight 1. All weights must be finite
and strictly positive.}

\item{edge_weights}{Optional vector of edge weights for \code{edges}. All
weights must be finite and strictly positive.}

\item{dim}{Layout dimension (2 or 3). Default is 3.}

\item{placement}{Initial placement strategy. "circle" is only used for 2D.}

\item{preset}{Optional tuning preset. \code{NULL} uses the historical
defaults. \code{"carpet"} applies a preset tuned for
Sierpinski-carpet-like graphs and validated on carpet levels 3 and 4.
\code{"mesh"} applies a preset tuned for rectangular lattice graphs and
validated on 8x8 and 12x12 mesh layouts. \code{"torus"} applies a preset
tuned for 3D torus layouts and validated on torus sizes from 8x8 through
20x20. \code{"tree"} applies a preset tuned for symmetric force-directed
layouts of tree-like graphs and validated on binary trees of depths 5 and
6. Presets only fill in tuning arguments that you did not supply
explicitly.}

\item{rounds}{Initial rounds for refinement.}

\item{final_rounds}{Final rounds for refinement.}

\item{num_init}{Number of initial vertices in the coarsest level.}

\item{num_nbrs}{Maximum number of graph-distance neighbors retained for local
refinement at each filtration level.}

\item{r}{Main local temperature adaptation rate in \code{[0, 1]}.}

\item{s}{Non-negative boost factor applied when successive displacements have
a consistent direction.}

\item{repulsion_factor}{Non-negative multiplier applied to GRIP's
finest-level repulsive force scale. \code{1} keeps the historical
repulsion strength; \code{0} disables that repulsive term.}

\item{tinit_factor}{Initial temperature factor.}

\item{seed}{Optional RNG seed for reproducibility. If NULL, uses current time.}

\item{disconnected}{How to handle disconnected graphs:
\code{"components"} (default) lays out each connected component separately
and packs them into one coordinate matrix; \code{"error"} stops with an error.}
}
\value{
A numeric matrix with `n` rows and `dim` columns.
}
\description{
This function preserves the original local-force wrapper and historical
default values that were previously exposed as \code{\link{grip}()}.
Use it for backwards-compatible comparisons or when you explicitly want the
pre-global-repulsion behavior.
}
\examples{
edges <- cbind(1:5, 2:6)
coords <- legacy.grip(edges, n = 6, dim = 2,
                             placement = "barycenter",
                             rounds = 5, final_rounds = 5,
                             num_init = 3, num_nbrs = 4,
                             seed = 1)
round(coords, 3)
}
\references{
Gajer, P. and Kobourov, S.G. (2002). GRIP: Graph dRawing with Intelligent
Placement. \emph{Journal of Graph Algorithms and Applications}, 6(3),
203--224. doi:10.7155/jgaa.00052.

Gajer, P., Goodrich, M.T. and Kobourov, S.G. (2004). A multi-dimensional
approach to force-directed layouts of large graphs.
\emph{Computational Geometry}, 29(1), 3--18.
doi:10.1016/j.comgeo.2004.03.014.
}
