Wolfram Function Repository
Instantuse addon functions for the Wolfram Language
Function Repository Resource:
Produce random spatial graphs by sprinkling points into a Riemannian manifold with a specified intrinsic algebraic curvature function
ResourceFunction["IntrinsicCurvedManifoldToGraph"][func,{x,x_{min},x_{max}},n] produces a random sprinkling of n points into a 1dimensional Riemannian manifold with intrinsic algebraic curvature given by func as a function of x, assuming a discreteness scale of 1. 

ResourceFunction["IntrinsicCurvedManifoldToGraph"][func,{x,x_{min},x_{max}},disc,n] produces a random sprinkling of n points with discreteness scale disc into a 1dimensional Riemannian manifold with intrinsic algebraic curvature given by func as a function of x. 

ResourceFunction["IntrinsicCurvedManifoldToGraph"][func,{x,…},{y,…},…,n] produces a random sprinkling of n points into a higherdimensional Riemannian manifold with multivariable intrinsic algebraic curvature function func (in variables x,y,…, etc.), assuming a discreteness scale of 1. 

ResourceFunction["IntrinsicCurvedManifoldToGraph"][func,{x,…},{y,…},…,disc,n] uses discreteness scale disc. 

ResourceFunction["IntrinsicCurvedManifoldToGraph"][…,"prop"] gives the property "prop" for the Riemannian manifold sprinkling with the specified intrinsic algebraic curvature function. 
"SpatialGraph"  spatial graph with vertex coordinates given by the underlying manifold coordinates 
"Points"  plot of the sprinkled points only (without spatial edges) 
"PointsList"  list of the manifold coordinates of all sprinkled points 
"DiscretenessScale"  discreteness scale of the sprinkling 
"PointsCount"  number of sprinkled points 
"Dimensions"  number of dimensions in the continuum manifold approximation 
"EdgeCount"  total number of spatial edges 
"PureSpatialGraph"  spatial graph with vertex coordinate information removed 
"Properties"  list of properties 
A 2variable algebraic curvature function:
In[1]:= 

Out[1]= 

Produce a random sprinkling of 100 points into a 2dimensional Riemannian manifold with the specified intrinsic curvature function, with discreteness scale 0.5:
In[2]:= 

Out[2]= 

Show the spatial graph:
In[3]:= 

Out[3]= 

Show the pure spatial graph (with vertex coordinate information removed):
In[4]:= 

Out[4]= 

A slightly more complicated 2variable algebraic curvature function:
In[5]:= 

Out[5]= 

Produce a random sprinkling of 200 points into a 3dimensional Riemannian manifold with the specified intrinsic curvature function, with discreteness scale 0.3:
In[6]:= 

Out[6]= 

Show the spatial graph:
In[7]:= 

Out[7]= 

Show the pure spatial graph (with vertex coordinate information removed):
In[8]:= 

Out[8]= 

Plot the positions of the sprinkled points only (without spatial edges):
In[9]:= 

Out[9]= 

A 3variable algebraic curvature function:
In[10]:= 

Out[10]= 

Produce a random sprinkling of 300 points into a 3dimensional Riemannian manifold with the specified intrinsic curvature function, with discreteness scale 0.4:
In[11]:= 

Out[11]= 

Plot the positions of the sprinkled points only (without spatial edges):
In[12]:= 

Out[12]= 

Show the spatial graph:
In[13]:= 

Out[13]= 

Show the pure spatial graph (with vertex coordinate information removed):
In[14]:= 

Out[14]= 

By default, the discreteness scale is assumed to be equal to 1:
In[15]:= 

Out[15]= 

Show the spatial graph:
In[16]:= 

Out[16]= 

Sprinklings can be produced in 1dimensional Riemannian manifolds:
In[17]:= 

Out[17]= 

Show the spatial graph:
In[18]:= 

Out[18]= 

Produce a sprinkling in a 2dimensional Riemannian manifold:
In[19]:= 

Out[19]= 

Show the spatial graph:
In[20]:= 

Out[20]= 

Produce a sprinkling in a 3dimensional Riemannian manifold:
In[21]:= 

Out[21]= 

Show the spatial graph. Note that, unlike the resource function FlatManifoldToGraph, IntrinsicCurvedManifoldToGraph does not support higherdimensional sprinklings:
In[22]:= 

Out[22]= 

Properties can be requested directly from IntrinsicCurvedManifoldToGraph:
In[23]:= 

Out[23]= 

Produce a random sprinkling of 200 points into a 2dimensional Riemannian manifold with a complicated algebraic curvature function, with discreteness scale 0.3:
In[24]:= 

Out[24]= 

Show the complete list of properties:
In[25]:= 

Out[25]= 

Show the spatial graph:
In[26]:= 

Out[26]= 

Plot the positions of the sprinkled points only (without spatial edges):
In[27]:= 

Out[27]= 

Show a complete list of manifold coordinates for the sprinkled points:
In[28]:= 

Out[28]= 

Show the discreteness scale:
In[29]:= 

Out[29]= 

Show the number of dimensions in the background manifold:
In[30]:= 

Out[30]= 

Show the total number of spatial edges:
In[31]:= 

Out[31]= 

Show the pure spatial graph (with vertex coordinate information removed):
In[32]:= 

Out[32]= 

This work is licensed under a Creative Commons Attribution 4.0 International License