1. Curves¶
1.1. Types¶
We can categorize the curves by various aspects.
For instance, the dimension of the space where we describe the curve. The dimension number is usually an integer which is greater than 1. According to the dimension, we call them planar or spatial curve.
Based on the length of the curve we can speak about finite length and infinite curves.
In the case of finite length curves, we can categorize them as open and closed curves.
The differentiability and periodicity also makes possible to classify them.
We can also consider the self intersections of the curves.
Note
The topic of fractal curves and space filling curves are a separate, but very interesting topic, where the previous, general statements not necessary holds.
1.2. Description methods¶
In the case of planar curves, we have the following description methods:
Explicit: \(y = f(x)\),
Implicit: \(F(x, y) = 0\),
Parametric: \([x(t), y(t)]\),
where \(x, y, t \in \mathbb{R}\).
In the case of spatial curves, we cannot use the explicit form, therefore the followings have remained:
Implicit: \(F(x, y, z) = 0\),
Parametric: \([x(t), y(t), z(t)]\),
where \(x, y, z, t \in \mathbb{R}\).
Example
Let describe the straight line, as a planar and as a spatial curve!
In the case of planar curve:
We can use the form \(y = m \cdot x + b\), where \(m, b \in \mathbb{R}\).
In the implicit case \(F(x, y) = m \cdot x + b - y\).
For the parametric form, we have to know a \((x_0, y_0)\) point of the curve, and the direction \((\Delta x, \Delta y)\), which results the points in the function of parameter \(t\) as \([x_0 + \Delta x \cdot t, y_0 + \Delta y \cdot t]\).
In the case of spatial curve:
A straight line, which overlaps the axis \(x\) can be described by an implicit form, as \(F(x, y, z) = y^2 + z^2\). (We can use arbitrary function instead of the square, which guarantee that, only in the case \(y = z = 0\) will results that \(F(x, y, z) = 0\). For instance, the \(F(x, y, z) = |y| + |z|\) is also an appropriate choice.) By rotating and translating the points in the space, we can described arbitrary straight lines in implicit form.
For the parametric form, we have to know a \((x_0, y_0, z_0)\) point of the curve, and the direction \((\Delta x, \Delta y, \Delta z)\), which results the points in the function of parameter \(t\) as \([x_0 + \Delta x \cdot t, y_0 + \Delta y \cdot t, z_0 + \Delta z \cdot t]\).
Some notes about the description methods:
We can convert the explicit form to an implicit one easily by \(F(x, y) = f(x) - y\).
In the implicit case, we can check that an arbitrary point belongs to the curve or not. However, the traversal of the points of the curve is problematic in general.
The parametric curve has a practical significance, because it is appropriate for planar and spatial curves also.
We can sure about that, the parametric form defines a curve (which may have some intersection point). It is not necessary in the case of implicit form, because the formalism is able to describe closed planar shapes and surfaces in the space.
1.2.1. Differential geometric definition¶
We call the set of point \(\textbf{r}(t) = [x_1(t), \ldots, x_n(t)], t \in [a, b]\) a curve, when the function \(\textbf{r}\)
continuous into the two directions,
continuously differentiable by \(t\),
\(\dot{\textbf{r}} \neq 0, \forall t \in [a, b]\).
1.3. Parametric curves¶
We can define a continuous function in arbitrary dimensional space as \(\mathbb{R} \rightarrow \mathbb{R}^n\), which is able to describe the points of a curve. We usually denote its parameter as \(t\) or \(u\). (The notation \(t\) refers to the time, because intuitively we can traverse the points of the curve at some speed.)
The range of the parameter can be finite or infinite.
It is possible to define the same curve in different parametric forms.
1.3.1. Arc length¶
The length is one of the most natural property of the curve. We call it arc length. The length of a curve \(\textbf{r}(t), t \in [a, b]\) between parameters \(a\) and \(t\) can be calculated a
To see it, let divide the interval \([a, b]\) into \(n\) equidistant parts. Let
which results the \(i\)-th division point as \(t_i = a + i \Delta t\). At parameter \(t_i\) the vector to the direction of \(t_{i+1}\) is
where \(i = 0, 1, 2, \ldots, n\). The length of this vector is \(\lVert\Delta \textbf{r}_i\rVert\). Therefore, the length of the approximational segmented line is
By increasing the value of \(n\), this approximation will approach the arc length, in other words
which results that
Example
Let approximate the arc length of the curve \(y = \sin^2(x) + \cos(x)\) (given in explicit form) above the interval \(x \in [1, 4]\)!
At first, let convert the curve to a parametric form:
\[\begin{split}\textbf{r}(t) = \begin{bmatrix} t \\ \sin^2(t) + \cos(t) \end{bmatrix}.\end{split}\]
The derivative of the curve by \(t\) is
\[\begin{split}\dot{\textbf{r}}(t) = \begin{bmatrix} 1 \\ 2 \cdot \sin(t) \cdot \cos(t) - \sin(t) \end{bmatrix}.\end{split}\]
For calculating the arc length, we have to write the euclidean norm (in the assumption that the space is an euclidean space):
\[s(t) = \int_{1}^{4} \! \lVert \dot{\textbf{r}}(t)\rVert \, \mathrm{d}t = \int_{1}^{4} \! \sqrt{1 + (2 \cdot \sin(t) \cdot \cos(t) - \sin(t))^2} \, \mathrm{d}t.\]
We can approximate the value of the integral by numerical integration, for example by using the following JavaScript source code:
function calc_integrand(t) { let s = Math.sin(t); let c = Math.cos(t); return Math.sqrt(1 + Math.pow(2 * s * c - s, 2)); } const N = 100000; let s = 0.0; for (let i = 0; i < N; i++) { t = (i / N) * 3 + 1; s += calc_integrand(t); } s *= (3.0 / N); console.log(s);
According to this calculation, the length of the curve is around 4.55.
1.3.2. Frennet-Serret Frame¶
In the case of spatial curves, we can speak about the Frennet-Serret Frame. It is a special coordinate system, which belongs to a point of the curve. We can determine it for any point of the curve, in the assumption that
the curve is continuously differentiable at least 2 times, and
\(\ddot{\textbf{r}}(u) \neq \textbf{0}, \forall u \in [a, b]\).
The unit vectors of this coordinate system
the tangent: \(\textbf{t}(u) = \dfrac{\dot{\textbf{r}}(u)}{\lVert\dot{\textbf{r}}(u)\rVert}\),
the binormal: \(\textbf{b}(u) = \dfrac{\dot{\textbf{r}}(u) \times \ddot{\textbf{r}}(u)}{\lVert\dot{\textbf{r}}(u) \times \ddot{\textbf{r}}(u)\rVert}\) and
the normal: \(\textbf{n}(u) = \textbf{b}(u) \times \textbf{t}(u)\),
which results a right hand Déscartes coordinate system.
The vectors of them defines three planes, namely
\((\textbf{b}(u), \textbf{n}(u))\): normal plane,
\((\textbf{t}(u), \textbf{n}(u))\): osculating plane, and
\((\textbf{t}(u), \textbf{b}(u))\): rectifying plane.
1.3.3. Tangent line¶
A tangent line belongs to the points of the curve. Let consider it as a fixed \(\textbf{r}(t_0)\) point at the parameter \(t_0\)!
The given point is necessarily belongs to the curve and the straight line. (It is possible to have more common points.)
The direction of the straight line is the same as the direction of the tangent vector.
The tangent line is independent from the length of the tangent vector, therefore we have a free parameter \(\lambda \in \mathbb{R}, \lambda \neq 0\).
The parametric form of the tangent line is:
where \(\textbf{e}: \mathbb{R} \rightarrow \mathbb{R}^n\).
1.3.4. Curvature, osculating circle¶
In the consecutive points (except the special case of the straight line) the direction of the tangent vector is changing. The speed of this direction change (in other words, the deviation from the straight line) can be measured by the curvature.
Let consider a curve by using its natural (arc length) parametrization as \(\textbf{r}(s)\).
Note
This kind of parametrization is necessary here, for describing the curve regardless of its further, possible parametrization which can affects the speed of the traversal.
Let choose parameters \(s\) and \(s_0\). Let denote the angle of the tangent vectors at these points as \(\Delta \alpha\), moreover let \(\Delta s = |s - s_0|\)! The curvature can be calculated at the point \(s_0\) as
In the case of arc length parametrization the limit at the given point can be expressed as:
For an arbitrary parametrization by \(t\):
Some properties of the curvature:
It is invariant to isometries of the curve.
The curvature of the straight line is 0.
Only the straight line and the circle has constant curvature.
In the case of planar curves, we can consider signed curvature. The point, where the curvature change its sign is called inflexion point.
The osculating circle of the curve at the point \(t\) has the following properties:
Its plane is the osculating plane at the point \(t\).
Its radius is \(\rho (t) = \dfrac{1}{\kappa (t)}\).
Its center is \(\textbf{c}(t) = \textbf{r}(t) + \rho(t)\textbf{n}(t)\).
We consider it only when the curvature is not zero. (In the case of \(\kappa = 0\), it results an infinite radius circle, which is a straight line.)
1.3.5. Torsion¶
When we analyzie a planar curve in the 3 dimensional space, its binormal vectors will be parallel. (In other words, their osculating planes will be the same.) We can consider a curve as a real spatial curve, when the direction of the binormal vectors will change in the consecutive points.
We can measure the deviation of the curve from the planar curve by the so called torsion.
Let assume that we have a curve with its natural parametrization: \(\textbf{r}(s)\)! Let examine the curve at the parameters \(s\) and \(s_0\)! Let \(\Delta \beta\) the angle of the binormals \(\textbf{b}(s)\) and \(\textbf{b}(s_0)\), moreover \(\Delta s = |s - s_0|\)!
We define the torsion at the \(s_0\) point of the curve as:
In the case of natural parametrization, it also holds:
Note
The notation \(\langle . \rangle\) means the triple product of the vectors:
For an arbitrary parametrization by using \(t\):
Properties:
A curve is a planar curve if and only if its torsion is 0 for each points.
There are only three curves which has constant torsion: the straight line, the circle and the helix.* The binormal vector is rotating around the tangent vector by the speed \(\tau(s)\).
1.4. Theoretical questions¶
What are the commonly used description methods of the planar and spatial curves?
What is the differential geometric definition of the curves?
How can we define and calculate the arc length?
What is the Frennet-Serret Frame and what are their vectors and planes?
What is the definition of the tangent line?
What is the definition of the curvature?
What is the definition of the osculating circle?
What is the definition of the torsion?
1.5. Numerical exercises¶
Let given a parametric curve.
Let calculate the point of the curve at a given parameter value!
Let determine the tnb coordinate system (normalized to unit length)!
Let calculate the curvature of the curve at the given point!
Let calculate the center and the radius of the osculating circle!
Let determine the torsion of the curve!
Let write the definite integral for calculating the curve length on the interval \([a, b]\)!
1.6. Programming exercises¶
1.6.1. Half circle arc¶
Let describe a half circle arc!
Let write its explicit, implicit and parametric form!
Let visualize the arc (on paper and by using a software for plotting)!
1.6.2. Curve visualization¶
Let examine the possible methods of curve visualization!
How can we map the spatial curve to the plane?
How can we plot the curve on a rasterized display?
Let thinking about the visualization of straight line and circle!
What kind of softwares are able to plot curves?
Let plot the following curves!
Let write their parametric forms!
1.6.3. Tangent line and normal vectors¶
Calculate the
tangent line and
the normal vector
at an arbitrary point of the curves of the previous exercise!
Let draw the results!
Let write the parametric form of the tangent line!
1.6.4. Arc length¶
Approximate the length of the curves (from the previous exercises) above an arbitrary choosen interval!
Let write the definite integral of the calculation!
Let check the result by using various kind of numerical integration and approximative segmented line!
Let check, how the approximation changes in the function of divisions!
Let define a function (in your preferred programming language) which is able to provide an approximation directly from the parametric form of the curve!
1.6.5. Curvature and osculating circle¶
Let calculate the curvature and the osculating circle at arbitrary chosen points of the previous curves!
Let plot the results!
1.6.6. Conical helix¶
Let write the parametric form of a conical helix, which
is between the straight lines \(x = z, x = -z, y = z, y = -z\), and
the coordinate \(z\) of the curve point will increase by 1 after a full period of parameter \(t\).
Let accomplish the following tasks!
Try to plot the curve!
Let calculate the Frennet-Serret Frame of the curve at the parameter \(t = 10\)!
Let approximate the arc length on the interval \(t \in [8, 10]\)! (Write the infinite integral and approximate numerically!)
Let calculate the curvature, osculating circle and torsion at the parameter \(t = 10\)!
1.6.7. Spatial curve¶
Let consider the following spatial curve:
Let plot the curve!
Let write the Frenet-Serret Frame at an arbitrary parameter of the curve!
Draw its vectors on the plot of the curve!
Let calculate the curvature, the osculating circle and the torsion!
Let write the integral for calculating the arc length!
Let approximate the length of the curve!
Let assume that we use a parameter \(\lambda\) instead of the constant 10! Let check the effect of different \(\lambda\) values!
Let describe the surface which contains any curve for any \(\lambda \in \mathbb{R}\) parameters!