Impact-Site-Verification: dbe48ff9-4514-40fe-8cc0-70131430799e

Search This Blog

MATLAB Program for Backward Euler's method

MATLAB Program:


% Backward Euler's method
 % Example 1:  Approximate the solution to the initial-value problem
 % dy/dt=e^t ; 0<=t<=2 ; y(0)=1;



 % Example 2:  Approximate the solution to the initial-value problem
 % dy/dt=y-t^2+1 ; 0<=t<=2 ; y(0)=0.5;

  %f = @(t,y) (0*y+exp(t));      %Example 1
 f = @(t,y) (y-t^2+1);         %Example 2
 a = input('Enter left end ponit, a:  ');
 b = input('Enter right end point, b:  ');
 n = input('Enter no. of subintervals, n: ');               
 alpha = input('Enter the initial condition, alpha:  ');

 h = (b-a)/n;                                               
 t=[a zeros(1,n)];
 w=[alpha zeros(1,n)];

 for i = 1:n+1
 t(i+1)=t(i)+h;
 wprime=w(i)+h*f(t(i),w(i));
 w(i+1)=w(i)+h*f(t(i+1),wprime);
 fprintf('%5.4f  %11.8f\n', t(i), w(i));
 plot(t(i),w(i),'r*'); grid on;
 xlabel('t values'); ylabel('w values');
 hold on;
 end

OUTPUT:

>> backwardmodifiedEulermethod



Enter left end ponit, a:  0
Enter right end point, b:  2
Enter no. of subintervals, n: 10
Enter the initial condition, alpha:  1
0.0000   1.00000000
0.2000   1.47200000
0.4000   2.03168000
0.6000   2.68088320
0.8000   3.42189517
1.0000   4.25755001
1.2000   5.19136201
1.4000   6.22768889
1.6000   7.37193423
1.8000   8.63079844
2.0000  10.01259007
>> 



No comments

Popular Posts