Search This Blog

Frénet-Serret Formulas

Frénet-Serret Formulas

I found these formulas in the Vector Calculus book by Baxandall and Liebeck. They are in chapter 2.8, page 73. These formulas are pretty important in the area of differential geometry. See also this Wikipedia page on the same topic. In the text below the following standard notation is used: $T$ is the unit tangent vector, $N$ is the principal normal vector, $B$ is the binormal vector (these three are in fact vector-valued functions); $\kappa$ is the curvature, $\tau$ is the torsion (these two are in fact scalar-valued functions). The associated collection ($T$, $N$, $B$, $\kappa$, $\tau$) is called the Frénet–Serret apparatus. Intuitively, curvature measures the failure of a curve to be a straight line, while torsion measures the failure of a curve to be planar.


Case #1. Suppose that the function $f(s): E \subseteq \mathbb{R} \rightarrow \mathbb{R^3}$ is a three times differentiable path-length parametrization of a curve in $\mathbb{R^3}$ and also suppose that the curvature $\kappa_f(s) \neq 0$ for all $s \in E$. Then 

$T'_f(s) = \kappa_f(s) N_f(s)$ 

$N'_f(s) = -\kappa_f(s) T_f(s) + \tau_f(s) B_f(s)$ 

$B'_f(s) = -\tau_f(s) N_f(s)$ 

In short one can also write 

$T' = \kappa N$ 

$N' = -\kappa T + \tau B$ 

$B' = -\tau N$ 

The three vectors $T, N, B$ are unit vectors and they form (in this order) a right-hand orthonormal basis of $\mathbb{R^3}$. This means that $B = T \times N$ for all $s \in E$. 


Case #2. Suppose that the function $f(s): E \subseteq \mathbb{R} \rightarrow \mathbb{R^3}$ is a three times differentiable smooth parametrization of a curve in $\mathbb{R^3}$ and also suppose that the curvature $\kappa_f(s) \neq 0$ for all $s \in E$. Then 

$T'_f(s) = v(s) \kappa_f(s) N_f(s)$ 

$N'_f(s) = v(s) [-\kappa_f(s) T_f(s) + \tau_f(s) B_f(s)]$ 

$B'_f(s) = -v(s) \tau_f(s) N_f(s)$ 

where $v(s) = || f'(s) || $ for all $s \in E$

In short one can also write 

$T' = v \kappa N$ 

$N' = v (-\kappa T + \tau B)$ 

$B' = -v \tau N$  

In this case again the three vectors $T, N, B$ are unit vectors and they form (in this order) a right-hand orthonormal basis of $\mathbb{R^3}$. This means that $B = T \times N$ for all $s \in E$. 


Note: In the first case $s$ is a path-length parameter i.e $|| f'(s) || = 1$ for all $s \in E$. The second case is more general since in that case we do not require $s$ to be a path-length parameter, i.e. in that case we may have $|| f'(s) || \ne 1$ for some $s \in E$ or for all $s \in E$. 


Optimization with one or more equality constraints

This post is based on some theory that I was reading, and on some problems/exercises that I was solving which were related to optimization (maximization/minimization) problems.


Procedure for solving a two-variable maximization problem with an equality constraint

Let $f(x,y)$ and $g(x,y)$ be real-valued functions of two variables defined on a set $S \subseteq \mathbb{R}^2$ that are continuously differentiable on the interior of $S$, and let $c \in \mathbb{R}$ be a number. If the problem $\max_{(x,y) \in S} f(x, y)$ subject to $g(x, y) = c$ has a solution, it may be found as follows. 

1) Find all the values of $(x, y, \lambda)$ such that 

    (a) $(x, y)$ is an interior point of $S$ and 

    (b) $(x, y, \lambda)$ satisfies the first-order conditions and the constraint, 

      i.e. the points $(x, y, \lambda)$ for which $f'_{x}(x, y) - \lambda \cdot g'_{x}(x, y) = 0$, $f'_{y}(x, y) - \lambda \cdot g'_{y}(x, y) = 0$, and $g(x, y) = c$, 

      i.e. the points $(x, y, \lambda)$ for which $\nabla{f}(x,y) = \lambda \cdot \nabla{g}(x,y)$, and $g(x, y) = c$. 

2) Find all the points $(x, y)$ that satisfy $g'_x(x, y) = 0, g'_y(x, y) = 0$, and $g(x, y) = c$. Note that usually for most problems, there are no such values of $(x, y)$. In particular, if $g$ is linear there are no such values of $(x, y)$.   

3) If the set $S$ has any boundary points, find all the points that solve the problem $\max_{(x,y) \in S} f(x, y)$ subject to the two conditions $g(x, y) = c$ and $(x, y)$ is a boundary point of $S$. 

The points $(x, y)$ that you have found in steps 1), 2), 3) for which $f(x, y)$ is largest are the solutions of the optimization problem. 

