Advertisement
Guest User

Untitled

a guest
Apr 25th, 2019
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <!--Index.html-->
  2. <html>
  3.    
  4.     <!--Header-->
  5.     <head>
  6.     </head>
  7.    
  8.     <!--Body-->
  9.     <body>
  10.        
  11.         <!--Include the js file-->
  12.         <script type="text/javascript" src="OurFunction.js"></script>
  13.        
  14.         <!--Call the js functions-->
  15.         <script type="text/javascript">eulerMethod();heunsMethod();rungekutta3();rungekutta4();</script>
  16.    
  17.     <!--End of the Body-->
  18.     </body>
  19.    
  20. <!--End of html-->
  21. </html>
  22.  
  23. //OurFunction.js
  24. //Global variable
  25. var yInitial = 1;
  26. var steps = 0.25;
  27. var xMaximum = 2;
  28. var n = xMaximum/steps;
  29.  
  30. //Function eulerMethod()
  31. function eulerMethod()
  32. {
  33.     //Declare variables
  34.     var xVal,yVal,hVal,tVal,kVal;
  35.    
  36.     //Initialize
  37.     xVal=0;
  38.     yVal=yInitial;
  39.     hVal= steps;
  40.     tVal=xMaximum;
  41.    
  42.     //Loop
  43.     while(xVal<=tVal)
  44.     {
  45.         //Compute
  46.         kVal=hVal*logic(xVal,yVal);
  47.         yVal=yVal+kVal;
  48.         xVal=xVal+hVal;
  49.     }
  50.    
  51.     //Write output
  52.     document.write("Euler method result: "+yVal);
  53. }
  54.  
  55. //Function heunsMethod()
  56. function heunsMethod()
  57. {
  58.     //Declare variables
  59.     var xVal,yVal,hVal,tVal,kVal;
  60.    
  61.     //Initialize
  62.     xVal=0;
  63.     yVal=yInitial;
  64.     hVal=steps;
  65.     tVal=xMaximum;
  66.    
  67.     //Loop
  68.     while(xVal+hVal<=tVal)
  69.     {
  70.         //Compute
  71.         l=(hVal/2)*(logic(xVal,yVal)+logic(xVal+hVal,yVal+hVal*logic(xVal,yVal)));
  72.         yVal=yVal+l;
  73.         xVal=xVal+hVal;
  74.     }
  75.    
  76.     //Write output
  77.     document.write("Heuns method result: "+yVal);  
  78. }
  79.  
  80. //Function rungekutta4()
  81. function rungekutta4()
  82. {
  83.     //Declare variables
  84.     var k1,k2,k3,k4,m=0,yVal,xVal,hVal,tVal;
  85.    
  86.     //Initialize
  87.     xVal=0;
  88.     yVal=yInitial;
  89.     hVal=steps;
  90.     tVal=xMaximum;
  91.    
  92.     //Loop
  93.     while(xVal<tVal)
  94.     {
  95.         //Compute
  96.         k1=logic(xVal,yVal);
  97.         k2=logic((xVal+hVal/2.0),(yVal+k1*hVal/2.0));
  98.         k3=logic((xVal+hVal/2.0),(yVal+k2*hVal/2.0));
  99.         k4=logic((xVal+hVal),(yVal+k3*hVal));
  100.         m=((k1+2*k2+2*k3+k4)/6);
  101.         yVal=yVal+m*hVal;
  102.         xVal=xVal+hVal;
  103.     }
  104.    
  105.     //Write output
  106.     document.write("Runge kutta 4th order result: "+yVal);  
  107. }
  108.  
  109. //Function rungekutta3()
  110. function rungekutta3()
  111. {
  112.     //Declare variables
  113.     var k1,k2,k3,m=0,yVal,xVal,hVal,tVal;
  114.    
  115.     //Initialize
  116.     xVal=0;
  117.     yVal=yInitial;
  118.     hVal=steps;
  119.     tVal=xMaximum;
  120.    
  121.     //Loop
  122.     while(xVal<tVal)
  123.     {
  124.         //Compute
  125.         k1=logic(xVal,yVal);
  126.         k2=logic((xVal+hVal/2.0),(yVal+k1*hVal/2.0));
  127.         k3=logic((xVal+hVal),(yVal-k2*hVal+2.0*k2*hVal));
  128.         m=((k1+4*k2+k3)/6);
  129.         yVal=yVal+m*hVal;
  130.         xVal=xVal+hVal;
  131.     }
  132.    
  133.     //Write output
  134.     document.write("Runge kutta 3rd order result: "+yVal);  
  135. }
  136.  
  137. //Method logic()
  138. function logic(xVal,yVal)
  139. {
  140.     //Declare variable
  141.     var func;
  142.    
  143.     //Compute
  144.     func= yVal*xVal*xVal - 1.2*yVal;
  145.    
  146.     //Return
  147.     return func;
  148. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement