Шаг изменения входного параметра со временем в R - PullRequest
0 голосов
/ 14 мая 2018

Если кто-нибудь может мне помочь, как включить step во входной параметр относительно времени.Пожалуйста, смотрите код ниже:

library(ReacTran)

N <- 10   # No of grids
L = 0.10   # thickness, m
l = L/2    # Half of thickness, m

k= 0.412    # thermal conductivity, W/m-K
cp = 3530    # thermal conductivity, J/kg-K
rho = 1100   # density, kg/m3
T_int = 57.2       # Initial temperature , degC
T_air = 19        # air temperature, degC
h_air = 20        # Convective heat transfer coeff of air, W/m2-K

xgrid <- setup.grid.1D(x.up = 0, x.down = l, N = N)
x <- xgrid$x.mid

alpha.coeff <-  (k*3600)/(rho*cp)



Diffusion <- function (t, Y, parms){
  tran <- tran.1D(C=Y, flux.down = 0, C.up = T_air, a.bl.up = h_air,
                   D = alpha.coeff, dx = xgrid)
  list(dY = tran$dC, flux.up = tran$flux.up,
       flux.down = tran$flux.down)
}

# Initial condition
Yini <- rep(T_int, N)
times <- seq(from = 0, to = 2, by = 0.2)
print(system.time(
  out <- ode.1D(y = Yini, times = times, func = Diffusion,
               parms = NULL, dimens = N)))

plot(times, out[,(N+1)], type = "l", lwd = 2, xlab = "time, hr", ylab = "Temperature")

Я хочу, чтобы T_air был постоянным в течение 1-го часа, и для оставшихся 1 hr он изменится на другое значение.Это будет step change в параметре.Как мне это сделать?Любая помощь будет оценена.Спасибо,

...