python 求两条曲线的交点_线性代数7——直线和曲线的参数方程

什么是参数方程

一般地,在平面直角坐标系中,如果曲线上任意一点的坐标x、y都是某个变数t的函数:

095fa4e5594135a888387a10322d785a.png

并且对于t的每一个允许的取值,由方程组确定的点(x, y)都在这条曲线上,那么这个方程就叫做曲线的参数方程,联系变数x、y的变数

叫做参变数,简称参数。相对而言,直接给出点坐标间关系的方程叫普通方程。

例如在运动学,参数通常是“时间”,而方程的结果是速度、位置等。用参数方程描述运动规律时,常常比用普通方程更为直接简便。对于解决求最大射程、最大高度、飞行时间或轨迹等一系列问题都比较理想。有些重要但较复杂的曲线(例如摆线),建立它们的普通方程比较困难,甚至不可能,有了参数方程,就可以很容易表达。

直线

空间中的直线

空间中两个平面的交集是一条直线,如果抛开平面,直线可以看作是点匀速直线运动的轨迹。
通过两点确定一条直线,此外,已知一点和与直线平行的向量也能确定一条直线。

直线的参数方程

一个点在空间中匀速直线运动,它在t = 0和t = 1时刻经过

两点,Q(t)是该点关于时间t的函数:

58d8ed1ae34f78c15693c7e49ac4d92e.png

如上图所示,点在t = 0时刻的位置

,t = 1时刻的位置
,那么在任意t时刻,Q的位置Q(t)是哪里?

e7a5db670c8782285ae15acf3d4d8546.png


现在将问题转换为向量:

3d2fd90d70decfca668523b4a460dece.png


由于是匀速运动,所以运动距离与时间成正比:

b2eeac059f7c1157739b0c0118d845b6.png

随着时间的增长,向量也将增长。由于Q(t)是空间内的点,所以:

0de9dd4c26d3299b3e2a689d9ce71ab3.png

这就是该直线的参数方程,其来源是


如果t = 2,则在该时刻Q(2) = (3, 5, -4)

直线与平面的关系

上面的两个点

对于平面x + 2y + 4z = 7来说,位置关系是什么?在平面的两侧还是一侧?是否在平面上?

代入平面方程:

633f41f6173228a9d3cf37514144ebb4.png


由此可见

不在平面上,它们分属于平面两侧,向量
将穿过平面,与平面有唯一的交点,这个交点又是什么?

上节已经求得了直线的参数方程Q(t) = (2t-1, t+2, -3t+2),直线与平面的交点将满足:

091776d6b26c0106a1b8c49a0cbb539d.png

将直线参数方程代入平面方程也可能出现有无数解或无解的情况,此时直线与平面没有唯一交点,直线可能在平面上或与平面平行。

总结一下,把直线方程Q(t) = (x(t), y(t), z(t))代入平面方程ax + by + c = d,如果能计算出t的唯一值,直线穿过平面;如果得到一个等于d的常数,则直线在平面上;如果得到一个不等于d的常数,则直线与平面平行。

曲线

对于平面或空间内的任意运动,同样可以用参数方程表示。

摆线的参数方程

摆线是一种有名的曲线,它描述了当车辆匀速直线运动时,车轮上点的运动轨迹。如下图所示,P是半径为a的车轮边缘上的一点,刚开始时在原点,当车轮向右滚动后,P点将随之转动:

f130f8cece608f7cdbc00868cf669a11.png

我们关注的问题是车轮滚动后P的轨迹,也就是t时刻P点的位置。如果P点是位置关于时间的函数,用参数方程可以表示为Q(t) = (x(t), y(t))。这意味着从时间的角度来表示位置,然而时间并非最好的参变量,因为P的轨迹是与时间无关的,即使车速变快,P的运动轨迹也不会改变。我们注意到,当车轮匀速运动时,P的角度和时间成正比:

5cd918b329c25bde56aa3135fd7133de.png

和运动时间成正比,如果
超过
,则相当于开始了一个新的周期,对于角度的运算,3π和π是相同的。由此,可以将时间替换为角度,也就是使用车轮转动角度做参变量将得到更简单的答案:

5552e25594ffb077229bec9c986ae942.png

f0007182e28015b92bd7c0ed20d0be2f.png


将车轮转换为上图所示的向量(向量可参考《线性代数2——向量(向量简介)》),则向量OP的参数方程就可以表示P点的运动轨迹。

34b3f6d00c12e66a329662ee23bc0a6a.png

由于车轮是沿着地面转动,且最初P的位置与O相同,所以在第一圈时,OA = PA的弧长(我承认在画图时比较随意,看起来它们并不相等):

9e467ba766080080a5c61dac13383f9c.png

实际上,无论第几圈,上式都成立。由于已经知道了

的长度,可以得出相应的向量:

5395f9e8ef4dc839fcba0e0136917324.png

现在只需要求出向量BP即可。这里并不需要知道点B和点P的坐标,由于向量只描述了大小和方向,所以向量和具体位置无关,因此可以通过将向量BP平移求得BP

b0f7f465f7f409b5cabc9663e5cc9068.png

409c645d56b6f098224a32cbc4a32030.png

最终:

15ab236e30f2e83a4d49ddefc8bf2808.png

ffa65af774078397605719de1525322b.png

摆线的斜率

在车轮滚动一圈后,点P回到x轴,开始进入下一个周期,两个周期相交于一点。有一个值得关注的问题是,如果在该点处作轨迹曲线的切线,切线的斜率是什么?如下图所示,就是计算

处轨迹曲线的切线:

540bdfe36af9053ce2b715c240d7ccc6.png


为了简化问题,将当车轮看作单位圆,此时a = 1,

8631b15baac2bd77ba9046c81d100e5a.png


处,θ=2π,斜率:

fa9cc38a9eac185c7eb95a9e0f16eae9.png


此时没有意义,但可以计算极限:

2a765c37d412a93e8fac961dd92a4439.png


因此,在

处,斜率趋近于∞,也就是有一条垂直于x轴的切线。

也可以使用泰勒展开式计算斜率(泰勒级数可参考《数学笔记31——幂级数和泰勒级数》):

f4a13e5f23b979c577a70d1ba943540b.png

示例

示例1
两条直线L1和L2是否相交,如果相交,其交点是什么?

21d039519a661c9c1335ed61824c19d9.png

可以用以往的知识将参数方程转换为普通方程:

f32b844c8d6b66c9e1554af1a7b4353a.png

方程组有唯一解,x = 1, y = 2,两条直线相交于(1, 2)
也可以直接用参数方程求解。如果两条直线相交,参数方程组有唯一解:

0906d889d013d531673c17e449c588b1.png

将解代入参数方程:

ff40ecf934c31e8673390847ae704a87.png

两条直线相交于(1, 2)

示例2

直线L经过P(0, -1, 1)和Q(2, 3, 3)两点,直线与平面2x + y – z = 1的关系?

设直线方程是L(x(t), y(t), z(t)),则:

5f750d052670b7ae0a9dbf716afc75b5.png

将L的参数方程代入平面方程:

b2814a4aed8afbc5829d33045752af6e.png

t有唯一解,指向与平面相交。将t代入直线的参数方程,交点是(1, 1, 2)


版权声明:本文为weixin_39862794原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。