sage/text/方程式の解法
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
[[FrontPage]]
#contents
2011/06/17からのアクセス回数 &counter;
ここで紹介したSageワークシートは、以下のURLからダウンロー...
http://www15191ue.sakura.ne.jp:8000/home/pub/5/
また、Sageのサーバを公開しているサイト(http://www.sagenb...
アップロードし、実行したり、変更していろいろ動きを試すこ...
** 方程式の解法 [#ec110b1a]
数式処理システムで使いたい機能の一つに、方程式の解法があ...
方程式の解法にはsolve関数を使用します。solve関数の呼び出...
#pre{{
solve(解きたい方程式また方程式のリスト, 解を得る変数)
}}
*** 一次方程式の解 [#t69fad05]
以下の一次方程式をsolveを使って解いてみましょう。
$$
f(x)=2x+1
$$
solverの戻り値は、解のリストです。一次方程式では1個の解...
が得られます。
sageへの入力:
#pre{{
# 一次方程式の解法
var('x')
f = 2*x + 1
sol = solve(f, x); view(sol)
}}
&ref(out1.png);
*** 一次方程式のグラフ表現 [#h273aa36]
先のf(x)をyとすると、直線の式が得られます。
$$
y = 2x + 1
$$
この直線をプロットしてみると、以下のようになります。
直線とX軸が交わる点が、方程式の解になっていることがわかり...
sageへの入力:
#pre{{
# 一次方程式のグラフ
plot(f, [x, -2, 2])
}}
&ref(out2.png);
** 2次方程式 [#z922ca78]
同様に、以下の2次方程式について見てみましょう。
$$
f(x) = x^2 + x - 1
$$
f(x)の定義と因数分解の結果を表示します。
sageへの入力:
#pre{{
# 2次方程式
f = x^2 + x - 1
view(factor(f))
}}
&ref(out3.png);
*** 2次方程式の解とグラフ表現 [#id0224cf]
solve関数の解は、2個の実数が求まります。
この場合のグラフは、X軸で交わる点が2個存在します。
sageへの入力:
#pre{{
# 2次方程式の解
sol = solve(f, x); view(sol)
}}
&ref(out4.png);
sageへの入力:
#pre{{
# 2次方程式のグラフ
plot(f, [x, -2, 2])
}}
&ref(out5.png);
*** 重根の場合 [#u5029954]
2次方程式の解が同じ値を持つ場合(重根)の場合には、X軸と...
重根の場合、解をaとすると因数分解の形は、以下のようになり...
$$
f(x) = (x -a)^2
$$
sageへの入力:
#pre{{
# 重根の場合
f = x^2 - 2*x + 1
view(factor(f))
}}
&ref(out6.png);
sageへの入力:
#pre{{
# 2次方程式の解(重根の場合)
sol = solve(f, x); view(sol)
}}
&ref(out7.png);
sageへの入力:
#pre{{
# 2次方程式のグラフ(重根の場合)
plot(f, [x, -2, 2])
}}
&ref(out8.png);
*** 複素数の場合 [#u8f8f839]
2次方程式の解が複素数の場合には、グラフはX軸と交わりませ...
sageへの入力:
#pre{{
# 複素数
f = x^2 + x + 1
view(factor(f))
}}
&ref(out9.png);
sageへの入力:
#pre{{
# 2次方程式の解
sol = solve(f, x); view(sol)
}}
&ref(out10.png);
sageへの入力:
#pre{{
# 2次方程式のグラフ
plot(f, [x, -2, 2])
}}
&ref(out11.png);
*** 多項式と数値解 [#q831a9d9]
多項式の例として、以下の3次多項式をみてみましょう。
$$
f(x) = x^3 - 2 x + 4
$$
solveの結果は、1個の実数と2個の複素数が求まります。ここ...
このように関数の解を求めたり、グラフと解の関係を理解する...
sageへの入力:
#pre{{
# 3次方程式
var('x')
f = x^3-2*x+4
view(factor(f))
}}
&ref(out12.png);
sageへの入力:
#pre{{
# 3次方程式の解
sol = solve(f, x); view(sol)
}}
&ref(out13.png);
sageへの入力:
#pre{{
# 3次方程式のグラフ
plot(f, -2.5, 2.5)
}}
&ref(out14.png);
*** 数値解法 [#ae06cd27]
solveが解析的に解を求めたのに対し、与えられた範囲で解とな...
関数が、find_rootです。
find_rootの呼び出し形式は以下の通りです。fには1変数の関...
#pre{{
find_root(f, 計算開始点, 計算終了点)
}}
先の関数f(x)をfind_rootで求めると、解析解(x = 2)に非常に...
$$
f(x) = x^3 - 2 x + 4
$$
sageへの入力:
#pre{{
# グラフから-3から3の範囲で数値解を求める
find_root(f, -3, 3)
}}
sageの出力:
#pre{{
-1.9999999999999949
}}
*** 連立方程式 [#q5349683]
連立方程式の解とグラフの関係をSageを使ってみてみましょう。
先に解いた一次方程式と2次方程式を1つの連立方程式にして...
$$
\left\{ \begin{eqnarray}
y & = & 2 x + 1 \\
y & = & x^2 + x - 1
\end{eqnarray} \right.
$$
方程式のリストをsolve関数に与えることで、連立方程式の解を...
グラフから1次曲線と2次曲線の交点(-1, -1), (2, 5)が、連...
sageへの入力:
#pre{{
var('x y')
eq = [y == 2*x + 1, y == x^2 + x - 1]
# 解を求める
view(solve(eq, [x, y]))
# グラフから解を求める
p1 = plot(x^2 + x - 1, [x, -2, 3])
p2 = plot(2*x + 1, [x, -2, 3])
(p1+p2).show(ymin=-3, ymax=8) # 不等号の例と描画範囲を...
}}
&ref(out15.png);
** 不等式とグラフ [#ebf86f29]
region_plot関数を使うことで不等式の範囲をグラフで表示する...
region_plotの引数には、xとy2変数の関係式または2変数を引...
描画範囲を指定します。
以下に1次不等式の例を示します。
$$
y \le 2 x + 1
$$
sageへの入力:
#pre{{
(x, y) = var('x y')
f(x, y) = y <= 2*x + 1
region_plot(f(x, y), [x, -2, 3], [y, -3, 8])
}}
&ref(out16.png);
incol, outcolで領域内、領域外の色を指定したり、bordercol...
以下では、2次不等式にincolに薄い青、境界線に灰色を指定し...
$$
y > x^2 + x -1
$$
sageへの入力:
#pre{{
g(x, y) = y > x^2 + x - 1
region_plot(g(x, y), [x, -2, 3], [y, -3, 8], incol='light...
}}
&ref(out17.png);
*** 連立不等式のグラフ [#jef588e0]
region_plotに複数の式または関数をリストで与えることによっ...
範囲を表示することができます。
以下に、先の2つの不等式を組み合わせた連立不等式の例を示...
$$
\left\{ \begin{eqnarray}
y & \le & 2 x + 1 \\
y & > & x^2 + x - 1
\end{eqnarray} \right.
$$
sageへの入力:
#pre{{
region_plot([f, g], [x, -2, 3], [y, -3, 8])
}}
&ref(out18.png);
** コメント [#s07eb9eb]
#vote(おもしろかった[6],そうでもない[0],わかりずらい[0])
皆様のご意見、ご希望をお待ちしております。
#comment_kcaptcha
終了行:
[[FrontPage]]
#contents
2011/06/17からのアクセス回数 &counter;
ここで紹介したSageワークシートは、以下のURLからダウンロー...
http://www15191ue.sakura.ne.jp:8000/home/pub/5/
また、Sageのサーバを公開しているサイト(http://www.sagenb...
アップロードし、実行したり、変更していろいろ動きを試すこ...
** 方程式の解法 [#ec110b1a]
数式処理システムで使いたい機能の一つに、方程式の解法があ...
方程式の解法にはsolve関数を使用します。solve関数の呼び出...
#pre{{
solve(解きたい方程式また方程式のリスト, 解を得る変数)
}}
*** 一次方程式の解 [#t69fad05]
以下の一次方程式をsolveを使って解いてみましょう。
$$
f(x)=2x+1
$$
solverの戻り値は、解のリストです。一次方程式では1個の解...
が得られます。
sageへの入力:
#pre{{
# 一次方程式の解法
var('x')
f = 2*x + 1
sol = solve(f, x); view(sol)
}}
&ref(out1.png);
*** 一次方程式のグラフ表現 [#h273aa36]
先のf(x)をyとすると、直線の式が得られます。
$$
y = 2x + 1
$$
この直線をプロットしてみると、以下のようになります。
直線とX軸が交わる点が、方程式の解になっていることがわかり...
sageへの入力:
#pre{{
# 一次方程式のグラフ
plot(f, [x, -2, 2])
}}
&ref(out2.png);
** 2次方程式 [#z922ca78]
同様に、以下の2次方程式について見てみましょう。
$$
f(x) = x^2 + x - 1
$$
f(x)の定義と因数分解の結果を表示します。
sageへの入力:
#pre{{
# 2次方程式
f = x^2 + x - 1
view(factor(f))
}}
&ref(out3.png);
*** 2次方程式の解とグラフ表現 [#id0224cf]
solve関数の解は、2個の実数が求まります。
この場合のグラフは、X軸で交わる点が2個存在します。
sageへの入力:
#pre{{
# 2次方程式の解
sol = solve(f, x); view(sol)
}}
&ref(out4.png);
sageへの入力:
#pre{{
# 2次方程式のグラフ
plot(f, [x, -2, 2])
}}
&ref(out5.png);
*** 重根の場合 [#u5029954]
2次方程式の解が同じ値を持つ場合(重根)の場合には、X軸と...
重根の場合、解をaとすると因数分解の形は、以下のようになり...
$$
f(x) = (x -a)^2
$$
sageへの入力:
#pre{{
# 重根の場合
f = x^2 - 2*x + 1
view(factor(f))
}}
&ref(out6.png);
sageへの入力:
#pre{{
# 2次方程式の解(重根の場合)
sol = solve(f, x); view(sol)
}}
&ref(out7.png);
sageへの入力:
#pre{{
# 2次方程式のグラフ(重根の場合)
plot(f, [x, -2, 2])
}}
&ref(out8.png);
*** 複素数の場合 [#u8f8f839]
2次方程式の解が複素数の場合には、グラフはX軸と交わりませ...
sageへの入力:
#pre{{
# 複素数
f = x^2 + x + 1
view(factor(f))
}}
&ref(out9.png);
sageへの入力:
#pre{{
# 2次方程式の解
sol = solve(f, x); view(sol)
}}
&ref(out10.png);
sageへの入力:
#pre{{
# 2次方程式のグラフ
plot(f, [x, -2, 2])
}}
&ref(out11.png);
*** 多項式と数値解 [#q831a9d9]
多項式の例として、以下の3次多項式をみてみましょう。
$$
f(x) = x^3 - 2 x + 4
$$
solveの結果は、1個の実数と2個の複素数が求まります。ここ...
このように関数の解を求めたり、グラフと解の関係を理解する...
sageへの入力:
#pre{{
# 3次方程式
var('x')
f = x^3-2*x+4
view(factor(f))
}}
&ref(out12.png);
sageへの入力:
#pre{{
# 3次方程式の解
sol = solve(f, x); view(sol)
}}
&ref(out13.png);
sageへの入力:
#pre{{
# 3次方程式のグラフ
plot(f, -2.5, 2.5)
}}
&ref(out14.png);
*** 数値解法 [#ae06cd27]
solveが解析的に解を求めたのに対し、与えられた範囲で解とな...
関数が、find_rootです。
find_rootの呼び出し形式は以下の通りです。fには1変数の関...
#pre{{
find_root(f, 計算開始点, 計算終了点)
}}
先の関数f(x)をfind_rootで求めると、解析解(x = 2)に非常に...
$$
f(x) = x^3 - 2 x + 4
$$
sageへの入力:
#pre{{
# グラフから-3から3の範囲で数値解を求める
find_root(f, -3, 3)
}}
sageの出力:
#pre{{
-1.9999999999999949
}}
*** 連立方程式 [#q5349683]
連立方程式の解とグラフの関係をSageを使ってみてみましょう。
先に解いた一次方程式と2次方程式を1つの連立方程式にして...
$$
\left\{ \begin{eqnarray}
y & = & 2 x + 1 \\
y & = & x^2 + x - 1
\end{eqnarray} \right.
$$
方程式のリストをsolve関数に与えることで、連立方程式の解を...
グラフから1次曲線と2次曲線の交点(-1, -1), (2, 5)が、連...
sageへの入力:
#pre{{
var('x y')
eq = [y == 2*x + 1, y == x^2 + x - 1]
# 解を求める
view(solve(eq, [x, y]))
# グラフから解を求める
p1 = plot(x^2 + x - 1, [x, -2, 3])
p2 = plot(2*x + 1, [x, -2, 3])
(p1+p2).show(ymin=-3, ymax=8) # 不等号の例と描画範囲を...
}}
&ref(out15.png);
** 不等式とグラフ [#ebf86f29]
region_plot関数を使うことで不等式の範囲をグラフで表示する...
region_plotの引数には、xとy2変数の関係式または2変数を引...
描画範囲を指定します。
以下に1次不等式の例を示します。
$$
y \le 2 x + 1
$$
sageへの入力:
#pre{{
(x, y) = var('x y')
f(x, y) = y <= 2*x + 1
region_plot(f(x, y), [x, -2, 3], [y, -3, 8])
}}
&ref(out16.png);
incol, outcolで領域内、領域外の色を指定したり、bordercol...
以下では、2次不等式にincolに薄い青、境界線に灰色を指定し...
$$
y > x^2 + x -1
$$
sageへの入力:
#pre{{
g(x, y) = y > x^2 + x - 1
region_plot(g(x, y), [x, -2, 3], [y, -3, 8], incol='light...
}}
&ref(out17.png);
*** 連立不等式のグラフ [#jef588e0]
region_plotに複数の式または関数をリストで与えることによっ...
範囲を表示することができます。
以下に、先の2つの不等式を組み合わせた連立不等式の例を示...
$$
\left\{ \begin{eqnarray}
y & \le & 2 x + 1 \\
y & > & x^2 + x - 1
\end{eqnarray} \right.
$$
sageへの入力:
#pre{{
region_plot([f, g], [x, -2, 3], [y, -3, 8])
}}
&ref(out18.png);
** コメント [#s07eb9eb]
#vote(おもしろかった[6],そうでもない[0],わかりずらい[0])
皆様のご意見、ご希望をお待ちしております。
#comment_kcaptcha
ページ名:
SmartDoc