質問<3200>2006/5/23
from=KAI
「微分」


いつもお世話になってます。
既出だったら申し訳ないのですが、見つけられなかったので、質問させてください。
(1)y=e^sin^(-1)xについて次に答えよ。
  (a) (1-x^2)y''-xy'-yを計算せよ。
 (b) (a)の結果の両辺をk回微分せよ。
 (c) y^(n) (0)を求めよ。
(2)次の導関数を求めよ。
 (a) y=(sinx)^cosx
  (b) y=xtan^(-1)x-1/2log(1+x^2)
  (c) y=log(x+√(x^2+1)
です。微分はチンプンカンプンなんでご指導の方よろしくお願いします。

★希望★完全解答★

お便り2006/6/15
from=亀田馬志


>微分はチンプンカンプンなんで

ちょっと意味が分からないコメントですね。
もし解析の授業を受けていて「微分はチンプンカンプン」だったらこれは問題です。教科書
を読んだ方がイイでしょう。
もし趣味で微積に関わっていらっしゃるなら、もっと落ち着いて「楽しんで」教科書を読む
べきでしょうね。
「ちょっとだけ微積の世界を覗いてみたい」のも悪くはありませんが、でしたら難問に手を
出すべきではありません・・・・と言いたいトコロですが、コンピュータソフトを使えば意外
と簡単に「微積の世界」を覗けるものです。
ってなワケで、ここではフリー数式処理ソフトMAXIMA(ウィンドウズ版)を利用し
て問題を見てみましょう。これなら「微分はチンプンカンプン」でも見よう見まねで解く事
が出来ますし、ましてや「微分はチンプンカンプン」ならここで微分の解説をするのもアレ
ですし、だったら初めから教科書を読んだ方がマシだからです。

MAXIMAを英語の指示(と言っても簡単な英語ですが)に従ってダウンロード/イン
ストールすると、デスクトップ上にアイコンが出来る筈です。それをダブルクリックすると、

Maxima 5.9.3 http://maxima.sourceforge.net
Using Lisp GNU Common Lisp (GCL) GCL 2.6.7 (aka GCL)
Distributed under the GNU Public License. See the file COPYING.
Dedicated to the memory of William Schelter.
This is a development version of Maxima. The function bug_report()
provides bug reporting information.
(%i1)

と書かれた画面が立ち上がります。これで起動は成功です。
(%i1)と言うのは一種のプロンプトで「入力待ち」と言った意味です。ここのアトにコマン
ドを入力していけばMAXIMAが全て計算してくれます。ではやってみましょう。

>(1)y=e^sin^(-1)xについて次に答えよ。
>(a) (1-x^2)y''-xy'-yを計算せよ。


MAXIMAでの微分コマンドは

diff(関数,微分したい変数)

です。
ここで次のように(%i1)のアトにセミコロン(;)まで入力して下さい。

(%i1)y:exp(asin(x));

ここでMAXIMAの約束事ですが、

y:⇒yと言う変数名で以下の式を定義せよ
exp()⇒ネピア数eの指数関数
asin()⇒三角関数の逆関数、arcsinの意味

です。つまり問題文のy=e^sin^(-1)xそのものを打ち込んでるんですね。ではリターン
キーを押して下さい。

			    asin(x)
(%o1) 			  %e


と言った出力が表示される筈です。これはまさしくy=e^sin^(-1)xの事で、この時点では
微分もクソもありません。単にyと言う関数を定義しただけ、ですね。
ところで(%o1)が出力されたアト、同時に(%i2)と言った記号も出力されている筈です。
これは新しい入力待ち、ですね。ここにまたコマンドを打ち込めば別の計算を行ってくれ
るワケです。
いよいよ微分してみましょう。次のコマンドをセミコロン(;)まで打ち込んでみましょう。

(%i2) y1:diff(y,x);

ここでは新しく関数y1を定義しています。内訳は、「yをxで微分したもの」です。yは先ほ
ど(%i1)で定義した関数ですね。
リターンキーを押すと次のように出力してくれます。

			    asin(x)
			  %e
(%o2) 			 ------------
				   2
			 sqrt(1 - x )

つまり与えられたyの1階微分は

y'=exp(arcsin(x))/√(1-x^2)

のようです。
また入力待ち(%i3)が表示されているでしょうから、今度はまた新しい関数y2を次のよう
に入力してみましょう。

(%i3) y2:diff(y1,x);

y2は「y1をxで微分したモノ」です。これが2階微分になりますね。
リターンキーを押すと、

		     asin(x)	   asin(x)
		   %e	       x %e
(%o3) 		   --------- + -----------
			 2	     2 3/2
		    1 - x      (1 - x )

つまり2階微分y"は

y"=exp(arcsin(x))/(1-x^2)+x*exp(arcsin(x))/{(1-x^2)^(3/2)}

のようです。
では、また入力待ち(%i4)があるでしょうから、問題の関数をaとして定義してみましょうか。

(%i4) a:(1-x^2)*y2-x*y1-y;

リターンキーを押すと、

		  asin(x)       asin(x)	       asin(x)
	    2   %e	    x %e	   x %e
(%o4) (1 - x ) (--------- + -----------) - ------------
		      2		  2 3/2		     2
		 1 - x	    (1 - x )	   sqrt(1 - x )
						       asin(x)
						   - %e

つまり(a)の解は

(1-x^2)*【exp(arcsin(x))/(1-x^2)+x*exp(arcsin(x))/{(1-x^2)^(3/2)}】
                -x*exp(arcsin(x))/√(1-x^2)-exp(arcsin(x))

となります。
見辛いようでしたら、式を展開する事も出来ます。
式を展開する場合のコマンドは

expand(展開したい式);

で記述できるので、(%i5)のアトで

(%i5) expand(a);

と入力してリターンキーを押すと、

	     asin(x)	 2   asin(x)	 asin(x)
	 x %e	        x  %e	       %e
(%o5) - ------------ - ------------ + ---------
		   2	        2	     2
	 sqrt(1 - x )	   1 - x        1 - x
			 3   asin(x)	   asin(x)
			x  %e	       x %e	       asin(x)
		      - ------------ + ----------- - %e
			      2 3/2	     2 3/2
			(1 - x )       (1 - x )

と数式を展開してくれます。

>(b) (a)の結果の両辺をk回微分せよ。
>(c) y^(n) (0)を求めよ。

(a)で関数aを定義したので、

a1:diff(a,x);
a2:diff(a1,x);
a3:・・・・・・

と計算していけば規則性が見えてくるかもしれません。
お試し下さい。

(2)次の導関数を求めよ。
 (a) y=(sinx)^cosx
  (b) y=xtan^(-1)x-1/2log(1+x^2)
  (c) y=log(x+√(x^2+1)

これらもMAXIMAにコマンドを打ち込めば一丁上がりでしょう。ご自分で試して
みてください。
なお、コマンドは

(a)
diff(sin(x)^cos(x),x);

(b)
diff(x*atan(x)-1/2*log(1+x^2),x);

(c)
diff(log(x+sqrt(x^2+1)),x);

です。

参考文献:

MAXIMA日本語マニュアル

MAXIMAの手引き

Maxima入門ノート


お便り2006/6/15
from=BossF


「微分はチンプンカンプン」では質問に答えようがないですね(何を使って何処から話し
たらいいか分からないからです)

高次導関数が出てきてますから大学生と思いますが
高校の教科書などで、合成関数の微分などを確認なさるのが先決でしょう(或いはその
単位を諦めるか)

問題としては、きわめて基本的なものなんですよ。(だからどなたも、答えようがなかっ
たんでしょうね)


お便り2006/6/17
from=ZELDA


(1)については、できませんでした。
(2)については、できましたので、回答させていただきます。

(a) 両辺の自然対数をとると
logy=(cosx)log(sinx)
各辺をxについて、微分すると
y'/y=-(sinx)log(sinx)+(cosx)^2/sinx
したがって、求める導関数は
y'=-(sinx)^(1+cosx)log(sinx)+(cosx)^2(sinx)^(cosx-1)

(b) y'=arctanx + x/(1+x^2) - (1/2)*2x/(1+x^2)
   =arctanx

(c) y'=[1+{2x/2√(1+x^2)}]/{x+√(1+x^2)}
      ={x+√(1+x^2)}/[x+{√(1+x^2)}*{√(1+x^2)}]
      =1/√(1+x^2)


お便り2006/8/29
from=maro


質問〈3200〉の(1)y=e^sin^(-1)xの問題で
yをxで微分したy'=exp(arcsin(x))/√(1-x^2)
までは自力で解けましたが、
y"=exp(arcsin(x))/(1-x^2)+x*exp(arcsin(x))/{(1-x^2)^(3/2)}
の特に分母についている3/2乗がどうしたらでてくるのか皆目見当がつきません。
詳しい解説をお願いしねがいします。


お便り2006/8/31
from=UnderBird





お便り2006/9/2
from=maro


UnderBirdさんKINOさんありがとうございました。
(a)ですがなんとか解けたのですが、突詰めた結果が
0になってしまいました。
ですので(b)の問題は0をいくら微分しても0になってしまい解答にはなりません。
(1-x^2)y''-xy'-yを微分するにしても「ライプニッツの公式」を使うにしても
0からどうやって手をつけていいのかわかりません。
詳しく説明をお願いします。


お便り2006/9/2
from=KINO


訂正です。

合成関数の微分をした結果出てくるものです。
y'={(1-x^2)^(-1/2)}*exp(arcsin(x))
を微分すると,
y''={(1-x^2)^(-1/2)}'*exp(arcsin(x))+{(1-x^2)^(-1/2)}*{exp(arcsin(x))}'
です。問題の箇所は {(1-x^2)^(-1/2)}' の部分だと思いますが,
これは u(w)=w^(-1/2),w=1-x^2 と2つの関数の合成に分解すると,
(x^a)'=ax^(a-1) という基本的な関数の導関数の公式を用いることにより,
du/dw=(-1/2)u^(-1/2-1)=(-1/2)u^(-3/2), dw/dx=-2x
となるので,
{(1-x^2)^(-1/2)}'=du/dx=(du/dw)*(dw/dx)=(-1/2)*{u^(-3/2)}*(-2x)
=x*u^(-3/2)=x*(1-x^2)^(-3/2)
となります。

これが「分母についている3/2乗が」でてくる理由です。

なお,ついでながら,(1) (a) はちょっと違った方法で解くことができます。

まず,y'={(1-x^2)^(-1/2)}*y と表せることから,
{(1-x^2)^(1/2)}*y'=y となります。
この両辺を x で微分すると
-x*{(1-x^2)^(-1/2)}*y'+{(1-x^2)^(1/2)}*y''=y'={(1-x^2)^(-1/2)}*y
となるので,両辺に (1-x^2)^(1/2) をかけて整理すると,
(1-x^2)y''-xy'=y
が得られます。よって (1-x^2)y''-xy'-y=0.

(b) は関数の積に関する高階導関数の公式
{f(x)g(x)}^(n)
=f^(n)(x)g(x)+n*f^(n-1)(x)g'(x)+{n(n-1)/2}*f^(n-2)(x)g''(x)+...+f(x)g^(n)(x)
を利用して解きます。
この公式は「ライプニッツの公式」として教科書に載っていると思いますので
ご確認下さい。

y'' の係数の 1-x^2 は2次式なので,3階以上の導関数は 0 になります。
また,y' の係数 -x は2回以上微分すると 0 になります。
これらのことに注意してライプニッツの公式を適用すると,k≧2 に対し
{(1-x^2)y''}^(k)=(1-x^2)y^(k+2)-2kxy^(k+1)-k(k-1)y^(k),
(xy')^(k)=xy^(k+1)+ky^(k)
となりますので,(1-x^2)y''-xy'-y=0 の両辺を k 回微分することにより,
(1-x^2)y^(k+2)-(2k+1)xy^(k+1)-{k(k-1)x+k+1}y^(k)=0
を得ます。この等式は k=0, 1 のときにも成立することを容易に確かめることが
出来ます。

(c) y(0)=y'(0)=1 であり,y^(k+2)(0)=(k+1)y^(k)(0) であることから,k≧1 に対し
y^(2k+1)(0)=(2k)*y^(2k-1)(0)=...=(2k)(2k-2)(2k-4)*...*2*y'(0)
=(2k)(2k-2)(2k-4)*...*2 
となります。
また,
y^(2k)(0)=(2k-1)y^(2k-2)(0)=...=(2k-1)(2k-3)*...*3*1*y(0)
=(2k-1)(2k-3)*...*3*1
となります。