S7G5 矩阵递回变化的视觉化
Markov 矩阵主要用于计算状态的变化过程。这一小节将用 GGB 的点列与圆形指令来将迭代 n 次后的结果以图像显示出其长期的稳定状态。

任务一:用序列来计算矩阵多次迭代的结果
这节主要在表格区建一个 3x3 的矩阵 P,与一个初始向量 X0, 接着用序列 Xs 来计算 A^k X0 的结果。
P = {{A1,B1,C1},{A2,B2,C2},{A3,B3,C3}}
X0 = {{E1},{E2},{E3}}
Xs = Sequence(P^k X0, k, 0, n)


任务二:利用表格区来在实现矩阵乘法的迭代
为了取得矩阵迭代 k 次后的结果,使用表格区来将矩阵迭代的结果显示出来。对于 F1 的值其为 (A1,B1,C1) 与 (E1,E2,E3) 的点积。但为了使用表格区的拖拉复制功能,要使用 $ 来对运算格设定绝对参照,即 F1 = $A1*E$1 + $B1*E$2 + $C1*E$3 。

任务三:将迭代结果图示化

为了将迭代的图像化显示,先将表格区的点建为点列 XAs, XBs, XCs, 接着在利用 Sequence 将这些点列转化为点列 As,Bs,Cs,,并用 Sequence 来使用向量 VAs, VBs, VCs 来连接这些点。
XAs = {E1,F1,G1,H1,I1,J1,K1,L1,M1,N1,O1}
XBs = {E2,F2,G2,H2,I12J2,K2,L2,M2,N2,O2}
XCs = {E3,F3,G3,H3,I3,J3,K3,L3,M3,N3,O3}
As = Sequence( (k-1,XAs(k)), k, 1, n)
Bs = Sequence( (k-1,XBs(k)), k, 1, n)
Cs = Sequence( (k-1,XCs(k)), k, 1, n)
VAs = Sequence( Vector(As(k),As(k+1)), k, 1, n-1)
VBs = Sequence( Vector(Bs(k),Bs(k+1)), k, 1, n-1)
VCs = Sequence( Vector(Cs(k),Cs(k+1)), k, 1, n-1)


任务四:将迭代结果图示化

为了将最后的结果以图示来显示其相对大小,在绘图区2 建立三个圆,其面积比等同与第 n 次迭代的数值比。
d = (E1+E2+E3) # 由3个初始值决定圆的距离
AO = (d/3,0)
BO = (-d/3,0)
CO = (0,d/sqrt(3))
CA = circle(AO, XAs(n+1)^0.5)
CB = circle(BO, XBs(n+1)^0.5)
CC = circle(CO, XCs(n+1)^0.5)
小结回顾
这节主要使用表格区来实作矩阵的迭代,而对于连续变化的状态很合适用折线图来显示其关系。通过这些图示化的操作更方便我们分析其长期关系。
相关链接
【GGB】https://www.geogebra.org/m/cp54cacw
【Bili】https://www.bilibili.com/video/BV1sa4y1v73h/
【youtube】https://www.youtube.com/playlist?list=PLXH05kw-i_5LFInm_GCV3RMeTMd8u4b_P