答えて
あなたはBhaskara I's sine approximation formulaを使用することができるように見える:
float x;
float sinx = 4 * x * (180 - x)/(40500 - x * (180 - x));
誤差は2%以内にとどまります。
非常に高速で、(手作業で)最適化することができます。
それ以外の場合は5%以内*と言います。 – Kh40tiK
@ Kh40tiK私は誤って読んでしまいました(目的:-)これは良い答えです。 –
私がこれを行うと考えることができる唯一の方法は、Taylor/Maclaurin Expansions
を使用することです。
これらは、関数に対する改良近似を表す多項式を形成します。
一般に、テイラー級数で近似したい関数の値を選択します。
たとえば、約x = 0
ラジアンsin(x) = x - x^3/3! + x^5/5!
です。このシリーズは無限であり、あなたが得る真の価値に近づけるほどの言葉を含んでいます。
「便利な」場所(30,60,45,90度)でこれらのテイラー展開のいくつかを形成する必要があるかもしれないことをお勧めします。そして、角度が最も近い関数を使用します。
"次に、角度が最も近い関数を使用してください。 - ルックアップテーブルのように? ;-) –
このように何も保存する必要はありません。ちょうど4つの関数を定義し、どの関数を呼び出すかを決める 'if'を持っています。 – James
sin
の派生語は、cos
で、1を上回ることはなく、5%は1/20であるため、20 * pi/2 = 32
ポイントのルックアップテーブルが要件を満たします。あなたはそれを保存するために32バイトのRAMもスペアすることはできませんか?
私は合計64または1KBのRAMを持っています。 – fadedbee
それはどれだけ無料ですか? –
@意味 - あなたの答えはクールですが、あなたのコメントは* my * answerに関するディスカッションには貢献せず、自己宣伝の目的のみに役立ちます。 –
速い線形フィットで見つかりました。
1.00003 x - 0.000312267 x^2 - 0.165537 x^3 - 0.00203937 x^4 + 0.010286 x^5 - 0.000961693 x^6
この最大誤差は3%です。
- 1. シンプルCプログラム定数に近似
- 2. 近似時間近似近似
- 3. アレイの近似平方根近似
- 4. ヒッティングセットアルゴリズムの近似
- 5. グラフアルゴリズム、近似アルゴリズム
- 6. C++オイラー近似
- 7. セットカバー近似
- 8. ニューラルネットワーク近似関数
- 9. 矩形近似アルゴリズム
- 10. 与えられたデータに近似多項式近似
- 11. OpenGLの球の近似
- 12. 近似log10 [x^k0 + k1]
- 13. 二次元曲線近似
- 14. Google maps距離近似
- 15. モンテカルロパイ近似の並列化
- 16. pyschools平方根近似
- 17. Javaの正弦近似エラー
- 18. グラフノードの2次近似R
- 19. クエリの近似等価
- 20. 数値近似2^x
- 21. データフレームの線形近似
- 22. YUIのDataTableに最も近いjQuery近似は何ですか?
- 23. IOS UISlider非連続の近似値
- 24. 円でポリゴンを近似する
- 25. 度数ベジェ曲線の近似N
- 26. 小数から無理数の近似
- 27. ブルームフィルタの近似母集団の計算
- 28. MATLABで近似を見つける
- 29. maps.google.comの近似長方形InfoWindow
- 30. SQLクエリ - グループIは、クエリ持っ近似
標準のsin関数には何が問題なのですか? –
Taylorシリーズを使用して近似を実装することができます –
私たちはコーディングサービスはありません。 – Olaf