Skip to contents

This preserves the legacy gflow parameterization: x = scale * sin(t) + 2 * sin(2*t), y = scale * cos(t) - 2 * cos(2*t), and z = -scale * sin(3*t).

Usage

synthetic.trefoil(
  scale = 1,
  t.range = c(0, 2 * pi),
  ambient.dim = 3L,
  frame = c("canonical", "random.orthonormal", "supplied"),
  frame.algorithm = NULL,
  frame.matrix = NULL,
  offset = NULL
)

Arguments

scale

Scale applied to the first harmonic and third coordinate.

t.range

Admissible parameter interval.

ambient.dim

Ambient dimension.

frame, frame.algorithm, frame.matrix, offset

Frame parameters.

Value

A synthetic geometry component.

Examples

synthetic.trefoil(scale = 0.5, t.range = c(0, pi))
#> $kind
#> [1] "geometry"
#> 
#> $family
#> [1] "trefoil"
#> 
#> $version
#> [1] 1
#> 
#> $parameters
#> $parameters$intrinsic.dim
#> [1] 1
#> 
#> $parameters$ambient.dim
#> [1] 3
#> 
#> $parameters$canonical.dim
#> [1] 3
#> 
#> $parameters$scale
#> [1] 0.5
#> 
#> $parameters$t.range
#> [1] 0.000000 3.141593
#> 
#> $parameters$frame
#> [1] "canonical"
#> 
#> $parameters$frame.algorithm
#> NULL
#> 
#> $parameters$frame.matrix
#> NULL
#> 
#> $parameters$offset
#> [1] 0 0 0
#> 
#> 
#> attr(,"class")
#> [1] "synthetic_trefoil_geometry" "synthetic_geometry"        
#> [3] "synthetic_component"