• 締切済み

この式から値を求めたいのですが

数式で、a=(b/c)*(d/f)*e^(-1/8*(f/d)^2) b,c,f,eは定数として 上記の式から、aが分かっている状態で、dの値を求めたいのですが可能でしょうか? それが無理であればaの変化量に対するdの増減する値が分かるだけでもいいのですが・・・ やはり無理なことですか? 回答の程よろしくお願いします

みんなの回答

  • info22
  • ベストアンサー率55% (2225/4034)
回答No.3

#1です。 A#1のdの > d=(acf/(2b))√[{(b/(ac))^2}/W({b/(2ac)}}^2)] >(ただし、acdf≠0) の式を書き換えると d=(f/2)sign(acb)/√W({b/(2ac)}^2) なお、 y>0なら sign(y)=1 , y<0なら sign(y)=-1 とも書けます。 また、ただし書きは 元のaの式で分母になっている定数ためゼロになれない定数の非ゼロ条件: cdf≠0 と dが未定義にならない条件: ab≠0 をまとめたもので  abcdf≠0 とするか、「a=...」や「d=...」の右辺に出てきた変数のみを書くようにし  「a=...」 の式では cbdf≠0 とし, d=0の時は別に a=0と定義 「d=...」の式では abcf≠0 とし, a=0の時は別に d=0と定義 とした方が良い気がします。 注)dはaの奇関数であり、積bcの符号が変わればdの符号がが反転し、 グラフも横軸に対して対称移動します。

  • spring135
  • ベストアンサー率44% (1487/3332)
回答No.2

No.1さんのランベルト関数の話は大変勉強になりました。 一般に超越関数の扱いは厄介で泣かされます。 >それが無理であればaの変化量に対するdの増減する値 これは超越関数を知らなくてもある程度できます。 これはdd/daを求めればよいと思われますが、 a=f(d)の形になっているので dd/da=1/(da/dd) からda/ddをもとめ、逆数にすればよい。 計算の見通しをよくするため b/c=g, d/f=xとおき a=gx*e^(-1/8x^2) から da/dxを求め b/c=g, d/f=xにより変数を元に戻すと 結果は dd/da=(d/a)*(4d^2/(4d^2+f^2)) da/dxの計算にあたっては対数微分を使うと 見通しが良い。 dd/daの右辺にはdが入っているので、数値計算としてこのまま使えるかは状況によります。 QED

  • info22
  • ベストアンサー率55% (2225/4034)
回答No.1

dは 一般的には初等関数初等関数では求められません。 大学レベルになりますが、 超越関数に属する特殊関数のランベルト関数W(x) を使えば dをaの関数として表せますし、定数を与えればdをaの関数としてプロットすることも可能です。 d=(acf/(2b))√[{(b/(ac))^2}/W({b/(2ac)}^2)] (ただし、acdf≠0 参考URL:ランベルト関数

参考URL:
http://mathworld.wolfram.com/LambertW-Function.html