连续计算--卡西欧991CN CW/999CN CW计算器的多语句和赋值用法

911CN CW 和最新的 999CN CW 是 991CN X 的升级版,新增了数据表格和分布的功能,但是取消了ALPHA,OPTN 和CALC,功能肯定是没有消失,很多整合在 [目录] 和 [工具] 这两个选项里,好处是简洁了不少,但可能不方便的是需要多按几次按钮,新增了PageUp PageDown,可以快速上下滚动,一定程度上弥补了这个“缺陷”。
由于计算方法课程的考试的原因,有关连续计算/迭代计算的便捷用法,网络上都是针对991CN X的,主要使用到了 CALC 键来连续计算,可以直接使用 = 赋值。但本人只有999CN CW,经过一阵摸索,发现可以通过 [目录] 里的 [多语句/赋值] 来替代。其中,多语句分割符是“:”, 赋值语句是" → x \to x →x",语法逻辑有点像编程。
计算方法例题:
使用经典 Runge-Kutta 方法求解如下初值问题(步长 h = 0.2 h=0.2 h=0.2):
{ y ′ = x − y , 0 ≤ x ≤ 1 y ( 0 ) = 0 \begin{cases} y' = x - y, & 0 \le x \le 1 \\ y(0) = 0 \end{cases} {y′=x−y,y(0)=00≤x≤1
经典 Runge-Kutta 方法公式为:
{ y n + 1 = y n + h ( K 1 + 2 K 2 + 2 K 3 + K 4 ) / 6 K 1 = f ( x n , y n ) K 2 = f ( x n + 1 2 h , y n + 1 2 h K 1 ) K 3 = f ( x n + 1 2 h , y n + 1 2 h K 2 ) K 4 = f ( x n + h , y n + h K 3 ) \begin{cases} y_{n+1} = y_n + h(K_1 + 2K_2 + 2K_3 + K_4)/6 \\ K_1 = f(x_n, y_n) \\ K_2 = f(x_n + \frac{1}{2}h, y_n + \frac{1}{2}hK_1) \\ K_3 = f(x_n + \frac{1}{2}h, y_n + \frac{1}{2}hK_2) \\ K_4 = f(x_n + h, y_n + hK_3) \end{cases} ⎩ ⎨ ⎧yn+1=yn+h(K1+2K2+2K3+K4)/6K1=f(xn,yn)K2=f(xn+21h,yn+21hK1)K3=f(xn+21h,yn+21hK2)K4=f(xn+h,yn+hK3)
针对 f ( x , y ) = x − y f(x, y) = x - y f(x,y)=x−y 和 h = 0.2 h = 0.2 h=0.2,计算公式变为:
{ y n + 1 = y n + 0.2 ( K 1 + 2 K 2 + 2 K 3 + K 4 ) / 6 K 1 = x n − y n K 2 = x n + 1 2 h − ( y n + 1 2 h K 1 ) = 0.9 ( x n − y n ) + 0.1 K 3 = x n + 1 2 h − ( y n + 1 2 h K 2 ) = 0.91 ( x n − y n ) + 0.09 K 4 = x n + h − ( y n + h K 3 ) = 0.818 ( x n − y n ) + 0.182 \begin{cases} y_{n+1} = y_n + 0.2(K_1 + 2K_2 + 2K_3 + K_4)/6 \\ K_1 = x_n - y_n \\ K_2 = x_n + \frac{1}{2}h - (y_n + \frac{1}{2}hK_1) = 0.9(x_n - y_n) + 0.1 \\ K_3 = x_n + \frac{1}{2}h - (y_n + \frac{1}{2}hK_2) = 0.91(x_n - y_n) + 0.09 \\ K_4 = x_n + h - (y_n + hK_3) = 0.818(x_n - y_n) + 0.182 \end{cases} ⎩ ⎨ ⎧yn+1=yn+0.2(K1+2K2+2K3+K4)/6K1=xn−ynK2=xn+21h−(yn+21hK1)=0.9(xn−yn)+0.1K3=xn+21h−(yn+21hK2)=0.91(xn−yn)+0.09K4=xn+h−(yn+hK3)=0.818(xn−yn)+0.182
-
首先应该在 [变量] 里赋值 x x x和 y y y的初值,但都为0,其实不用设置。
-
接下来敲复合语句: x − y → A x - y \to A x−y→A : 0.9 ( x − y ) + 0.1 → B 0.9(x - y)+0.1 \to B 0.9(x−y)+0.1→B : 0.91 ( x − y ) + 0.09 → C 0.91(x - y)+0.09 \to C 0.91(x−y)+0.09→C : 0.818 ( x − y ) + 0.182 → D 0.818(x - y)+0.182 \to D 0.818(x−y)+0.182→D : y + 0.2 6 ( A + 2 B + 2 C + D ) → y y+\frac{0.2}{6}(A + 2B + 2C + D)\to y y+60.2(A+2B+2C+D)→y : x + 0.2 → x x + 0.2\to x x+0.2→x,然后直接按“EXE”计算即可迭代,可以在变量里查看每步y的值以及其他的值。
-
可以发现语句分割符和赋值的语句是连在一起的,按 [目录],按几次
PageDown找到 [多语句/赋值],选择正确的赋值语句后,后面要记得重复这一步骤:按 [目录],按几次PageDown找到 [多语句/赋值],选择 “:” ,重复几次就很熟练了。 -
由于按下"EXE"后无法再次更改复合语句,所以要细心,输错就要再输一遍了。
计算结果(代入初值 y 0 = 0 y_0 = 0 y0=0)如下:
| x n x_n xn | y n y_n yn |
|---|---|
| 0 | 0.000 000 |
| 0.2 | 0.018 733 |
| 0.4 | 0.070 324 |
| 0.6 | 0.148 817 |
| 0.8 | 0.249 335 |
| 1.0 | 0.367 886 |
991CN X使用CALC的参考:
使用fx-991CN X的CALC功能进行连续计算 - 知乎
3-2-Gauss-Seidel迭代法_哔哩哔哩_bilibili
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)