# [R] Beginners problem

Rolf Wester rolf.wester at ilt.fraunhofer.de
Mon Oct 4 16:01:15 CEST 2004

```Hi,

I'm new to R and have a problem with a little test program (see below).
Why doesn't <<- in function rk4
assign the new value to y so that it is seen in rktest. I thought that
<<- does exactly this. But it seems that I
didn't get it right. I would be very appreciative for an explanation of
that behaviour of <<-. I know how to
write the whole thing so that it works (return the updated y to rktest)
but I would like to learn how variable scope
in R works.

Rolf

----------------------------------------------------------------------------------------------------------------------

rk4 <- function(x,y,f,h) {
n  <- length(y)
hh <- h*0.5
k1 <- f(x,y)
k2 <- f(x,y+k1*hh)
k3 <- f(x,y+k2*hh)
k4 <- f(x,y+k3*h)
y <<- y + h/6.0*(k1 + 2.0*k2 + 2.0*k3 + k4))
}

rkf <- function(x,y) {
-y
}

rktest <- function(){
y <- 1.0
x <- 0.0
h <- 0.1
for(i in 1:10) {
rk4(x,y,rkf,h)
print(y)
}
}

rktest()

```