自訂單位轉換器

自訂單位:模型、公式與最佳實踐

定義您自己的測量單位,錨定到一個「基礎單位」或其他自訂單位。建立線性因子或完整表達式模型,並為您的專案或領域組織一致的單位族系。

基本概念

什麼是自訂單位?
在此轉換器中,自訂單位由使用者定義,並錨定到另一個自訂單位(或基礎單位)。您需要選擇一個名稱、符號、參考單位,以及一個將數值轉換為所選參考單位的因子或表達式。

基於參考的模型

您的參考是另一個自訂單位或「基礎單位」。

轉換表達式將輸入值映射到參考單位的空間中(系統刻意設計為單位無關)。

  • 維度安全
    透過選擇一個參考,您就隱含地將該自訂單位與該族系綁定。保持族系的一致性(例如,相關單位參考相同的基礎)。
  • 可組合性
    之後可以更改參考而無需重新命名單位——只需要調整表達式。
  • 可稽核性
    每個單位都有一個單一、清晰的定義:參考 + 表達式。

因子 vs 表達式

簡單單位使用一個常數因子(例如,1 foo = 0.3048 × 基礎)。

進階單位可以使用帶有函數的表達式(例如,10 * log(x / 1e-3))。

  • 常數因子
    最適合固定的線性關係(長度比例、面積比率等)。
  • 表達式
    使用數學函數處理衍生或非線性的標度(比率、對數、冪)。
  • 常數
    內建常數如 PI, E, PHI, SQRT2, SQRT3, LN2, LN10, LOG2E, LOG10E, AVOGADRO, PLANCK, LIGHT_SPEED, GRAVITY, BOLTZMANN。

命名、符號與一致性

選擇簡短、明確的符號。避免與現有標準衝突。

在您的組織中記錄其意圖——它測量什麼以及為何存在。

  • 清晰度
    偏好使用簡潔的符號(建議 1–4 個字元;使用者介面最多允許 6 個)。
  • 穩定性
    將符號視為跨資料集和 API 的穩定識別碼。
  • 風格
    在合理的情況下使用類似 SI 的大小寫(例如,'foo', 'kFoo', 'mFoo')。
重點摘要
  • 一個自訂單位 = 參考單位 + 轉換表達式。
  • 參考錨定維度;表達式定義數值映射。
  • 對於線性標度,優先使用常數因子;特殊情況下使用表達式。

公式語言

表達式支援數字、變數 x (輸入值)、別名值、常數 (PI, E, PHI, SQRT2, SQRT3, LN2, LN10, LOG2E, LOG10E, AVOGADRO, PLANCK, LIGHT_SPEED, GRAVITY, BOLTZMANN)、算術運算子和常用數學函數。表達式的計算結果為所選參考單位中的一個值。

運算子

運算子意義範例
+加法x + 2
-減法/一元負號x - 5, -x
*乘法2 * x
/除法x / 3
**次方 (使用 **;^ 會被自動轉換)x ** 2
()優先級(x + 1) * 2

函數

函數簽章範例
sqrtsqrt(x)sqrt(x^2 + 1)
cbrtcbrt(x)cbrt(x)
powpow(a, b)pow(0.3048, 2)
absabs(x)abs(x)
minmin(a, b)min(x, 100)
maxmax(a, b)max(x, 0)
roundround(x)round(x * 1000) / 1000
trunctrunc(x)trunc(x)
floorfloor(x)floor(x)
ceilceil(x)ceil(x)
sinsin(x)sin(PI/6)
coscos(x)cos(PI/3)
tantan(x)tan(PI/8)
asinasin(x)asin(0.5)
acosacos(x)acos(0.5)
atanatan(x)atan(1)
atan2atan2(y, x)atan2(1, x)
sinhsinh(x)sinh(1)
coshcosh(x)cosh(1)
tanhtanh(x)tanh(1)
lnln(x)ln(x)
loglog(x)log(100)
log2log2(x)log2(8)
expexp(x)exp(1)
degreesdegrees(x)degrees(PI/2)
radiansradians(x)radians(180)
percentpercent(value, total)percent(25, 100)
factorialfactorial(n)factorial(5)
gcdgcd(a, b)gcd(12, 8)
lcmlcm(a, b)lcm(12, 8)
clampclamp(value, min, max)clamp(x, 0, 100)
signsign(x)sign(-5)
nthRootnthRoot(value, n)nthRoot(8, 3)

