XLPack API: Python 使用例

PythonからXLPackを呼び出す

PythonからXLPack Liteを呼び出すために必要な拡張モジュールがSDKに入っています. これを使うと, 呼び出しプログラムは “import XLPackLite” (32ビット版では “import XLPackLite_32”) と宣言するだけで組込み関数のように簡単にXLPack Liteを呼び出すことができます.
行列を表すためにはNumpyのndarrayを使用します. 係数行列a, 右辺bともに1次元配列でも2次元配列でも使うことができます.

Pythonプログラム例 (例題(1))

import numpy as np
from XLPack import *

def TestDgesv():
    n = 3
    a = np.array([
        [0.2, -0.32, -0.8],
        [-0.11, 0.81, -0.92],
        [-0.93, 0.37, -0.29]])
    b = np.array([-0.3727, 0.4319, -1.4247])
    ipiv = np.empty(n, dtype=int)
    info = dgesv(n, a, ipiv, b)
    print(b, info)

TestDgesv()

実行結果

[0.86 0.64 0.51] 0

Pythonプログラム例 (例題(2))

例題(2)ではf(x)の積分をqk15を使って求めます. qk15はf(x)を定義する外部関数を必要とします. 外部関数はPythonで作成することができ, qk15は必要なときにそれを呼び出します.

import numpy as np
from XLPack import *

def f(x):
    return 1/(1 + x**2)

def TestQk15():
    a = 0
    b = 4
    s, abserr = qk15(f, a, b)
    print(s, abserr)

TestQk15()

実行結果

1.3258176613637855 0.0014827239412162237