前の画面〕 〔クリックポイント〕 〔最新の一覧〕 〔全て読んだことにする〕〔全て読んだことにして終了〕 〔終了

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
##############################################################################


〔ツリー構成〕

【836】 補間して書いたグラフから読み取るには? 2005/3/20(日)23:55 nao (281)
┣【838】 re(1):補間して書いたグラフから読み取るには? 2005/3/21(月)00:28 竹の (360)
┣【839】 re(2):補間して書いたグラフから読み取るには? 2005/3/21(月)09:45 nao (718)
┣【840】 re(3):補間して書いたグラフから読み取るには? 2005/3/21(月)11:56 松田七美男 (1284)
┣【841】 re(3):補間して書いたグラフから読み取るには? 2005/3/21(月)15:54 竹の (276)
┣【842】 re(4):補間して書いたグラフから読み取るには? 2005/3/21(月)16:47 nao (162)

前の画面〕 〔クリックポイント〕 〔最新の一覧〕 〔全て読んだことにする〕〔全て読んだことにして終了〕 〔終了

※ 『クリックポイント』とは一覧上から読み始めた地点を指し、ツリー上の記事を巡回しても、その位置に戻ることができます.