表達式規則

  • x 是輸入值;別名值也可用。
  • 使用明確的乘法(例如,2 * PI,而不是 2PI)。
  • 可用常數:PI, E, PHI, SQRT2, SQRT3, LN2, LN10, LOG2E, LOG10E, AVOGADRO, PLANCK, LIGHT_SPEED, GRAVITY, BOLTZMANN。
  • 三角函數的角度單位是弧度(使用 degrees() 和 radians() 輔助函數進行轉換)。
  • 透過名稱 (snake_case) 或符號參考其他自訂單位;它們當前的 toBase 值會以常數形式注入。
  • 使用 ** 表示次方(引擎會自動將 ^ 轉換為 **)。
  • 智慧輸入標準化:×, ÷, π, ², ³ 會自動轉換為 *, /, PI, ^2, ^3。
  • 可用輔助函數:degrees(), radians(), percent(), factorial(), gcd(), lcm(), clamp(), sign(), nthRoot()。
  • 增強的錯誤偵測可防止常見錯誤(負數的對數、負數的平方根、除以零)。
  • 自訂單位參考:在表達式中使用其他單位作為變數(例如,'x * A',其中 A 是另一個自訂單位)。
  • 空白字元會被忽略;使用括號來控制優先級。
  • 對於有效的輸入,表達式必須產生一個有限的數值結果。
公式要點
  • 使用明確的乘法(例如,2 * PI)。
  • 三角函數的角度單位是弧度。
  • log(x) 是以 10 為底;ln(x) 是自然對數(以 e 為底)。

維度分析與策略

這個自訂系統是單位無關的。透過將相關單位錨定到同一個「基礎單位」(或一個共享的參考)來建立族系模型。在您設計的族系中保持意義的一致性。

模型策略

策略使用時機說明
直接因子線性關係(例如,1 foo = k × 基礎)。使用一個常數(沒有 x)。穩定且精確。
冪次縮放從一個基礎標度衍生(k^2, k^3)。使用 pow(k, n),其中 k 是基礎標度。
比率或正規化相對於一個參考水平定義的單位(例如,x / ref)。對於指數類型的測量很有用;在表達式中保持 ref 的明確性。
對數標度感知或功率比標度(例如,dB 風格的 10 * log(x/ref))。確保定義域為正;記錄參考值。
仿射映射罕見的帶有偏移量的情況(a * x + b)。偏移量會改變零點——僅在概念上合理時應用。

編輯器與驗證

用名稱、符號(最多 6 個字元)、顏色標籤、參考(基礎單位或其他自訂單位)和一個因子/表達式來建立單位。編輯器會透過增強的錯誤偵測即時驗證公式,並防止循環參考。

  • 參考選項包括「基礎單位」和現有的自訂單位。會產生循環的不安全選項會被自動過濾掉。
  • 變數:使用 x (或 value) 代表輸入值。透過 snake_case 名稱或符號參考其他自訂單位;它們當前的 toBase 值會以常數形式注入。
  • 支援的常數:PI, E, PHI, SQRT2, SQRT3, LN2, LN10, LOG2E, LOG10E, AVOGADRO, PLANCK, LIGHT_SPEED, GRAVITY, BOLTZMANN。
  • 核心函數:sqrt, cbrt, pow, abs, min, max, round, trunc, floor, ceil, sin, cos, tan, asin, acos, atan, atan2, sinh, cosh, tanh, ln, log, log2, exp。
  • 輔助函數:degrees(), radians(), percent(), factorial(), gcd(), lcm(), clamp(), sign(), nthRoot() 以增強使用者體驗。
  • 運算子:+, -, *, /, ** 用於次方。智慧輸入標準化:×, ÷, π, ², ³ 會自動轉換。
  • 即時驗證並附帶預覽(例如,10 x → 結果)、複雜度分類(簡單/中等/複雜)和情境感知建議。
  • 增強的錯誤偵測可捕捉常見錯誤:非正數的對數、負數的平方根、除以零。
  • 進階的循環偵測可防止單位(直接或間接)依賴自身,並提供清晰的錯誤訊息。
  • 互動式說明面板,提供分類範例、可點擊的公式片段和自訂單位按鈕,方便插入。

