Tangential/normal basis
Consider a particle moving with position vector $\vec{r}$ and corresponding velocity $\vec{v}$ and acceleration $\vec{a}$. The tangential/normal basis $\hat{e}_t,\hat{e}_n,\hat{e}_b$ is:
Tangential/normal basis vectors.
\[\begin{aligned} \hat{e}_t &= \hat{v} & &\text{tangential basis vector} \\ \hat{e}_n &= \frac{\dot{\hat{e}}_t}{\|\dot{\hat{e}}_t\|} = \frac{\operatorname{Comp}(\vec{a},\vec{v})}{\|\operatorname{Comp}(\vec{a},\vec{v})\|} & &\text{normal basis vector} \\ \hat{e}_b &= \hat{e}_t \times \hat{e}_n & &\text{binormal basis vector} \\ \end{aligned}\]
These equations are definitions of the basis vectors, so the only thing to derive is the alternative formula for $\hat{e}_n$. Using the definition of $\hat{e}_t$ above and #rvc-eu, we see that \[\dot{\hat{e}}_t = \dot{\hat{v}} = \frac{1}{v} \operatorname{Comp}(\dot{\vec{v}}, \vec{v}) = \frac{1}{v} \operatorname{Comp}(\vec{a}, \vec{v}).\] Normalizing both sides gives the desired expression: \[\frac{\dot{\hat{e}}_t}{\|\dot{\hat{e}}_t\|} = \frac{\frac{1}{v} \operatorname{Comp}(\vec{a}, \vec{v})}{ \left\|\frac{1}{v} \operatorname{Comp}(\vec{a}, \vec{v})\right\|} = \frac{\frac{1}{v} \operatorname{Comp}(\vec{a}, \vec{v})}{ \frac{1}{v} \|\operatorname{Comp}(\vec{a}, \vec{v})\|} = \frac{\operatorname{Comp}(\vec{a}, \vec{v})}{ \|\operatorname{Comp}(\vec{a}, \vec{v})\|}.\]
The tangential basis vector $\hat{e}_t$ points tangential to the path, the normal basis vector $\hat{e}_n$ points perpendicular (normal) to the path towards the instantaneous center of curvature, and the binormal basis vector $\hat{e}_b$ completes the right-handed basis.
| Show: | |
Tangential/normal basis associated with movement around a curve in 3D. Observe that the velocity $\vec{v}$ is always in the $\hat{e}_t$ direction and that the acceleration $\vec{a}$ always lies in the $\hat{e}_t,\hat{e}_n$ plane (the osculating plane). The center of curvature and osculating circle are defined below.
Path length
The distance along the path is $s$, which can be found by integrating the speed $v$ with respect to time. Correspondingly, the speed is the derivative of path length.
Path length $s$ and speed $v$.
\[\begin{aligned} v &= \dot{s} \\ s &= \int_0^t v(\tau) \,d\tau \end{aligned}\]
Either equation can serve as the definition of path length, and then the other equation is obtained by the fundamental theorem of calculus, with the assumption that the path length is measured from the position at time $t = 0$.
Show:
Path length $s$ and speed $v$ shown for motion back and forth along a curve. Observe that the path length is always increasing, even when moving “backwards”, as speed cannot be negative. For ease of visualization, this figure resets the path length to zero when the particle returns to the starting point.
When differentiating geometric quantities related to paths, it is often convenient to differentiate with respect to path length rather than with respect to time. These derivatives are related by:
Derivatives with respect to path length $s$ and time $t$.
\[\begin{aligned} \frac{d}{dt} &= v \frac{d}{ds} \\ \frac{d}{ds} &= \frac{1}{v} \frac{d}{dt} \end{aligned}\]
This is essentially a re-statement of the chain rule. In particular, the first equation is: \[\frac{d}{dt} = \frac{ds}{dt} \frac{d}{ds} = \dot{s} \frac{d}{ds} = v \frac{d}{ds}.\] The second equation is a simple re-arrangement.
Curvature and torsion
Curvature and torsion.
To better understand the geometry of the tangential/normal basis, we can use the curvature $\kappa$ to describe the curving of the path, and the torsion $\tau$ to describe the rotation of the basis about the path. These quantities are defined by:
\[\begin{aligned} \kappa &= \frac{d\hat{e}_t}{ds} \cdot \hat{e}_n = \frac{1}{v} \dot{\hat{e}}_t \cdot \hat{e}_n & &\text{curvature} \\ \rho &= \frac{1}{\kappa} & &\text{radius of curvature} \\ \tau &= -\frac{d\hat{e}_b}{ds} \cdot \hat{e}_n = -\frac{1}{v} \dot{\hat{e}}_b \cdot \hat{e}_n & &\text{torsion} \\ \sigma &= \frac{1}{\tau} & &\text{radius of torsion} \end{aligned}\]
These equations are definitions, so we need only check that the two expressions for each of $\kappa$ and $\tau$ are equivalent. This follows immediately, however, from the chain-rule conversions #rkt-ea between $d/ds$ and $d/dt$.
The radius of curvature $\rho$ is the radius of equivalent circular motion, and the torsion determines the rate of rotation of the osculating plane, as described below in Section #rkt-so.
Basis derivatives and angular velocity
As the point $P$ moves along its path, the associated tangential/normal basis rotates with an angular velocity vector $\omega$ given by:
Angular velocity of the tangential/normal basis.
\[\begin{aligned} \vec{\omega} &= v\tau \,\hat{e}_t + v \kappa \,\hat{e}_b \end{aligned}\]
We start by writing the angular velocity in the tangential/normal basis, giving: \[\vec{\omega} = \omega_t\,\hat{e}_t + \omega_n\,\hat{e}_n + \omega_b\,\hat{e}_b.\] Now the basis vector derivatives are given by the cross product by $\vec{\omega}$ from #rkr-ew, so we can evaluate the expressions #rkt-ek for curvature and torsion to give: \[\begin{aligned} \kappa &= \frac{1}{v} \dot{\hat{e}}_t \cdot \hat{e}_n \\ &= \frac{1}{v} (\vec{\omega} \times \hat{e}_t) \cdot \hat{e}_n \\ &= \frac{1}{v} (\omega_b\,\hat{e}_n - \omega_n\,\hat{e}_b) \cdot \hat{e}_n \\ &= \frac{1}{v} \omega_b \end{aligned}\] and \[\begin{aligned} \tau &= -\frac{1}{v} \dot{\hat{e}}_b \cdot \hat{e}_n \\ &= -\frac{1}{v} (\vec{\omega} \times \hat{e}_b) \cdot \hat{e}_n \\ &= -\frac{1}{v} (\omega_n\,\hat{e}_t - \omega_t\,\hat{e}_n) \cdot \hat{e}_n \\ &= \frac{1}{v} \omega_t. \end{aligned}\] Rearranging the final expressions in each case gives $\omega_b = v\kappa$ and $\omega_t = v\tau$. From the definition #rkt-eb of $\hat{e}_n$, we see that \[\begin{aligned} \hat{e}_n &= \frac{\dot{\hat{e}}_t}{\|\dot{\hat{e}}_t\|} \\ \hat{e}_n \cdot \hat{e}_b &= \frac{1}{\|\dot{\hat{e}}_t\|} (\vec{\omega} \times \hat{e}_t) \cdot \hat{e}_b \\ 0 &= \frac{1}{\|\dot{\hat{e}}_t\|} (\omega_b\,\hat{e}_n - \omega_n\,\hat{e}_b) \cdot \hat{e}_b \\ &= - \frac{1}{\|\dot{\hat{e}}_t\|} \omega_n. \end{aligned}\] from which we conclude that $\omega_n = 0$, giving us all three components of $\vec{\omega}$.
Knowing the angular velocity vector of the tangential/normal basis allows us to easily compute the time derivatives of each tangential/normal basis vector, as follows:
Tangential/normal basis vector derivatives.
\[\begin{aligned} \dot{\hat{e}}_t &= \phantom{-v\kappa\,\hat{e}_t - } v\kappa\,\hat{e}_n \\ \dot{\hat{e}}_n &= -v\kappa\,\hat{e}_t \phantom{ - v\kappa\,\hat{e}_n + } + v\tau\,\hat{e}_b \\ \dot{\hat{e}}_b &=\phantom{-v\kappa\,\hat{e}_t } - v\tau\,\hat{e}_n \end{aligned}\]
We can use the expression #rkt-ew for $\vec{\omega}$ together with #rkr-ew to find the basis vector derivatives: \[\begin{aligned} \dot{\hat{e}}_t &= \vec{\omega} \times \hat{e}_t = (v\tau \,\hat{e}_t + v \kappa \,\hat{e}_b) \times \hat{e}_t = v \kappa \,\hat{e}_n \\ \dot{\hat{e}}_n &= \vec{\omega} \times \hat{e}_n = (v\tau \,\hat{e}_t + v \kappa \,\hat{e}_b) \times \hat{e}_n = - v \kappa \,\hat{e}_t + v \tau \,\hat{e}_b \\ \dot{\hat{e}}_b &= \vec{\omega} \times \hat{e}_b = (v\tau \,\hat{e}_t + v \kappa \,\hat{e}_b) \times \hat{e}_b = -v \tau \,\hat{e}_n. \end{aligned}\]
The tangential/normal basis is also called the Frenet–Serret frame after Jean Frédéric Frenet and Joseph Alfred Serret, who discovered it independently around 1850. The equations #rkt-ed for the basis derivatives are often called the Frenet-Serret formulas, typically written in terms of $s$ derivatives: \[\begin{aligned} \frac{d\hat{e}_t}{ds} &= \phantom{-\kappa\,\hat{e}_t - } \kappa\,\hat{e}_n \\ \frac{d\hat{e}_n}{ds} &= -\kappa\,\hat{e}_t \phantom{ - \kappa\,\hat{e}_n + } + \tau\,\hat{e}_b \\ \frac{d\hat{e}_b}{ds} &=\phantom{-\kappa\,\hat{e}_t } - \tau\,\hat{e}_n. \end{aligned}\]
If we divide the angular velocity vector #rkt-ew by $v$ then we obtain the vector \[\frac{1}{v} \vec{\omega} = \tau\,\hat{e}_t + \kappa\,\hat{e}_b,\] which is known as the Darboux vector after its discoverer, Jean Gaston Darboux.
Kinematic relations
While the motion of a point $P$ along a path defines the tangential/normal basis, we can also use this basis to express the kinematics of $P$ itself, giving the following expressions for velocity and acceleration.
Velocity and acceleration in tangential/normal basis.
\[\begin{aligned} \vec{v} &= \dot{s} \, \hat{e}_t \\ \vec{a} &= \ddot{s} \, \hat{e}_t + \frac{\dot{s}^2}{\rho} \hat{e}_n \end{aligned}\]
From the definition #rkt-eb of $\hat{e}_t$ we see that $v\,\hat{e}_t = v\hat{v} = \vec{v}$, which is the first equation above. Differentiating this and using $v = \dot{s}$ from #rkt-es gives \[\begin{aligned} \vec{v} &= \dot{s}\,\hat{e}_t \\ \vec{a} = \dot{\vec{v}} &= \ddot{s}\,\hat{e}_t + \dot{s}\,\dot{\hat{e}}_t \\ &= \ddot{s}\,\hat{e}_t + \dot{s}(v \kappa \,\hat{e}_n) \\ &= \ddot{s}\,\hat{e}_t + \frac{\dot{s}^2}{\rho} \,\hat{e}_n, \end{aligned}\] where we used the derivative #rkt-ed of $\hat{e}_t$ in terms of the curvature $\kappa$, and the definition #rkt-ek of the radius of curvature to give $\kappa = 1/\rho$.
The above formula shows that the normal acceleration component $a_n$ is determined by the radius of curvature. We can therefore also find the radius of curvature from knowing the normal acceleration:
Radius of curvature $\rho$ for velocity $\vec{v}$ and acceleration $\vec{a}$ with angle $\theta$ between them.
\[\rho = \frac{v^2}{a_n} = \frac{v^2}{|a\sin\theta|}\]
From #rkt-ev we known that the normal component of the acceleration is given by $a_n = \dot{s}^2/\rho$ and from the definition #rkt-es of path length we have $\dot{s} = v$, so this equation can be rearranged to give $\rho = v^2 / a_n$.
Now because $\vec{a}$ only has $\hat{e}_t$ and $\hat{e}_n$ components, the $\hat{e}_n$ component is given by \[\begin{aligned} a_n &= \|\operatorname{Comp}(\vec{a}, \hat{e}_t)\| \\ &= \|\operatorname{Comp}(\vec{a}, \vec{v})\| \\ &= |a \sin\theta|, \end{aligned}\] where we used the facts that $\vec{e}_t$ is in the direction of $\vec{v}$, that $\operatorname{Comp}(\vec{a},\vec{v})$ does not depend on the magnitude of $\vec{v}$, and equation #rvv-em for the magnitude of the complementary projection.
| Movement: | circle | var-circle | ellipse | arc |
| trefoil | eight | comet | pendulum | |
| Show: | ||||
| Origin: | $O_1$ | $O_2$ |
Velocity and acceleration in the tangential/normal basis. Note that the tangential/normal basis does not depend on the choice of origin or the position vector, in contrast to the polar basis.
Tangent lines and osculating circles
Given a point $P$ moving along a complex path, at a given instant of time we can match different components of the point's motion with successively more complex geometric shapes:
| match | geometric object | name |
|---|---|---|
| $\vec{r}$ | point | position |
| $\vec{r},\vec{v}$ | line | tangent line |
| $\vec{r},\vec{v},\vec{a}$ | circle | osculating circle |
The osculating circle is the instantaneous equivalent circular path. That is, a particle traveling on the osculating circle with the same location $P$, speed $\dot{s}$, and tangential acceleration $\ddot{s}$ as our particle would have matching velocity and acceleration vectors.
Osculating circle.
\[\text{center $C = \vec{r} + \rho \hat{e}_n$,} \qquad \text{radius $\rho$,} \qquad \text{normal $\hat{e}_b$}\]
Consider a particle $P$ with position vector $\vec{r}_P$ moving with velocity $\vec{v}_P$ and acceleration $\vec{a}_P$, and let $\hat{e}_t,\hat{e}_n,\hat{e}_b$ be the associated tangential/normal basis and $\rho_P$ be the radius of curvature. Set $\dot{s}_P = v_P$ and $\ddot{s}_P = \vec{a}_P \cdot \hat{e}_t$ to be the speed and tangential acceleration of $P$.
Next define the osculating circle as above with center $C = \vec{r}_P + \rho_P$, radius $\rho_P$, and normal vector $\hat{e}_b$.
Now take a second particle $Q$ moving on the osculating circle so that its instantaneous position matches $P$ and it has the same speed $\dot{s}_Q = \dot{s}_P$ and tangential acceleration $\ddot{s}_Q = \ddot{s}_P$. This means that the radius of the circle $r_Q$ for $Q$ is matches the osculating circle radius $\rho_P$, so $r_Q = \rho_P$.
We want to prove that $\vec{v}_Q = \vec{v}_P$ and $\vec{a}_Q = \vec{a}_P$.
We will use a polar coordinate system for $Q$, centered at $C$ and in the plane with normal vector $\hat{e}_b$. At the current instant when the particles are at the same position, this means that $\hat{e}_r = -\hat{e}_n$ and $\hat{e}_\theta = \hat{e}_t$. Using the circular motion expressions #rke-ec we have that the velocity of $Q$ is: \[\begin{aligned} \vec{v}_Q &= v_Q \,\hat{e}_\theta \\ &= \dot{s}_Q \,\hat{e}_\theta \\ &= \dot{s}_P \,\hat{e}_t = \vec{v}_P. \\ \end{aligned}\] For a particle moving in a circle like $Q$, the speed is given by $\dot{s}_Q = v_Q = r_Q \omega_Q$, and differentiating this gives $\ddot{s}_Q = r_Q \dot{\omega}_Q = r_Q \alpha_Q$. Using this, the acceleration of $Q$ is: \[\begin{aligned} \vec{a}_Q &= -\frac{v_Q^2}{\rho_Q} \,\hat{e}_r + \rho_Q \alpha_Q \,\hat{e}_\theta \\ &= -\frac{\dot{s}_Q^2}{\rho_Q} \,\hat{e}_r + \ddot{s}_Q \,\hat{e}_\theta \\ &= \frac{\dot{s}_P^2}{\rho_P} \,\hat{e}_n + \ddot{s}_Q \,\hat{e}_t \\ &= \vec{a}_Q. \end{aligned}\] We thus see that points $P$ and $Q$ have the same instantaneous velocity and acceleration. This also means that the tangential/normal basis computed at this instant for $Q$ will match that of $P$.
The osculating circle lies in the $\hat{e}_t,\hat{e}_n$ plane, which is thus called the osculating plane. This plane has normal vector $\hat{e}_b$, and rotates about $\hat{e}_t$ with a rotation rate determined by the torsion $\tau$, as we see from the expression #rkt-ed for the derivative of $\hat{e}_b$.
| Show: | ||||
| Match phase: | % |
Tangent lines and osculating circles, showing matching of velocity or velocity and acceleration, respectively.
Curves and curvature
Given a parametric curve, its curvature can be directly evaluated with:
Curvature of parametric curve $\vec{r}(u)$ in 3D.
\[\kappa = \frac{\|\vec{r}' \times \vec{r}''\|}{\|\vec{r}'\|^3}\]
Because the tangential/normal basis vectors #rkt-eb are all normalized, it does not matter how fast the point moves along the line. We can thus evaluate the parametric curve as a function of time, giving $\vec{r}(t)$. Now: \[\begin{aligned} \|\vec{r}'' \times \vec{r}'\| &= \|\vec{a} \times \vec{v}\| \\ &= a v \sin\theta \\ &= \frac{v^3}{\rho}, \end{aligned}\] where we used the cross product length formula #rvv-el and equation #rkt-er for the radius of curvature $\rho$. By definition #rkt-ek the curvature is $\kappa = 1/\rho$, so \[\begin{aligned} \|\vec{r}'' \times \vec{r}'\| &= v^3 \kappa \\ \kappa &= \frac{\|\vec{r}'' \times \vec{r}'\|}{\|\vec{r}'\|^3}. \end{aligned}\]
Curvature of parametric curve $x = x(u)$, $y = y(u)$ in 2D.
\[\kappa = \frac{|x''y' - y''x'|}{(x'^2 + y'^2)^{3/2}}\]
This equation is just #rkt-ec written in explicit 2D coordinates. To see this, we first take the position vector $\vec{r}(u)$ to be \[\vec{r}(u) = x(u)\,\hat\imath + y(u)\,\hat\jmath.\] Now $r'(u) = \sqrt{(x'(u))^2 + (y'(u))^2}$ and \[\begin{aligned} \vec{r}'' \times \vec{r}' &= (x''\,\hat\imath + y''\,\hat\jmath) \times (x'\,\hat\imath + y'\,\hat\jmath) \\ &= (x''y' - y''x')\,\hat{k}, \end{aligned}\] so evaluating #rkt-ec gives the desired expression.


