簡體   English   中英

如何使用JScience創建涉及向量的符號變量/函數?

[英]How do I create symbolic variables/functions involving vectors using JScience?

如何使用JScience創建涉及向量的符號變量/函數? 創建float變量很容易:

Variable<Float64> varX = Variable.local<Float64>("x");

如何對向量執行相同操作? 一旦有了向量變量,如何創建涉及該向量的Polynomial (例如,使用歐幾里得距離)?

給定系數的Vector<Float64> ,您可以構造一個Polynomial<Float64> ,如下所示。 如圖所示這里 ,最高階系數是首先為方便申請霍納的計划。

public static Polynomial<Float64> create(Vector<Float64> v) {
    Variable<Float64> x = new Variable.Local<Float64>("x");
    Polynomial<Float64> px = Polynomial.valueOf(Float64.ZERO, x);
    for (int i = 0, e = v.getDimension() - 1; i < v.getDimension(); i++, e--) {
        px = px.plus(Polynomial.valueOf(v.get(i), Term.valueOf(x, e)));
    }
    return px;
}

典型用法:

Polynomial<Float64> px = create(Float64Vector.valueOf(3, 2, 1));
System.out.println(px);
System.out.println(px.evaluate(Float64.ONE));

安慰:

[3.0]x² + [2.0]x + [1.0]
6.0

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM