This method computes a list of sample points on the image of a variety numerically, by calling numericalSourceSample.
If the number of points $s$ is unspecified, then it is assumed that $s = 1$.
One can optionally provide an initial list of points $P$ on $F(V(I))$, which will then be completed to a list of $s$ points on $F(V(I))$.
The following example samples a point from the twisted cubic. We then independently verify that this point does lie on the twisted cubic.
i1 : R = CC[s,t]; |
i2 : F = {s^3,s^2*t,s*t^2,t^3}; |
i3 : p = first numericalImageSample(F, ideal 0_R) o3 = p o3 : Point |
i4 : A = matrix{p#Coordinates_{0,1,2}, p#Coordinates_{1,2,3}}; 2 3 o4 : Matrix CC <--- CC 53 53 |
i5 : numericalNullity A == 2 o5 = true |
Here is how to sample a point from the Grassmannian $Gr(2,4)$ of $P^1$'s in $P^3$, under its Plücker embedding in $P^5$. We take maximal minors of a $2 x 4$ matrix, whose row span gives a $P^1$ in $P^3$.
i6 : R = CC[x_(1,1)..x_(2,4)]; |
i7 : F = (minors(2, genericMatrix(R, 2, 4)))_*; |
i8 : numericalImageSample(F, ideal 0_R) o8 = {{-.434457-.140153*ii, -.374655-.460763*ii, -.192528-.151059*ii, ------------------------------------------------------------------------ -.113152+.276111*ii, .222593+.353053*ii, .100773+.425004*ii}} o8 : List |
The object numericalImageSample is a method function with options.