更改

跳到导航 跳到搜索
添加8,355字节 、 2020年10月16日 (五) 16:48
创建页面,内容为“{{#seo: |keywords=微分几何,曲线,曲率 |description=微分几何,曲线,曲率 }} 空间曲线是微分几何中一个非常基础,而又非常重要的概…”
{{#seo:
|keywords=微分几何,曲线,曲率
|description=微分几何,曲线,曲率
}}
空间曲线是微分几何中一个非常基础,而又非常重要的概念。下面,我们将以三维空间中的空间曲线为主体讨论相关的一些概念,然后再考虑推广到n维空间。

==定义==

===空间曲线===

所谓的一条三维空间曲线,就是一个映射<math>\alpha: I\rightarrow R^3</math>,这里 I是实数轴上的某种区间(如<math>(0,1), (a,b), [a,b], (-\infty,a],[0,1]</math>等等)。由于<math>\alpha</math>的值域是<math>R^3</math>,那么<math>\alpha</math>的输出就包含三个坐标。我们可以将<math>\alpha</math>写成参数化的形式:

<math>
\alpha(t)=(\alpha^1(t),\alpha^2(t),\alpha^3(t))
</math>

这里<math>\alpha^i</math>本身都是一个函数,即<math>\alpha^i:I\rightarrow R</math>。我们可以将t理解成时间,这样<math>\alpha(t)</math>就是一个粒子在空间中的运动轨迹。

===速度===

如果<math>\alpha</math>理解为粒子的轨迹,那么<math>\alpha'(t_0)</math>就是粒子在时刻<math>t_0</math>的速度。我们可以推广这个概念,对于任意空间曲线<math>\alpha(t)</math>,我们定义速度向量为:

<math>
\alpha'(t_0)=\left ( \frac{d \alpha^1 }{dt}\Big |_{t=t_0},\frac{d \alpha^2 }{dt}\Big |_{t=t_0},\frac{d \alpha^3}{dt}\Big |_{t=t_0}\right )
</math>

===弧长参数化===

在空间曲线的定义中,参数t可以是任意的实数区间。在这里,我们可以选择一个特殊的参数s为从曲线某点出发,沿着曲线运动的自然弧长。这样,用这个弧长来作为参数的曲线方程<math>\alpha(s)</math>就为曲线的弧长参数化表示。

可以证明,用弧长参数化方法定义的曲线方程在任意点上的速度都是1。下面给出证明。首先,根据微积分,对于定义在任意参数t上的曲线<math>\alpha(t)</math>的弧长计算公式为:

<math>
s(t)=\int_0^t |\alpha'(u)|du
</math>

其中,t为任意的时刻,s(t)为粒子从a时刻运动到t时刻所经历的弧长。这样,我们有:

<math>
\frac{ds}{dt}=|\alpha'(t)|>0
</math>

所以,s为I上的严格增函数,s也是一个一一映射,所以s必然存在着反函数,我们将反函数记为<math>t(s)</math>,同时t(s)的导数就与s(t)的导数存在着如下的关系:

<math>
\frac{dt}{ds}(s)=\frac{1}{\frac{ds}{dt}(t(s))}>0
</math>

我们设<math>\beta(s)=\alpha(t(s))</math>。这样,由于<math>\beta'(s)=\alpha'(t(s))\frac{dt}{ds}(s)</math>。但是,我们有:

<math>
|\beta'(s)|=|\alpha'(t(s))|\cdot |\frac{dt}{ds}(s)|=\frac{ds}{dt}(t(s))\frac{dt}{ds}(s)=\frac{ds}{dt}(t(s))\frac{1}{\frac{ds}{dt}(t(s))}=1
</math>

这里<math>\beta(s)</math>实际上就是该曲线的弧长参数化表示。因此,我们知道它在整个定义区间上都有常数速度。

==Frenet框架==

下面我们考虑随着s的增长,弧长参数化的曲线<math>\beta(s)</math>将如何随之变化,我们定义三个向量分别是曲线的切向量、法向量和副法向量。

===切向量===

首先,切向量就定义为曲线运动的瞬时方向,也即曲线在t时刻的瞬时速度。

<math>
T=\frac{d\beta(s)}{d s}
</math>

由于s是弧长参数,所以|T|=1,即T是一个单位向量。

===法向量===

其次,我们定义曲线在s点处的法向量为:

<math>
T'=\frac{dT(s)}{ds}
</math>

可以证明法向量T'与切向量T相垂直。下面给出证明:

因为<math>0=(T\cdot T)'=T'\cdot T+T\cdot T'=2T\cdot T'</math>,于是<math>T\cdot T'=0</math>也就是说T和T'垂直。

另外,我们定义T'的长度

<math>
\kappa(s)=|T'(s)|
</math>

为曲线在s处的<big>'''曲率'''</big>。一般情况下T'(s)并不是单位向量,这不方便我们的讨论,我们将归一化的法向量定义为曲线在s处的主法向向量:

<math>
N(s)=\frac{1}{\kappa(s)}T'(s)
</math>

N就是曲线的主法向向量。

===副法向量===

最后,我们定义T和N的叉乘为副法向量:

<math>
B=T\times N
</math>

不难验证B和T以及N都垂直,而且B是单位向量。

===Frenet 框架===

我们不难看到无论s取什么数值,T,N,B都是彼此垂直的单位向量。因此,这三个变量一起可以构成一个直角坐标系,我们称<math>\{T,N,B\}</math>为Frenet框架。可以想象,曲线在随着s运动的过程中,这个框架就会随之扭转,它们标示出来曲线的几何性质。

我们也可以将这三个变量所张成的框架理解为一个新的向量空间,所有的变量都可以写成这三个向量的线性组合。例如,我们可以将向量B'写成这三个向量的线性组合。

<math>
B'=a T+b N + c B
</math>

其中a,b,c就是线性组合的相应系数。下面,我们就来求出这三个系数。

根据线性代数,a就是B'与T的内积。由于<math>T\cdot B=0</math>,所以<math>0=(T\cdot B)'=T'\cdot B+T\cdot B'</math>。于是<math>T\cdot B'=-T'\cdot B=-\kappa N \cdot B=0</math>。所以a=0.

运用类似的技巧,我们可以求出c=0,而<math>b=B'\cdot N</math>却不为0。我们定义

<math>
\tau=-B'\cdot N
</math>

为曲线的<big>'''挠度'''</big>(torsion)。所以,总结来看:

<math>
B'=-\tau N
</math>

运用同样的道理,我们可以获得T',N',B'这三个向量在Frenet框架下的线性表达:

<math>
\begin{align}
&T'=\kappa N \\
&N'=-\kappa T +\tau B\\
&B'=-\tau N\\
\end{align}
</math>

这是曲线理论中的一个基本定理,该公式被称为Frenet公式。

====例子====

让我们考虑一条空间螺旋线: <math>\beta(s)=(a \cos(s/c), a \sin(s/c), bs/c)</math>,其中<math>c=\sqrt{a^2+b^2}</math>。

这里的a代表螺旋曲线在XY平面投影上的圆的旋转半径,b对应了在z轴上上升的速度。当<math>s=2\pi c</math>的时候,XY投影上的圆就刚好转一圈。沿着z轴刚好上升<math>2\pi b</math>,而在XY面上投影的圆的运行弧长刚好是<math>2 \pi a</math>,所以这三者之间应该满足关系<math>c^2=a^2+b^2</math>。

根据这个方程,我们可以计算得到:

<math>
T=\beta'(s)=(-(a/c) \sin (s/c), (a/c) \cos(s/c),b/c)
</math>

以及

<math>
T'=(-(a/c^2) \cos(s/c),-(a/c^2) \sin(s/c),0)=(a/c^2)(-\cos(s/c),-\sin(s/c),0)=(a/c^2)N
</math>

于是,曲线的曲率为常数<math>\kappa=a/c^2=\frac{a}{a^2+b^2}</math>

最后,我们可以得到:

<math>
\begin{align}
&T=(-\frac{a}{c} \sin (\frac{s}{c}), \frac{a}{c} \cos (\frac{s}{c}), \frac{b}{c})\\
&N=(-\cos(\frac{s}{c}),-\sin(\frac{s}{c}),0)\\
&B=T\times N=(\frac{b}{c} \sin(\frac{s}{c}), -(\frac{b}{c} \cos(\frac{s}{c})), \frac{a}{c})\\
\end{align}
</math>

与此类似,我们可以计算出曲线的挠度为:

<math>
\tau=b/c^2
</math>

下面的动画展示了随着时间参数t变化,三种不同的向量:切向量T(蓝色)、法向量N(绿色),和副法向量B(红色)的演化。

[[File:SpatialCurvebyAnimationMathematica.gif|400px]]

====特殊情况====

下面,我们考虑两种特殊情况。

* 首先,我们不妨设b=0,此时我们发现,曲线就退化成了一个平面上的圆,而且,曲线的挠度就是0,曲率刚好是1/a,即圆的半径倒数。
* 其次,我们可以让a无限趋近于0,这样的话,曲线就趋近为一条<math>z=\frac{b}{c}s</math>的直线。此时,曲率等于0,挠度也等于0。

===关于曲率与挠度的直观认识===

一般的,我们可以证明,当且仅当空间曲线为一条直线的时候,曲线的曲率才为0;而当且仅当曲线位于一张平面的时候,曲线的挠度才是0。所以,总结来看,曲率衡量的是一条曲线偏离直线的程度,而挠度计算的是一条曲线偏离一张平面的程度。

===非单位速度下的曲线===

当我们采用一般参数方程<math>\alpha(t)</math>的时候,曲线的速度就不是单位速度了。那么这种情况下的Frenet公式就变成了:

<math>
\begin{align}
&T'(t)=\kappa \nu N\\
&N'(t)=-\kappa \nu T + \tau \nu B\\
&B'(t)=-\tau\nu N
\end{align}
</math>

这里,其它参数的含义不变,而<math>\nu=ds/dt</math>为曲线的速度。

==参考文献==

# John Oprea: Differential Geometry and Its Applications,Pearson Education, 2004

[[category:几何]][[category:微分几何]]
[[category:旧词条迁移]]
113

个编辑

导航菜单