From: gotoken / math.sci.hokudai.ac.jp (GOTO Kentaro)
Subject: [ruby-math:00096] Re: math functions
Date: Fri, 21 Jan 2000 13:57:53 +0900 (JST)

> あ、やっと分かった、提案のポイントは Math::sin(x) が引数のク
> ラスに応じて挙動を変えたいということですね。

そういうこと。

> そしたら、Math が実装をハッシュとして持っとくのはどうですか??

なるほどね。これはおもしろい。

> 	    recv.__send__(mid, *arg)

ううっ、 __send__ って何?

> >sin の自動微分はこんな感じ。
> 
> >  def sin
> >    Autodiff.new(Math::sin(v), Math::cos(v)*d)
> >  end
> 
> すみません、まだわからないですが、 v と d はどんなクラスです
> か。v は関数をあらわす Procで d はヤコビ行列かしらん??

自動微分型は <f(x), f'(x)> となっていて、 v=f(x), d=f'(x) となっている。
x がベクトルならば d もベクトルとなる。
これさえあればヤコビ行列は簡単に求められる。

るびきち☆