〔前の画面〕
〔クリックポイント〕 〔最新の一覧〕
〔全て読んだことにする〕〔全て読んだことにして終了〕 〔終了〕
840 re(3):補間して書いたグラフから読み取るには? |
2005/3/21(月)11:56 - 松田七美男 - 61-27-32-153.rev.home.ne.jp - 1300 hit(s)
fit するためには理論曲線が必要で,そのパラメータが推定できれば,
グラフから求める必要はないですよね.具体的には,
既知の酸:濃度 n0,体積 V0
未知の塩基性溶液:濃度 n(これを求めるのが滴定の目的),滴下量 x
pH値:y
として, (x,y)の疑似実験データから fit で n を求めるスクリプトを書いてみました.
(gnuplot の fit を講義しているので,すぐに思い付きます)
疑似データ'tekitei.dat'の替りに実際の実験データを用いればよいでしょう.
また,n が推定されれば y=g(x) の逆関数を求めて y=7.0 の場合の x を計算し,
print すればよいことになります.
###############################################################################
n0=0.1 # それらしい適当な値
n=0.08 # この値に近い推定値がでれば成功
V0=10 #
xn=(n0-10**(-7))/(n+10**(-7))*V0
f(x)=-log10(abs(n0*V0-n*x)/(V0+x))
g(x) = (x<xn) ? f(x): 14-f(x)
unset key
# 疑似データの作成,乱数により誤差を導入している.
set term table
set out 'tekitei.dat'
set samples 13
plot [0.5*xn:1.5*xn] g(x)+0.2*(rand(0)-0.5)
# fit による n の推定
n=0.6 # 初期値をうまく選ばないと収束しませんので注意
fit g(x) 'tekitei.dat' via n
print "濃度=",n
# 画面表示
set out
set term x11 # 御自分の環境のterm名に変更してください.
set samples 100
plot "tekitei.dat" pt 6 , g(x)
pause -1
##############################################################################
〔ツリー構成〕
┣【840】 re(3):補間して書いたグラフから読み取るには? 2005/3/21(月)11:56 松田七美男 (1284) |
〔前の画面〕
〔クリックポイント〕 〔最新の一覧〕
〔全て読んだことにする〕〔全て読んだことにして終了〕 〔終了〕
※ 『クリックポイント』とは一覧上から読み始めた地点を指し、ツリー上の記事を巡回しても、その位置に戻ることができます.