• ベストアンサー

片対数グラフの傾きについて

現在,片対数グラフ(横軸を対数表示)を用いて,金属疲労に関するS-N線図(ウ゛ェーラー線図)を数式表示しています。しかし,その際に,次の式を用いるのですが, σ=C・N^(-k) 私の場合,S-N線図は全部で4本あります。一枚の片対数グラフに2本ずつ存在します。そして,その4本とも,データ上,自分(人間)の手で意図的に平行になるように直線を引きました。 そこで,その4本の直線に対して傾き(いわゆるkの値)を手計算したのですが,どうしても4本ともに,ばらばらの計算結果(傾斜)になってしまします。 EXCELで適当に2~5点程をとって,近似曲線(累乗)を引き,数式を出したのですが,結局,同じような結果になってしまします。私の手計算の仕方が悪いのか,取り扱う数値が大きいためにより正確に,そのデータを読み切れなかったのか,さっぱり判りません。どなたかご存知の方居られたらご教授下さい。

質問者が選んだベストアンサー

  • ベストアンサー
  • tgb
  • ベストアンサー率78% (32/41)
回答No.4

(1)  直線の当てはめの問題は既に指摘されていますが、私もその通り だと思います。私の手元にあるヴァン・ブラックの材料科学要論と 言う本にはN-S曲線が片対数で書かれていますが、この線は 直線ではなく少し曲がっています。次のページに直線への当てはめ のグラフがありますが両対数のグラフになっています。 (2)  それ以外について、kougakubuさんは傾きがバラバラになると言う ことで困っておられるようですが、次のように考えられないでしょうか。 ・意図的に平行になるように直線を引くと言うことですが、手で直線を  引いてその傾きを拾うのであれば、4つの傾きが直線を書くときの正  確度に応じて相応にばらつくのは当たり前のことです。  同じ値として求めたいなら4つを平均したらいかがでしょうか。その  上でその平均値を使って4つの各々に対してy切片(σ切片)を、  最小2乗法で求めたら(求めなおしたら)よいと思います。 ・もう少し厳密に共通の傾きと4つのy切片を求める方法もあります。  この場合、多目的最適化と言うことになるかと思いますが、4つの  それぞれの残差2乗和に対する重みを適当に設定(例えば全て1)  して4つについての和を取りこれを最小化すると言うことにすれば  結局5つの未知数(共通の傾き、4つのy切片)についての1次  方程式を解く問題になります。(更に厳密に多目的最適化の問題と  して解きたい場合は参考書等を見てください。)

kougakubu
質問者

お礼

具体的な回答ありがとうございます。 >手で直線を >引いてその傾きを拾うのであれば、4つの傾きが直線を書くときの正 >確度に応じて相応にばらつくのは当たり前のことです。 まさにその通りです。 さっそく(2)の方法で纏めてみました。誤差は思ったほど小さく抑えられました。

その他の回答 (3)

  • siegmund
  • ベストアンサー率64% (701/1090)
回答No.3

> 縦軸(σ)の値は,せいぜい300~500程度となります。 > ですので,回答頂いた方法でも結局は同じこととなります。 う~ん,同じとは思えませんね. poohhoop さんが > 対数グラフをグラフの見易さだけのために使うのであればこの考えで良いのですが、 > 直線近似して関数関係を見出そうとするのならこの考えは正しくはありません. と書かれているとおりです. 単に,実験値がグラフにうまく収まるように,という問題ではありません. 両対数で直線という思想ならならば, (1)  logσ = log C - k log N  ⇔  σ = C N^(-k) と仮定していることになりますし,横軸の片対数で直線なら (2)  σ = log C - k log N  ⇔  10^σ = C N^(-k) と仮定していることになります. >> 私が片対数で出した手書きの線図は,いずれも直線・・・ > 偶然ではないですか? 10^σ を問題とするσの近辺でσのべき関数に展開して1次までとれば (2)でも直線になります. したがって,偶然と言うよりはσの値の変動の問題でしょう. (A)  N=10^3 でσ=400,N=10^6 でσ=300, となるようなテストデータ(C,k が決まるから作れる), および C だけ変えて (B)  N=10^3 でσ=500, となるようなテストデータをつくって,N = 10^3~10^6 でグラフを描いて見ました. 両対数ではもちろん直線ですが,横軸の片対数でも一見直線みたいに見えますね. でも,横軸の片対数ですとよく見るとカーブしています (プリントアウトして定規を当ててみるとよくわかる). それから,両対数では当然 A,B は平行ですが, 横軸片対数では A,B は平行になりません(これは一見してわかる). つまり,本来直線にならないプロットをしているので, C の違いが見かけ上の傾きに繰り込まれてしまっているのです. 以上のようなことですので,両対数のプロットをやってみるべきです. プロット関係から言えるのは以上のようなことです. poohhoop さんの > 直線の正確(適切?)な傾きを求めるためには回帰分析(最小自乗法)による計算が必要であり、 > 相関係数や誤差の評価も必要でしょうね。 もやってみるべきです. EXCEL をお使いなら,σ = C N^(-k) の回帰分析ができるはずですが. これで解決しないのであれば, 実験結果が σ = C N^(-k) になっていないとか, 実験サンプル毎に(あるいは実験のたびに) k が違うとか, 実験に問題があるとか, そういうことではないかと思います. こちらはちょっとお役に立てません.

