How do I solve using centered finite difference formula?
7 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Mohd Aniq Akmal Maludin
el 28 de Dic. de 2017
Editada: Philipp Doblhofer
el 30 de Dic. de 2017
%Boundary conditons
y(0) = 1;
y(5) = 6;
h = 2 %Step size
Centered difference formula;
d2y = (y(i+1) - 2y(i) + y(i-1)) / h^2;
dy = (y(i+1) - y(i-1))/2*h;
for i = 2:4
r(i+1) = r(i) + h;
r(i)*(d2y) + 3*(dy)+10*r(i) = 0
end
for i = 1:5
fprintf('%7.3f %10.3f \n', r(i), y(i)
end
I am expecting the program to print the value of y(i). But I can't run the program.
3 comentarios
Philipp Doblhofer
el 30 de Dic. de 2017
Editada: Philipp Doblhofer
el 30 de Dic. de 2017
Hello,
maybe this can help you: https://de.mathworks.com/matlabcentral/answers/213823-forward-backward-and-central-differences
You have to do two steps:
1) Calculate dy and d2y for all values of i (1 to 4). The result should be a vector, not a scalar value (like your sample code would suggest)
2) For each i-value you have a system of linear equations. You have to solve them. (y(i) = ...)
Respuestas (0)
Ver también
Categorías
Más información sobre Numerical Integration and Differentiation en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!