Blog

如何求隐函数(implicit functions)的二阶导数?

我们知道,求隐函数的二阶导数,方法就是将隐函数方程的两边同时对 \(x\) 求导,在求导的过程中,将 \(y\) 看成 \(x\) 的函数,然后利用复合函数的求导法则,得到 \(\frac{dy}{dx}\) 的方程,解这个方程,就得到了 \(\frac{dy}{dx}\) 的表达式。

那么,问题是,对于隐函数的二阶导数,我们是不是还要这样求呢?其实不必了,因为我们求出来一阶导数,它有个具体的表达式,我们对这个表达式再对 \(x\) 求导就行了。如果这个表达里还有 \(y\),那么就将它看成中间变量或者看成 \(x\) 的函数,它对 \(x\) 的导数是已知的(我们求一阶导数的时候就得到它了)。然后将它的表达式代入到二阶导数的表达里面就可以了。

我们来看一个例子。

例:设 \(xy+y^2=2\) ,求 \(\frac{d^2y}{dx^2}\)。

解:我们先求一阶导数。对方程两边同时对 \(x\) 求导,我们得到

\[y+x\frac{dy}{dx}+2y\frac{dy}{dx}=0.\]

再对 \(x\) 求导,我们得到

\[\frac{d^2y}{dx^2}=-\frac{\frac{dy}{dx}(x+2y)-y(1+2\frac{dy}{dx})}{(x+2y)^2}.\]

将 \( \frac{dy}{dx}=-\frac{y}{x+2y} \) 代入,并化简,我们得到

\[\frac{d^2y}{dx^2}= \frac{\frac{y}{x+2y}(x+2y)+y(1-2\frac{y}{x+2y})}{(x+2y)^2}=\frac{2y^2+2xy}{(x+2y)^3}\]

如何计算向量场的曲线积分(line integral of vector field)

一般来说,向量场的曲线积分

\[\int_L\vec{F}\cdot d\vec{r}\]的计算方法主要有三种:直接计算,格林公式(Green’s Theorem)和Stokes 公式(Stokes’ Theorem)。每种方法,针对不同的情形,有不同的处理方法。我们针对这些情形分别进行讲解。

