sample_sphere_surface: Sample vectors uniformly from the surface of a sphere

View source: R/embedding.R

sample_sphere_surfaceR Documentation

Sample vectors uniformly from the surface of a sphere

Description

Sample finite-dimensional vectors to use as latent position vectors in random dot product graphs

Usage

sample_sphere_surface(dim, n = 1, radius = 1, positive = TRUE)

Arguments

dim

Integer scalar, the dimension of the random vectors.

n

Integer scalar, the sample size.

radius

Numeric scalar, the radius of the sphere to sample.

positive

Logical scalar, whether to sample from the positive orthant of the sphere.

Details

sample_sphere_surface() generates uniform samples from S^{dim-1} (the (dim-1)-sphere) with radius radius, i.e. the Euclidean norm of the samples equal radius.

Value

A dim (length of the alpha vector for sample_dirichlet()) times n matrix, whose columns are the sample vectors.

See Also

Other latent position vector samplers: sample_dirichlet(), sample_sphere_volume()

Examples

lpvs.sph <- sample_sphere_surface(dim = 10, n = 20, radius = 1)
RDP.graph.3 <- sample_dot_product(lpvs.sph)
vec.norm <- apply(lpvs.sph, 2, function(x) {
  sum(x^2)
})
vec.norm

igraph documentation built on Oct. 20, 2024, 1:06 a.m.