Skip to contents

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

Usage

sample_sphere_volume(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.

Value

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

Details

sample_sphere_volume() generates uniform samples from \(S^{dim-1}\) (the (dim-1)-sphere) i.e. the Euclidean norm of the samples is smaller or equal to radius.

sample_sphere_volume()

See also

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

Examples

lpvs.sph.vol <- sample_sphere_volume(dim = 10, n = 20, radius = 1)
RDP.graph.4 <- sample_dot_product(lpvs.sph.vol)
vec.norm <- apply(lpvs.sph.vol, 2, function(x) {
  sum(x^2)
})
vec.norm
#>  [1] 0.8677224 0.3721885 0.9794482 0.8961492 0.8888843 0.7408265 0.6663391
#>  [8] 0.8284712 0.7891663 0.4069648 0.8902029 0.6007150 0.9983231 0.6678435
#> [15] 0.8851258 0.9605417 0.9463845 0.9371525 0.9360247 0.8204755