DifferentialAlgebra[Get] - 引数が依存する変数の集合を返す
|
使い方
|
|
Get(keyword, ring_or_ideal)
Get(keyword, other, ring_or_ideal)
|
|
モデルの説明
|
|
•
|
このコマンド は DifferentialAlgebra パッケージの一部です。 with(DifferentialAlgebra) コマンドの実行後に Get(...) の形式を使用して呼び出すことができます。また、DifferentialAlgebra[Get](...) の形式を使用して直接呼び出すことも可能です。
|
•
|
関数の呼び出し Get(keyword, ring_or_ideal) は、ring_or_ideal で示される微分環またはイデアルに関する情報を返します。引数が 3 つある場合、呼び出し Get(keyword, other, ring_or_ideal) は、other に関する keyword によって示され、微分環またはイデアル ring_or_ideal を枠組みとして有する情報を返します。
|
•
|
引数を指定せずに Get を呼び出すことにより、導入された keywords を Maple ワークシート /ドキュメントの中で直接表示することができます。その場合、以下のように表示されます。
|
>
|
DifferentialAlgebra:-Get();
|
| (3.1) |
•
|
keyword のスペルを誤った場合、または、keyword の一部のみが渡される場合、既存のキーワードに対して一致検索が実行されます。一致結果が 1 つだけの場合は画面に警告メッセージが表示され、その一致結果を望ましいキーワードとみなして計算を続行します。一致結果が複数ある場合は、複数の一致候補がエラーメッセージの中に表示されます。
|
•
|
微分イデアルの計算に使用される微分環は微分イデアルに埋め込まれているため、微分環が期待されるすべてのケースにおいて、代わりに微分イデアルを渡すことが可能であり、埋め込み微分環が使用されることになります。
|
•
|
arbitrary:左辺にはキーワード arbitrary を伴う等式、右辺には与えられた微分環の不定の関数名を伴うリストを返します。
|
•
|
arbitrarywithdependency:arbitrary と同じリストを返しますが、名前だけでなく依存関係も明示した関数を伴います。
|
•
|
attributes: regular differential chainに何らかの精度を提供する 7 つの使用可能なキーワード differential, prime, primitive, squarefree, coherent, autoreduced, normalized のうち、いくつかを含むリストを返します。詳細は DifferentialAlgebra, Glossary を参照してください。
|
•
|
blocks:左辺にはキーワード blocks を伴う等式、右辺には、可能であればサブリストを含む、ランクを表す微分環の従属変数名を伴うリストを返します。 この出力は後で実行される DifferentialRing の呼び出しにおいて、Get により返されるものとして使用することができます。
|
•
|
blockswithdependency:blocks と同じリストを返しますが、名前だけでなく依存関係を明示した関数を伴います。この出力は後で実行される DifferentialRing の呼び出しにおいて、Get により返されるものとして使用することができます。
|
•
|
dependentvariables:blockswithdependencyと類似した形で、問題の従属変数を伴う集合を返します。
|
•
|
derivations:左辺にはキーワード derivations を伴う等式、 右辺には従属変数を伴うリストを返しますが、このときリストの順序が変数のランクも表します。この出力は後で実行される DifferentialRing の呼び出しにおいて、Get により返されるものとして使用することができます。
|
•
|
derivatives:与えられた微分多項式、または、枠組みに微分環(最後の引数)を有するイデアルの導関数を伴う集合を返します。引数が 2 つで最後の 1 つが微分環である場合、次数がゼロの導関数、すなわち、微分環の従属変数が返されます。
|
•
|
differentialorder:与えられた微分多項式またはイデアルの微分の次数の最大値(デフォルト)または最小値を返します。引数が 2 つではなく 3 つの場合、2 番目の引数を max または min として、それぞれが微分の次数の最大値(デフォルト)または最小値を示すことが可能です。
|
•
|
differentialring:微分イデアルの場合、埋め込み微分環を返します。
|
•
|
differentialringdata:与えられた微分環のすべてのデータを伴うリストを返し、このデータを DifferentialRing に渡すことにより、Get に与えられたものと数学的に同一な微分環が作成されるようにします。
|
•
|
initialconditions:R がイデアルの場合、Get(intialconditions, R) は、次数が n 以下であり、R の最高次の導関数ではない導関数の集合を返します。これらの導関数は、イデアル R の 形式べき級数階 で発生する任意定数に対応します。イデアルが regular differential chainのリストの場合、導関数の集合のリストが返されます。
|
•
|
notation:枠組みが微分環を持つ(つまり引数が 3 つである)、与えられた数式の表記を返します。また、イデアルのみ(つまり引数が 2 つである)を渡すことも可能です。その場合、イデアルが表示された表記が返されます。DifferentialAlgebra パッケージのコンテキスト内のオブジェクトの表記の値として使用可能なのは、jet, tjet, diff および Diff です。
|
•
|
parameters:たとえば、Get(derivations, R)を呼び出すことにより検査可能な、微分環の変数より独立性の低い変数に依存する微分環 R のすべての従属変数のリストを返します。パラメータのこのリストは、DifferentialRing に渡されるだけでなく blocks に入力されるオブジェクトの依存関係、従属変数のランクを示すために渡され、概して、従属変数の名前のみを伴って DifferentialRing に渡されます。
|
•
|
ranking:従属変数および独立変数のランクを伴う 2 つのリストの列を返します。これは の入力で得られる出力と同じです。
|
•
|
rankingwithdependency:ranking と同じリストを返しますが、従属変数の依存関係が明示されます。
|
•
|
キーワード arbitrary, arbitrarywithdependency, blocks, blockswithdependency, derivations, differentialringdata, ranking and rankingwithdependency の出力は、後で実行される DifferentialRing の呼び出しにおいて、Get により返されるものとして使用することができます。同様に、キーワード attributes の出力は、後で実行される RosenfeldGroebner の呼び出しで使用することができます。
|
|
|
アプリケーションと例題
|
|
>
|
with(DifferentialAlgebra):
|
従属変数が{p(x), q, u(x, y), v(x, y)}である以下の微分環を検討します。DifferentialRing で説明されているように、従属変数を入力する際には、オプションとして依存関係を同時に示すことができますが、これは derivations に依存しない関数の場合にのみ必要です。従って、次のように入力します。
>
|
R := DifferentialRing(derivations=[x, y], blocks=[[v, u], q(), p(x)], arbitrary = p);
|
| (4.1) |
以下の例は 、微分環情報の取得に関連するすべてのキーワードを伴う Get コマンドを説明しています。独立変数および従属変数とこれらの変数のランクという、最も関連の強い情報を含む ranking から開始します。
| (4.2) |
微分環全体のデータ
| (4.3) |
独立変数のみ。独立変数の取得方法は 2 種類あり、1 つは微分環の再定義に役立ちます(DifferentialRing の例を参照してください)。
| (4.4) |
| (4.5) |
従属変数のみ。最初の 2 つは微分環の再定義に役立ちます。
| (4.6) |
| (4.7) |
| (4.8) |
arbitrary および parameters のみ。このオプションも微分環の再定義にそのまま使用できます。
| (4.9) |
| (4.10) |
| (4.11) |
ここで、次の微分方程式系と、微分環として R を使用して RosenfeldGroebner によって返されるイデアルを検討します。
>
|
ee := u(x,y)*q + v(x,y)*p(x):
|
>
|
sys := diff(ee, x,y) * ee, diff(ee^2, y,y);
|
| (4.12) |
>
|
ideal := RosenfeldGroebner([sys], R);
|
| (4.13) |
従って、このイデアルは 2 つの微分鎖を有します。簡単に言えば、一般的なものと特異的なものの 2 つのケースがあります。Get を使用してこのイデアルの情報を取得します。
イデアルに埋め込まれた環
>
|
recovered_ring := Get(differentialring, ideal);
|
| (4.14) |
>
|
Get(data, recovered_ring);
|
| (4.15) |
各イデアルの属性:共に素である
| (4.16) |
各ケースの微分の次数
| (4.17) |
(各ケースの)各微分鎖における導関数:次数ゼロの導関数も表示されることに注意します。
>
|
Get(derivatives, ideal);
|
| (4.18) |
次数ゼロの導関数はそれ自体が従属変数であり、イデアルの代わりに環を渡しても取得することができます。
| (4.19) |
最大 2 次の形式べき級数解を計算する際の初期条件として値を必要とする、最大 2 次の導関数を取得します。
>
|
Get(initial, 2, ideal);
|
| (4.20) |
derivations で宣言されたもの(この例では )より小さい独立変数を含む従属変数を取得します。DifferentialAlgebra の枠組みでは、これらの従属変数は parameters とも呼ばれます。
>
|
Get(parameters, ideal);
|
| (4.21) |
これらの微分鎖で使用される表記を取得します。
| (4.22) |
|
|