最佳實踐

  • 如果可能,優先使用常數因子;僅在必要時使用表達式。
  • 選擇一個穩定、廣為人知且不太可能改變的參考單位。
  • 避免循環的參考鏈;保持圖形無環。
  • 添加樣本值並與獨立的計算器或已知的恆等式進行交叉核對。
  • 為您的組織保持符號簡短、獨特且有文件記錄。
  • 如果使用對數,請記錄參考值、底數和 x 的預期定義域。
品質檢查清單
  • 使用 3–5 個代表性數值進行測試,並驗證來回轉換。
  • 避免循環參考;選擇一個穩定的參考單位。
  • 記錄假設(定義域、偏移量、典型範圍)。

入門範本與範例

這些範例說明了在這個僅限自訂的系統中常見的模型模式。請根據您的需求替換常數和參考。

名稱公式參考說明
基礎比例單位 (foo)0.3048基礎單位定義 1 foo = 0.3048 × 基礎(簡單線性因子)。
冪次縮放 (foo²)pow(0.3048, 2)基礎單位從一個基礎標度衍生(k^2)。
體積縮放 (foo³)pow(0.3048, 3)基礎單位從一個基礎標度衍生(k^3)。
來自參考的指數x / 42基礎單位按一個固定水平進行正規化(定義域 x > 0)。
功率比 (dB-風格)10 * log(x / 0.001)基礎單位相對於 1 mW 的對數測量(範例)。確保 x > 0。
幾何因子2 * PI * 0.5基礎單位常數和乘法的範例。
參考其他自訂單位A * 2自訂單位 A在表達式中使用另一個單位的符號/名稱作為常數。
複雜單位關係sqrt(x^2 + base_length^2)基礎單位使用自訂單位 'base_length' 作為常數的畢氏定理關係。
帶偏移量的比例單位x * scale_factor + offset_unit基礎單位使用另外兩個自訂單位作為常數的線性轉換。
參考單位的百分比percent(x, reference_value)基礎單位使用輔助函數將輸入表示為另一個自訂單位的百分比。
受限的單位範圍clamp(x * multiplier, min_unit, max_unit)基礎單位使用 clamp 輔助函數將數值限制在兩個自訂單位常數之間。
帶 GCD 的單位比率x / gcd(x, common_divisor)基礎單位使用 GCD 輔助函數和自訂單位常數的數學關係。
角度轉換鏈degrees(x * PI / reference_angle)自訂角度單位使用自訂角度單位和 degrees() 輔助函數轉換為度。

治理與協作

  • 維護一份經批准的自訂單位目錄,包含所有者和審查日期。
  • 當定義演變時使用版本控制;避免對符號進行破壞性更改。
  • 記錄常數和參考的來源(標準、文獻、內部文件)。
  • 自動化驗證測試(範圍檢查、樣本轉換、單調性)。

常見問題

我應該使用常數因子還是表達式?

只要關係是線性的且固定的,就優先使用常數因子。僅在映射依賴於 x 或需要函數(冪、對數、三角函數)時才使用表達式。

我該如何選擇參考單位?

選擇一個穩定、廣為人知且能捕捉您 intended 維度的單位(例如,長度用米,面積用平方米)。參考單位錨定維度意義。

角度是用度還是弧度?

弧度。在使用三角函數前,將度數乘以 PI/180 進行轉換。

我可以鏈接自訂單位嗎?

可以,但要避免循環。保持圖形無環,並記錄鏈接以保持清晰。

完整工具目錄

UNITS 上可用的所有 71 個工具

篩選條件:
類別:

額外