本页面提供的是上一版软件的文档。当前版本中已删除对应的英文页面。

使用实时脚本进行教学

下面是一个如何在教室中使用实时脚本的示例。以下示例演示如何:

  • 添加方程用于解释基础数学。

  • 执行 MATLAB 代码的各个节。

  • 包括要以可视方式呈现的绘图。

  • 使用链接和图像提供支持信息。

  • 使用 MATLAB 代码进行交互式试验。

  • 使用其他示例加深概念理解。

  • 使用实时脚本进行赋值。

计算 1 的 n 次方根意味着什么?

为您要讲解的概念添加方程以解释基础数学。要添加方程,请转至实时编辑器选项卡并点击方程按钮。然后,从方程选项卡中选择符号和结构体。

现在我们探讨如何计算 1 的根。计算 1 的 n 次方根意味着什么?1 的 n 次方根是方程 的解。

对于平方根,很容易计算。值为 。对于高阶根,则要困难很多。要计算 1 的立方根,需要对方程 求解。我们可以分解此方程以获取

因此,第一个立方根是 1。现在,我们可以使用二次公式获取第二个和第三个立方根。

计算立方根

要执行 MATLAB 代码的各个节,请转至实时编辑器选项卡,然后点击运行节按钮。输出与创建它的代码显示在一起。使用分节符按钮创建节。

在示例中,abc 都等于 1。其他两个根基于下列公式计算得到:

a = 1 ; b = 1 ; c = 1;
roots = [];
roots(1) = 1;
roots(2) = (-b + sqrt(b^2 - 4*a*c))/(2*a);    % Use the quadratic formula
roots(3) = (-b - sqrt(b^2 - 4*a*c))/(2*a);

因此 1 的完整立方根集合为:

disp(roots')
   1.0000 + 0.0000i
  -0.5000 - 0.8660i
  -0.5000 + 0.8660i

在复平面中显示根

在实时编辑器中包括绘图,这样学生能以可视方式展示重要概念。

我们可以在复平面中以可视方式呈现根以查看其位置。

range = 0:0.01:2*pi;                              
plot(cos(range),sin(range),'k')                % Plot the unit circle                 
axis square; box off
ax = gca;
ax.XAxisLocation = 'origin';
ax.YAxisLocation = 'origin';
hold on
plot(real(roots), imag(roots), 'ro')           % Plot the roots

计算高阶根

要添加支持信息,请转至实时编辑器选项卡,然后点击超链接图像按钮。学生可以在课堂外使用支持信息了解课程主题。

一旦超过 ,情况会变得更加棘手。可以使用 Lodovico Ferrari 在 1540 年发现的四次公式来获取 4 次方根。但此公式较长且难以处理,对于计算 4 次以上的根没有帮助。幸运地是,17 世纪的法国数学家 Abraham de Moivre 给出了更好的解决方法。

Abraham de Moivre 于 1667 年 5 月 26 日出生于香巴尼地区的维特里。他与 Isaac Newton、Edmund Halley 和 James Stirling 是同代人,并且都是朋友。https://en.wikipedia.org/wiki/Abraham_de_Moivre

他因 de Moivre 定理而闻名于世,该定理在复数与三角学之间建立了关联,并且他在正态分布和概率论方面也做出了巨大贡献。De Moivre 撰写了一本关于概率论的书 The Doctrine of Chances,倍受赌博者的推崇。De Moivre 首先发现了 Binet 公式,它是 Fibonacci 数的闭型表达式,该公式将黄金分割率 φn 次幂与第 n 个 Fibonacci 数建立关联。他也是第一个做出中心极限定理假设的人,这一定理奠定了概率论的基础。

de Moivre 定理阐释,对于任何实数 x 和任何整数 n

这如何帮助我们解决我们的问题?我们还知道,对于任何整数 k

因此,根据 De Moivre 定理,可以得到

计算 1 的 n 次方根

使用实时编辑器对 MATLAB 代码进行交互式试验。向学生展示参数会对分析产生怎样重要的影响。

我们可以使用此最后一个方程计算 1 的 n 次方根。例如,对于任何值 n,我们可以将值 用于上述公式。我们可以使用此 MATLAB 代码对不同的 n 值进行试验:

roots = [];
n = 5;
for k = 0:n-1
    roots(k+1) = cos(2*k*pi/n) + 1i*sin(2*k*pi/n);    % Calculate the roots
end
disp(roots')
   1.0000 + 0.0000i
   0.3090 - 0.9511i
  -0.8090 - 0.5878i
  -0.8090 + 0.5878i
   0.3090 + 0.9511i

在复平面中绘制的根显示,这些根以 的间隔均匀地分布在单位圆上。

cla
plot(cos(range),sin(range),'k')                   % Plot the unit circle
hold on
plot(real(roots),imag(roots),'ro')              % Plot the roots

计算 -1、i 和 -i 的 n 次方根

使用其他示例加深对重要概念的理解。在讲课过程中修改代码以回答问题或者更深入地探讨想法。

只需对上述方法进行延伸,即可计算出 -1、i 和 -i 的根。如果观察一下单位圆,可以看出值 1、i、-1、-i 分别出现在角度 位置。

r = ones(1,4);
theta = [0 pi/2 pi 3*pi/2];
[x,y] = pol2cart(theta,r);
cla
plot(cos(range),sin(range),'k')           % Plot the unit circle
hold on
plot(x, y, 'ro')                          % Plot the values of 1, i, -1, and -i
text(x(1)+0.05,y(1),'1')                  % Add text labels
text(x(2),y(2)+0.1,'i')
text(x(3)-0.1,y(3),'-1')
text(x(4)-0.02,y(4)-0.1,'-i')

清楚这一点后,可以对 i 编写以下表达式:

对等式的两端取 n 次方根,得到

通过 de Moivre 定理,得到

家庭作业

以实时脚本为基础分配作业。为学生提供课堂中使用的实时脚本,并让学生完成练习,从而测试学生对课堂内容的理解程度。

使用上述方法完成以下练习:

练习 1:编写 MATLAB 代码计算 i 的 3 个立方根。

% Put your code here

练习 2:编写 MATLAB 代码计算 -1 的 5 个 5 次方根。

% Put your code here

练习 3:描述您要用于计算任意复数的 n 次方根的数学方法。包括您在计算方法中使用的方程。

(在此处描述您的方法)