Maple 11 で拡張されたパッケージ
Maple 11 には既存のパッケージに様々な拡張を施しています。
Maple 11 のパッケージの詳細については Maple 11 の最新パッケージ を参照してください。
このヘルプページでは、次の拡張事項について述べています。
|
グレブナ基底 (Groebner)
|
|
•
|
Groebner パッケージの多くのコマンドで追加のオプションや呼出し手順が拡張されています。
|
例題
次は新しく追加された RationalUnivariateRepresentation の例です:
>
|
with(Groebner):
cyclic3 := [x+y+z,x*y+x*z+y*z,x*y*z-1];
|
| (1.1) |
>
|
RationalUnivariateRepresentation(cyclic3);
|
| (1.2) |
次の問題は、厳密解の構成が困難なことでよく知られた問題です。この例では、単変数の有理式表現が非常に高速に計算され、かつ辞書式順序 Groebner 基底の場合よりも小さい係数を得ることができます。
>
|
katsura5 := [
2*x^2+2*y^2+2*z^2+2*t^2+2*u^2+v^2-v,
x*y+y*z+2*z*t+2*t*u+2*u*v-u,
2*x*z+2*y*t+2*z*u+u^2+2*t*v-t,
2*x*t+2*y*u+2*t*u+2*z*v-z,
t^2+2*x*v+2*y*v+2*z*v-y,
2*x+2*y+2*z+2*t+2*u+v-1]:
F := Basis(katsura5, plex(x,y,z,t,u,v)):
length(F);
|
| (1.3) |
>
|
G := RationalUnivariateRepresentation(katsura5):
length(G);
|
| (1.4) |
その他の新しいコマンド:
>
|
Homogenize(x^3+x*y-1,z);
|
| (1.5) |
>
|
F := [x^3+x*y^2+x*z^2-x, x^2-1, y^2+z^2];
|
| (1.6) |
| (1.7) |
>
|
MaximalIndependentSet(F);
|
| (1.8) |
新しいオプション order を用いて、 Basis コマンドは自動的に類推して効率良い変数順序を返します。
>
|
G := Basis(katsura5, 'MO', order='tdeg'):
MO;
|
| (1.9) |
|
|
線形代数 (LinearAlgebra)
|
|
線形代数のための LinearAlgebra に 2 つの新しいコマンドが追加されました。
例題
CompanionMatrix コマンドは ChebyshevT 基底を持った式に対しても計算が可能です:
>
|
with(LinearAlgebra):
p := add((k+1)/(k+2)*ChebyshevT(k,x), k=0..3);
|
| (2.1) |
>
|
C0, C1 := CompanionMatrix(p);
|
| (2.2) |
>
|
normal(Determinant(x*C1-C0)/expand(p));
|
| (2.3) |
|
|
画像処理 (ImageTools)
|
|
ImageTools パッケージの既存コマンドは高速かつ少メモリで計算を行うよう改善され、さらに以下に記載した各種の新しいコマンドも追加されています。
Checkerboard, Clip, ColorTransform, CombineLayers, Complement, FitIntensity, Flip, GetLayer, GetSubImage, HSVtoRGB, PadImage, RGBtoGray, RGBtoHSV, RGBtoYUV, Rotate, SetLayer, SetSubImage, Stack, Threshold, ToRGBA, Transpose, View, WhatTypeImage, および YUVtoRGB.
|
|
線形差分(再帰)方程式ツール (LREtools)
|
|
•
|
詳細については各コマンドのヘルプページを参照してください。
|
|
|
MATLABパッケージ (Matlab)
|
|
新しい Matlab パッケージは文字列や構造を含む各種のデータ変換をサポートしています。
|
|
整数論 (Number theory)
|
|
•
|
numtheory[index] は、離散対数問題のための Index Calculus 法を追加実装しました。詳細についてはヘルプページを参照してください。
|
|
|
偏微分方程式 (PDEtools)
|
|
•
|
偏微分方程式用 PDEtools パッケージに、PDE 系の様々な対称性の解析を行うための19 種類の新規コマンドが追加されました。これは、Maple 7 以来のシステムで重要視している PDE 系の厳密解を求めるための Maple ライブラリにおける重要な開発テーマです。
|
•
|
新規に追加されたコマンドで提供されているものには、極小生成作用素の自動計算や関連する不変式を、(オプションで指定した個数の)いろいろな対称性や(オプションで指定する対称性の利用可否に基づいて) PDE 系から直接的に求解するための機能なども含まれています。
|
|
|
多項式イデアル (PolynomialIdeals)
|
|
|
|
RegularChains
|
|
•
|
RegularChains[Triangularize] では、計算結果の正当性を 0 から 1 の信頼変数 p で表すことが可能なオプション probability = p を指定可能な新しい確率的モジュラー算法を実装しました。一定の正則性条件を満たすような系については、この確率的な算法は Triangularize で実装されている一般の(かつ Generic な)算法に比較して漸近的に高速です。
|
•
|
新コマンドの RegularChains[ChangeOfOrder] は、ある 1 変数順序に対する regular chain を受け取って 2 番目の変数順序に対する regular chain を返します。このとき、双方の regular chain は共に saturated ideal を持ちます。これは、例えば陰関数化(implicitization)問題などで役立ちます。
|
例題
新しいオプション probability:
>
|
with(RegularChains):
R := PolynomialRing([x, y, z]);
|
| (11.1) |
>
|
sys := {x*y^4+y*z^4-2*x^2*y-3,
y^4+x*y^2*z+x^2-2*x*y+y^2+z^2,
-x^3*y^2+x*y*z^3+y^4+x*y^2*z-2*x*y};
|
| (11.2) |
>
|
Triangularize(sys, R, probability = .9);
|
新コマンド ChangeOfOrder を説明するために次のような陰関数化問題を考えます。いま、入力系はパラメータ s,t の関数 x,y,z で表される曲面とします。変数順序の変更はこの曲面に対する陰関数表現の方程式を与えます。同様にパラメータ s,t を x,y,z の関数として表現します。
>
|
with(ChainTools):
R := PolynomialRing([x,y,z,s,t]);
|
| (11.3) |
>
|
R2 := PolynomialRing([t,s,z,y,x]);
|
| (11.4) |
>
|
F := [x-t^3, y-s^2-2, z-s*t];
|
| (11.5) |
>
|
rc := Triangularize(F, R, normalized=yes)[1]:
rc2 := ChangeOfOrder(rc,R,R2);
|
| (11.6) |
| (11.7) |
|
|
文字列処理 (StringTools)
|
|
パッケージ StringTools にはいくつもの新しいコマンドが用意されています: DeleteSpace, Has, Indent, IndexOfCoincidence, Kasiski, LengthSplit, MatchFence, OtherCase, PatternCanonicalForm, PatternEquivalent, Readability, Repeats, Sentences, SortPermutation, Unique, WordContaining, WordEnd, および WordStart.
|
|
ベクトル解析 (VectorCalculus)
|
|
VectorCalculus パッケージに 2 種類の新しいベクトル構造が追加されました:
•
|
RootedVector はベクトルの原点および空間属性を指定できます。RootedVector のコンポーネントは単位ベクトルの係数です。RootedVector は VectorFields を評価したとき、または曲線の接線、主法線、従法線を計算するときに生じます。
|
|
|