How can i solve y" + 2y =0 with RK4 and their program fortran
please I néed your helpe
my ey is y"+2y weith y(x) = cos(2x)
voila mon progam
integer, parameter :: n=21 ! number of base points
double precision, external :: f
double precision, dimension(1:n) :: x, y, dy ! x, y, y'
! boundary values
x(1) = 0.0
y(1) = 0.0
x(n) = 1.0
y(n) = 1.0
! assumptions for y'(1) - use dy(1) and dy(2) here only as a storage
dy(1) = 1
dy(2) = 0
write (*,101) x(i), y(i), dy(i)
100 format(5x, 'x',11x, 'y',11x, 'dy')
end program second_ordr
double precision f, x, y, dy
f = 0.55*cos(0.55*x)
end function f
double precision f
double precision, dimension(1:n) :: x, y, dy
double precision h,k11,k12,k21,k22,k31,k32,k41,k42
h = x(i)-x(i-1)
k11 = h*dy(i-1)
k12 = h*f(x(i-1),y(i-1),dy(i-1))
k21 = h*(dy(i-1)+k12/2.0)
k22 = h*f(x(i-1)+h/2.0, y(i-1)+k11/2.0, dy(i-1)+k12/2.0)
k31 = h*(dy(i-1)+k22/2.0)
k32 = h*f(x(i-1)+h/2.0, y(i-1)+k21/2.0, dy(i-1)+k22/2.0)
k41 = h*(dy(i-1)+k32)
k42 = h*f(x(i-1)+h,y(i-1)+k31,dy(i-1)+k32)
y(i) = y(i-1) + (k11 + 2.0*(k21+k31) + k41)/6.0
dy(i) = dy(i-1)+ (k12 + 2.0*(k22+k32) + k42)/6.0
end subroutine rk4_2d
y(x) = cos(2x) is not a solution of y'' + 2y = 0.
Note - you're not suppose to take advantage of the fact that the ODE can be solved, y = c1 sin(sqrt(2) t) + c2 cos(sqrt(2) t).
RK4 is supposed to used with an ODE. Instead of using y and x, it may help to use y for position and t for time. y(t) is a position, y'(t) is a velocity, and y"(t) is an acceleration. For RK4, the ODE should be written as y" = -2y. The initial condition is y(0) = 0, y'(0) = 1, and y"(0) = 0. For a given y"(t), y'(t), y(t), RK4 calculates y'(t+Δt), y(t+Δt), and then y"(t+Δt) = -2 y(t+Δt), t = t+Δt, and the process continues for each time step Δt.
I explain exactly what I want
I have an ordinary differential equation of order two y "(x) = -2cos (2x)
I am looking to solve numerically the RK4 method to write a program in FORTRAN
with y (0) = 1 and y '(0) = 0
thank you very much
That is not what you wrote in your opening post. There you wrote that you want to solve $y'' + 2y = 0$, but you did not specify initial conditions. In your second post you wrote that you want to solve $y'' + 2y = 0$ with $y(x) = cos(2x)$ and boundary conditions $y(0)=0, y(1)=1$. As Mark noted, $y(x) = cos(2x)$ is not a solution of $y'' + 2y = 0$.
So which is it?
If you truly are to numerically solve $y''+2y=0, y(0)=1, y'(0)=0$ using RK4, you should not be taking advantage of the fact that $y=\cos(\sqrt(2)x)$ is the solution.
ok I understand thank you
Separate names with a comma.