「SageMath」の版間の差分
細 (Kusakata がページ「Sage-mathematics」を「SageMath」に移動しました) |
Linuxmetel (トーク | 投稿記録) (→TeX Live が SageTex を認識しない場合: 改行が入っていなかったので挿入) |
||
(3人の利用者による、間の7版が非表示) | |||
1行目: | 1行目: | ||
− | [[Category: |
+ | [[Category:数値解析]] |
− | [[en: |
+ | [[en:SageMath]] |
+ | [[ko:SageMath]] |
||
{{Related articles start}} |
{{Related articles start}} |
||
{{Related|Matlab}} |
{{Related|Matlab}} |
||
7行目: | 8行目: | ||
{{Related articles end}} |
{{Related articles end}} |
||
− | [http://www.sagemath.org |
+ | [http://www.sagemath.org SageMath] (旧名 '''Sage''') は数式処理や数値計算を行うためのプログラムでメインの言語として [[Python]] を使っています。Maple, Matlab, Mathematica といった商用プログラムの代わりとなることを目指しています。 |
Sage は以下をサポートしています: |
Sage は以下をサポートしています: |
||
18行目: | 19行目: | ||
== インストール == |
== インストール == |
||
− | Sage は[[公式リポジトリ]]から[[インストール]]することができます。 |
||
− | * {{Pkg| |
+ | * {{Pkg|sagemath}} にはコマンドラインバージョンが含まれています。 |
− | * {{Pkg| |
+ | * {{Pkg|sagemath-doc}} には HTML ドキュメントやコマンドラインのインラインヘルプが含まれています。 |
+ | |||
+ | {{Note|多くの Sage パッケージは、{{pkg|sagemath}} パッケージの [[pacman#パッケージのインストール|オプションの依存関係]] または [[AUR]] で利用できるため、通常の Arch パッケージとして追加でインストールする必要があります。それらの機能の利点。 {{ic|sage -i}} を使用してインストールする必要はないことに注意してください。実際、pacman を使用して SageMath をインストールした場合、このコマンドは機能しません。}} |
||
== 使用方法 == |
== 使用方法 == |
||
− | Sage は、数値計算用に多少の [http:// |
+ | Sage は、数値計算用に多少の [http://doc.sagemath.org/html/ja/tutorial/afterword.html#section-mathannoy 改良] が施された Python をスクリプト言語として主に使用します。 |
=== Sage コマンドライン === |
=== Sage コマンドライン === |
||
30行目: | 32行目: | ||
$ sage |
$ sage |
||
− | Sage コマンドラインに関する情報は [http:// |
+ | Sage コマンドラインに関する情報は [http://doc.sagemath.org/html/en/reference/repl/index.html このページ] を見てください。 |
− | コマンドラインは IPython シェルがベースになっていて、Sage では全ての [http:// |
+ | コマンドラインは IPython シェルがベースになっていて、Sage では全ての [http://doc.sagemath.org/html/ja/tutorial/interactive_shell.html 設定] を使用することができます。IPython のチュートリアルを読みたい場合はコミュニティによってメンテナンスされている [http://wiki.ipython.org/Cookbook IPython Cookbook] を見てください。 |
ただし、プロットなど、場合によっては使いづらいことがあります。何かをプロットしたい場合、例えば: |
ただし、プロットなど、場合によっては使いづらいことがあります。何かをプロットしたい場合、例えば: |
||
sage: plot(sin,(x,0,10)) |
sage: plot(sin,(x,0,10)) |
||
− | Sage は |
+ | Sage は外部アプリケーションでブラウザウィンドウを開きます。 |
=== Sage Notebook === |
=== Sage Notebook === |
||
+ | {{Note|SageMath の Flask notebook はメンテナンスモードとなっており Jupyter notebook に置き換わって廃止される予定です。新しいワークシートを作成するときは Jupyter notebook を使うことを推奨します。{{pkg|sage-notebook-exporter}} アプリケーションで Flask ノートブックを Jupyter に変換できます。}} |
||
+ | |||
高度な利用方法で Sage を使うときに適しているインタフェースは Notebook です。コマンドラインから Notebook サーバーを起動するには、次を実行: |
高度な利用方法で Sage を使うときに適しているインタフェースは Notebook です。コマンドラインから Notebook サーバーを起動するには、次を実行: |
||
$ sage -n |
$ sage -n |
||
47行目: | 51行目: | ||
$ sage -c "notebook(automatic_login=True)" |
$ sage -c "notebook(automatic_login=True)" |
||
− | Sage Notebook に関する完全なチュートリアルは [http:// |
+ | Sage Notebook に関する完全なチュートリアルは [http://doc.sagemath.org/html/en/reference/notebook/index.html Sage のドキュメント] を見てください。{{ic|notebook()}} コマンドの詳細は [http://doc.sagemath.org/html/en/reference/notebook/index.html このページ] を見てください。 |
+ | |||
+ | === Jupyter Notebook === |
||
+ | SageMath の {{Pkg|sagemath-jupyter}} には [https://jupyter.org/ Jupyter] notebook のカーネルが含まれています。カーネルを使うには、{{Pkg|ipython2-notebook}}{{Broken package link|パッケージが存在しません}} と {{Pkg|mathjax}} をインストールして、次のコマンドで notebook を起動してください: |
||
+ | $ jupyter notebook |
||
+ | そして "New..." ドロップダウンメニューから "SageMath" を選択します。SageMath の Jupyter notebook は {{ic|%display latex}} コマンドを使って [[LaTeX]] で出力することができ {{Pkg|jmol}} がインストールされている場合 3D プロットもサポートします。 |
||
=== Cantor === |
=== Cantor === |
||
[http://edu.kde.org/applications/mathematics/cantor/ Cantor] は KDE Edu Project に含まれているアプリケーションです。Maxima, Sage, Octave, Scilab などの様々な数式処理アプリケーションのフロントエンドとして使うことができます。Cantor で Sage を使用する方法は Sage wiki の [http://wiki.sagemath.org/Cantor Cantor のページ] を見てください。 |
[http://edu.kde.org/applications/mathematics/cantor/ Cantor] は KDE Edu Project に含まれているアプリケーションです。Maxima, Sage, Octave, Scilab などの様々な数式処理アプリケーションのフロントエンドとして使うことができます。Cantor で Sage を使用する方法は Sage wiki の [http://wiki.sagemath.org/Cantor Cantor のページ] を見てください。 |
||
− | Cantor は[[公式リポジトリ]]から {{Pkg| |
+ | Cantor は[[公式リポジトリ]]から {{Pkg|cantor}} パッケージでインストールすることができ、このパッケージは {{Grp|kde-applications}} や {{Grp|kde-education}} グループに含まれています。 |
=== ドキュメント === |
=== ドキュメント === |
||
58行目: | 67行目: | ||
# sage --docbuild reference html |
# sage --docbuild reference html |
||
− | ''reference'' ツリー全体の HTML ドキュメントが作成されます (1時間以上かかるかもしれません)。ドキュメントツリーの一部を作成することもできますが、何が必要なのか自分で調べておく必要があります。それまでは、[http:// |
+ | ''reference'' ツリー全体の HTML ドキュメントが作成されます (1時間以上かかるかもしれません)。ドキュメントツリーの一部を作成することもできますが、何が必要なのか自分で調べておく必要があります。それまでは、[http://doc.sagemath.org/ オンラインリファレンス] を見るのが良いでしょう。 |
ドキュメントのリストは {{ic|sage --docbuild --documents}} を見てください。サポートされているフォーマットのリストは {{ic|sage --docbuild --formats}} を見てください。 |
ドキュメントのリストは {{ic|sage --docbuild --documents}} を見てください。サポートされているフォーマットのリストは {{ic|sage --docbuild --formats}} を見てください。 |
||
64行目: | 73行目: | ||
== 任意のアドオン == |
== 任意のアドオン == |
||
=== SageTeX === |
=== SageTeX === |
||
− | システムに [[TeX Live]] をインストールしている場合、[http:// |
+ | システムに [[TeX Live]] をインストールしている場合、[http://doc.sagemath.org/html/ja/tutorial/sagetex.html SageTeX] に興味を覚えるかもしれません。Sage のコードを LaTeX ファイルの中に含めることができるようになるパッケージです。TeX Live は自動的に SageTeX に対応するようになっているので何も考えないで使いはじめることができます。 |
シンプルな例として、以下は Sage の 2D プロットを TEX ドキュメントに含める例です ({{ic|pdflatex}} を使用するとします): |
シンプルな例として、以下は Sage の 2D プロットを TEX ドキュメントに含める例です ({{ic|pdflatex}} を使用するとします): |
||
97行目: | 106行目: | ||
== トラブルシューティング == |
== トラブルシューティング == |
||
+ | |||
− | === TeX Live が SageTex を認識しない === |
||
− | TeX Live が SageTex |
+ | === TeX Live が SageTex を認識しない場合 === |
+ | |||
− | * ファイルを texmf ディレクトリにコピー: |
||
+ | TeX Live のインストールで SageTex パッケージが見つからない場合は、以下の手順を試してみてください (root として、またはローカルフォルダを使用します) |
||
+ | * ファイルを texmf ディレクトリにコピーします: |
||
# cp /opt/sage/local/share/texmf/tex/* /usr/share/texmf/tex/ |
# cp /opt/sage/local/share/texmf/tex/* /usr/share/texmf/tex/ |
||
− | * TeX Live |
+ | * TeX Liveをリフレッシュする。 |
+ | * TeX Live をを更新します: |
||
+ | |||
{{bc| |
{{bc| |
||
# texhash /usr/share/texmf/ |
# texhash /usr/share/texmf/ |
||
107行目: | 120行目: | ||
texhash: Done. |
texhash: Done. |
||
}} |
}} |
||
− | |||
− | === Sage Notebook Server を起動すると ImportError が返ってくる === |
||
− | |||
− | Sage Notebook Server は別のパッケージ {{Pkg|sage-notebook}} に入っています。そして、起動した時に ImportError が表示される場合: |
||
− | |||
− | % sage --notebook |
||
− | ┌────────────────────────────────────────────────────────────────────┐ |
||
− | │ Sage Version 6.4.1, Release Date: 2014-11-23 │ |
||
− | │ Type "notebook()" for the browser-based notebook interface. │ |
||
− | │ Type "help()" for help. │ |
||
− | └────────────────────────────────────────────────────────────────────┘ |
||
− | Please wait while the Sage Notebook server starts... |
||
− | Traceback (most recent call last): |
||
− | File "/usr/bin/sage-notebook", line 180, in <module> |
||
− | launcher(unknown) |
||
− | File "/usr/bin/sage-notebook", line 58, in __init__ |
||
− | from sagenb.notebook.notebook_object import notebook |
||
− | ImportError: No module named sagenb.notebook.notebook_object |
||
− | |||
− | おそらく {{Pkg|sage-notebook}} パッケージをインストールしていないのが原因です。 |
||
== 参照 == |
== 参照 == |
||
* [http://www.sagemath.org/ 公式ウェブサイト] |
* [http://www.sagemath.org/ 公式ウェブサイト] |
||
− | * [http:// |
+ | * [http://doc.sagemath.org/ Sage のドキュメント] |
* [http://planet.sagemath.org/ Planet Sage] |
* [http://planet.sagemath.org/ Planet Sage] |
||
* [http://wiki.sagemath.org/ Sage Wiki] |
* [http://wiki.sagemath.org/ Sage Wiki] |
2022年9月17日 (土) 00:06時点における最新版
関連記事
SageMath (旧名 Sage) は数式処理や数値計算を行うためのプログラムでメインの言語として Python を使っています。Maple, Matlab, Mathematica といった商用プログラムの代わりとなることを目指しています。
Sage は以下をサポートしています:
- 微積分学: Maxima と SymPy を使用。
- 線形代数: GSL, SciPy, NumPy を使用。
- 統計処理: R (through RPy) と SciPy を使用。
- グラフ: matplotlib を使用。
- IPython を使用するインタラクティブシェル。
- PIL, SQLAlchemy などの Python モジュールへのアクセス。
目次
インストール
- sagemath にはコマンドラインバージョンが含まれています。
- sagemath-doc には HTML ドキュメントやコマンドラインのインラインヘルプが含まれています。
使用方法
Sage は、数値計算用に多少の 改良 が施された Python をスクリプト言語として主に使用します。
Sage コマンドライン
Sage はコマンドラインから起動できます:
$ sage
Sage コマンドラインに関する情報は このページ を見てください。
コマンドラインは IPython シェルがベースになっていて、Sage では全ての 設定 を使用することができます。IPython のチュートリアルを読みたい場合はコミュニティによってメンテナンスされている IPython Cookbook を見てください。
ただし、プロットなど、場合によっては使いづらいことがあります。何かをプロットしたい場合、例えば:
sage: plot(sin,(x,0,10))
Sage は外部アプリケーションでブラウザウィンドウを開きます。
Sage Notebook
高度な利用方法で Sage を使うときに適しているインタフェースは Notebook です。コマンドラインから Notebook サーバーを起動するには、次を実行:
$ sage -n
ノートブックは http://localhost:8080 からブラウザでアクセスすることができ、ログインを要求します。
しかしながら、インターネットを介さずにサーバーを個人用に動かしている場合、ログインは面倒です。次のコマンドを使うことで、ログインを必要とせずに、Notebook を起動してブラウザで自動的にポップアップさせることができます:
$ sage -c "notebook(automatic_login=True)"
Sage Notebook に関する完全なチュートリアルは Sage のドキュメント を見てください。notebook()
コマンドの詳細は このページ を見てください。
Jupyter Notebook
SageMath の sagemath-jupyter には Jupyter notebook のカーネルが含まれています。カーネルを使うには、ipython2-notebook[リンク切れ: パッケージが存在しません] と mathjax をインストールして、次のコマンドで notebook を起動してください:
$ jupyter notebook
そして "New..." ドロップダウンメニューから "SageMath" を選択します。SageMath の Jupyter notebook は %display latex
コマンドを使って LaTeX で出力することができ jmol がインストールされている場合 3D プロットもサポートします。
Cantor
Cantor は KDE Edu Project に含まれているアプリケーションです。Maxima, Sage, Octave, Scilab などの様々な数式処理アプリケーションのフロントエンドとして使うことができます。Cantor で Sage を使用する方法は Sage wiki の Cantor のページ を見てください。
Cantor は公式リポジトリから cantor パッケージでインストールすることができ、このパッケージは kde-applications や kde-education グループに含まれています。
ドキュメント
ローカルのドキュメントは HTML や PDF などの複数のフォーマットにコンパイルすることができます。Sage の全てのリファレンスを作成するには、次のコマンドを (root で) 実行してください:
# sage --docbuild reference html
reference ツリー全体の HTML ドキュメントが作成されます (1時間以上かかるかもしれません)。ドキュメントツリーの一部を作成することもできますが、何が必要なのか自分で調べておく必要があります。それまでは、オンラインリファレンス を見るのが良いでしょう。
ドキュメントのリストは sage --docbuild --documents
を見てください。サポートされているフォーマットのリストは sage --docbuild --formats
を見てください。
任意のアドオン
SageTeX
システムに TeX Live をインストールしている場合、SageTeX に興味を覚えるかもしれません。Sage のコードを LaTeX ファイルの中に含めることができるようになるパッケージです。TeX Live は自動的に SageTeX に対応するようになっているので何も考えないで使いはじめることができます。
シンプルな例として、以下は Sage の 2D プロットを TEX ドキュメントに含める例です (pdflatex
を使用するとします):
- ドキュメントの前に
sagetex
パッケージを記述
\usepackage{sagetex}
sagesilent
環境を作成してコードを挿入:
\begin{sagesilent} dob(x) = sqrt(x^2 - 1) / (x * arctan(sqrt(x^2 - 1))) dpr(x) = sqrt(x^2 - 1) / (x * log( x + sqrt(x^2 - 1))) p1 = plot(dob,(x, 1, 10), color='blue') p2 = plot(dpr,(x, 1, 10), color='red') ptot = p1 + p2 ptot.axes_labels(['$\\xi$','$\\frac{R_h}{\\max(a,b)}$']) \end{sagesilent}
- プロットを作成 (例:
float
環境の中):
\begin{figure} \begin{center} \sageplot[width=\linewidth]{ptot} \end{center} \end{figure}
- 以下を実行してドキュメントをコンパイル:
$ pdflatex <doc.tex> $ sage <doc.sage> $ pdflatex <doc.tex>
- 出力されたドキュメントを確認してください。
SageTeX の完全なドキュメントは CTAN にあります。
トラブルシューティング
TeX Live が SageTex を認識しない場合
TeX Live のインストールで SageTex パッケージが見つからない場合は、以下の手順を試してみてください (root として、またはローカルフォルダを使用します)
- ファイルを texmf ディレクトリにコピーします:
# cp /opt/sage/local/share/texmf/tex/* /usr/share/texmf/tex/
- TeX Liveをリフレッシュする。
- TeX Live をを更新します:
# texhash /usr/share/texmf/ texhash: Updating /usr/share/texmf/.//ls-R... texhash: Done.