euler71.java

来自「数值分析之计算方法与实验7:常微分方程数值解法 by java」· Java 代码 · 共 26 行

JAVA
26
字号
//改进欧拉法
import java.io.*;
class  Euler71{
  static void ModEuler(double x0,double y0,double xn,int n)throws IOException{
  	 PrintWriter out = new PrintWriter(new FileWriter("result.txt"));
     int i;
     double yp,yc,x=x0,y=y0,h=(xn-x0)/n;
     out.print("x[0]="+x0+" y[0]="+y0+"\n");
     for(i=1;i<=n;i++){
        yp=y+h*f(x,y);
        x=x0+i*h;
        yc=y+h*f(x,yp);
        y=(yc+yp)/2.0;
        out.print("x["+i+"]="+x+" y["+i+"]="+y+"\n");
     }
     out.close();   
   }
   static double f(double x,double y){
         return x*x+y*y;
   }   
   public static void main(String[]args)throws IOException{
        double xn=1.0;double x0=0.0;double y0=0.0;
        ModEuler(x0,y0,xn,10);
   }
}            

⌨️ 快捷键说明

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