- ベストアンサー
等式の変換
等式の変換について教えてください。 Y = A * exp(B * X) + X 上の式について、(X = ...)の形にするには、どうすればいいでしょうか? よろしくお願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
#2です。 A#2の補足質問の回答 >A=0.433、B=-0.53 >この場合、AB<0ということで、f(y)は2つあるということですね。 >ちなみに、yの定義域は、(0<y≦10) です。 (0<y≦10)で使用しているとのことですが、 このA,Bに対する関数x=f(y) の関数自体のの定義域は y≧-.890369478 ( 等号時のx=f(-.890369478)=-2.777161930 ) となります。この定義域に(0<y≦10)は含まれていますので (0<y≦10)の範囲で以下のf(y)は定義できていますので (0<y≦10)の範囲のyに対して以下のf(y)の式がそのまま使えます。 y>-.890369478でのx=f(y)は二価関数となりますので 1つのyに対して、2つの関数値を持ちます。 x=f(y)>-2.777161930では x=f(y)=y+(1/0.53)*W(-0.53*0.433*exp(-0.53*y)) x=f(y)<-2.777161930では x=f(y)=y+(1/0.53)*W(-1,-0.53*0.433*exp(-0.53*y)) となります。 これらのf(y)はtaylor展開ではありませんので 一点y=aでの関数の近似値を与える式ではなく (0<y≦10)の範囲の任意のyに対してf(y)を与える式になります。 なお、 yに対するLambertW関数を含む計算は数式処理ソフトの Maple10などで瞬時に行えますが、 そうでない場合は yに対して、Newton法でW(u)やW(-1,u)の数値計算をすれば f(y)の式に代入してx=f(y)が計算できます。
その他の回答 (4)
- gef00675
- ベストアンサー率56% (57/100)
ごめんなさい タイプミスがありました。 x = y0 + y1*(y-a) + y2*(y-a)^2/2! + y3*(y-a)^3/3! +… です。
お礼
正直いうと、まだ計算できてないのですが、時間があるときにテイラー展開についても調べてみようかと思います。 回答をいただき、ありがとうございました。
- gef00675
- ベストアンサー率56% (57/100)
b=1の場合で計算してみました。 (一般のbの場合は、y→by、x→bx、a→baと置き換えれば 得られます) 無限級数での表示は、次のようになります。 x = y0(a) + y1(a)*(y-a) + y2*(y-a)^2/2! + y3*(y-a)^3/3! +… ここで、y0=0, y1=1/(a+1)、y2=-a/(a+1)^3, y3=-a(4-2a)/(a+1)^5,... これを、y=aのまわりのテイラー展開といいます。 y=aの近くでなりたつ近似式の一種です。 電卓などで計算してみると、かなりよくあっていることがわかると思います。
- info22
- ベストアンサー率55% (2225/4034)
#1さんの回答の通り、高校の数学までの範囲では X=f(Y) の形に直すことはできません。 つまり、初等関数を使ってf(Y)を表す事は不可能という事です。 1)無限級数による近似式で表せる方法 2)大学での数学レベルの範囲の特殊関数(超越関数)である LambertW関数を使ってf(x)を表す方法 があります。 どちらの場合でも AB>=0の場合は f(y)は一価関数となるので yの1つの値に対してx=f(y)の値が一意的に1つ定まります。 しかし AB<0の場合は x=f(y)のyの定義域が存在します。 f(y)は二価関数なので 1つのxに対してf(y)の値が2つ存在しますので一意的に f(y)が決まりません。 yの定義域を2つに分割すれば それぞれの定義域については一価関数化できますので それぞれのyの定義域について x=f(y)を満たすf(x)が一意的にに定まります。 なお、大学数学以上のレベルになりますが LambertW関数を使ってのx=f(y)のf(y)が必要なら 補足質問して頂けば回答いたします。 LambertW関数については参考URLをご覧下さい。 http://mathworld.wolfram.com/LambertW-Function.html http://www.apmaths.uwo.ca/~rcorless/frames/PAPERS/LambertW/
補足
お返事ありがとうございます。 例なのですが、具体的な数値を言ってしまいますと、 A=0.433、B=-0.53 この場合、AB<0ということで、f(y)は2つあるということですね。 ちなみに、yの定義域は、(0<y≦10) です。 可能なら回答をお願いします。 具体的な数値を入れてしまい非常識だとしたらすみません。
- gef00675
- ベストアンサー率56% (57/100)
高校までの数学で、その式をX=(A,Bの式)の形に表す のは無理です。 無限級数を使えばできますが、知りたいですか?
お礼
お返事ありがとうございます。 できるなら知りたいです。
お礼
教えて頂いた数式で結果を見たところ、うまくいきました。 自分でももう少し勉強しようと思います。 ありがとうございました。