s = rat (x) ¶s = rat (x, tol) ¶[n, d] = rat (…) ¶在由 tol 指定的容差范围内,求 x 的有理逼近。
若未指定,默认容差为 1e-6 * norm (x(:), 1)。
当使用一个输出参数调用时,返回一个包含连分数展开式(多项)的字符串。
当使用两个输出参数调用时,返回 x 的分数表示形式的分子和分母的数值矩阵,使得 x = n ./ d。
例如:
s = rat (pi) ⇒ s = 3 + 1/(7 + 1/16) [n, d] = rat (pi) ⇒ n = 355 ⇒ d = 113 n / d - pi ⇒ 2.6676e-07
复数输入的处理方式类似:
s = rat (0.5 + i * pi) ⇒ s = complex (1 + 1/(-2), 3 + 1/(7 + 1/16)) [n, d] = rat (0.5 + i * pi) ⇒ n = 113 + 710i ⇒ d = 226 n / d - (0.5 + i * pi) ⇒ 0 + 2.6676e-07i
编程注意事项:
1. 当使用一个输出参数时,rat 生成一个字符串形式的连分数展开式。
要生成简单分数(单个分子和分母)的字符串,请使用 rats。
2. rat 输出的字符串可以传递给 eval,
以在所用容差范围内还原原始输入。
版权所有 © 2024-2026 Octave中文网
ICP备案/许可证号:黑ICP备2024030411号-2