⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vbas.java

📁 一个数据挖掘软件ALPHAMINERR的整个过程的JAVA版源代码
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
  }

  public static void VI0mul(int N, int[] X, int ix, int[] Y, int iy, int[] Z, int iz) {

     int jx = 0;
     int jy = 0;
     int jz = 0;
     for (int i = 0; i < N; i++) {
       int S = Y[jy];
       if ( Z[iz] == 0 ) S = 0;
       X[jx] = S;
       jx += ix;
       jy += iy;
       jz += iz;
     }
  }

  public static void VR0mul(int N, float[] X, int ix, float[] Y, int iy, float[] Z, int iz) {

     int jx = 0;
     int jy = 0;
     int jz = 0;
     for (int i = 0; i < N; i++) {
       float S = Y[jy];
       if ( Z[iz] == 0 ) S = 0;
       X[jx] = S;
       jx += ix;
       jy += iy;
       jz += iz;
     }
  }

  public static void VD0mul(int N, double[] X, int ix, double[] Y, int iy, double[] Z, int iz) {

     int jx = 0;
     int jy = 0;
     int jz = 0;
     for (int i = 0; i < N; i++) {
       double S = Y[jy];
       if ( Z[iz] == 0 ) S = 0;
       X[jx] = S;
       jx += ix;
       jy += iy;
       jz += iz;
     }
  }

  public static void VIdiv(int N, int[] X, int ix, int[] Y, int iy, int[] Z, int iz) {

     int jx = 0;
     int jy = 0;
     int jz = 0;
     for (int i = 0; i < N; i++) {
       int II = 0;
       if ( Z[iz] != 0 ) II = Y[jy] / Z[jz];
       X[jx] = II;
       jx += ix;
       jy += iy;
       jz += iz;
     }
  }

  public static void VRdiv(int N, float[] X, int ix, float[] Y, int iy, float[] Z, int iz) {

     int jx = 0;
     int jy = 0;
     int jz = 0;
     for (int i = 0; i < N; i++) {
       float S = 0;
       if ( Z[iz] != 0 ) S = Y[jy] / Z[jz];
       X[jx] = S;
       jx += ix;
       jy += iy;
       jz += iz;
     }
  }

  public static void VDdiv(int N, double[] X, int ix, double[] Y, int iy, double[] Z, int iz) {

     int jx = 0;
     int jy = 0;
     int jz = 0;
     for (int i = 0; i < N; i++) {
       double S = 0;
       if ( Z[iz] != 0 ) S = Y[jy] / Z[jz];
       X[jx] = S;
       jx += ix;
       jy += iy;
       jz += iz;
     }
  }

  public static void VRdiv0(int N, float[] X, int ix, float[] Y, int iy, float[] Z, int iz) {

     int jx = 0;
     int jy = 0;
     int jz = 0;
     for (int i = 0; i < N; i++) {
       float S = 0;
       if ( Z[iz] != 0 ) S = Y[jy] / Z[jz];
       if ( Math.abs(S) < 1E-35 ) S = 0;
       X[jx] = S;
       jx += ix;
       jy += iy;
       jz += iz;
     }
  }

  public static void VDdiv0(int N, double[] X, int ix, double[] Y, int iy, double[] Z, int iz) {

     int jx = 0;
     int jy = 0;
     int jz = 0;
     for (int i = 0; i < N; i++) {
       double S = 0.0;
       if ( Z[iz] != 0.0 ) S = Y[jy] / Z[jz];
       if ( Math.abs(S) < 1E-35 ) S = 0.0;
       X[jx] = S;
       jx += ix;
       jy += iy;
       jz += iz;
     }
  }

  public static void VImod(int N, int[] X, int ix, int[] Y, int iy, int[] Z, int iz) {

     int jx = 0;
     int jy = 0;
     int jz = 0;
     for (int i = 0; i < N; i++) {
       X[jx] = Y[jy] - (Y[jy]/Z[jz])*Z[jz];
       jx += ix;
       jy += iy;
       jz += iz;
     }
  }

  // -----------------------------------------------------------------------
  //  Type 2: V[x][oper](N,X,ix,Y,iy)
  //
  //           [x] = I   int
  //               = R   float
  //               = D   double
  //               = c   type cast
  //
  //         [oper]= "copy"     copy
  //               = "chng"     change
  //               = "sqrt"     square root
  //               = "IfromR"   cast float -> int
  //               = "IfromD"   cast double -> int
  //               = "RfromI"   cast int -> float
  //               = "RfromD"   cast double -> float
  //               = "DfromI"   cast int -> double
  //               = "DfromR"   cast float -> double
  //
  //   Type :   X := "oper" Y (with step widths ix, iy)
  //
  // -----------------------------------------------------------------------
  public static void VIcopy(int N, int[] X, int ix, int[] Y, int iy) {

     int jx = 0;
     int jy = 0;
     for (int i = 0; i < N; i++) {
       X[jx] = Y[jy];
       jx += ix;
       jy += iy;
     }
  }

  public static void VDcopy(int N, double[] X, int ix, double[] Y, int iy) {

    int jx = 0;
    int jy = 0;
    for (int i = 0; i < N; i++) {
      X[jx] = Y[jy];
      jx += ix;
      jy += iy;
    }
  }

  public static void VIchng(int N, int[] X, int ix, int[] Y, int iy) {

     int jx = 0;
     int jy = 0;
     for (int i = 0; i < N; i++) {
       int XX = X[jx];
       X[jx] = Y[jy];
       Y[jy] = XX;
       jx += ix;
       jy += iy;
     }
  }

  public static void VDchng(int N, double[] X, int ix, double[] Y, int iy) {

    int jx = 0;
    int jy = 0;
    for (int i = 0; i < N; i++) {
      double XX = X[jx];
      X[jx] = Y[jy];
      Y[jy] = XX;
      jx += ix;
      jy += iy;
    }
  }

  public static void VcRfromD(int N, float[] X, int ix, double[] Y, int iy) {

    int jx = 0;
    int jy = 0;
    for (int i = 0; i < N; i++) {
      X[jx] = (float) Y[jy];
      jx += ix;
      jy += iy;
    }
  }

  public static void VcIfromD(int N, int[] X, int ix, double[] Y, int iy) {

    int jx = 0;
    int jy = 0;
    for (int i = 0; i < N; i++) {
      X[jx] = (int) Y[jy];
      jx += ix;
      jy += iy;
    }
  }

  public static void VcDfromR(int N, double[] X, int ix, float[] Y, int iy) {

    int jx = 0;
    int jy = 0;
    for (int i = 0; i < N; i++) {
      X[jx] = Y[jy];
      jx += ix;
      jy += iy;
    }
  }

  public static void VcIfromR(int N, int[] X, int ix, float[] Y, int iy) {

    int jx = 0;
    int jy = 0;
    for (int i = 0; i < N; i++) {
      X[jx] = (int) Y[jy];
      jx += ix;
      jy += iy;
    }
  }

  public static void VcDfromI(int N, double[] X, int ix, int[] Y, int iy) {

    int jx = 0;
    int jy = 0;
    for (int i = 0; i < N; i++) {
      X[jx] = Y[jy];
      jx += ix;
      jy += iy;
    }
  }

  public static void VcRfromI(int N, float[] X, int ix, int[] Y, int iy) {

    int jx = 0;
    int jy = 0;
    for (int i = 0; i < N; i++) {
      X[jx] = Y[jy];
      jx += ix;
      jy += iy;
    }
  }

  public static void VRsqrt(int N, float[] X, int ix, float[] Y, int iy) {

    int jx = 0;
    int jy = 0;
    for (int i = 0; i < N; i++) {
      X[jx] = (float) Math.sqrt( Y[jy] );
      jx += ix;
      jy += iy;
    }
  }

  public static void VDsqrt(int N, double[] X, int ix, double[] Y, int iy) {

    int jx = 0;
    int jy = 0;
    for (int i = 0; i < N; i++) {
      X[jx] = Math.sqrt( Y[jy] );
      jx += ix;
      jy += iy;
    }
  }

  // -----------------------------------------------------------------------
  //  Type 3: V[x]aXpY(N,X,Y,Alfa,Z)
  //
  //           [x] = S   float
  //               = D   double
  //
  //   Type :   X := Y + Alfa * Z (for all components, with step widths 1)
  // -----------------------------------------------------------------------
  public static void VSaXpY(int N, float[] X, float[] Y, float Alfa, float[] Z) {

    for (int i = 0; i < N; i++)
      X[i] = Y[i] + Alfa*Z[i];
  }

  public static void VDaXpY(int N, double[] X, double[] Y, float Alfa, double[] Z) {

    for (int i = 0; i < N; i++)
      X[i] = Y[i] + Alfa*Z[i];
  }

  // -----------------------------------------------------------------------
  //  Type 4:  [x]Scapr(N,X,Y)
  //
  //           [x] = I   int
  //               = R   float
  //               = D   double
  //
  //   Type :  [x]Scapr := scalar product( X , Y )
  //
  // -----------------------------------------------------------------------
  public static int IScapr(int N, int[] X, int[] Y) {

    int S = 0;
    for (int i = 0; i < N; i++)
      S = S + X[i]*Y[i];

    return S;
  }

  public static float RScapr(int N, float[] X, float[] Y) {

    float S = 0;
    for (int i = 0; i < N; i++)
      S = S + X[i]*Y[i];

    return S;
  }

  public static double DScapr(int N, double[] X, double[] Y) {

    double S = 0;
    for (int i = 0; i < N; i++)
      S = S + X[i]*Y[i];

    return S;
  }


}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -