模組:Complex Number/CayleyDickson/doc
![本頁使用了標題或全文手工轉換](http://images.weserv.nl/?url=//upload.wikimedia.org/wikipedia/commons/thumb/c/cd/Zh_conversion_icon_m.svg/35px-Zh_conversion_icon_m.svg.png)
此頁面為 Module:Complex Number/CayleyDickson 的說明文件
![]() | 此頁面是Module:Complex Number/CayleyDickson的模組文件。 此頁面可能包含了模板的使用說明、分類和其他內容。 |
本模組為基於Module:Complex Number的凱萊-迪克森結構運算系統,可將Module:Complex Number系列函數庫的任一數學庫套用凱萊-迪克森結構形成新的數學庫,並能提供其他模組呼叫使用。而若要直接在模板或條目中使用可透過Module:Complex Number/Calculate或{{複變運算}}來完成。
模組內容
本模組有5套數學資料結構的定義以及對應的數學運算庫:
- .cdmathQuaternion
- 已將四元數套用凱萊-迪克森結構形成的代數結構之數學資料結構及運算的系統,可當八元數使用。
- .cdmathOctonion
- 已將八元數套用凱萊-迪克森結構形成的代數結構之數學資料結構及運算的系統,可當十六元數使用。
- .cdmathSedenion
- 已將十六元數套用凱萊-迪克森結構形成的代數結構之數學資料結構及運算的系統,可當三十二元數使用。
- .sdmath
- 十六元數的數學資料結構及運算的系統
使用方法
LUA
- 初始化數學庫
- 一般方法:
local 自訂函數庫名稱 = require("Module:Complex Number/CayleyDickson").函數庫名稱.init()
- 例如初始化十六元數數學庫:
local sdmath = require("Module:Complex Number/CayleyDickson").sdmath.init()
- 例如初始化十六元數數學庫:
- 套用凱萊-迪克森結構並初始化數學庫:
- 直接載入已套用凱萊-迪克森結構的數學庫並初始化:
local 自訂函數庫名稱 = require("Module:Complex Number/CayleyDickson")['cdmath=要套用凱萊-迪克森結構的數學庫的模組路徑和名稱'].init()
- 例如初始化將八元數(Module:Complex Number/Octonion)套用凱萊-迪克森結構所形成的十六元數數學庫:
local sdomath = require("Module:Complex Number/CayleyDickson")['cdmath=Module:Complex_Number/Octonion.omath'].init()
- 其中數學庫的模組路徑和名稱格式為
Module:模組名稱.數學庫名稱
- 例如初始化將八元數(Module:Complex Number/Octonion)套用凱萊-迪克森結構所形成的十六元數數學庫:
- 一般方法:
- 初始化指定數學結構的數字
local 變數名稱 = 自訂函數庫名稱.constructor("描述數字的字串,單位元素用ele(n)表示")
- 例如:
local num1 = sdomath.constructor("2+3*ele(2)+ele(4)")
- 例如:
- 執行運算
- 例如:
local sdomath = require("Module:Complex Number/CayleyDickson")['cdmath=Module:Complex_Number/Octonion.omath'].init() local num1 = sdomath.constructor("2+3*ele(2)+ele(4)") local num2 = sdomath.constructor("4+5*ele(3)+ele(4)") print(num1 * num2)
- 輸出:7+15*ele(1)+12*ele(2)+10*ele(3)+6*ele(4)+3*ele(6)-5*ele(7)
- 或者使用函數庫內容:
local sdomath = require("Module:Complex Number/CayleyDickson")['cdmath=Module:Complex_Number/Octonion.omath'].init() local num1 = sdomath.constructor("2+3*ele(2)+ele(4)") print(sdomath.sqrt(num1))
- 輸出:1.6943519980768+0.88529420197369*ele(2)+0.29509806732456*ele(4)
- 例如:
模板
使用{{複變運算}}
- 語法:
{{複變運算|運算式|number class=Module:Complex Number/CayleyDickson.cdmath=要套用凯莱-迪克森结构函數庫模組路徑和名稱}}
- 例如:
{{複變運算|(2+3*ele(2)+ele(4))*(4+5*ele(3)+ele(4))|number class=Module:Complex Number/CayleyDickson.cdmath=Module:Complex Number/Octonion.omath}}
- →「7+15*ele(1)+12*ele(2)+10*ele(3)+6*ele(4)+3*ele(6)-5*ele(7)」
- 例如:
{{複變運算|sqrt(2+3*ele(2)+ele(4))|number class=Module:Complex Number/CayleyDickson.cdmath=Module:Complex Number/Octonion.omath}}
- →「1.6943519980768+0.88529420197369*ele(2)+0.29509806732456*ele(4)」
- 例如:
使用{{計算結果}}