An instance of this class represents a point on the embedded surface EX(a)
Extends: domain_pointThis is the value of $a$, where we are considering $EX(a)$.
StaticField: alpha0::scalarThis is computed from a by the set_a() method
StaticField: alpha1::scalarThis is computed from a by the set_a() method
StaticField: alpha2::scalarThis is computed from a by the set_a() method
StaticField: alpha3::scalarThis is computed from a by the set_a() method
StaticField: alpha4::scalarThis is computed from a by the set_a() method
StaticField: alpha5::scalarThis is computed from a by the set_a() method
StaticField: alpha6::scalarThis is computed from a by the set_a() method
StaticField: alpha7::scalarThis is computed from a by the set_a() method
StaticField: alpha8::scalarThis is computed from a by the set_a() method
StaticField: alpha9::scalarThis is computed from a by the set_a() method
StaticField: alpha10::scalarThis is computed from a by the set_a() method
StaticField: alpha11::scalarThis is computed from a by the set_a() method
StaticField: alpha12::scalarThis is computed from a by the set_a() method
StaticField: alpha13::scalarThis is computed from a by the set_a() method
StaticField: alpha14::scalarThis is computed from a by the set_a() method
Method: set_a(a_)::voidCoordinates of the point
Field: u::[scalar, scalar, scalar, scalar]A unit vector orthogonal to $x$, $n$ and $v$
Field: v::[scalar, scalar, scalar, scalar]A unit vector orthogonal to $x$, $n$ and $u$
Field: n::[scalar, scalar, scalar, scalar]Normalised gradient of $g$
Field: z::[scalar, scalar]Basic G-invariant functions of $x$
Field: ndg::scalarNorm of the gradient of $g$
Field: sndg::scalarSquare norm of the gradient of $g$
Field: indg::scalarInverse norm of the gradient of $g$
Field: curvature::scalarGaussian curvature of the surface
Method: fix()::voidThis method adjusts the coordinates of a point to ensure that it lies on the surface $EX(a)$ and in the fundamental domain. Moreover, if the constraint field is set to a value indicating that the point should lie on one of the curves $C_0$, $C_1$, $C_3$ or $C_5$, then the coordinates are adjusted if necessary to ensure that that holds.
This method sets this["n"] to the normalisation of the gradient of $g$ at the point this["x"]. It uses the simp() function, which simplifies symbolically unless we have any floating point subexpressions, in which case it evaluates numerically.
This method sets this["u"] and this["v"] in such a way that [this["x"],this["n"],this["u"],this["v"]] is an oriented orthonormal basis for $\mathbb{R}^4$.
This method sets the current point to lie on the curve $C_0$. As the parameter $t$ runs from $0$ to $1$, the point covers the section of $C_0$ contained in the fundamental domain $F_{16}$ starting with $v_6$ at $t=0$, and moving to $v_3$ at $t=1$.
This method sets the current point to lie on the curve $C_1$. As the parameter $t$ runs from $0$ to $1$, the point covers the section of $C_1$ contained in the fundamental domain $F_{16}$ starting with $v_0$ at $t=0$, and moving to $v_6$ at $t=1$.
This method sets the current point to lie on the curve $C_3$. As the parameter $t$ runs from $0$ to $1$, the point covers the section of $C_3$ contained in the fundamental domain $F_{16}$ starting with $v_{11}$ at $t=0$, and moving to $v_3$ at $t=1$.
This method sets the current point to lie on the curve $C_5$. As the parameter $t$ runs from $0$ to $1$, the point covers the section of $C_5$ contained in the fundamental domain $F_{16}$ starting with $v_0$ at $t=0$, and moving to $v_{11}$ at $t=1$.
This sets the current point to a randomly generated point in $F_{16}$