Cleve's Corner:数学和计算上的Clyver

科学计算,数学和更多

Kuramoto同步振荡器模型

在夏季夜晚萤火虫,起搏细胞,在脑中的神经元,在飞行八哥一群,摆钟安装在共同的壁,奇异的化学反应,交流电流在电力网中,鱿鱼振荡(超导量子干涉器件)。这些是同步振荡器的所有示例。

Kuramoto模型是一个耦合振子的非线性动力学系统,其初始固有频率和相位是随机的。如果耦合足够强,系统将演化为所有振子相位一致的系统。

内容

Yoshiki Kuramoto.

Yoshiki Kuramoto是京都大学的物理学壮观教授。他于1940年出生,并于1974年出版了关于该模型的第一个论文。当他的模型原来抽象描述这么多不同的物理系统的动态时,他非常惊讶。这里有一个YouTube视频在2015年,他回忆起模型。

Kuramoto模型

Kuramoto模型是一个$n$常微分方程组

$$ \点{\ theta_k} = \ omega_k + \压裂{\卡帕} {N} \ {sum_ J = 1} ^ N {\罪{(\ theta_j- \ theta_k)}},\ K = 1 ,.......,n $$

$ \ theta_k(t)$是$ t $的真实函数,描述$ k $ --th振荡器,$ \ omega_k $是$ k $ --th振荡器和真正标量的自然频率$ \ kappa $是振荡器之间耦合的强度。

当$ \ kappa = 0 $时,方程式是线性的,振荡器是独立的。

$ $ \ theta_k (t) = \ omega_k t $ $

当$ \ kappa $的增加超过临界点时,非线性术语迫使所有振荡器的阶段接近共同限制。

kuramoto app.

这里是帮助进入我的库拉莫托程序。

帮助Kuramoto_
库拉莫托。Kuramoto的同步振荡器模型。Kuramoto(n)有n个振荡器。默认值为n = 100.该模型是N常微分方程的系统。k-th方程是(d / dt)theta_k = omega_k + kappa / n * sum_j(sin(theta_j-theta_k))theta_k是k-th振荡器的阶段,omega_k是k-th振荡器的内在频率,kappa是标量耦合参数。最初,θ在间隔中均匀分布[0,2 * pi],ω在间隔[1-b,1 + b]中均匀地分布,其中b是称为宽度的参数。EXP(I * THETA)的角速度是用最快的最快的黄色的蓝色编码的颜色,并且介于两者之间。EXP(I * THETA)的显示半径通常用平均值1和标准偏差W分布,其中W是称为宽度的参数。这纯粹是为了视觉效果,对动态没有影响。将宽度设置为零将所有振荡器放在单位圆上。 The interface allows control of n, kappa, the speed of the ode solver, breadth and width. An alternate display mode, called "rotate", is a frame of reference rotating with angular velocity psi, the average of the thetas. A rotating arrow has length |z| where |z|*exp(i*psi) = 1/n*sum_k(exp(i*theta_k)). |z| = 0 indicates no synchronization, |z| = 1 is complete synchronization.

动画

我已经制作了五个动画GIF,显示了行动程序。每个动画都是其他动画的略有变化。我希望你的浏览器或观众显示它们一起移动。如果没有发生这种情况,请告诉我们在评论中知道您使用的系统。

kappa = 0.

以下是控件的默认设置,包括kappa = 0..每个振子都以其固有频率运动。没有同步。

Kappa = 0.50

将耦合参数撞到Kappa = 0.50.这迫使振荡器移动到共同的频率。订单参数箭头增长到其全长。在这个样本的末尾靠近最慢的黄色试图赶上其他人。

旋转

在我称之为“旋转”的旋转坐标中,您可以看到更好。比平均值快于平均值的蓝调在一个方向上移动,而较慢的黄色沿相反方向移动。

Kappa = 0.12

将耦合参数转到0.12。这靠近启动同步的阈值。箭头慢慢增长,但我们在达到全长之前停下来。

宽度= 0.

将宽度设置为零。这与前一个动画相同,但仅限于圆圈。看到发生了什么更难。

一班车

Kuramoto的ode系统代码是MATLAB™的一行代码。

功能theta_dot = ode(〜,theta)theta_dot = omega + kappa / n * sum(sin(theta-theta'))';结尾

Nkappa.是真正的标量。欧米茄θ.是长度的实列向量吗N.单例扩张使得Theta-Theta'进入N-经过-N矩阵与元素θ(j)θ(k).和产生行向量,最后的转置使结果成为列向量。

软件

我已经提交了库拉莫托到Matlab中央文件交换。链接在这里.我还包括它克利夫的4.60版

参考文献

维基百科,库拉莫托模型,https://en.wikipedia.org/wiki/kuramoto_model.

德克·布罗克曼和史蒂文·斯特罗加茨,"骑上我的库拉摩托车"https://www.complexity-explorables.org/explorables/ride-my-kuramotocycle.




发布与MATLAB®R2018B

|

评论

要发表评论,请点击这里登录您的MathWorks帐户或创建新的。