1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Need help for trapezoidal rule java program

Discussion in 'Java' started by georgemaravich, Dec 3, 2014.

  1. georgemaravich

    georgemaravich New Member

    Joined:
    Dec 2, 2014
    Messages:
    4
    Likes Received:
    0
    Trophy Points:
    0
    Hi guys. Need help...
    I tried running the code for trapezoidal rule. It's my project in Numerical Methods, here's the code:

    Code:
    static double trapezoidRule (int size, double[] x, double[] y)
       {  double sum = 0.0,
                 increment;
    
          for ( int k = 1; k < size; k++ )
          {//Trapezoid rule:  1/2 h * (f0 + f1)
             increment = 0.5 * (x[k]-x[k-1]) * (y[k]+y[k-1]);
             sum += increment;
          }
          return sum;
       }
    
       public static void main ( String[] args ) throws Exception
       {  String   fileName = args.length > 0 ? args[0] : "InpData.txt";
          Scanner  inp = new Scanner(new File(fileName));
          int      k, size;
          double[] x, y;
          double   integral;
    
          size = inp.nextInt();
          System.out.println ("Number of points:  " + size);
    
          x = new double[size];
          y = new double[size];
    
          for ( k = 0; k < size; k++ )
          {  x[k] = inp.nextDouble();
             y[k] = inp.nextDouble();
          }
          integral = trapezoidRule (size, x, y);
          System.out.printf ("Integral:  %4.4f\n", integral);
          System.out.printf ("Check:  log(%2.2f) = %8.8f\n",
                             x[size-1], Math.log(x[size-1]) );
       }
    }
    
    It cannot be compiled and I always get FileNotFoundException. I found on Javadocs that this will be thrown when a file with the path name does not exist. Please help. Thanks!
     

Share This Page