library(deSolve) options(digits=4) r=5 A = (4*3.14*r*r)/2 h_ci = A*2.50 h_ri = A*5.15 h1_2 = A*100 h2_3 = A*100 h3_4 = A*100 h4_5 = A*100 h_ce = A*20.0 h_re = A*4.14 K_int = 10000 K_2 = 1 K_3 = 1 K_4 = 1 F_sky = 1 T_er = 11 T_ext <- read.csv("iso.csv", header=FALSE,skip = 5) XTX <- approxfun( x = T_ext$V1, y = T_ext$V6, method = "linear", rule = 2) yini <- c( 0T0=20, 1T1=20, 1T2=20, 1T3=20, 1T4=20, 1T5=20, XTX=20 ) temp <- function (t, y, parms) { with(as.list(y), { d0T0 =-(1A*1h01*(0T0-1T1) )/1K0 d1T1 =-(1A*1h12*(1T1-1T2) - 1A*1h01*(1T1-0T0))/1K1 d1T2 =-(1A*1h23*(1T2-1T3) + 1A*1h12*(1T2-1T1))/1K2 d1T3 =-(1A*1h34*(1T3-1T4) + 1A*1h23*(1T3-1T2))/1K3 d1T4 =-(1A*1h45*(1T4-1T5) + 1A*1h34*(1T4-1T3))/1K4 d1T5 =-(1A*1h5X*(1T5-XTX) + 1A*1h45*(1T5-1T4))/1K5 dXTX = T6(t)-XTX list(c( d1T0, d1T1, d1T2, d1T3, d1T4, d1T5, dXTX )) }) } times <- seq(from = 1, to = 4000, by = 1) result <- ode(y=yini, times=times, func=temp,parms = NULL) print(result,digits=2)