逻辑斯蒂方程(动态修正版)
N(t) =
K 1 + K-N₀N₀ e-rt
± A·sin(ωt)·e⁻ᵝᵗ

环境参数调节器

当前时间: 0
种群数量: 0

种群数量S型变化动态模型实验报告

实验参数

初始种群 (N₀): ${params.N0}

环境承载量 (K): ${params.K}

增长率 (r): ${params.r.toFixed(2)}

波动幅度 (±%): ${(params.amplitude * 100).toFixed(0)}

逻辑斯蒂方程:N(t) = K / (1 + ((K-N₀)/N₀) × e^(-rt)) ± A·sin(ωt)·e^(-βt)

实验数据

`; // 添加数据点到表格 dataPoints.forEach(point => { htmlContent += ` `; }); // 添加实验结论 htmlContent += `
时间 种群数量
${point.time} ${point.population}

实验结论

根据逻辑斯蒂方程模拟,种群数量随时间呈S型增长,最终在环境承载量K附近稳定波动。

波动幅度为${(params.amplitude * 100).toFixed(0)}%,这表明种群数量在达到环境承载量后会围绕K值进行有阻尼的振荡。

报告生成时间: ${timestamp}

`; // 创建Blob对象,使用application/msword MIME类型 const blob = new Blob([htmlContent], { type: 'application/msword;charset=utf-8;' }); // 创建下载链接 const link = document.createElement('a'); const url = URL.createObjectURL(blob); // 生成带时间戳的文件名 const dateStr = now.toLocaleString('zh-CN').replace(/[\s:]/g, '-'); link.setAttribute('href', url); link.setAttribute('download', `种群数量S型变化实验报告_${dateStr}.doc`); link.style.visibility = 'hidden'; // 添加到DOM并触发下载 document.body.appendChild(link); link.click(); // 清理 document.body.removeChild(link); } // 初始化,只绘制网格和坐标轴 function init() { drawGrid(); drawAxis(); drawCurve(); } init();