文件交换的选择

我们最好的用户提交

动画播放控制住脚本(R2021a)

我选择这个动画的例子强调R2021a我最喜欢的新功能之一, 动画播放控制住脚本 。这个版本有许多伟大的新功能,你可能会错过这一个,如果你不仔细通读 发布说明
动画在现场已经可能的几个版本的脚本。R2021a,您现在可以播放动画没有重新运行代码。你得到一个控制下面的情节,有能力改变播放速度。
让我们看到这个动作的代码 MATLAB绘制画廊——动画
animation_playback.gif

动画代码(改编自MATLAB绘制画廊——动画)

这是动画的代码。看看一些评论;你会注意到我修改一些代码来使用其他新特性。
%参数和初始条件
%,链接长度、初始角度,模拟时间
m = 1;
L = 1;
θ₁= 3 *π/ 4;
θ=π/ 3 * 8;
t = linspace (0, 200);
%解决双摆的颂歌
[T、Y] =数值(@ (T, x) double_pendulum (T, x, m, L),
t(θ,θ₁,0,0));
%计算关节坐标用于动画
x = [L * sin (Y (: 1)), L *罪(Y (: 1)) + L *罪(Y (:, 2)));
y = [- l * cos (y (: 1)), - l * cos (y (: 1)) - l * cos (y (:, 2)));
%弧度转换为度
ang = Y(: 1:2) * 180 /π;
tiledlayout (2, 1)%中引入R2019b
nexttile%中引入R2019b
情节(T, ang,线宽= 2)%名称=值语法介绍R2021a ! !
持有
hh1(1) =情节(T(1)和(1,1),标记=“。”MarkerSize = 20,颜色=“b”);
hh1(2) =情节(T(1)和(1、2),标记=“。”MarkerSize = 20,颜色=“r”);
包含(“时间(sec)”)
ylabel (“角(度))
持有
nexttile
hh2 =情节([0,x (1,1); x (1, 1), x (1、2)]、[0, y (1,1); y (1, 1), y (1、2),
标志=“。”MarkerSize = 20,线宽= 2);
平等的
轴([L L 2 * 2 * 2 * 2 * L])
ht =标题(“:”+ T (1) +“秒”);% R2016b中引入字符串数组
id = 1:长度(T)
集(hh1 (1) XData = T (id), YData =盎(id, 1))
集(hh1 (2) XData = T (id), YData =盎(id、2))
集(hh2 (1) XData = [0, x (id, 1)]、YData = (0 y (id, 1)))
集(hh2 (2), XData = x (id,:), YData = y (id,:))
集(ht,字符串=“:”+ + T (id)“秒”)
drawnow
结束
注意,我也使用新的 名称=值 语法的可选参数。

在您的浏览器中运行

你知道还有一个博客的新功能在您的浏览器中运行的代码对吗?点击 “在您的浏览器中运行” 下面的按钮,你会看到这篇博客开放的生活脚本MATLAB的在线版本。运行代码后,您应该看到动画回放控制完成运行。
现在试一试,让我们知道你的想法 在这里

动画的Helper函数

函数dy = double_pendulum (t、y、m, L)
%双摆系统的常微分方程(质量和链接长度)
%
%见http://en.wikipedia.org/wiki/Double_pendulum微分
%方程
% 2010年版权MathWorks公司。
g = 9.81;
θ₁= y (1);% 1角
θ= y (2);%角2
p1 = y (3);%的势头
p2 = y (4);%的势头
%的衍生品
dy (1) = 6 / (m * L ^ 2) * (2 * * cos (theta1-theta2) *约至4 - p2) /
(拿下* cos (theta1-theta2) ^ 2);
dy (2) = 6 / (m * L ^ 2) * (8 * p2-3 * cos (theta1-theta2) * p1) /
(拿下* cos (theta1-theta2) ^ 2);
dy (3) = 1/2 * m * L ^ 2 * (dy (1) * dy (2) * sin (theta1-theta2) + 3 * g / L * sin(θ₁));
dy (4) = 1/2 * m * L ^ 2 * (dy (1) * dy (2) * sin (theta1-theta2) + g / L * sin(θ));
dy = dy (:);
结束
|

评论

留下你的评论,请点击在这里MathWorks账户登录或创建一个新的。