タグ

ブックマーク / kzr-2.hatenadiary.org (8)

  • 中央値の物理的な説明 - Radium Software

    statpics - A Pearl: a Balanced Median Necklace 数学の概念を説明するのに,物理的な「たとえ」を使うことが,たまにあると思う。 例えば平均値の概念は,上の図の (a) のように「物理的なバランスが取れる点」として説明することができる。数直線を棒とし,値の点に等しい質量の重りを付けたときに,バランスを取ることのできる支点の位置が,平均値を表しているわけだ。 それでは中央値(メディアン)はどのように説明することができるだろう。平均値が「棒のバランス」だったのに対して,中央値は「滑車のバランス」で説明することができる。上の図の (b) のようにループ状の紐に重りを付けて,滑車にぶら下げたときに,最も下に位置する点が中央値となる。 この「滑車のバランス」は,左右の紐に同じ数の重りがあることによって得られる。どちらか片方からひとつの重りを選んで,それを極端

    中央値の物理的な説明 - Radium Software
    kzfm
    kzfm 2009/09/15
    math
  • Arduino と Processing の連携 - Radium Software

    Arduino スケッチの動作確認を行うには,シリアルモニターを使うのが最も一般的な方法だと思う。シリアルモニターを使えば数値や文字列などの情報を, Arduino から PC へと手軽に出力することができる。 ただ,時には単なる数値や文字列ではなくて,グラフなどのように視覚化されたかたちで確認を行いたい場合もある。また,シリアルモニターは情報がスクロールして流れてしまうため,リアルタイム性の高い情報を扱うにも不向きだ。 そんなときに便利なのが Processing だ。 Processing の Serial ライブラリを使えば, Arduino のシリアル出力を簡単にキャプチャーすることができる。 Arduino からは常に情報を吐き出し続けるようにしておいて, Processing 側では serialEvent を使ってその情報をキャプチャーしつつ,適当に視覚化を行えばいい。チュー

    Arduino と Processing の連携 - Radium Software
  • Arduino Shield: ミーティングコスト時計 - Radium Software

    「シールド」とは Arduino では「シールド」と呼ばれる類の拡張基板が用いられることがある。「シールド」とは Arduino のピンソケットと同じ位置にピンを持つ基板のことで,これを Arduino に挿して接続することによって, Arduino の機能を様々に拡張することができる。 スイッチサイエンスでは,このシールドを自作するための「バニラ」シールドを販売している。これは,シールドの規格に合わせて設計されたユニバーサル基板の一種だ。これを使えば,様々な拡張回路を簡単に自作することができる。 この「シールドの自作」が,実際にやってみると独特の面白さを持っていることが分かる。限られたスペースの中に機能を詰め込むための工夫が面白い,というのがまずあるし,シールドを入れ換えるだけで Arduino の機能を様々に変化させることができる,という点も面白い。まるでファミコンのカセットを入れ換え

    Arduino Shield: ミーティングコスト時計 - Radium Software
    kzfm
    kzfm 2009/08/14
  • Arduino は 8-bit の世界 - Radium Software

    Arduino で使われている Atmel 社の AVR マイクロコントローラーは 8-bit RISC アーキテクチャを採用している。僕は8ビット CPU で C 言語を使うのは初めての経験だったので,これだけでもちょっと面白いことだと思った。 AVR 用 C コンパイラーでは, int 型の大きさは16ビットに設定されている。8ビット CPU なんだから int も8ビットなんじゃないの?と思うかもしれないけれど, int はポインター型と互換でなくてはいけないから*1,やはり16ビットになる。でも AVR の汎用レジスターの大きさは8ビットだから,結果として「int は扱いの重い型」という具合になる。 例えば次のようなコードがあるとする。 int mulTen(int x) { return x * 10; } このコードをビルドした後に avr-objdump を使ってディスアセン

    Arduino は 8-bit の世界 - Radium Software
    kzfm
    kzfm 2009/06/21
  • Structure Synth - 文脈自由文法3Dアート - Radium Software

    Structure Synth は,文脈自由文法を使って 3D CG を作成するソフトウェア。つまるところ, Context Free の 3D 版だ。単純なプログラムから複雑な CG を生成することができる。 GI レンダラー SunFlow 用のシーンファイル出力にも対応しており,これらを組み合わせることによって,とてもお手軽かつ高品質な幾何 CG アート環境が完成する。 以下,とりあえず作ってみた習作。仕組みはほとんど Context Free と同じなので,Context Free に慣れていればすぐにコードを書けるようになる。 set maxdepth 50 12 * { rx 30 } RC BG rule RC { {} CROSS { rx 10 z 0.7 s 0.98 } RC } rule RC { {} CROSS { ry 10 z 0.7 s 0.98 } RC

    Structure Synth - 文脈自由文法3Dアート - Radium Software
    kzfm
    kzfm 2009/02/16
  • Context Free 日記 - Radium Software

    頭の体操のような感じで Context Free の練習をば…… 虹 カラフルなのが好き。 startshape Start rule Start { 40*{y 1 h 9 r 3} Branch {} } rule Branch { Dot {} Branch {x 1 h 1} } rule Dot { CIRCLE {s 2 z -2 b 0.2} CIRCLE {s 1.2 z -1} CIRCLE {s 1.05 b 1 sat 1} } rule Branch 0.1 {} ぐしゃぐしゃ 単純な乱数なのに人が描いたみたいにぐしゃぐしゃ。 startshape Start rule Start {10* {r 30 h 3 b 0.1} Line {}} rule Line { SQUARE {s 0.5 sat 1 b 0.2} Line {y 0.5 r 2} } rule

    Context Free 日記 - Radium Software
  • Context Free - デザイン文法で遊ぶ - Radium Software

    Context Free は,CFDG と呼ばれる文脈自由デザイン文法を使って画像を生成するためのソフトウェア。語弊を恐れず砕いて言えば「お絵描きプログラミング環境」の一種だ。とてもシンプルなプログラムから,恐ろしく複雑な絵や,細密な絵を作り出すことができる。 以下は,とりあえずの習作。「プログラミング」とは言えども,普段のプログラミングとはまったく異なる部分の脳細胞を使っているような感覚があって,とても新鮮。命令型言語の発想で染まりきってしまった頭をリフレッシュするには最適!かも! include i_pix.cfdg startshape HOGE rule HOGE { H_5by5 {x 0 } O_5by5 {x 1.2} G_5by5 {x 2.4} E_5by5 {x 3.6} HOGE {s 0.75 y 1 r 30} } startshape Origin rule O

    Context Free - デザイン文法で遊ぶ - Radium Software
    kzfm
    kzfm 2009/02/05
  • オーディオプログラミング言語 ChucK - Radium Software

    オーディオプログラミング言語 ChucK を使って組んでみたサンプルプログラムの映像。 最初のプログラムは,1度,短3度,5度,短7度の音(つまりマイナーセブンスコードの構成音)からなるランダムなシーケンスを延々と鳴らし続けるもの。 二番目のプログラムは,構成音は最初のプログラムと同じだけど,ただランダムに鳴らし続けるのではなく,簡単な繰り返し構造を持たせるようにしたもの。最初のプログラムよりも,いくぶん音楽的な要素が加えられていると思う。 ChucK は,こういった類の実験を行うには非常に適した言語だと思う。上の二番目の例では,プログラムを動かしている最中に変更を加え(繰り返しの構成を変えてみている),それを「オン・ザ・フライ」で再実行している。同様のことは SuperCollider などでもできるけれど, ChucK は仕様の簡潔さと,統合環境 (miniAudicle) の手軽さが

    オーディオプログラミング言語 ChucK - Radium Software
  • 1