SSブログ

ものすごくどうでもよい英文に関する質問 [お前らに質問]

ものすごくどうでもいい英語の質問だけれど、

Is Alice cuter than anybody?
(  ),  nobody is cuter than Alice.

の上の括弧の部分には、「YES」、「NO」のどちらが入るケロか?



さらに、

 Nobody is cuter than Alice.

は否定文ですか、肯定文ですか(^^ゞ


こういう文は英語にないと思うけれど――英語の構文規則に反するという意味ではなく、このような表現はしないという意味――

 Nobody is not cuter than Alice.

としたら、これは否定文、それとも肯定文のどっちですか?

この文をネットで自動翻訳させたら、次のように結果が出た。


これは誤訳かもしれない。
かなり日本語としておかしいと思うけれど、「誰もアリスよりかわいいわけではない」は、

 Anybody is not cuter than Alice.

になるんだろうかね〜。
ところで、「Anybody is not cuter than  Alice.」だと、「アリスよりかわいいヒトは存在しうるか否か?」、どっちだケロ?

ちなみに、
 Google翻訳では、「誰もがアリスよりかわいいわけではない」
 MicroSoftのBing翻訳では、「誰もがアリスよりかわいいではありません」
 excite翻訳では、「誰もアリスほどかわいくない」
 Weblio翻訳では、「誰も、アリスよりかわいくありません」
Google翻訳とBing翻訳系の訳と、excite翻訳とWeblio翻訳系の訳のどちらの訳が正しいですか?

そして、お前らは、

 Nobody is not cuter than Alice.

この英文がどのような意味であるのかを、ネムネコに教えるにゃ。
オレはわからないから(^^)


英語翻訳
http://subpedia.org/translate/?sl=ja&tl=en&hl=ja
なるサイトで、「Nobody is not cuter than Alice.」という文を入力し、各種翻訳ソフトで自動翻訳してみると、非常に面白い結果が得られる。

 Weblio翻訳:誰も、アリスよりかわいいです。取るに足らない人は、アリスよりかわいくありません。
 Google翻訳:誰もアリスよりかわいいわけではありません。
 Bing翻訳:誰もアリスよりかわいない。(関西弁ケロか?)
 Excite翻訳:誰もアリスほどかわいくない。
 Baidu翻訳:誰もアリスよりかわいくない。
などなど。


このブログのあるSo-netの翻訳は



nice!(3)  コメント(0) 
共通テーマ:音楽

さらに、4次の項までとった計算結果 Fortranのプログラムつき [ひとこと言わねば]

初期値問題

  

に対し、テーラー展開を4次の項までとった

  

を使って、計算点の間隔hh=0.5として、x=0からx=5まで計算した結果はこちら↓

 

 

 

h=0.5という粗い間隔でもかなりよく計算できていることがわかる。

この計算法は、4次のルンゲ・クッタ法と同程度の計算精度をもっているから、当たり前といえば当たり前なんだけれど、スゴイにゃ。

 

参考までに、スプレッドシートを使って、オイラー法と2次の項までとったテーラー展開に基づく、同一条件での計算結果のグラフは次のとおり。

 

 

その差は歴然!!

 

ということで、例によって、久しぶりに、ネムネコの自尊ソングを♪

 

 

なお、この計算に使用したForranのプログラムはこちら。

 

parameter(n=10)
real x(0:n),y(0:n)

x=0; y=0
a = 0; b = 5
h = (b-a)/n

do i=1,n
    x(i)=a+h*i
end do

do i=0, n-1
    dy1 = x(i)+y(i)
    dy2 = 1+dy1
    dy3 = 1+dy1
    dy4 = 1+dy1
    y(i+1)=y(i)+dy1*h+dy2/2*h*h+dy3/6*h*h*h+dy4/24*h**4
end do

write(*,*) '     x       数値解     厳密解     相対誤差'
do i=0,n
    write(*,100) x(i),y(i),exp(x(i))-x(i)-1,abs(y(i)-(exp(x(i))-x(i)-1))
end do

100 format(3(f10.6,1x),e13.6)

end

function f(x,y)
f=x+y
end

 

この問題の場合、2次以上の高次微分が

  

と簡単になるので、

  

とすることによって、4次のルンゲ・クッタ法以上の高精度で計算することができると同時に、より高精度な計算への拡張が可能になる。

 

なのですが、

その反面、

  

から求められる3次以上の高次微分が複雑になる場合、この高次微分を自分で手計算で求めなければならないのでこの手間がかかると同時に、汎用的なプログラム化を妨げるという致命的な欠点を有しているのは事実。

 

とはいえ、

2次微分は、

  

から簡単に計算できるので、テーラー展開の2次の項までとって計算することはたいして苦にならないでしょう。

たとえば、f(x,y)=x+sin yとした

  

の場合、(4)式を使わず、この式の両辺をxで微分すれば、

  

と簡単に求められる。

そして、テーラー展開とこの結果に基づき

  

という漸化式を作り、前進的に解いてゆけば、修正オイラー法や2次のルンゲ・クッタ法を知らなくても、修正オイラー法や2次のルンゲ・クッタ法と同程度の精度で計算することができる。

 

テーラー展開という微分の比較的初歩的な知識を使うだけで、

  

というタイプの常微分方程式の初期値問題の比較的高精度の数値解を求められるのだから、この利点は大きいのではないか。

 

だ・か・ら、

お前らにだけは、

「常微分方程式の初期値問題の数値解を求められません」

なんてふざけたことは言わせない!!

 


nice!(0)  コメント(0) 
共通テーマ:音楽

計算に使用したスプレッドシートの公開(2月6日) [ひとこと言わねば]

「テーラー展開を用いた微分方程式の解法2」の計算で使用したスプレッドシートの公開しました。
興味のある奴はPCにダウンロードして計算してみるといいにゃ。




エクセル版とCalc版のアドレスをクリックすると、ブラウザーの種類や設定によって、クリックした瞬間にダウンロードされる場合があるので、注意するにゃ。
「ネムネコは、きっと、このスプレッドシートにウィルスを仕込んでいるに違いない。危ない」と思うヒトは、Web版をクリックするといい。

Googleの表計算ソフト経由なので、グラフ機能が正常に機能しないようで、添付されているグラフからはオイラー法の(相対)誤差の曲線が消えているようですが・・・。
Googleが提供するワープロソフト、表計算ソフトの使い方をよく知らないためにそう感じるのかもしれないけれど、Googleのこれらのただソフトは、使い勝手が悪く、機能面においても、M社のオフィースやオラクルのLibreOfficeよりも非常に劣るっているよね。ファイル共有ができるというメリットはあるけれど、こんな駄目なソフトを日常的に使うヒトはいるのかね。「Googleは世界で1、2を争うようなお金持ち企業なのだから、もっといいソフトに仕上げるべきだ」と思うのは、オレだけかね。



そう言えば、バレンタインデーが近いな。
ということで、この曲も埋め込んでおこう。



nice!(0)  コメント(0) 
共通テーマ:音楽

テーラー展開を使って微分本方程式の初期値問題を解く2 [数値解析]

テーラー展開を使って微分本方程式の初期値問題を解く2

 

f(x)級の関数とする。このとき、f(x+h)xで次のようにテーラー展開が可能である。

  

特にn=1のとき、

  

で、これは平均値の定理と呼ばれる。

これから、

  taylor-002.png

となり、f(x+h)と近似したときの誤差がのオーダー、すなわち、であることがわかる。

また、f(x+h)xのまわりで1次の項までテーラー展開すると、

  

となる。

したがって、h≡0のとき、

  taylor-003.png

となり、

  

と近似したときの誤差がO(h)であることがわかる。

 

次に、

  

という常微分方程式の初期値問題について考えよう。

最もシンプルな方法は、

  

を用い、これを左辺におき、

  

と近似するものであろう。上述の議論から、

  

と近似したときの(打ち切り)誤差が程度であることがわかる。

  

と、点列を等間隔hに配置すれば、次の漸化式を得ることができる。

  

これがオイラー法と呼ばれるもので、オイラー法の局所的な打ち切り誤差はO(h²)、すなわち、程度である。

 

次の常微分方程式の初期値問題

  

を、h=0.1としてオイラー法で解いてみることにする。

このとき、オイラー法は

  

となり、

  

だから、

  

となる。

初期条件は

  

となるので、

  

を用いて、の値を定めることができる。

 

表計算ソフトを用いてx=2まで計算した結果は次のとおり。

 

 

オイラー法を用いて計算を進めるにつれ、厳密解

  

との誤差が増大してゆくことがわかる。

 

そこで、テーラー展開を利用して、より精度よく計算する手法を考えることにする。

  

であるから、合成関数の微分法よりy''

  taylo2-005.png

となる。

一方、y(x+h)xにおけるテーラー展開を2次の項までとると、

  

したがって、

  

これを微分方程式の左辺に代入すると、

  

となる。

そして、これから、次の漸化式を得ることができる。

 taylor2-100.png

この漸化式の局所打ち切り誤差はO(h³)なので、オイラー法よりも精度よく計算できるはずである。

 

この漸化式を用いて、常微分方程式の初期値問題

  

の近似解を求めることにする。

このとき、

  

となるので、

  

したがって、

  taylor2-008.png

h=-0.1として、表計算ソフトを用いて解いた結果は次の通りである。

 

 

 

この表とグラフを見ると――テーラー展開による方法の数値解と厳密解はほとんど一致しているので、このグラフでは同一の曲線に見える――、劇的に計算精度が向上していることがわかる。

この問題の場合、高次微分が

  

と求められるので、より高精度の

  

漸化式を得ることができる。

ちなみに、この漸化式の局所打ち切り誤差は

h⁵の項までとれば、4次のルンゲ・クッタ方よりも高精度に計算することが可能である。

 

 


nice!(0)  コメント(0) 

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。