Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationWhat you can do with signing up
![CGのためのフーリエ解析入門 フーリエ級数編 - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/4e50f5f4e5f85cfa0ad2fb7fbaec8ca968fe8bcc/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9Q0clRTMlODElQUUlRTMlODElOUYlRTMlODIlODElRTMlODElQUUlRTMlODMlOTUlRTMlODMlQkMlRTMlODMlQUElRTMlODIlQTglRTglQTclQTMlRTYlOUUlOTAlRTUlODUlQTUlRTklOTYlODAlMjAlRTMlODMlOTUlRTMlODMlQkMlRTMlODMlQUElRTMlODIlQTglRTclQjQlOUElRTYlOTUlQjAlRTclQjclQTgmdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT01NiZ0eHQtY2xpcD1lbGxpcHNpcyZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPTRjYTgxYzFkMGNiN2Q2ZjgxZGZkZjIzMTk1YjZmOWMz%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwbWViaXVzYm94MiZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9OTFhYmM2ODFhNzg2NDQ1YjZkZjU5NjhhYWY1MDZiNzk%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3Dc2e86bd49b6ba9de58e97c57d5c2d9ce)
こんにちは,学生エンジニアの迫佑樹(@yuki_99_s)です. 工学系の大学生なら絶対に触れるはずのフーリエ変換ですが,「イマイチなにをしているのかよくわからずに終わってしまった」という方も多いのではないでしょうか? 難しいのに加えて,教科書もちょっと不親切で,いきなり論理が飛躍したりするんですよね(僕の理解力の問題かもしれませんが) 僕がフーリエ変換について学んだ時に,以下のような疑問を抱きました. 出来る限り難しい式変形は使わずにこれらの疑問を解決できるようにフーリエ変換についてまとめてみました!! 多少厳密性を欠いても,とりあえず理解するという目的の記事なので,これを読んだあとに教科書と付き合わせてみることをおすすめします. それでは,いってみましょう!! 今回の記事は結構本気で書きました. フーリエ変換の公式 今回のゴールを確認するべく,まずはフーリエ変換及びフーリエ逆変換の公式
ダイクストラ法 (Dijkstra's Algorithm) は最短経路問題を効率的に解くグラフ理論におけるアルゴリズムです。 スタートノードからゴールノードまでの最短距離とその経路を求めることができます。 アルゴリズム 以下のグラフを例にダイクストラのアルゴリズムを解説します。 円がノード,線がエッジで,sがスタートノード,gがゴールノードを表しています。 エッジの近くに書かれている数字はそのエッジを通るのに必要なコスト(たいてい距離または時間)です。 ここではエッジに向きが存在しない(=どちらからでも通れる)無向グラフだとして扱っていますが, ダイクストラ法の場合はそれほど無向グラフと有向グラフを区別して考える必要はありません。 ダイクストラ法はDP(動的計画法)的なアルゴリズムです。 つまり,「手近で明らかなことから順次確定していき,その確定した情報をもとにさらに遠くまで確定していく
2015/1/30 「プログラマのための数学勉強会」にて発表。 動画: https://www.youtube.com/watch?v=hyzotMaTtPg
平方数とは、ある整数の平方(=二乗)であるような整数のことを言います。つまり、0,1,4,9,16,...が平方数ということになります。 ところで、与えられた整数が平方数かどうかを判定するにはどうすれば良いでしょうか。与えられた整数の平方根の小数点以下を切り捨て、それを二乗して元の数になるかどうか、というのがすぐ思いつく実装です。 <?php function is_square($n) { $sqrt = floor(sqrt($n)); return ($sqrt*$sqrt == $n); } しかし、平方根の計算は比較的重い処理です。もっと高速化する方法は無いのでしょうか。 多倍長整数演算ライブラリGNU MPには平方数かどうかを判定するmpz_perfect_square_p関数が存在します(PHPでもgmp_perfect_square関数として利用できます)。本稿ではこの実装
ホーム < ゲームつくろー! < DirectX技術編 < クォータニオンを学んでみよう! その10 クォータニオンを学んでみよう! ① What is Quaternion ? クォータニオン(Quaternion)とは日本語で「4元数」と訳します(アルク:http://www.alc.co.jp/)。数字が4つ集まったもので、言ってみれば4次元ベクトルです。3次元ベクトルであれば縦横高さで何となく想像ができますが、4次元となるともうドラえもんしかわかりません(笑)。この原稿を書いている私も、実は何のことやらさっぱり。そこで、私と同じような境遇にいる皆さんにも理解できるように、このクォータニオンを1から学んでみようと思います。 クォータニオンについてマイクロソフトのHPに一通りの説明がありました(http://www.microsoft.com/japan/msdn/academic/A
MAX 打ち上げのときに川崎さんに「英語の記事書いたら絶対ウケるから書くべきだよ」と言われていつ書こうかなーと思ってたら、そういえば11日は休日だったので、日本語の下書きだけでも一気に書いてみることにしました。 といっても、欲を出してあれもこれも書こうとして、結局まだ書ききれてませんけど。 タイトル案 Javascript と Canvas によるフルスクラッチ3Dプログラミング Javascript と Canvas 3Dプログラミング入門 ドキッ JSだらけの あと、今日(11日)は私の誕生日でもあります。25になりました。そろそろ鏡を見るのが怖くなってきますね。 以下、書きかけ Introduction Adobe MAX 2009 で Spark Project は、拡張現実(AR)のデモを展示し、来場者の注目を集めていた。Shibuya.JS のメンバーもこのデモに感激し、是非
当コーナーでは、ゲーム制作や一般アプリケーション開発といったプログラミングの「土台」となる各種アルゴリズムや初級レベル数学の基本的概念を確かめるプログラムを作って試してみます。コードの中で何をしたいのか、具体的な「手順」や数学的な背景を考え、それをプログラミング言語の変数やデータ構造、制御構造などで実現していきましょう。 ただ、私自身が数学に関しては素人なので、たいしたことはできません。内容も無保証ですので、ご注意ください。 本コーナーでは、Javaアプレットを使用しているページがあります。Javaアプレットが埋め込まれているページでは、プラグインがないとプログラムが実行されません。 数式処理への第一歩>足し算(1999/10/ 6) 連結リスト(1999/10/ 6) 参照(ポインタ)の繋ぎあわせでデータを保持。 16進文字列と数値の変換(2000/ 6/20) 文字列の検索(1999/
▽ 3年D組モチヲ先生 〜宿題〜 今日できなかった者は宿題だー。来週までにやってこいよー、テストにでるゾー。 teacher.exe / 100.441 Bytes / version 2002.09.05 ▽ ゲーム3分クッキング さらに、ゲームアルゴリズムの通信教育を受けたい人はこちら。 授業内容はかなり『濃い』です。 自宅学習を希望する人のために、ダウンロード版もあります。こちらは、現在キャンペーン中につき、 ダウンロードしてくれたお友達すべてに、もれなく RTGチェッカー機ついてきます。 cooking.exe / 158.692 Bytes / version 2002.02.07 ▽ モチヲの釣りコーナー 釣り。それは鮒に始まり、鮒に終わる・・・ 3年D組林間学校へ!!
四元数で3次元回転 中田 亨, 2003年11月25日 ★こうすれば四元数で3次元の回転が計算できる 四元数(しげんすう, クォータニオン, quaternion)を使った回転の取り扱い手順を説明します。 (1)四元数の実部と虚部と書き方 四元数とは、4つの実数を組み合わせたものです。4つの要素のうち、ひとつは実部、残り3つは虚部です。たとえば、Qという四元数が、実部 t で虚部が x, y, z から成り立っているとき、下のように書きます。 また、V = (x, y, z)というベクトルを使って、 Q = (t; V) とも書くことがあります。 正統的に虚数単位i, j, kを利用した書き方だと、 Q = t + xi + yj + zk とも書きますが、こっちはあまり使いません。 (2)四元数同士の掛け算 虚数単位同士の掛け算は ii = -1, ij = -ji = k (この他の組
多くのプログラミング言語では、任意の底を持つ対数を計算するために一工夫が必要だ。 PHP PHPで任意の底の対数得るのは簡単だ。log関数を用いて次のように書く。第二引数を省略するとネイピア数(自然対数の底)eが底となる。 <?php // 底が2、真数が10の対数値。 $value = log(10.0, 2.0); ?> しかし、このように書ける言語は少ない。 Java JavaではMath.logメソッドもしくはMath.log10メソッドを使う。前者は自然対数(底はネイピア数e)、後者は常用対数(底は10)の値を返す。しかし、任意の底について計算をするようなメソッドは用意されていない。そこで、数学で習った対数の底の変換公式*1を用いて任意の底を持つ対数を計算する。 (対数の底の変換公式) bは任意の底だ。この式を用いれば、任意の底を持つ対数も、自然対数や常用対数を用いて計算すること
配列をシャッフル、つまりランダムに要素の位置を入れ替えるというのを、sortメソッドを使ってやってみたのだけど、明らかにダメダメなものになってしまった。その後、あーでもないこーでもないと考えたのだけど、算数が得意すぎて頭が痛くなった。ということを某所でぼやいたらはてのくんがコードを見つけてくれた。どうやらFisher-Yatesという有名なアルゴリズムでやると良いらしい。 最初に書いたコードは、 var a = new Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9); a.sort( function (a, b) { return Math.ceil(Math.random() * 3) - 2; } ); というもの。sortメソッドは、パラメータに与えられた関数が負の値・0・正の値を返すことによって要素の順序を決定するので、その関数がランダムに値を返せばランダ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く