問題タブ [sage]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sage - 不足している GAP パッケージを Sage に追加する
Sageで使いたい関数がGAPのパッケージ「HAP」がなくて例外がスローされます。このパッケージをダウンロードできますが、Sage に認識させる方法がわかりません。
cython - Sageがコードをコンパイルしないのはなぜですか?
Sageは、Cythonを使用してコンパイル済みコードを作成できるはずです。私はこれを機能させることができたことがありません。含まれている例ではコンパイルが失敗するため、問題はSageのインストールにあるようです。インストール中に特別なことをしたとは思いませんが、どうやら何か問題があります。セージのチュートリアルによると
独自のコンパイル済みSageコードを作成するには、ファイルに(.sageではなく).spyx拡張子を付けます。コマンドラインインターフェイスを使用している場合は、インタープリターコードとまったく同じようにコンパイル済みコードをアタッチしてロードできます(現時点では、Cythonコードのアタッチとロードはノートブックインターフェイスではサポートされていません)。実際のコンパイルは、明示的なことを何もしなくても「舞台裏」で行われます。GMP Cライブラリを直接使用する階乗関数のコンパイル済み実装の例については、$ SAGE_ROOT / examples / programming / sagex/factorial.spyxを参照してください。これを自分で試すには、$ SAGE_ROOT / examples / Programming / sagex /に移動してから、次の手順を実行します。
試してみると、次のメッセージが表示されます。
1-linux-32bit-ubuntu_10.04_lts-i686-Linux / devel / sage / sage / ext / -I / home / oliver / Desktop / sage-4.7.1-linux-32bit-ubuntu_10.04_lts-i686-Linux / devel / sage / -I / home / oliver / Desktop / sage-4.7.1-linux-32bit-ubuntu_10.04_lts-i686-Linux / devel / sage / sage / gsl/-I。-I / home / oliver / Desktop / sage-4.7.1-linux-32bit-ubuntu_10.04_lts-i686-Linux / local / include / python2.6 -c _home_oliver_Desktop_sage_4_7_1_linux_32bit_ubuntu_10_04_lts_i686_Linux_examples_programming_sagex_factorial_ /_home_oliver_Desktop_sage_4_7_1_linux_32bit_ubuntu_10_04_lts_i686_Linux_examples_programming_sagex_factorial_spyx_0.o -w -O2作成ビルド/ lib.linux-i686-2.6のgcc -pthread -sharedビルド/ temp.linux-i686-2.6 / _home_oliver_Desktop_sage_4_7_1_linux_32bit_ubuntu_10_04_lts_i686_Linux_examples_programming_sagex_factorial_spyx_0.o -L /ホーム/オリバー/デスクトップ/セージ-4.7。
/ usr / bin / ld:-lstdc ++が見つかりませんcollect2:ldが1の終了ステータスエラーを返しました:コマンド'gcc'が終了ステータス1で失敗しました
助言がありますか?ありがとう。
python - 4 倍精度の固有値、固有ベクトル、行列対数
行列を 4 倍精度で対角化し、対数をとろうとしています。組み込み関数を使用してこれを達成できる言語はありますか?
タグ内の言語/パッケージは不十分であり、次の欠陥があることに注意してください。
Matlab: 4 倍精度をサポートしていません。
Python/NumPy/SciPy: dtype float128 の行列は float64 で固有ベクトルを生成します。
Sage: GP/PARI を介したインターフェイスで不可解なエラー メッセージが表示されます。
誰かが対角化と行列対数を 4 倍精度で実行したことがありますか? もしそうなら、どのように?
sage - Zmodの負の数?
私はセージで次のことをしています:
-1 = 100 mod 101 であることは理解していますが、sage が両方のインスタンスで 100 ではなく -1 を出力するようにしたいと考えています。
より一般的には、Zmod(p) で作業する場合、出力が間隔 (-p/2, p/2] 内にあることを望みます。
python - Python: 非 py 拡張子を持つ lib をインポートします
というライブラリをインポートする必要がありfunctions.sage
ます。どうすればいいですか?私は試した:
そしてこれも:
編集:
実際には、 sage lib を sageにインポートしたいと考えています。そして、そのライブラリにはsage固有のコードが含まれています. 私は解釈されたセージの変種の上に疲れました。そして、両方とも「関数モジュールなし」またはこのようなものをくれました。
sage - SAGE が間違った最小多項式を返す?
もちろん、最後のコマンドの結果はゼロ行列になるはずです。なぜ失敗したのかわかりません。問題は、何がうまくいかなかったのかということです。
python - Pythonで特定の長さの整数パーティションをランダムに生成するためのアルゴリズム?
私はSAGEが提供する関数を使用して、特定の長さ()である特定のrandom_element()
整数()のランダムな整数パーティションを生成してきました。との特定の値に対して、すべてのパーティションのセットからバイアスのないランダムサンプルを生成しようとしています。SAGEの関数は、N(つまり)のランダムパーティションをすばやく返します。N
S
N
S
Partitions(N).random_element()
ただし、追加するとS
(つまりPartitions(N,length=S).random_element()
)、非常に遅くなります。N
同様に、長さが長いランダムなパーティションを除外するのS
は非常に時間がかかります。
ただし、これが誰かに役立つことを願っています。関数が長さにN
一致しないパーティションを返す場合S
、共役パーティションの長さはSであることがよくあります。つまり、次のようになります。
これにより、長さのパーティションが検出される速度が上がり、偏りのないサンプルが生成されるように見えます(とのさまざまな値について、S
パーティションのセット全体に対して結果を調べました)。N
S
ただし、私はN(eg 10,000
)とS(eg)の値を使用し300
ているため、このアプローチでさえも実用的ではありません。SAGEのrandom_element()
機能に関連するコメントは、最適化の余地が十分にあることを認めています。それで、おそらく、一致しないパーティションを生成しないことによって、N
との特定の値に一致する整数パーティションのバイアスのない(つまりランダムに均一な)サンプルをより迅速に生成する方法はありますか?さらに、共役パーティションを使用すると、多くの場合、偏りのないサンプルを生成できますが、その理由を正確に理解しているとは言えません。 S
S
set - Sage で特定のセットのサブセットを見つけるにはどうすればよいですか?
次のようなコードがあります。
ただし、実行しようとすると、次のエラーが発生します。
任意のセットのすべてのサブセットのセットを取得する標準的な方法は何ですか?
python - Python を使用してカスタマイズされた言語を作成する
私は最近 Sage をいじり始めましたが、標準の Pythonint
が Sage と呼ばれるカスタマイズされたクラスにラップされているのではないかと疑うようになりましたInteger
。type(1)
Python で入力すると が表示<type 'int'>
されますが、sage プロンプトで同じことを入力すると が表示されます<type 'sage.rings.integer.Integer'>
。
int
Python (またはlist
または) を独自のカスタム クラスに置き換えたい場合dict
、どのようにすればよいでしょうか? どのくらい難しいでしょうか (たとえば、完全に Python で行うことはできますか)?
python - plot() の予期しない動作の理由は何ですか
上記を考えると、以下は予想されるプロットを生成します。
しかしplot(f(x),(x,-5,5))
、水平線を引くだけです。誰が何が起こっているのか説明できますか?