タグ

ブックマーク / nakt.hatenadiary.org (1)

  • 2010-01-16

    (3次元)単位球面上から、偏りなくランダムに点を得たいとします。 単位円上であれば、区間上の一様乱数を生成すれば点が目的のものとなりますが、 球座標で同様に「は、は上の一様乱数」としてしまうと極付近に点が偏ってしまいます。 方法1 区間上の一様乱数を3つ生成し、とする。 点が単位球に含まれていれば、 が目的のもの。含まれていなければやり直し。 分かりやすくて良いですね。 ただ、1回で点が得られるとは限らないのが残念です。 は単位球内から偏りなく選ばれるので、もちろんも単位球面上から偏りなく選ばれます。 方法2 を上の、を上の一様乱数とすれば、 が目的のもの。 これだとまた極方向に偏ってしまいそうですが、そうはなりません。 球座標でを一様乱数にすると、微小面積に対して(?)一様に点が 分布することになるため、が小さい極付近に点が集まってしまいます。 ここで とすれば となり、とを一様乱数とす

    2010-01-16
  • 1