1,直接计算法:我们根据曲线 \(L\) 的表达式的不同形式,将曲线积分化成定积分来计算。

  • 若曲线 \(L\) 是由参数方程 \(\vec{r}(t)=\{x(t),y(t),z(t)\}\) (三维)或者 \( \vec{r}(t)=\{x(t),y(t)\} \)(二维)给出,\(t\) 从 \(\alpha\) 到 \(\beta\),其中 \(t=\alpha\) 对应起点, \(t=\beta\) 对应终点,那么积分 \[\int_L\vec{F}\cdot d\vec{r}=\int_{\alpha}^{\beta}\vec{F}\cdot\vec{r}'(t)dt,\]其中 \(x,y,z\) 都用 \(t\) 表示。这里要注意的是,这里不管 \(\alpha\) 和 \(\beta\) 谁大谁小,起点就是在下限,终点在上限,这一点跟对弧长的曲线积分不同。 例如 \(\vec{F}=\{z,y,-x\}=z\vec{i}+y\vec{j}-x\vec{k}\), \(L\) 由参数方程 \(\vec{r}(t)=\{t,\sin t, \cos t\}\), \(t\) 从 \(0\) 到 \(\pi\),那么积分\[\begin{align*}\int_L\vec{F}\cdot d\vec{r}&=\int_0^{\pi}(\cos t, \sin t, -t)\cdot(1,\cos t,-\sin t)dt\\ &=\int_0^{\pi}(\cos t+\sin t\cos t+t\sin t)dt\end{align*}.\]剩下的部分就是计算定积分了。
  • 若曲线是由一个函数 \(y=f(x)\), \(x\) 从 \(a\) 到 \(b\),那么积分 \[\int_L\vec{F}\cdot d\vec{r}=\int_{a}^{b}\vec{F}\cdot(1,f'(x))dx,\]

2,若 \(L\) 是平面曲线,则可以用格林公式(Green’s Theorem)来计算。

  • 若 \(L\) 是平面闭曲线,且在曲线内部 \(\vec{F}\) 有一阶连续偏导数(就是每个分量都有一阶连续偏导数),这种情况可以直接应用格林公式;
  • 若 \(L\) 是平面闭曲线,但是在曲线内部 \(\vec{F}\) 有奇点(一阶偏导数不存在或者不连续),这种情况我们通过添加辅助线,将奇点挖掉,然后应用格林公式。最后将辅助线上的积分减去,就得到了原来的曲线积分的值;
  • 若 \(L\) 是平面开曲线,我们可以通过添加简单的辅助线(为了方便计算),使新的曲线成为一个简单闭曲线,然后应用格林公式,最后减去辅助线上的积分,就得到原曲线积分的值。

这一部分讲解起来内容比较多,可以看我们的视频教程:如何应用格林公式(Green’s Theorem) 求曲线积分

3,若 \(L\) 是一个空间闭曲线,则可应用Stokes 公式,将曲线积分化成曲面积分。在曲面的选择上,可以选择比较简单的、容易计算的曲面来进行计算。(因为以 \(L\) 为边界的曲面很多,我们可以选择最简单的曲面。)理论上来说,空间开曲线也可以通过添加辅助线的方式来应用 Stokes 公式,但一般来说,这样的计算相对繁琐,我们一般不考虑。这部分的内容可以观看视频:Stokes 定理

这三种方法是最常用的方法,当然还有一些其它的方法,例如积分与路径无关,全微分求积等等,但这些方法基本上是从三大定理推导出来的。除了直接计算的方法以外,我们只需要掌握三大定理的应用,曲线积分和曲面积分的部分就算是掌握了。

如何计算对弧长的曲线积分(line integral to arc length)?

对弧长的曲线积分,通常是具有形式 \(\int_L f(x,y)ds\)(二维)或者 \(\int_L f(x,y,z)ds\)(三维)。对弧长的曲线积分,计算方法是很直接的,没有太多技巧可言,运用弧微分 \(ds\) 的公式计算即可。
  • 如果 \(L\) 是平面曲线并且由参数方程给出 \(x=\phi(t), y=\psi(t), \alpha\le t\le \beta\),那么弧微分的表达式为\[ds=\sqrt{\phi’^2(t)+\psi’^2(t)}dt,\] 所以曲线积分可以用定积分\[\int_{\alpha}^{\beta}f( \phi(t), \psi(t)) \sqrt{\phi’^2(t)+\psi’^2(t)}dt \]来计算;
  • 如果 \(L\) 是空间曲线并且由参数方程给出 \(x=\phi(t), y=\psi(t), z=\gamma(t), \alpha\le t\le \beta\),那么弧微分的表达式为\[ds=\sqrt{\phi’^2(t)+\psi’^2(t)+\gamma’^2(t)}dt,\] 从而曲线积分可以用定积分\[\int_{\alpha}^{\beta}f( \phi(t), \psi(t),\gamma(t)) \sqrt{\phi’^2(t)+\psi’^2(t) +\gamma’^2(t) }dt \]来计算;
  • 如果 \(L\) 是平面曲线并且由函数 \(y=g(x), a\le x\le b\) 给出,则弧微分的表达式为\[ds=\sqrt{1+g’^2(x)}dx,\]从而曲线积分可以用定积分\[\int_a^bf(x,y) \sqrt{1+g’^2(x)}dx \]来计算。

如何判定一个复级数是否为条件收敛(conditional convergence)?

我们知道,如果一个复级数 \(\sum_{n=1}^{\infty}\) 的绝对值级数(每一项取模)

\[\sum_{n=1}^{\infty}|z_n|\]

收敛,则级数本身是收敛的。现在的问题是,如果绝对值级数不收敛,如何判定一个复级数是否收敛,也就是条件收敛问题。

从复级数收敛的定义,我们可以知道, 一个复级数收敛,就是它的实部和虚部都收敛。由此我们知道,一个复级数是条件收敛,要么就是实部和虚部都是条件收敛,要么就是其中一个条件收敛,另一个绝对收敛。所以我们只需要应用实级数的收敛性判别法就可以了。

我们来看两个例子:

例1:判定级数

\[\sum_{n=1}^{\infty}\frac{i^n}{n}\]

的敛散性。

解:我们知道

\[\sum_{n=1}^{\infty}|z_n|=\sum_{n=1}^{\infty}\frac{1}{n}\]

是发散的,所以级数不是绝对收敛。很显然,这个级数即有实数部分,也有虚数部分。我们将其分解成实部与虚部

\[\sum_{n=1}^{\infty}\frac{i^n}{n}=\sum_{k=0}^{\infty}\frac{i^{2k+1}}{2k+1}+\sum_{k=1}^{\infty}\frac{i^{2k}}{2k}=\sum_{k=0}^{\infty}\frac{i(-1)^{k}}{2k+1}+\sum_{k=1}^{\infty}\frac{(-1)^{k}}{2k}\]

由交错级数的莱不尼兹判别法,实部和虚部都是收敛的,从而级数本身是收敛的。所以级数\(\sum_{n=1}^{\infty}\frac{i^n}{n}\) 条件收敛。

 

例2:判定级数

\[\sum_{n=1}^{\infty}\frac{(-1)^n}{n}+\frac{i}{2^n}\]

的敛散性。

解:因为 \(|z_n|=\sqrt{\frac{1}{n^2}+\frac{1}{2^{2n}}}>\frac{1}{n}\),由正项级数的比较判别法,级数 \(\sum_{n=1}^{\infty}|\frac{(-1)^n}{n}+\frac{i}{2^n}|\) 发散。也就是说,原级数不是绝对收敛。但是我们知道,\(\sum_{n=1}^{\infty}\frac{(-1)^n}{n}\) 条件收敛,而\(\sum_{n=1}^{\infty}\frac{1}{2^n}\) 绝对收敛,所以原级数条件收敛。

如何确定孤立奇点(isolated singularities)的类型?

孤立奇点的类型分为三种:可去奇点,极点和本性奇点。这里我们用非常简便的方式,就是用极限来判定是可去奇点、极点还是本性奇点。

复变函数中,孤立奇点的类型分为三种:可去奇点,极点和本性奇点。极点又可以分为简单极点和 \(m\) 阶极点。它们是根据函数的罗朗级数(Laurent Series)来定义的。我们设 \(a\) 为函数 \(f(z)\) 的奇点。

  • 可去奇点(removable sigularity):函数在 \(a\) 处的罗朗级数展开式没有负指数项,则 \(a\) 为函数的可去奇点;
  • 简单极点(simple pole):函数在\(a\) 处的罗朗级数展开式只有一项负指数项 \(c_{-1}(z-a)^{-1}\),则 \(a\) 为函数的简单极点;
  • \(m\) 阶极点(pole of order \(m\)):函数在 \(a\) 处的罗朗级数展开式只有有限项负指数项,且\(a_{-m}\ne 0\) 而且对所有 \(n>m\),\(a_{-n}=0 \), 则 \(a\) 为函数的可去奇点;
  • 本性奇点(essential sigularity):函数在 \(a\) 处的罗朗级数展开式有无限项负指数项,则则 \(a\) 为函数的本性奇点。

事实上,如果每次需要用罗朗级数来确定奇点的类型,还是不很方便的。首先我们有一些非常简便的方式,就是用极限来判定是可去奇点、极点还是本性奇点。

  • 如果 \(\lim_{z\to a}f(z)=L\)为有限,那么 \(a\) 是函数的可去奇点;
  • 如果 \(\lim_{z\to a}f(z)=\infty\),则 \(a\) 是函数的极点;
  • 如果 \(\lim_{z\to a}f(z)\)既不是有限,也不是无穷大;也就是极限不存在,则\(a\) 是函数的本性奇点。

另外,对于极点,我们还有以下几种判定方法:

用极限来判定:

  • 如果 \(\lim_{z\to a}(z-a)f(z)=L(\ne \infty)\),那么 \(a\) 是函数的简单极点;
  • 如果 \(\lim_{z\to a}(z-a)^mf(z)=L(\ne \infty)\),那么 \(a\) 是函数的 \(m\) 阶极点;

用函数的表达式来判定:

  • 如果 \(f(z)=\frac{g(z)}{z-a}\) 而 \(g(z)\) 在 \(a\) 处解析,则 \(a\) 是函数的简单极点;
  • 如果 \(f(z)=\frac{g(z)}{(z-a)^m}\),而 \(g(z)\) 在 \(a\) 处解析,则 \(a\) 是函数的 \(m\) 阶极点;

用零点的类型来判定:

  • 如果\(f(z)=\frac{1}{g(z)\),而 \(a\) 是\(g(z)\) 的单根,则则 \(a\) 是函数 \(f(z)\)的简单极点;
  • 如果\(f(z)=\frac{1}{g(z)\),而 \(a\) 是\(g(z)\) 的 \(m\) 重根,则则 \(a\) 是函数 \(f(z)\)的 \(m\) 阶极点;

我们用几个例子来说明如何利用上面所说的一些方法来判定奇点的类型。

例1:\(f(z)=\frac{z}{e^z-1}\),\(0\) 为函数的可去奇点,因为

\[\lim_{z\to 0}\frac{z}{e^z-1}=1.\]

(回顾一下 \(\lim_{x\to0}\frac{e^x-1}{x}=1\) 或者 l’Hospital 法则)。

例2: \(f(z)=\frac{1}{e^z-1}\),\(0\) 为函数的简单极点,因为

\[\lim_{z\to 0}zf(z)=\lim_{z\to 0}\frac{z}{e^z-1}=1\]

例3:函数 \(f(z)=\frac{5z+1}{(z-1)(2z+1)^2}\) 以 \(z=1\) 为简单极点,以\(-\frac{1}{2}\) 为二阶极点。

有时候,结合罗朗级数和上面几种判定方式,会更快捷有效。我们来看一个这样的例子。

例4:判定函数 \(f(z)=\frac{1}{z(e^z-1)}\) 的奇点类型。

解:我们知道 \(z=0\) 是函数的奇点。我们将 \(e^z\) 展开后得到

\[e^z=1+z+\frac{z^2}{2!}+\cdots,\qquad |z|<\infty\]

所以

\[z(e^z-1)=z(z+\frac{z^2}{2!}+\cdots)=z^2(1+\frac{z}{2!}+\frac{z^2}{3!}+\cdots).\]

由于 \(\frac{1}{f(z)}=z(e^z-1)=z(z+\frac{z^2}{2!}+\cdots)=z^2(1+\frac{z}{2!}+\frac{z^2}{3!}+\cdots)\),可知 \(0\) 是 \(\frac{1}{f(z)}\) 二重根,所以 \(0\) 是 \(f(z)\) 的二阶极点。

如何计算参数方程的二阶及高阶导数?

在高等数学教材里,推导出了参数方程的二阶导数公式

\[\frac{d^2y}{dx^2}=\frac{\psi”(t)\phi'(t)-\psi’t(t)\phi”(t)}{\phi’^3(t)}.\]

其中曲线的参数方程为 \(x=\phi(t), y=\psi(t)\)。但是,实际上,这个公式既不好记,又不好用。其实,参数方程确定的函数的二阶导数及高阶导数有更好的更有效的求法。我们来说明这种方法。

因为参数方程的一阶导数为

\[\frac{dy}{dx}=\frac{\psi'(t)}{\phi'(t)},\]

所以我们看得出,一阶导数 \(\frac{dy}{dx}\)还是关于 \(t\) 的函数,我们直接关于 \(x\) 再求导是不方便的,但是我们可以利用复合函数的求导法则,将关于 \(x\) 的导数转化成关于 \(t\)  的导数。由复合函数的求导法则

\[\begin{align}\frac{d^2y}{dx^2}&=\frac{d}{dx}(\frac{dy}{dx})=\frac{d}{dt}(\frac{dy}{dx})\frac{dt}{dx}\\
&=\frac{d}{dt}(\frac{dy}{dx})\frac{1}{\frac{dt}{dx}}=\frac{d}{dt}(\frac{dy}{dx})\frac{1}{\phi'(t)}
\end{align}\]

这上面一大堆的东西可能你会看得眼花缭乱。那么我们用一种简单的方式来说吧。因为 \(\frac{dy}{dx}\)是关于 \(t\) 的函数,我们假设 \(F(t)=\frac{dy}{dx}\),那么二阶导数\(\frac{d^2y}{dx^2}=\frac{d}{dx}F(t)\),把 \(t\) 看成中间函数,那么 \(F(t)\) 关于\(x\) 的导数就是 \(\frac{d}{dx}F(t)=F'(t)\frac{dt}{dx}\),而 \(\frac{dt}{dx}=\frac{1}{\frac{dt}{dx}}=\frac{1}{\phi'(t)}\),从而 \(\frac{d}{dx}F(t)=F'(t)\frac{dt}{dx}=F'(t)\cdot \frac{1}{\phi'(t)}\)。

二阶以上的导数可以用相同的方法来求。我们用一个例子来说明这种方法。

例1, 求由参数方程
\[\begin{cases}
x=a\cos t\\
y=b\sin t
\end{cases}\]所确定的函数的二阶导数\(\frac{d^2y}{dx^2}\)。

解:我们先计算一阶导数
\[\frac{dy}{dx}=\frac{\psi'(t)}{\phi'(t)}=\frac{b\cos t}{-a\sin t}=-\frac{b}{a}\cot t.\]
所以,二阶导数为
\[\frac{d^2y}{dx^2}=\frac{d}{dx}(\frac{dy}{dx})=\frac{d}{dt}(\frac{dy}{dx})\frac{1}{\phi'(t)}=-\frac{b}{a}(-\csc^2t)\frac{1}{-a\sin t}=-\frac{b}{a^2}\csc^3t\]

线性代数复习(十二):最小二乘解 Least Square Solution

所谓的最小二乘解,是当方程组 \(A\vec{x}=\vec{b}\)没有解的时候,我们找出最接近它的解。也就是说,找出一个 \(\vec{y}\),使得 \(||A\vec{y}-\vec{b}||\) 的值最小。一个定理告诉我们,这样的解满足
\[A^TA\vec{x}=A^T\vec{b}\]
那么,在计算中,我们先计算 \(A^TA\) 和 \(A^T\vec{b}\),将\(A^TA\) 和 \(A^T\vec{b}\)都看成一个整体,然后运用求解线性方程组的方法来求解。所得到的解就是最小二乘解。

如果 \(A^TA\) 可逆,我们还可以直接得到解
\[\hat{\vec{x}}=(A^TA)^{-1}A^T\vec{b}.\]

线性代数复习(十一):施密特正交化方法 Gram-Schmidt processing

施密特正交化方法,就是将一组线性无关的向量组,变成一组正交的向量组的方法。通过这个方法,可以将一个线性空间的基,变成一组正交基(orthogonal basis),甚至标准正交基(或规范正交基,orthonormal basis )。这一方法的理论基础就是投影定理。它的方法如下:

设 \((\vec{v_1},\vec{v_2},\cdots, \vec{v_p})\) 是一组线性无关的向量组,我们令
\begin{align}
\vec{b}_1&=\vec{v}_1\\
\vec{b}_2&=\vec{v}_2-\frac{\vec{v}_2\cdot \vec{b}_1}{||\vec{b}_1||^2}\vec{b}_1\\
\vec{b}_3&=\vec{v}_3-\frac{\vec{v}_3\cdot \vec{b}_2}{||\vec{b}_2||^2}\vec{b}_2-\frac{\vec{v}_3\cdot \vec{b}_1}{||\vec{b}_1||^2}\vec{b}_1\\
\cdots &\\
\vec{b}_p&=\vec{v}_p-\sum_{i=1}^{p-1}\frac{\vec{v}_p\cdot \vec{b}_i}{||\vec{b}_i||^2}\vec{b}_i
\end{align}

那么, \((\vec{b}_1,\vec{b}_2,\cdots, \vec{b}_p)\) 是一组正交向量组。进一步,令
\[\vec{e}_1=\frac{\vec{b}_1}{||\vec{b}_1||}, \vec{e}_2=\frac{\vec{b}_2}{||\vec{b}_2||},\cdots, \vec{e}_p=\frac{\vec{b}_p}{||\vec{b}_p||}\]
则\((\vec{e}_1,\vec{b}_2,\cdots, \vec{b}_p)\) 是一组f规范正交向量组或标准正交组。

线性代数复习(十):内积、正交性、投影定理 inner product, orthogonality and projection theorem

两个向量的内积(inner product),定义为
\[\vec{x}\cdot\vec{y}=x_1y_1+x_2y_2+\cdots +x_ny_n\]
其中 \(\vec{x}=(x_1,x_2,\cdots, x_n)^T, \vec{y}=(y_1,y_2,\cdots, y_n)^T\)。 利用矩阵的乘法定义,我们可以把内积写成
\[\vec{x}\cdot\vec{y}=\vec{x}^T\vec{y}\]
我们说两个向量是正交的(orthogonal),是指两个向量的内积为 \(0\),也就是说,当 \(\vec{x}\cdot\vec{y}=0\) 时,我们说 \(\vec{x}\) 和 \(\vec{y}\) 是正交的。

投影定理:如果 \(\mathcal{W}\) 是 \(\mathbb{R}^n\) 的子空间,它的一个正交基 (orthogonal basis) 是 \(\vec{u}_1,\vec{u}_2,\cdots, \vec{u}_p\),那么对于任意的 \(\vec{y}\in \mathbb{R}^n\),
\[\vec{y}=\hat{\vec y}+z\]
其中 \(\hat{\vec y}\in \mathcal{W}, z\in\mathcal{W}^{\bot}\)。并且
\[\hat{\vec y}=\frac{\vec{y}\cdot\vec{u}_1}{||\vec{u}_1||^2}\vec{u}_1+\frac{\vec{y}\cdot\vec{u}_2}{||\vec{u}_2||^2}\vec{u}_2+\cdots +\frac{\vec{y}\cdot\vec{u}_p}{||\vec{u}_p||^2}\vec{u}_p.\]

我们这里给出了求投影的例子。

线性代数复习(九):离散动力系统 Dynamical System

离散动力系统,是指由方程 \(\vec{x}_{k+1}=A\vec{x}_k\) 所定义的线性系统。如果我们得到了 \(A\) 的特征值与特征向量,这种系统的一些长期性态也就显示出来了。因为,如果 \(\vec{v}_1,\vec{v}_2,\cdots ,\vec{v}_n\)是 \(A\) 的特征向量,而 \(\vec{x}_0=a_1\vec{v}_1+a_2\vec{v}_2+\cdots a_n\vec{v}_n\), 那么

\[\begin{align}
\vec{x}_{k+1}&=A\vec{x}_{k}=A^2\vec{x}_{k-1}=\cdots=A^{k+1}\vec{x}_0\\
&=A(a_1\vec{v}_1+a_2\vec{v}_2+\cdots a_n\vec{v}_n)\\
&=a_1\lambda_1^{k+1}\vec{v}_1+a_2\lambda_2^{k+1}\vec{v}_2+\cdots a_n\lambda_n^{k+1}\vec{v}_n
\end{align}\]
所以,\(x_k\) 的变化趋势也就明白了。如果某个特征值的绝对值小于 \(1\),那么它所对应的项就趋于 \(0\)。我们这里以二维的情形给出相应的例子。