模組:Complex Number/Functions/doc
外觀
此頁面為 Module:Complex Number/Functions 的說明文件
此頁面是Module:Complex Number/Functions的模組文件。 此頁面可能包含了模板的使用說明、分類和其他內容。 |
此模組文件被引用於約12,000個頁面。 為了避免造成大規模的影響,所有對此模組文件的編輯應先於沙盒或測試樣例上測試。 測試後無誤的版本可以一次性地加入此模組文件中,但是修改前請務必於討論頁發起討論。 模板引用數量會自動更新。 |
本模組定義了一些可供Module:Complex_Number系列模組使用的擴充函數。
使用條件
[編輯]要能使用此函數,必須先輸入一個數字類別資料結構以及其專用的math程式庫
- 數字類別資料結構必須包含下列成員函數:
- 專用的math程式庫必須包含下列成員:
使用方法
[編輯]- 初始化任何符合此擴充函數庫使用條件的數學庫
local 自訂函數庫名稱 = require("Module:Complex Number").函數庫名稱.init()
- 以Module:Complex Number的cmath為例:
local cmath = require("Module:Complex Number").cmath.init()
- 以Module:Complex Number的cmath為例:
- 初始化本擴充函數庫
自訂函數庫名稱 = require("Module:Complex Number/Functions")._init(自訂函數庫名稱, 函數庫對應的數字建構函式)
- 以上述之Module:Complex Number的cmath為例:
cmath = require("Module:Complex Number/Functions")._init(cmath, cmath.constructor)
- 以上述之Module:Complex Number的cmath為例:
- 使用擴充函數庫中的函數
- 例如:
print(cmath.factorial(5), cmath.sec(cmath.pi/4))
- 輸出:120 1.4142135623731
- 例如:
模組中的函數
[編輯]三角函數擴充
[編輯]- 擴充了原本未定義的三角函數
- 功能
- 輸入一個複數x,回傳其指定三角函數的值
range(x,min,max)
[編輯]- 功能
- 只取函數的某一段
- 若x位於min,max區間內,則回傳x,否則回傳NaN
統計函數
[編輯]- 功能
- 輸入一系列數字,回傳其指定的統計值
diff(function, x0)
[編輯]integral(a, b, function, step)
[編輯]- 功能
- 輸入一個函數,計算從a到b的定積分,並以step為求黎曼和的間距
- 實作方式
- en:Boole's_rule
limit(x0, way, function)
[編輯]- 功能
- 輸入一個函數,計算從way方向向x0逼近的極限。
- 其中,way=1為右極限、way=-1為左極限、way=0為不分方向的極限,若左極不等於右極回傳NaN
條件式
[編輯]- 常數條件輸入
- if(條件, 為真時, 為假時)、ifelse(條件1, 條件1為真, 條件2, 條件2為真, ... ,皆為假)
- 代表條件在傳入函數時已經完成計算
- 函數條件輸入
- iff(條件函數, 為真時, 為假時)、ifelsef(條件函數1, 條件1為真, 條件函數2, 條件2為真, ... ,皆為假)
- 代表條件在傳入函數時尚未計算,判斷的當下才計算。所傳入的函數需要是無參數函數,若有參數也只會被忽略。用於定義遞迴下的條件
factorial(x)
[編輯]binomial(n,k)
[編輯]- 功能
- 計算二項式係數
- 也可以理解為從n個元素中取出k個元素的方法數
gcd(a,b,c,...)
[編輯]lcm(a,b,c,...)
[編輯]- 功能
- 計算a,b,c,....等數字的最小公倍數,支援複數。
- 實作方式
- 最小公倍數#計算方法
gamma(x)
[編輯]- 功能
- 輸入一個複數x,回傳其Γ函數值
- 精確度
- 有效數字14位
- 運算效率
- 平均一次運算耗時約0.3582毫秒(3.6×10−4 s、一秒可計算2,700+次),測試於2018年11月19日 (一) 06:39 (UTC)、2022年4月12日 (二) 17:54 (UTC)。
- 實作方式
- 共分成4個部分
參考文獻
[編輯]- ^ Wrench, J.W. (1968). Concerning two series for the gamma function. Mathematics of Computation, 22, 617–626. and
Wrench, J.W. (1973). Erratum: Concerning two series for the gamma function. Mathematics of Computation, 27, 681–682. - ^ Viktor T. Toth. "Programmable Calculators: Calculators and the Gamma Function". 2006. (原始內容存檔於2007-02-23).
- ^ F. W. J. Olver, A. B. Olde Daalhuis, D. W. Lozier, B. I. Schneider, R. F. Boisvert, C. W. Clark, B. R. Miller, and B. V. Saunders, eds. NIST Digital Library of Mathematical Functions.