Я использовал среднее значение температуры при расчете скорости роста и производства с использованием цикла for. Но сейчас у меня индивидуальная температура с каждым днем. Возможно ли для «Temp» использовать приведенную дневную температуру вместо средней?
exp <- expand.grid(
MetalA=6E-9,
MetalB=5e-6,
Biomass=1)
Temp = 1.89
Growth_rate = 0.5
Spd = 86400
Basal_respiration = 1.066
model <- function(days = 10, timestep = 432, Production) {
init <- rep(NA_real_, n_steps+1)
init[1] <- 0.
Production <- init
for (time in seq_len(n_steps)){
Temp_Sensitivity = Growth_rate^Temp
Max_growth = (Growth_rate*Temp_Sensitivity)/spd #growth rate in seconds per day
Production[time] = Max_growth * Biomass [time]
dProduction_dt = Production[time]
dt <- 200
Production[time+1] = Production[time] + dProduction_dt * dt
}
data.frame(MetalA=MetalA, MetalB=MetalB, Biomass=Biomass, Temp=Temp, Production=Production)
}
days <- 10
timestep <- 432
exp_results <- list()
for (i in 1:nrow(exp)) {
this_params <- exp[i, ]
exp_results[[length(exp_results)+1]] <- model(days = days, rday = rday, MetalA = this_params$MetalA, MetalB = this_params$MetalB, Temp = this_params$Temp, Temp = this_params$Temp, Biomass = this_params$Biomass)
}
Временной шаг 432, поэтому 200 секундных блоков.
у меня сейчас температура на 10 дней
Temp = c (1,2,1,3,2,1,5, 2, 3, 1, 2,4)
Можно ли заменить температуру, чтобы использовать эти 10 в течение периода времени вместо «среднего» значения (1,89), которое я дал ранее?
Использование Temp = c (1,2,1,3,2,1.5, 2, 3, 1, 2.4) - за день, а не за шаг ...
Я пытался использовать Temp [i], но затем я получаю сообщение об ошибке
Ошибка в data.frame (MetalA = MetalA, MetalB = MetalA, Биомасса = Биомасса,:
аргументы подразумевают различное количество строк: 4321, 1, 10
Я бы хотел, чтобы температура использовала индивидуальные значения дневной температуры