リチャード・ファインマンが捨てた挑戦

素晴らしい本「もちろん、冗談だよ、ファインマンさん!」には、この記事の作成の基礎となる少し実践的な作品に導かれたエピソードがあります。 すべてはこの瞬間から始まりました。

ポールはダイニングルームを歩きます。誰もが耳を傾けるだけです。 「おいポール! 彼らは叫ぶ。 -ファインマン-ただスーパー! 10秒で定式化できるタスクを彼に与え、1分で10%の精度で答えを出します。 彼にある種のタスクを与えてください!”ほとんど止まることなく、彼は言います:接線は100度まで10度です。” 私は立ち往生している:これのためにあなたは数百の小数位までの数パイで割る必要がある! 絶望的だった!」


翻訳者が指定されたフラグメントと間違えました。 ポールオラムはファインマンに10の100乗のタンジェントを計算するように依頼します。 そして、それは度ではなくラジアンです。 この定式化により、将来のノーベル賞受賞者にとってこのタスクは不可能になります。

私はより単純なタスクを検討することにしました。 つまり、どのようにして、100度でtg(10°)がどのくらいになるかを知ることができますか? この問題についての考察は、小さな計算実験の推進力となり、その結果を共有したいと思います。 そして、名前付きの値を計算するようGoogleに依頼することから始めました。 即座に答えが出されました-4.2842727e-76。

タンジェントは、サインをコサインで割ったものです。 そのため、より単純な問題を解決することから研究を始めました。 つまり、10度の正弦を見つけて100度まで上げる方法です。 さらに、結果の正確性を検証するために、2つの異なる方法を実装する必要があります。 すべての計算は、1C:Enterprise 8.2プラットフォームで実行されました。 このプラットフォームの特徴は、計算結果がテキスト形式で保存されることです。これにより、少なくとも加算および乗算演算について、小数点以下の桁数の問題がなくなり、結果として計算の精度がなくなります。 次に、計算オプションを決定します。 最も簡単な方法は、サインを計算してから自分で乗算することです。 偶数を上げる度合いから、二重角余弦式を思い出して、次のように記述します。



画像








計算中に、使用するデータの精度を制御する必要があるため、次の方程式のルートとして20度の余弦を探します。

4 *cos³(20°)-3 *cos³(20°)= 0.5

この方程式は、三重角の余弦の式から得られます。 方程式を数値的に解くには、ニュートン法を使用します。 将来、sin²(10°)の見つかった値はそれ自体で49倍になります(もちろん、乗算の数を減らすことができます。これはこの場合重要ではありません)。

cos(20°)を決定する精度に対する計算の依存関係を示す表を示します。

画像






得られた結果から、入力データに小数点以下4桁の有効数字が含まれている場合、10%の精度が達成されていることがわかります。

私たちの研究プログラムの次のポイントは、希望する仕事を計算するための代替方法を探すことです。 正弦の偶数度の計算を行いましたが、使用したアプローチを接線に適用できます。提示されたマテリアルのボリュームが増加するだけです。 元の関数をフーリエ級数の展開に置き換えます。 次のIDを使用して分解を取得します。

cos(α)* cos(β)= 0.5 *(cos(α-β)+ cos(α+β))

これが私たちの適用方法です。

sin²(x)*sin²(x)=(0.5-0.5cos(2x))(0.5-0.5cos(2x))

右側のブラケットを開き、余弦の積をそれらの合計で置き換えます。 次に、結果の量に再び(0.5-0.5 cos(2x))を掛け、ブラケットを開き、製品を合計で置き換える操作をもう一度実行します。 もちろん、1C:Enterpriseプラットフォームの組み込み言語のプログラムを使用して、説明した手順を実行しました。 これらの測定の結果、関数cos(2ix)に基づいて元の関数の展開を取得しました。ここで、iは0から25まで変化します。10°=π/ 18の点で見つかった展開をさらに計算します。 与えられた点での基底関数の値を含む表を与えます。











180°〜340°の範囲の角度の場合、基底関数の値は、「pi」だけシフトするため、符号のみが指定の値と異なります。 基底関数の値があり、展開係数があるので、代替計算を行うことができます。 ただし、この場合、ソースデータの精度は最終結果の精度と同等、つまり10⁻⁷⁷以上でなければなりません。 ただし、これは理解できます。 いくつかの値を合計すると、必要な精度を得るために、合計のメンバーを予想される結果以上の誤差で計算する必要があります。 次の表は、入力データのさまざまな精度の方法論による計算の結果を示しています。







指定された数値は、入力データの精度と最終結果の関係についての発言と一致しています。 同時に、以前の計算の信頼性を確認します。

以下は、私の研究で使用した処理フォームの画像です







この形式では、特に、関数sin¹⁰⁰(x)のフーリエ級数の展開のスペクトルが示されます。

そして、アトミックプロジェクトの時代からずっとアクセスしやすくなったコンピューター技術の助けを借りて、問題を解決しました。 しかし、それを頭の中で解決することも、少なくとも最終結果の次数の推定値を取得することもできます。 推論の可能なシーケンスを示します。

sin²(x)のべき乗での関数tg²(x)の展開は次の形式であることに注意してください。

tg²(x)=sin²(x)+sin⁴(x)+sin⁶(x)+ ...

sin(10°)の推定値は、アイデンティティから取得されます。

sin(30°)= 3sin(10°)-4sin³(10°)

3次項を破棄すると、推定は1/6 = 0.166666になります。これは過小評価されているため、0.17を取り、タンジェントの2乗を0.03で推定します。 目的の値を前置して取得する

Ln(tg²(10°)⁵⁰)= 50 *(-2 * Ln(10)+ Ln(3))

Ln(3)= Ln(e *(1 + 0.3 / e))≈1+ Ln(1 + 1/9)= 1.1

Ln(10)≈2.30であることを思い出してください。その後、所望の量の自然対数は次のようになります。

50 *(-4.6 + 1.1)=-50 * 3.5 = -2.3 * 50 * 35/23 = 2.3 * 50 *(1 + 12/23)≈-2.3* 50 *(1 + 0.5 *(1 + 1/24))=-2.3 * 50 * 1.52 = -2.3 * 76。

得られた次数までeを上げて、結果を10 getにします。

おわりに



この論文では、ポール・オラムが提起した質問に対する答えが見つかりませんでした。 それにもかかわらず、私の観点からは、上記の分析は、数値に関する問題を解決するために数学ツールをどのように使用できるかを示す良い例です。 提示された資料は、高校の計算数学の実践的なレッスンの基礎として使用できるように思えます。



All Articles