项目简介
本项目致力于复现两篇关于Kuramoto振荡器在无标度网络中同步行为的论文模型。借助数值模拟与理论分析,探究不同规模的Barabasi - Albert(BA)网络中临界耦合强度的存在性,以及其与有限尺度效应的关系。项目运用Kuramoto库开展模型积分,通过Python实现网络构建、模型模拟与结果分析。
项目的主要特性和功能
- 模型复现:复现了[2004epl]和[2004pre]两篇论文里的Kuramoto模型,采用BA模型构建节点规模为500、1000和2000的无标度网络。
- 数值模拟:逐步增加耦合强度,利用数值积分方法求解Kuramoto模型,计算系统的同步程度(r_mean),观察序参量随耦合强度的变化情况。
- 数据分析:分析不同耦合强度下r_mean的变化,确定系统达到同步的临界耦合强度,将其与理论值进行对比,探讨临界值的存在性及有限尺度效应的影响。
- 结果可视化:使用Matplotlib库绘制模拟结果,直观呈现同步行为的变化趋势。
安装使用步骤
环境准备
确保已安装Python 3.x,并安装必要的Python库:
bash
pip install numpy networkx matplotlib powerlaw scipy
下载源码
从相应位置下载本项目的源码文件。
运行模拟
打开终端或命令行,导航到项目目录,运行以下命令启动模拟:
bash
python Model1_ScaleFreeNetworks.py
python Model2_RandomOscillatorNetwork.py
查看结果
模拟结果会保存在OutcomeData
文件夹中,文件名为model1_output_xxx.txt
和model2_output_xxx.txt
。使用以下脚本生成可视化图表:
bash
python VisulizationForModel1.py
python VisualizationForModel2.py
分析与讨论
查看生成的图表,分析不同网络规模下的同步行为,对比模拟结果与理论值,讨论临界耦合强度的存在性及有限尺度效应的影响。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】