コンテンツにスキップ

「SageMath」の版間の差分

提供: ArchWiki
削除された内容 追加された内容
ページの作成:「Category:計算と科学 en:Sage-mathematics {{Related articles start}} {{Related|Matlab}} {{Related|Octave}} {{Related|Mathematica}} {{Related articles end}} [h...」
 
TeX Live が SageTex を認識しない場合: 改行が入っていなかったので挿入
 
(3人の利用者による、間の8版が非表示)
1行目: 1行目:
[[Category:計算と科学]]
[[Category:数値解析]]
[[en:Sage-mathematics]]
[[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 Sage] は数式処理や数値計算を行うためのプログラムでメインの言語として [[Python]] を使っています。Maple, Matlab, Mathematica といった商用プログラムの代わりとなることを目指しています。
[http://www.sagemath.org SageMath] (旧名 '''Sage''') は数式処理や数値計算を行うためのプログラムでメインの言語として [[Python]] を使っています。Maple, Matlab, Mathematica といった商用プログラムの代わりとなることを目指しています。


Sage は以下をサポートしています:
Sage は以下をサポートしています:
18行目: 19行目:


== インストール ==
== インストール ==
Sage は[[公式リポジトリ]]から[[インストール]]することができます。


* {{Pkg|sage-mathematics}} にはコマンドラインバージョンが含まれています。
* {{Pkg|sagemath}} にはコマンドラインバージョンが含まれています。
* {{Pkg|sage-notebook}} にはウェブベースのノーブックインタフェースが含まれています。
* {{Pkg|sagemath-doc}} には HTML ドキュメンやコマンドラインのインラインヘルプが含まれています。

{{Note|多くの Sage パッケージは、{{pkg|sagemath}} パッケージの [[pacman#パッケージのインストール|オプションの依存関係]] または [[AUR]] で利用できるため、通常の Arch パッケージとして追加でインストールする必要があります。それらの機能の利点。 {{ic|sage -i}} を使用してインストールする必要はないことに注意してください。実際、pacman を使用して SageMath をインストールした場合、このコマンドは機能しません。}}


== 使用方法 ==
== 使用方法 ==
Sage は、数値計算用に多少の [http://www.sagemath.org/doc/tutorial/afterword.html#section-mathannoy 改良] が施された Python をスクリプト言語として主に使用します。
Sage は、数値計算用に多少の [http://doc.sagemath.org/html/ja/tutorial/afterword.html#section-mathannoy 改良] が施された Python をスクリプト言語として主に使用します。


=== Sage コマンドライン ===
=== Sage コマンドライン ===
30行目: 32行目:
$ sage
$ sage


Sage コマンドラインに関する情報は [http://www.sagemath.org/doc/reference/cmd/index.html このページ] を見てください。
Sage コマンドラインに関する情報は [http://doc.sagemath.org/html/en/reference/repl/index.html このページ] を見てください。


コマンドラインは IPython シェルがベースになっていて、Sage では全ての [http://www.sagemath.org/doc/tutorial/interactive_shell.html 設定] を使用することができます。IPython のチュートリアルを読みたい場合はコミュニティによってメンテナンスされている [http://wiki.ipython.org/Cookbook IPython Cookbook] を見てください。
コマンドラインは 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 Notebook でブラウザウィンドウを開きます。
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://www.sagemath.org/doc/reference/notebook/index.html Sage のドキュメント] を見てください。{{ic|notebook()}} コマンドの詳細は [http://www.sagemath.org/doc/reference/notebook/sagenb/notebook/notebook.html このページ] を見てください。
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|kdeedu-cantor}} パッケージでインストールすることができ、このパッケージは {{Grp|kde}} や {{Grp|kdeedu}} グループに含まれています。
Cantor は[[公式リポジトリ]]から {{Pkg|cantor}} パッケージでインストールすることができ、このパッケージは {{Grp|kde-applications}} や {{Grp|kde-education}} グループに含まれています。


=== ドキュメント ===
=== ドキュメント ===
58行目: 67行目:
# sage --docbuild reference html
# sage --docbuild reference html


''reference'' ツリー全体の HTML ドキュメントが作成されます (1時間以上かかるかもしれません)。ドキュメントツリーの一部を作成することもできますが、何が必要なのか自分で調べておく必要があります。それまでは、[http://www.sagemath.org/doc/ オンラインリファレンス] を見るのが良いでしょう。
''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://www.sagemath.org/doc/tutorial/sagetex.html SageTeX] に興味を覚えるかもしれません。Sage のコードを LaTeX ファイルの中に含めることができるようになるパッケージです。TeX Live は自動的に SageTeX に対応するようになっているので何も考えないで使いはじめることができます。
システムに [[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 パッケージ見つけられない場合、以下を試してください (root で、もしくはローカルフォルダを使って):
=== 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://www.sagemath.org/doc/ Sage のドキュメント]
* [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 は以下をサポートしています:

  • 微積分学: MaximaSymPy を使用。
  • 線形代数: GSL, SciPy, NumPy を使用。
  • 統計処理: R (through RPy) と SciPy を使用。
  • グラフ: matplotlib を使用。
  • IPython を使用するインタラクティブシェル
  • PIL, SQLAlchemy などの Python モジュールへのアクセス。

インストール

  • sagemath にはコマンドラインバージョンが含まれています。
  • sagemath-doc には HTML ドキュメントやコマンドラインのインラインヘルプが含まれています。
ノート 多くの Sage パッケージは、sagemath パッケージの オプションの依存関係 または AUR で利用できるため、通常の Arch パッケージとして追加でインストールする必要があります。それらの機能の利点。 sage -i を使用してインストールする必要はないことに注意してください。実際、pacman を使用して SageMath をインストールした場合、このコマンドは機能しません。

使用方法

Sage は、数値計算用に多少の 改良 が施された Python をスクリプト言語として主に使用します。

Sage コマンドライン

Sage はコマンドラインから起動できます:

$ sage

Sage コマンドラインに関する情報は このページ を見てください。

コマンドラインは IPython シェルがベースになっていて、Sage では全ての 設定 を使用することができます。IPython のチュートリアルを読みたい場合はコミュニティによってメンテナンスされている IPython Cookbook を見てください。

ただし、プロットなど、場合によっては使いづらいことがあります。何かをプロットしたい場合、例えば:

sage: plot(sin,(x,0,10))

Sage は外部アプリケーションでブラウザウィンドウを開きます。

Sage Notebook

ノート SageMath の Flask notebook はメンテナンスモードとなっており Jupyter notebook に置き換わって廃止される予定です。新しいワークシートを作成するときは Jupyter notebook を使うことを推奨します。sage-notebook-exporter アプリケーションで Flask ノートブックを Jupyter に変換できます。

高度な利用方法で 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-applicationskde-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.

参照