国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java實現的n階曲線擬合功能示例

Java實現的n階曲線擬合功能示例

2021-03-23 13:59豎琴手 Java教程

這篇文章主要介紹了Java實現的n階曲線擬合功能,結合實例形式分析了Java基于矩陣的多項式曲線擬合相關操作技巧,需要的朋友可以參考下

本文實例講述了Java實現的n階曲線擬合功能。分享給大家供大家參考,具體如下:

前面一篇文章Java實現求解一元n次多項式的方法,能解多項式以后,還需要利用那個類,根據若干采樣點數據來對未來數據進行預測,擬合的矩陣在上一篇文章中已經貼出來了,這里就不說了,本篇主要是如何根據采樣點來計算系數矩陣,并計算預測點的值。

原理很簡單,公式在上一篇文章中也有了,此處直接貼代碼。

其中用到了上一篇文章中寫的類commonAlgorithm.PolynomiaSoluter

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
package commonAlgorithm;
import commonAlgorithm.PolynomialSoluter;
import java.lang.Math;
public class LeastSquare {
  private double[][] matrixA;
  private double[] arrayB;
  private double[] factors;
  private int order;
  public LeastSquare() {
  }
  /*
   * 實例化后,計算前,先要輸入參數并生成公式 arrayX為采樣點的x軸坐標,按照采樣順序排列
   * arrayY為采樣點的y軸坐標,按照采樣順序與x一一對應排列 order
   * 為進行擬合的階數。用低階來擬合高階曲線時可能會不準確,但階數過高會導致計算緩慢
   */
  public boolean generateFormula(double[] arrayX, double[] arrayY, int order) {
    if (arrayX.length != arrayY.length)
      return false;
    this.order = order;
    int len = arrayX.length;
    // 擬合運算中的x矩陣和y矩陣
    matrixA = new double[order + 1][order + 1];
    arrayB = new double[order + 1];
    // 生成y矩陣以及x矩陣中冪<=order的部分
    for (int i = 0; i < order + 1; i++) {
      double sumX = 0;
      for (int j = 0; j < len; j++) {
        double tmp = Math.pow(arrayX[j], i);
        sumX += tmp;
        arrayB[i] += tmp * arrayY[j];
      }
      for (int j = 0; j <= i; j++)
        matrixA[j][i - j] = sumX;
    }
    // 生成x矩陣中冪>order的部分
    for (int i = order + 1; i <= order * 2; i++) {
      double sumX = 0;
      for (int j = 0; j < len; j++)
        sumX += Math.pow(arrayX[j], i);
      for (int j = i - order; j < order + 1; j++) {
        matrixA[i - j][j] = sumX;
      }
    }
    // 實例化PolynomiaSoluter并解方程組,得到各階的系數序列factors
    PolynomialSoluter soluter = new PolynomialSoluter();
    factors = soluter.getResult(matrixA, arrayB);
    if (factors == null)
      return false;
    else
      return true;
  }
  // 根據輸入坐標,以及系數序列factors計算指定坐標的結果
  public double calculate(double x) {
    double result = factors[0];
    for (int i = 1; i <= order; i++)
      result += factors[i] * Math.pow(x, i);
    return result;
  }
}

希望本文所述對大家java程序設計有所幫助。

原文鏈接:http://blog.csdn.net/strangerzz/article/details/45250063

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 男人天堂v | 伊人久久综合 | 国产一区二区三区免费观看 | 精品久久久久久久中文字幕 | 福利在线观看 | 国产乱码精品一区二区三区中文 | 欧美中文字幕一区二区三区亚洲 | 亚洲欧美一级久久精品国产特黄 | 日本久久综合 | 我和我的祖国电影在线观看免费版高清 | 精品视频在线一区 | 精品久久久久久亚洲综合网 | 中文字幕第二十六页页 | 成人网av | 亚洲天堂中文字幕在线观看 | 色婷婷国产精品免费网站 | 免费网站在线 | 韩国精品一区二区 | 香蕉视频禁止18 | 亚洲福利一区 | 天天操天操| 亚洲精品久久久久中文字幕欢迎你 | 亚洲一区二区中文 | www.国产.com| 久久久久国产精品免费免费搜索 | 精品久久99| 亚洲精品久久久久久一区二区 | 国产精品美女久久久久久久久久久 | 成人高清视频在线 | 国产精品久久九九 | 国产欧美日韩免费 | 国产成人精品一区二区在线 | 久久精品二| 一区二区三区在线播放视频 | 成年人免费在线播放视频 | www九九热 | 成人欧美一区二区三区在线播放 | 剑来在线观看 | www久久久久 | 在线一区二区三区做爰视频网站 | 久久久99精品免费观看 |