- qspec.analyze.generate_collinear_points_cpp ( mean , cov , n_samples = None , n_accepted = None , seed = None , report = None , ** kwargs )[source]
Randomly generate points $\vec{p}_i$ according to the given data vectors $\vec{\mu}_i\in\mathbb{R}^n$ and covariance matrices $\mathbf{\Sigma}_i\in\mathbb{R}^{n\times n}$, under the condition that they are aligned on a straight line. This function uses C++.
- Parameters:
-
- meanndarray
The data vectors $\vec{\mu}_i$. Must have shape
(k, n), wherekis the number of data points andnis the number of dimensions of each point.- covndarray
The covariance matrices $\mathbf{\Sigma}_i$ of the data vectors. Must have shape
(k, n, n). Usecovariance_matrixto construct covariance matrices.- n_samplesint
The number of samples generated for each data point. If
Noneandmethod == 'cpp', samples are generated untiln_acceptedsamples get accepted.- n_acceptedint
The number of samples to be accepted for each data point.
- seedint
A seed for the random number generator.
- reportbool
Whether to report the number of samples.
- kwargsNone
Additional keyword arguments.
- Returns:
-
- (p, n_accepted, n_samples)(ndarray, int, int)
The generated data vectors $\vec{p}_i$ with shape
(n_accepted, k ,n)and the number of accepted and generated samples.