My name is Harry Potter, I’m a Wizard. Lorem ipsum dolor sit amet, consectetur adipiscing elit,
EDUCATION
-
SMK Negeri 1
-
2015-2018
-
BootCamp Arkademy
-
2018-now
EXPERIENCE
- 2017-2017
- 2018-now
- 2018-now
- Graphic Designer
- Koran Tanjungpinangpos
- Front-end Engineer
- Arkademy Tech
- UI Designer
- Freelancing
ACHIEVEMENT
- Winner Dota 2 Award
- N.E.T Internet Cafe
- 2017
- Web Design Competition
- SMK Negeri 1 Saja
- 2018
- UID Competititon
- Dribble Awards
- 2018
TOP SKILL


Get your programming career started with these free video courses. Source code is available with all the videos for your better experience
Browse Video CoursesSome of the latest coding information compiled as coding articles. Keep your programming knowledge up to date with our coding articles.
Go to BlogLearn programming from our free courses. Examples are available with these tutorials. You can contact me for any doubt and I will get back to you!
Contact Me


OPOD is a data persistance system that supports a variety of backend adapters. Unlike an ORM, Opod is persistant variable system. It can store any type of data as long as it can be serialized. The serialization format is adaptable too. By default it uses Ruby's own Marshal system, but can alternatively use YAML, JSON, et al.
Baclend adapters are easy to write. Generally they are less than 100 lines of coode. Currently built-in stores include: Memory, File, PStore, Og, drb.
Examples are pretty obvious -- no great mystery at the these depths:
mc = Opod::Memory.new('Mr. Bubbles') mc['note'] = "I will not be forgotten!"
... after the jump ...
mc = Opod['Mr. Bubbles'] mc['note'] #=> "I will not be forgotten!"
Persistance stores can be named anything. In fact the key to a store can be any object, just like a Hash key.
Opod is an off-shoot of Nitro.
Opod - Copyright © 2007 George Moschovities
Opod is distributed under the terms of the Ruby license, which is a dual GPL license.
The "Galactopod" art is Copyright © 2007 bioephemera.com.


