0

2つの関数の線形方程式のセットを解きたいとき。

solutions := solve({f(x)=x,g(x)=x},{f(x),g(x)});

メープルの関数自体としてソリューションを操作するには、正確に何ができますか?

私ができたのは

f_solution := x2 -> subs(x=x2, rhs(solutions[1]))

しかし、それは多くの面で醜いです。まず、この些細な置換x->x2が必要であるように思われますが、それがないと機能しません。第二に、解の順序を制御することができないため、構成rhs(solutions[1])は非常に悪いです。したがって、方程式を変更するたびに、インデックス[1]がまだ正しいかどうかを手動で確認する必要があります。

セットから関数を抽出するためのクリーンで標準的な方法はありますか?

4

2 に答える 2

0

をご覧くださいassign。それはあなたがあなたの計算で得た解決策を修正することができます

> restart:
> solutions := solve({f(x)=x,g(x)=x},{f(x),g(x)});

                  solutions := {f(x) = x, g(x) = x}

> assign(%);
> f(x);

                                  x

あなたもsubsこのように試すことができます

> restart:
> solutions := solve({f(x)=x,g(x)=x},{f(x),g(x)});

                  solutions := {f(x) = x , g(x) = x}

> subs(solutions,f(x));
                                  x
于 2013-02-06T10:58:02.297 に答える
0
solutions := solve({2*f(x)=sin(x),g(x)/3=cos(x)},{f(x),g(x)});

           /       1                        \ 
          { f(x) = - sin(x), g(x) = 3 cos(x) }
           \       2                        / 

そして今、f_solution表現として、

f_solution := eval(f(x), solutions);

                        1       
                        - sin(x)
                        2       

またはf_solution手順として、

f_solution := unapply( eval(f(x), solutions), x);

                         1       
                    x -> - sin(x)
                         2       
于 2013-02-06T13:19:07.900 に答える