A variant of this procedure in which the last step involves choosing the points $(x, y)$ at which $f(x, y)$ is smallest may be used to solve the analogous minimization problem. 


Procedure for solving a three-variable maximization problem with an equality constraint

Let $f(x,y,z)$ and $g(x,y,z)$ be real-valued functions of three variables defined on a set $S \subseteq \mathbb{R}^3$ that are continuously differentiable on the interior of $S$, and let $c \in \mathbb{R}$ be a number. If the problem $\max_{(x,y,z) \in S} f(x, y, z)$ subject to $g(x, y, z) = c$ has a solution, it may be found as follows. 

1) Find all the values of $(x, y, z, \lambda)$ such that 

    (a) $(x, y, z)$ is an interior point of $S$ and 

    (b) $(x, y, z, \lambda)$ satisfies the first-order conditions and the constraint, 

      i.e. the points $(x, y, z, \lambda)$ for which $f'_{x}(x, y, z) - \lambda \cdot g'_{x}(x, y, z) = 0$, $f'_{y}(x, y, z) - \lambda \cdot g'_{y}(x, y, z) = 0$, $f'_{z}(x, y, z) - \lambda \cdot g'_{z}(x, y, z) = 0$, and $g(x, y, z) = c$, 

      i.e. the points $(x, y, z, \lambda)$ for which $\nabla{f}(x,y, z) = \lambda \cdot \nabla{g}(x,y,z)$, and $g(x, y, z) = c$. 

2) Find all the points $(x, y, z)$ that satisfy $g'_x(x, y, z) = 0, g'_y(x, y, z) = 0, g'_z(x, y, z) = 0$, and $g(x, y, z) = c$. Note that usually for most problems, there are no such values of $(x, y, z)$. In particular, if $g$ is linear there are no such values of $(x, y, z)$.  

3) If the set $S$ has any boundary points, find all the points that solve the problem $\max_{(x,y,z) \in S} f(x, y, z)$ subject to the two conditions $g(x, y, z) = c$ and $(x, y, z)$ is a boundary point of $S$. 

The points $(x, y, z)$ that you have found in steps 1), 2), 3) for which $f(x, y, z)$ is largest are the solutions of the optimization problem. 

A variant of this procedure in which the last step involves choosing the points $(x, y, z)$ at which $f(x, y, z)$ is smallest may be used to solve the analogous minimization problem. 


Procedure for solving a three-variable maximization problem with two equality constraints

Let $f(x,y,z)$, $g(x,y,z)$, $h(x,y,z)$ be real-valued functions of three variables defined on a set $S \subseteq \mathbb{R}^3$ that are continuously differentiable on the interior of $S$, and let $c_1, c_2 \in \mathbb{R}$ be two numbers. If the problem $\max_{(x,y,z) \in S} f(x, y, z)$ subject to $g(x, y, z) = c_1$ and $h(x, y, z) = c_2$ has a solution, it may be found as follows. 

1) Find all the values of $(x, y, z, \lambda, \mu)$ such that 

    (a) $(x, y, z)$ is an interior point of $S$, 

    (b) $\nabla{g}(x,y,z)$ and $\nabla{h}(x,y,z)$ are linearly independent, and 

    (c) $(x, y, z, \lambda, \mu)$ satisfies the first-order conditions and the constraints, 

      i.e. the points $(x, y, z, \lambda, \mu)$ for which $\nabla{f}(x,y, z) = \lambda \cdot \nabla{g}(x,y,z) + \mu \cdot \nabla{h}(x,y,z)$, and $g(x, y, z) = c_1$, and $h(x, y, z) = c_2$. 

2) Find all the points $(x, y, z)$ for which $\nabla{g}(x,y,z)$ and $\nabla{h}(x,y,z)$ are linearly dependent, and $g(x, y, z) = c_1$ and $h(x, y, z) = c_2$ 

       i.e. the points $(x, y, z, \lambda, \mu)$ for which $\lambda \cdot \nabla{g}(x,y,z) + \mu \cdot \nabla{h}(x,y,z) = (0,0,0)$, $(\lambda, \mu) \ne (0,0)$, and $g(x, y, z) = c_1$, and $h(x, y, z) = c_2$. 

3) If the set $S$ has any boundary points, find all the points that solve the problem $\max_{(x,y,z) \in S} f(x, y, z)$ subject to the conditions $g(x, y, z) = c_1$, $h(x, y, z) = c_2$, and $(x, y, z)$ is a boundary point of $S$. 

The points $(x, y, z)$ that you have found in steps 1), 2), 3) for which $f(x, y, z)$ is largest are the solutions of the optimization problem. 

A variant of this procedure in which the last step involves choosing the points $(x, y, z)$ at which $f(x, y, z)$ is smallest may be used to solve the analogous minimization problem. 



See also: 

This math page by Martin Osborne 

This math page again by Martin Osborne 

This Math SE post by smcc


Plotting the Chebyshev polynomials of the second kind in Python

Test001