Dotawo offers a platform in which the old meets the new, in which archaeological, papyrological, and philological research into Meroitic, Old Nubian, Coptic, Greek, and Arabic sources confront current investigations in modern anthropology and ethnography, Nilo-Saharan linguistics, and critical and theoretical approaches present in post-colonial and African studies.
Bringing these disparate fields together within the same fold, opening a cross-cultural and diachronic field where divergent approaches meet on common soil, Dotawo gives a common home to the past, present, and future of one of the richest areas of research in African studies. It offers a crossroads where papyrus can meet internet, scribes meet critical thinkers, and the promises of growing nations meet the accomplishments of old kingdoms.
Dotawo: A Journal of Nubian Studies is an open access journal and its articles can be accessed through the eScholarship platform of the University of California. Printed and PDF issues are available through open-access publisher punctum books. Dotawo is peer-reviewed and indexed in the Database of Open Access Journals.
The Dotawo Monograph series presents both unpublished material from the field of Nubian studies and original research and is published in collaboration with open-access publisher punctum books.
Issues
- Dotawo 1, ed. Vincent W.J. van Gerven Oei, Angelika Jakobi, and Giovanni Ruffini (2014). Available at punctum books · eScholarship · DigitalCommons@Fairfield
- Dotawo 2, ed. Vincent W.J. van Gerven Oei, Angelika Jakobi, and Giovanni Ruffini (2015). Available at punctum books · eScholarship · DigitalCommons@Fairfield
- Dotawo 3: “Know-How and Techniques in Ancient Sudan,” ed. Marc Maillot (2016). Available at punctum books · eScholarship](https://escholarship.org/uc/dotawo/3/1) · DigitalCommons@Fairfield
- Dotawo 4: “Place Names and Place Naming in Ancient Nubia,” ed. Robin Seignobos and Alexandros Tsakos (2017). Available at punctum books · eScholarship · DigitalCommons@Fairfield
- Dotawo 5: “Nubian Women,” ed. Anne Jennings (2018). Available at punctum books · eScholarship · DigitalCommons@Fairfield
- Dotawo 6: “Miscellanea Nubiana,” ed. Adam Simmons (2019). Available at punctum books · eScholarship
Monographs
- Dotawo Monograph 1: The Old Nubian Texts from Attiri, ed. Vincent W.J. van Gerven Oei, Vincent Pierre-Michel Laisney, Giovanni Ruffini, Alexandros Tsakos, Kerstin Weber-Thum, and Petra Weschenfelder. Available at punctum books
- Dotawo Monograph 3: Eugenia Smagina, The Old Nubian Language, trans. Andrés Alonso de la Fuente. Available at punctum books
Team
Managing Editors
- Vincent W.J. van Gerven Oei (independent scholar)
- Alexandros Tsakos (University of Bergen)
Editorial Board
- Mohamed Abdelrahman (independent scholar)
- Julie Anderson (British Museum)
- Abeer Bashir (University of Khartoum)
- Anna Boozer (Baruch College, City University of New York)
- El-Shafie El-Guzuuli (independent scholar)
- Mahmoud El-Tayeb (University of Warsaw)
- Angelika Jakobi (Cologne University)
- Anne Jennings (independent scholar)
- Giovanni Ruffini (Fairfield University)
- Stuart Tyson Smith (University of California, Santa Barbara)
- Robin Seignobos (Institute français d’archéologie orientale, Cairo)
- Jay Spaulding (Kean University)
- Petra Weschenfelder (University of Vienna)
- Bruce Williams (University of Warsaw)
- Dobrochna Zielińska (University of Warsaw)