我是朱莉娅的新手,并试图制作一个简单的剧本来模拟人口增长。因此,在每个时间步长,群体增长如下N(t + 1)= N(t)(1 +β)。因此,在每个时间步骤I从泊松分布中采样,其均值由N(t + 1)给出。当N达到最大值或达到0时,我想停止。我已经在Julia中实现了这个,但是人口常常超过我定义的最大值。此外,每当N> 0我得到错误消息时:ErrorException(" lambda必须为正")。
using Distributions
function new_pop(N)
beta=0.1
w_fit=1
rand(Poisson(N*(1+w_fit*beta)))
end
pop_S=10
pop_Max=100
while (pop_S<pop_Max | pop_S>0)
pop_S=new_pop(pop_S)
println(pop_S)
end
答案 0 :(得分:1)
我认为您可能需要||
而不是|
。单个条按位OR,而两个条是逻辑OR。