2019年11月10日日曜日

Gnuplot で 3 次元プロットでフィッティングする(誤差項を追加する)

Gnuplot で3次元フィッティングを行おうとしたら,うまくフィッティングできず

Singular matrix in Invert_RtR
error during fit

と怒られてしまう.
3次元フィッティングでは x:y:z だけでなく誤差項 s も必要で,誤差項を与えないとフィッティングができない.誤差の評価をしていない場合は定数を与えればよい.

a=-0.5;b=-0.5;c=90;d=0.008
f(x,y)=a*x+b*y+c+x*y*d+1e-9
fit f(x,y) "hspice.mt0" using ($2*1000):($3*1000):($5*1000):(1) via a,b,c,d
splot "hspice.mt0" using ($2*1000):($3*1000):($5*1000) w p, f(x,y)

昔(3.6.x)は無くてもよかった気がするが,少なくとも3.7.x以降は必要らしい.

gnuplot のページ (Takeno Lab)
http://takeno.iee.niit.ac.jp/~foo/gp-jman/#Q11

0 件のコメント:

コメントを投稿