kougakubu
質問者

お礼

回答ありがとうございます。 重みつき最小二乗法を用いて計算を行いました。いくつかはネグりました。 取り扱う数値の大きさから,当然,誤差が出てしまうために,傾斜が変わってしまったのが原因だと思います。4本の傾斜を平均して求めることとしました。 >(1)  logσ = log C - k log N  ⇔  σ = C N^(-k) >(2)  σ = log C - k log N  ⇔  10^σ = C N^(-k) ご指摘の通り,矛盾する点がいくつかあるようです。 両対数グラフでも纏めるように致します。

  • poohhoop
  • ベストアンサー率53% (120/226)
回答No.2

> 金属疲労に関するS-N線図(ウ゛ェーラー線図) この点については私も素人なので自信無しとしておきますが。 私も#1の方のご意見に賛成です。 本来、対数グラフというのは実験値の変数変換を容易にプロットすることができるような物ですので片対数と両対数では目的が違います。 両対数=n次の関数のグラフを直線変換する機能 片対数=指数関数、対数関数グラフを直線変換する機能 逆に考えれば 両対数=実験値の関係をn次関数で近似する。 片対数=実験値を指数関数、対数関数で近似する ということなります。 詳細な説明は#1の方の説明で十分だと思います。 ちなみにkougakubuさんの場合の片対数グラフを使って グラフ上で直線近似するというのは 関数を σ=A+BlogN として近似していることになります。 σ=C・N^(-k) の場合は両対数グラフを使うべきでしょう。 余談ですが、直線の正確(適切?)な傾きを求めるためには回帰分析(最小自乗法)による計算が必要であり、相関係数や誤差の評価も必要でしょうね。 >私が片対数で出した手書きの線図は,いずれも直線・・・ 偶然ではないですか? >横軸(log N)の値は,最小で1000,最大で2000000(2百万)程度 >までの大きな数値を扱うため,当然,対数変換しなくてはなら >ないのですが,縦軸(σ)の値は,せいぜい300~500程度となり >ます。 対数グラフをグラフの見易さだけのために使うのであればこの考えで良いのですが、直線近似して関数関係を見出そうとするのならこの考えは正しくはありません

kougakubu
質問者

お礼

回答ありがとうございます。 重みつき最小二乗法を用いて計算を行いました。いくつかはネグりました。 取り扱う数値の大きさから,当然,誤差が出てしまうために,傾斜が変わってしまったのが原因だと思います。4本の傾斜を平均して求めることとしました。 >σ=C・N^(-k) の場合は両対数グラフを使うべきでしょう。 両対数グラフを使ってみたのですが,上述の「誤差」が生じるため?に結局,同じような結果となりました。

  • siegmund
  • ベストアンサー率64% (701/1090)
回答No.1

> 金属疲労に関するS-N線図(ウ゛ェーラー線図) というのは全く知らないこともあって,質問の意図がもう一つ把握できないのですが, (1)  σ=C・N^(-k) という式ですか. で,N と σ の測定値の組が何組かあって,それから k と C を求めたい, と言う話でしょうか? それなら片対数グラフを使うのが間違いで,使うべきは両対数グラフです. (1)の両辺の常用対数(log であらわします,面倒なので底の 10 は省略)をとって (2)  logσ = log C - k log N ですから,横軸を log N, 縦軸を logσ でプロットすれば直線になり (1次関数ですから), 傾きから k が,縦軸切片から log C が,それぞれ求められます. 片対数グラフを使うのは (3)  y = A・B^x のようなときです. (4)  log y = log A + (log B)x ですから,横軸を x,縦軸を log y でプロットすれば直線になります.

