不定積分
微分の逆演算としての不定積分。
微分は与えられた関数から,その導関数を求める。(不定)積分とは,導関数が与えられたときに,微分する前のもとの関数を求めること。その意味で,微分の逆演算。
導関数が求められている全ての初等関数は,逆演算としての不定積分を行なうと初等関数を使って表すことができる。
以下の不定積分では,積分定数は省略されて出力されている。
Maxima では不定積分は以下のように書きます。
$\displaystyle \int f(x) dx = $ integrate(f(x), x);
べき関数
$\displaystyle \int x^p\, dx$ の積分。$p \neq -1$ の仮定をしてから積分します。
assume(notequal(p, -1));
integrate(x**p, x);
参考までに,$p \neq -1$ の仮定 assume(notequal(p, -1))$
をしないで $\displaystyle \int x^p dx$ をさせるとどうなるか,試します。
/* facts(p) で p に対する仮定を表示させ... */
/* forget(%) で表示させた仮定を忘れさせます。 */
facts(p)$
forget(%)$
/* これで,p に対する仮定はなかったことになります。*/
integrate(x**p, x);
/* no; と答えます。*/
integrate(x**p, x);
/* 今度は yes; と答えます。*/
指数関数
$\displaystyle \int e^x\, dx$
/* とっとと答えを知りたい場合は... */
integrate(exp(x), x);
/* 何を計算するかを表示させてから実行する場合は... */
'integrate(exp(x), x) =
integrate(exp(x), x);
原始関数が自然対数になる例
$\displaystyle \int \frac{1}{x}\, dx = \log |x|$ となるはずですが…
'integrate(1/x, x) =
integrate(1/x, x);
Maxima の積分では $\log$ の中身の絶対値を省略するようだ。
三角関数の不定積分
'integrate(cos(x), x) = integrate(cos(x), x);
'integrate(sin(x), x) = integrate(sin(x), x);
'integrate(1/(cos(x))**2, x) = integrate(1/(cos(x))**2, x);
原始関数が逆三角関数になる例
'integrate(1/sqrt(1-x**2), x) =
integrate(1/sqrt(1-x**2), x);
$$- \int \frac{1}{\sqrt{1-x^2}}\, dx = \cos^{-1} x$$となりそうですが…
'integrate(-1/sqrt(1-x**2), x) =
integrate(-1/sqrt(1-x**2), x);
実は
$$\cos^{-1} x + \sin^{-1} x = \frac{\pi}{2}$$という関係があったので,
$$\cos^{-1} x = – \sin^{-1} x + \frac{\pi}{2}$$
$\cos^{-1} x$ と $- \sin^{-1} x$ の違いは積分定数の中に含まれてしまいます。
'integrate(1/(1+x**2), x) =
integrate(1/(1+x**2), x);
定積分
Maxima では定積分は以下のように書きます。
$\displaystyle \int_a^b f(x)\, dx = $ integrate(f(x), x, a, b);
例:
'integrate(x**2, x, a, b) =
integrate(x**2, x, a, b);
置換積分
置換積分の項で例としてあげている不定積分:$\displaystyle\ \ \int \frac{\log x}{x} \, dx$
'integrate(log(x)/x, x) =
integrate(log(x)/x, x);
簡単な場合だと integrate()
で積分できてしまう。これを敢えて置換積分しているのが以下の例。
まず,不定積分を int1
として定義。
int1: 'integrate(log(x)/x, x);
$t = \log x$ と変数変換をする。変数変換を行うのが changevar()
関数。
eq1: t = log(x);
int2: changevar(int1, eq1, t, x);
変数変換した後のこの積分を実行します。
ev()
関数は evaluate つまり評価するという意味です。以下の例では,integrate
というオプションをつけて,int2
の積分を実際に行なって評価するということになります。
int2 = ev(int2, integrate);
最後に,直前の結果 %
の右辺 rhs(%)
に $t = \log x$ を subst()
関数で代入します。
ev(int2, integrate) = subst(eq1, rhs(%));
部分積分
部分積分の例としてあげている $\displaystyle \int \log x \, dx$ も,特に問題なく積分できてしまいます。
'integrate(log(x), x) =
integrate(log(x), x);
逆三角関数の積分
問:
逆三角関数や逆双曲線関数の微分はやったけど,逆三角関数や逆双曲線関数の積分はどうなるの?
答:
部分積分してください。基本的に逆三角関数や逆双曲線関数の微分がわかれば,積分もできます。
'integrate(asin(x), x) =
integrate(asin(x), x);
'integrate(acos(x), x) =
integrate(acos(x), x);
'integrate(atan(x), x) =
integrate(atan(x), x);
逆双曲線関数の積分
'integrate(asinh(x), x) =
integrate(asinh(x), x);
'integrate(acosh(x), x) =
integrate(acosh(x), x);
'integrate(atanh(x), x) =
integrate(atanh(x), x);
有理関数の積分
$$f(x) = \frac{2 x^3 + 3 x^2 – 2 x – 1}{x^2 + x – 2}$$
のように $\displaystyle \frac{\mbox{多項式}}{\mbox{多項式}}$ の形になっている関数を有理関数という。
有理関数を積分する際は,部分分数に分解してから積分する。
Maxima では特に気にせず integrate()
で積分できてしまう。
f: (2 * x**3 + 3 * x**2 - 2 * x - 1)/(x**2 + x - 2);
integrate(f, x);
部分分数に分解
上記のように,Maxima では特に部分分数に分解しなくても積分てきでしまうのであるが,そこをあえて partfrac()
関数で部分分数に分解してみると,積分の結果も納得できます。
使い方は以下のように。
f = f1: partfrac(f, x);
部分分数に分解することで,以下のような積分をすればいいのだなぁと理解できる。
\begin{eqnarray}
\int f(x) dx &=&
\frac{1}{3} \int \frac{dx}{x+2} + \int (2 x+1) \, dx +
\frac{2}{3}\int \frac{dx}{x-1} \\
&=& \frac{1}{3} \log(x+2) + x^2 + x + \frac{2}{3} \log(x-1)
\end{eqnarray}
'integrate(f1, x) =
integrate(f1, x);
$\sin x, \cos x$ の有理関数の積分
たとえば,$\displaystyle \frac{(\sin x)^2}{1 + \cos x + 2 \sin x}$ のような, $\sin x$ と $\cos x$ の有理関数の形の関数の積分。
教科書的には $\displaystyle \tan \frac{x}{2} \equiv t$ という変数変換をして置換積分すればよいということになっている。
練習問題 1
$\displaystyle \int \frac{1}{\cos x} \,dx$
これはそのままの形で integrate()
できる。
'integrate(1/cos(x), x) =
integrate(1/cos(x), x);
教育的見地から置換積分でもやってみる。
$\displaystyle \tan \frac{x}{2} \equiv t$ とおいて…
int1: 'integrate(1/cos(x), x);
eq1: t = tan(x/2);
int2: changevar(int1, eq1, t, x);
被積分関数を trigexpand()
を使ってもう少し整理してみる。
int2: changevar(int1, eq1, t, x), trigexpand;
int2 = ev(int2, integrate), ratsimp;
最後に $t$ を $\displaystyle \tan\frac{x}{2}$ に戻して…
subst(eq1, rhs(%));
というわけで,一見表示の異なる原始関数が得られた。(絶対値を省略しているけど。)
\begin{eqnarray}
\int \frac{1}{\cos{\left(x \right)}}\, dx &=&
\frac{1}{2}\log\frac{1+\sin x}{1-\sin x} \\
&=& \log\left|\frac{1+\tan \frac{x}{2}}{1-\tan \frac{x}{2}} \right|
\end{eqnarray}
これらが同等であることを示しておいてください。
ヒント:たとえば $ \sin x = 2 \sin\frac{x}{2} \cos\frac{x}{2}$ を使うとか。
練習問題 2
$\displaystyle\int \frac{a – b \cos\phi}{a^2 + b^2 -2 a b \cos \phi} d\phi$
/* a > b と仮定 */
assume(a > b)$
f: (a-b*cos(phi))/(a**2+b**2-2*a*b*cos(phi));
integrate(f, phi), ratsimp;
積分できているようだが,セオリーに従って置換積分してみる。
$\displaystyle \tan \frac{\phi}{2} \equiv t$ とおいて…
int1: 'integrate(f, phi);
eq1: t = tan(phi/2);
int2: changevar(int1, eq1, t, phi), trigexpand;
被積分関数を部分分数に分解してみる。
ft: diff(int2, t)$
ft: partfrac(ft, t);
この形の被積分関数をあらためて積分すると…
ans: integrate(ft, t), ratsimp;
かなりすっきりした。最後に $t$ を $\displaystyle \tan\frac{\phi}{2}$ に戻して…
subst(eq1, ans), ratsimp;
練習問題 3
$\displaystyle\int \frac{a – b \cos\theta}{\left(a^2 + b^2 -2 a b \cos \theta\right)^{\frac{3}{2}}} \sin\theta\, d\theta$
integrate()
で積分できる。
f: (a-b*cos(theta))/sqrt(a**2+b**2-2*a*b*cos(theta))**3 * sin(theta);
integrate(f, theta), factor;
無理関数の積分
例 1
$\displaystyle \int \frac{dx}{x \sqrt{x+1}}$
Maxima ではそのまま integrate()
できます。
'integrate(1/(x * sqrt(x+1)), x) =
integrate(1/(x * sqrt(x+1)), x);
これをあえて $\sqrt{x+1} = t$ とおいて置換積分してみると…
int1: 'integrate(1/(x * sqrt(x+1)), x);
assume(t > 0)$
eq1: t = sqrt(x+1);
int2: changevar(int1, eq1, t, x);
被積分関数を部分分数に分解して…
ft: diff(int2, t)$
ft: partfrac(ft, t);
これは $t$ で簡単に積分できて…
ans: integrate(ft, t);
最後に $t$ をもとの $\sqrt{x+1}$ に戻してやって…
subst(eq1, ans);
例 2
$\displaystyle \int \frac{dx}{\sqrt{x^2+1}}$
これもすぐ integrate()
できてしまいます。
int1: 'integrate(1/sqrt(x**2 + 1), x)$
int1 = ev(int1, integrate);
$\log$ であらわすと…
int1 = ev(int1, integrate), logarc;
あえてこれを置換積分してみます。
$x + \sqrt{x^2 + 1} \equiv t\ (>0)$ とおくと…
eq1: t = x + sqrt(x**2 + 1)$
int2: changevar(int1, eq1, t, x);
… って,うまく置換してくれませんね。Maxima は $t = x + \sqrt{x^2+1}$ を $x$ について解くことが不得手です。そのあたりが関係しているかも知れません。
solve(t = x + sqrt(x**2 + 1), x);
以下のように変形してから $t$ について解くと簡単に解くことができます。
\begin{eqnarray}
t &=& x + \sqrt{x^2 + 1} \\
t – x &=& \sqrt{x^2 + 1} \\
\therefore\ \ (t – x)^2 &=& x^2 + 1 \\
t^2 – 2 t x + x^2 &=& x^2 + 1 \\
\therefore\ \ x &=& \frac{t^2-1}{2t}
\end{eqnarray}
eq2: (t - x)**2 = x**2 + 1;
solve(eq2, x);
chikan2: %[1];
この変数変換の式を使って置換積分してみます。
int2: changevar(int1, chikan2, t, x);
被積分関数がきわめて簡単になりました。あとは実際に積分して…
ans: ev(int2, integrate);
$t$ をもとの変数 $x + \sqrt{x^2 + 1}$ になおすと…
subst(eq1, ans);
例 3
$\displaystyle \int \sqrt{x^2+1} dx$
これも integrate()
できてしまいます。
integrate(sqrt(x**2 + 1), x);
$\log$ であらわすと…
logarc(%);
これも,ヒントにしたがって,あえて置換積分でやってみる。
$x+\sqrt{x^2+1} \equiv t$ とおくところですが,例 2 でわかったように,これを $x$ について解いて
$$x = \frac{t^2-1}{2t}$$
として置換積分します。
int1: 'integrate(sqrt(x**2 + 1), x);
chikan: x = (t**2-1)/(2*t);
int2: changevar(int1, chikan, t, x), expand;
被積分関数が簡単になったところで,$t$ で積分します。
ans: ev(int2, integrate);
$t$ をもとの変数 $x+\sqrt{x^2+1}$ に戻して…
subst(t=x+sqrt(x**2+1), ans);
Maxima ではこれ以上はやってくれないようですが,以下の関係を使うともっとコンパクトになります。
\begin{eqnarray}
\frac{1}{t} &=&= \frac{1}{x + \sqrt{x^2+1}} \\
&=& \frac{\sqrt{x^2+1}-x}{\left(\sqrt{x^2+1}+x\right)\left(\sqrt{x^2+1}-x\right)} \\
&=& \frac{\sqrt{x^2+1}-x}{x^2+1-x^2} \\
&=& \sqrt{x^2+1}-x
\end{eqnarray}
1/8 * ((sqrt(x**2+1)+x)**2 - (sqrt(x**2+1)-x)**2), ratsimp;
練習問題 1
$\displaystyle \int \frac{dx}{x \sqrt{x-1}}$
直接 integrate()
すると…
integrate(1/(x*sqrt(x-1)), x);
これをあえて置換積分でやってみます。$t \equiv \sqrt{x-1}$ とおいて…
int1: 'integrate(1/(x*sqrt(x-1)), x);
eq1: t = sqrt(x-1);
int2: changevar(int1, eq1, t, x);
ans: ev(int2, integrate);
最後に $t$ をもとの変数 $\sqrt{x-1}$ であらわして…
subst(eq1, ans);
練習問題 2
$\displaystyle \int \frac{\sqrt{x}}{\sqrt{1-x}} dx$
integrate(sqrt(x)/sqrt(x-1), x), expand;
Maxima では integrate()
すればすぐに上式のように答えがでますが,注意が必要です。
題意から $0 < x < 1$ ですが,この答えだと $\log$ のなかの平方根の中身が負になってしまいます。
ここは慎重に置換積分して確認してみます。
$\displaystyle \frac{\sqrt{x}}{\sqrt{1-x}} \equiv t$ とおいて… といきたいところですが,Maxima の得手不得手を考慮して,この変数変換を $x$ について解いておきます。
\begin{eqnarray}
t &=& \frac{\sqrt{x}}{\sqrt{1-x}} \\
\sqrt{1-x} t &=& \sqrt{x}\\
(1-x) t^2 &=& x \\
\therefore\ \ x &=& \frac{t^2}{1+t^2}
\end{eqnarray}
int1: 'integrate(sqrt(x)/sqrt(1-x), x);
int2: changevar(int1, x = t**2/(1+t**2), t, x);
ans: ev(int2, integrate), expand;
2項目の分母の 2
を約分してくれないので人力で。
ans2: atan(t) + factor(ans - atan(t));
$\displaystyle x = \frac{t^2}{t^2+1}$ だったことを思い出して…
ans3: atan(t) - x/t;
最後に残りの $t$ をもとの変数 $\displaystyle \frac{\sqrt{x}}{\sqrt{1-x}}$ であらわして…
subst(t = sqrt(x)/sqrt(1-x), ans3);
練習問題 3
$\displaystyle \int \frac{\sqrt{x}}{\sqrt{1-x^3}} dx$
integrate(sqrt(x)/sqrt(1-x**3), x);
Maxima は上記のように何食わぬ顔で integrate()
してくれるが,答えに負号がついているのがどうもしっくりこない。
実は,以下の関係
$$ \tan^{-1} x + \tan^{-1} \frac{1}{x} = \frac{\pi}{2}$$
を使うと,
$$\arctan \left(\frac{\sqrt{1-x^3}}{x^{\frac{3}{2}}}\right) = – \arctan \left(\frac{x^{\frac{3}{2}}}{\sqrt{1-x^3}}\right) + \frac{\pi}{2}$$
となるので,積分定数の任意性を除いて
$$ \int \frac{\sqrt{x}}{\sqrt{1-x^3}} dx
=
\frac{2}{3} \arctan \left(\frac{\sqrt{x^3}}{\sqrt{1-x^3}}\right) + C$$
と書いてもよい。負号がつかないこっちのほうがしっくりくる。Maxima はここまではやってくれない。
ちなみに,$\displaystyle y = \arctan \left(\frac{\sqrt{x^3}}{\sqrt{1-x^3}}\right)$ とおくと,
\begin{eqnarray}
\frac{\sqrt{x^3}}{\sqrt{1-x^3}} &=& \tan y \\
x^3 &=& (1-x^3) \tan^2 y \\
\therefore\ \ x^3 &=& \frac{\tan^2 y}{1 + \tan^2 y} \\
&=& \sin^2 y \\
\therefore\ \ y &=& \arcsin x^{\frac{3}{2}}
\end{eqnarray}
であるので,
\begin{eqnarray}
\int \frac{\sqrt{x}}{\sqrt{1-x^3}} dx &=&
\frac{2}{3} \arctan \left(\frac{\sqrt{x^3}}{\sqrt{1-x^3}}\right) + C\\
&=& \frac{2}{3} \arcsin x^{\frac{3}{2}} + C
\end{eqnarray}
としてもよい。
これをあえて置換積分でやってみる。まずは
$\displaystyle t \equiv \frac{\sqrt{x^3}}{\sqrt{1-x^3}}$ と変数変換する。Maxima のためにこの変数変換を $x$ について解いて
\begin{eqnarray}
\frac{\sqrt{x^3}}{\sqrt{1-x^3}} &=& t \\
x^3 &=& (1 – x^3) t^2 \\
\therefore\ \ x^3 &=& \frac{t^2}{1+t^2} \\
x &=& \left( \frac{t^2}{1+t^2}\right)^{\frac{1}{3}}
\end{eqnarray}
int1: 'integrate(sqrt(x)/sqrt(1-x**3), x);
chikan1: t = sqrt(x**3)/sqrt(1-x**3);
chikan2: x = (t**2/(1+t**2))**(1/3);
int2: changevar(int1, chikan2, t, x);
ans: ev(int2, integrate);
subst(chikan1, ans);
練習問題 4
$\displaystyle \int \frac{1}{\left(a^2 +x^2\right)^{\frac{3}{2}}} dx$
integrate(1/(a**2 + x**2)**(3/2), x);
広義の積分
Maxima では無限大 $\infty$ は inf
です。
練習問題 1
$\displaystyle \int_{-\infty}^{\infty} \frac{1}{(a^2 + x^2)^{\frac{3}{2}}} dx$
以下では $a > 0$ として計算します。
assume(a > 0)$
'integrate(1/(a**2 + x**2)**(3/2), x, -inf, inf)=
integrate(1/(a**2 + x**2)**(3/2), x, -inf, inf);
練習問題 2
$\displaystyle \int_{-\infty}^{\infty} \frac{1}{a^2 + x^2} dx$
'integrate(1/(a**2 + x**2), x, -inf, inf) =
integrate(1/(a**2 + x**2), x, -inf, inf);
いくつかの応用
いくつかの応用の項の例題。
円の面積
$\displaystyle x^2 + y^2 = r^2$ より $y = \sqrt{r^2 – x^2}$(円の上半分)。 ここで $r$ は円の半径で $r > 0$
円の面積 $S$ は,$y = \sqrt{r^2 – x^2}$ と $x$ 軸で囲まれる部分の面積を求めて2倍すればよい。
$\displaystyle S = 2 \int_{-r}^r y\, dx$
assume(r > 0)$
y: sqrt(r**2 - x**2);
2 * 'integrate(y, x, -r, r) =
2 * integrate(y, x, -r, r);
円周
$\displaystyle L = 2 \int_{-r}^r \sqrt{1 + \left(\frac{dy}{dx}\right)^2}\, dx$
dydx: diff(y, x);
2*'integrate(sqrt(1 + dydx**2), x, -r, r) =
2*integrate(sqrt(1 + dydx**2), x, -r, r);
球の表面積
$\displaystyle S = \int_{-r}^r 2\pi y \sqrt{1 + \left(\frac{dy}{dx}\right)^2}\, dx$
'integrate(2*%pi*y*sqrt(1+dydx**2), x, -r, r) =
integrate(2*%pi*y*sqrt(1+dydx**2), x, -r, r);
球の体積
$\displaystyle V = \int_{-r}^r \pi y^2\, dx$
'integrate(%pi*y**2, x, -r, r) =
integrate(%pi*y**2, x, -r, r);