kougakubu
質問者

お礼

回答ありがとうございます。 >質問の意図がもう一つ把握できない 簡単な説明で申し訳ないのですが,金属疲労とは,ある金属材料に小さな荷重が繰返し受ける場合,いずれは破壊に至るというものです。金属も人間と同様に小さなストレス(σ)であっても何回も何回も繰返し(N)受けると,いずれはへたばってしまうということです。 σ:応力(ストレス) N:繰返し回数(cycles) >横軸を log N, 縦軸を logσ でプロットすれば直線になり・・・ しかし,私が片対数で出した手書きの線図は,いずれも直線,すなわち,一次関数で評価しています。 >横軸を log N, 縦軸を logσ でプロットすれば直線になり 申し訳ありません。私の説明不足でした。横軸(log N)の値は,最小で1000,最大で2000000(2百万)程度までの大きな数値を扱うため,当然,対数変換しなくてはならないのですが,縦軸(σ)の値は,せいぜい300~500程度となります。 ですので,回答頂いた方法でも結局は同じこととなります。

関連するQ&A

  • 片対数グラフが曲線?

    ある実験で出た結果を片対数グラフ用紙にプロットしたところ明らかに曲線を描いてしまいました。 しかし片対数グラフの特徴を考えるとプロットは直線を描くのではないかと思います。 また実験中にわざわざ「グラフは片対数用紙に書くこと」と言われたことからも、 直線にならなければ片対数グラフが指定された意味がないように思えます。 実験結果のプロット通り曲線を描いてしまうか、曲線に見えるプロットの平均をとって強引に直線を描くかで迷っています。 どちらが良いでしょうか。教えて下さい。 また同じ事ですが、片対数グラフを用いる場合曲線になることがあるのでしょうか。 よろしくお願いします。

  • 両対数グラフの傾きと切片から近似式を求めたい

    今晩は。よろしくお願いします。 カテゴリー違いでしたらごめんなさい。 あるサイトにあった以下の数値の近似式と対数グラフを エクセルを用いて自分で求めてみました。 X      Y 1.30E+15    3.5 4.8E+15    1 1E+16    0.5 まず、この値を用いてエクセルで両対数グラフを描きました。 次に、累乗近似の近似曲線を描き、その数式を表示させました。 y = 9E+14x-0.95 となりました。 これは y=9・10^(14・x^(-0.95)) ということでいいのでしょうか? また上式は上記の3点を通る近似式としてよいのでしょうか? でも何度検算しても   x=1.30E+15 y=3.5 が求まりません。 3.5=9・10^(14・1.30E+15^(-0.95)) という式がそもそも間違っているのでしょうか? 別の方法で、この類似曲線をほぼ直線として  この直線の傾きと切片(Y=AX+B)を用いれば、       y=ax^n(n=A  B=loga)  を近似式として求めてもいいんですよね?  (x、y)=(1.30E+15 、 3.5) (1E+16 、 0.5)の2点から  傾きをA=-3/(8.7E+15)=-0.34482E-15  切片をB=3.5  としました。  このとき  y=(10^3.5)・x^-334E-18    としてよいのでしょうか。  また、検算をする際、上式に(1.30E+15、3.5)を代入する際は (X、Y)になるのでしょうか?それとも(x、y)ですか?   X=logx Y=logy を考えないといけないのでしょうか 文章が下手ですみません。 どうぞアドバイスをください。

  • 両対数グラフを方眼用紙に

    実験で両対数グラフ用紙に描いたグラフを普通の方眼用紙に拡大図として描き直すように言われたのですが、やり方がわかりません。 目分量で描くのではなくlogをとってやるようにとのことですが、何のことなのかさっぱり… 実験内容は放射温度計による白熱線の温度測定で、縦軸が電力、横軸が絶対温度です。右上がりの直線になりました。 よろしければアドバイスをお願いします。

  • エクセルで片対数グラフを書きたいのですが

    添付図のように、エクセルを使って片対数グラフを書きたいです。 図では、□、△、○の3つの異なる条件について、N/N0の時間変化について書かれていますが、この図のように、一枚のグラフに3つもグラフを書くようにするにはどうしたらいいのかがわかりません。 まずエクセルで、数値を代入して、挿入→散布図と押して、直線のグラフ自体は書けるのですが、縦軸を対数目盛にするにはどうしたらいいのかがわかりません。また、x軸とy軸に任意の文字を入力する方法についても教えていただけたらと思います。 まとめると、 (1)3つの異なるグラフを一枚のグラフに表すにはどうすればよいか (2)図のように縦軸が対数になるようにするにはどうすればよいか (3)各軸において任意の文字を入力するにはどうすればよいか について教えてください。お願いします。

  • 両対数グラフでも通常のグラフでも直線に見える関数

    大学の授業でとあるデータをコンピュータでプロットしたのですが、それがよくわからなくて困っています。 両対数グラフで表示しても通常のグラフで表示しても直線に見えるのです。 通る点のうち二つは(1,9.85)(38,265.99)で、通常のグラフでの式を求めてみるとy=6.9227x+2.9273となりました。 グラフで直線に見えるといってもどちらでも微妙に歪んでいて、それがカギかと思うのですが、まったく分かりません。 どうしてこのデータのグラフはそう見えるのでしょうか。 確証がない説でもいいので、教えてください。

  • 片対数グラフを使ったアレニウスプロットについての質問

    「ある一次反応の反応速度定数を種々の温度で測定した結果が与えられていて、活性エネルギーと頻度因子を求めよ。」という問題がありアレニウスの式を変形し logK=logKo-loge*E/R(1/T)…(1)として片対数グラフに縦軸をK、横軸を1/Tとして直線を描き活性化エネルギーと頻度因子を求めました。答えは出たのですが、化学工学のいろいろな参考書では常用対数(底10)を縦軸として利用した解法ではなく自然対数(底e)を縦軸に用いた解法が載っていました。(1)の式を利用した私の解法は間違っているのでしょうか?市販されている片対数グラフで縦軸を自然対数にすることができるということなんでしょうか?(常用対数の間隔を2.303倍すれば自然対数の間隔になることは理解しています。) 私自身の理解不足が原因ですが、どなたかご教授ください。おねがいします。

  • 分子量とマーカー移動度の片対数グラフでの調べ方

    SDS-PAGEにおける分子量とマーカー移動度の片対数グラフでの調べ方についての質問です。 コラーゲンI型についてウエスタンブロットを行ったところ、予想以上にバンドが出てしまいました。そこで、分子量とマーカーの移動度から検量線を作ることになりました。 マーカーの移動度を定規で測り、エクセルにて縦軸を分子量(対数)、横軸を移動距離としてグラフを作りました。 その後、近似直線(曲線?、指数近似)とその数式を出してみると、 右肩下がりのy = 497.41e^(-0.0297x)という数式が出ました。 分子量が大きい物ほど移動度が小さいというのはわかるのですが、これであっているのかわかりません。 また、その数式から分子量(y)が分かっているときに移動距離(x)を求めたいのですが、 =log(497.41*2.71828,y)/(-0.0297)で計算すると移動度がマイナスになってしまいます。 どこで間違っているのかが分かりません。 どなたかご教授頂ければ幸いです。

  • Open Office で片対数グラフの描き方

    学校の電子回路の実験でフィルターの周波数応答をやりました。レポートの作成に当たり、横軸に周波数、縦軸に出力電圧をとってグラフを描きたいのですが、Open Office の表計算機能を使って、横軸の周波数を対数表示するにはどうすればよいのでしょうか?いろいろとグラフ関係の機能をいじくってみましたがわかりません。 詳しい方、どうか教えてください。よろしくお願いします。

  • 対数グラフの描画範囲

    対数グラフの描画範囲についての質問です。 x成分の値の範囲が約70~200のデータを対数グラフにプロットしたくて「散布図」で対数グラフを作成しましたが、x軸の目盛りの範囲がどうしても10~1000になってしまいます。このままだと数本のグラフが狭い範囲で重なり合ってしまいとても見づらいのですが、この範囲を70~200のように設定することは出来るのでしょうか? また、対数グラフの場合で「直線の近似曲線」を引くことは可能でしょうか?「マーカーを右クリック→近似曲線の追加→線形近似」をしても曲線になってしまい困ってます。

  • 両対数グラフでの直線式の求め方

    NANDゲートと積分回路を用いた信号遅延回路の実験で、 測定データをもとに遅延時間とCR(時定数)の関係を両対数 グラフ(縦軸:遅延時間、横軸:CRとして)で表すと直線が得られた のですが、この直線の式を求めるにはどうすればいいのでしょうか? log(y)-log(b)=m(log(x)-log(a)) (m:傾き) の式を使って求めると教えられたのですがいまいち分かりません。 どうかご教授願います。