مبدل واحدهای سفارشی

واحدهای سفارشی: مدل‌سازی، فرمول‌ها و بهترین شیوه‌ها

واحدهای اندازه‌گیری خود را که به یک 'واحد پایه' یا واحد سفارشی دیگری متصل شده‌اند، تعریف کنید. عوامل خطی یا عبارات کامل را مدل‌سازی کنید و خانواده‌های منسجمی برای پروژه یا دامنه خود سازماندهی کنید.

مفاهیم بنیادی

واحد سفارشی چیست؟
در این مبدل، یک واحد سفارشی توسط کاربر تعریف شده و به یک واحد سفارشی دیگر (یا به واحد پایه) متصل می‌شود. شما یک نام، نماد، مرجع و یک عامل یا عبارتی را انتخاب می‌کنید که مقادیر را به مرجع انتخاب شده تبدیل می‌کند.

مدل‌سازی مبتنی بر مرجع

مرجع شما یک واحد سفارشی دیگر یا 'واحد پایه' است.

عبارت تبدیل مقادیر ورودی را به فضای واحد مرجع نگاشت می‌دهد (سیستم عمداً نسبت به واحدها بی‌تفاوت است).

  • ایمنی ابعادی
    با انتخاب یک مرجع، شما به طور ضمنی واحد سفارشی را به آن خانواده مرتبط می‌کنید. خانواده‌ها را منسجم نگه دارید (مثلاً واحدهای مرتبط که به یک پایه مشترک ارجاع می‌دهند).
  • قابلیت ترکیب‌پذیری
    مرجع را بعداً بدون تغییر نام واحد تغییر دهید—فقط عبارت نیاز به تنظیم دارد.
  • قابلیت حسابرسی
    هر واحد یک تعریف واحد و واضح دارد: مرجع + عبارت.

عامل در مقابل عبارت

واحدهای ساده از یک عامل ثابت استفاده می‌کنند (مثلاً 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 میلی‌وات (مثال). اطمینان حاصل کنید که 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 محدود کنید.
نسبت واحد با ب.م.مx / gcd(x, common_divisor)واحد پایهرابطه ریاضی با استفاده از تابع کمکی GCD با یک ثابت واحد سفارشی.
زنجیره تبدیل زاویه‌ایdegrees(x * PI / reference_angle)واحد زاویه‌ای سفارشیبا استفاده از یک واحد زاویه‌ای سفارشی و تابع کمکی degrees() به درجه تبدیل کنید.

حاکمیت و همکاری

  • یک کاتالوگ از واحدهای سفارشی تأیید شده با مالکان و تاریخ‌های بازبینی نگهداری کنید.
  • هنگامی که تعاریف تکامل می‌یابند از نسخه‌بندی استفاده کنید؛ از تغییرات شکننده در نمادها خودداری کنید.
  • منشأ ثابت‌ها و مراجع را ثبت کنید (استانداردها، ادبیات، اسناد داخلی).
  • آزمون‌های اعتبارسنجی را خودکار کنید (بررسی محدوده، تبدیل‌های نمونه، یکنواختی).

سوالات متداول

آیا باید از یک عامل ثابت یا یک عبارت استفاده کنم؟

هر زمان که رابطه خطی و ثابت است، یک عامل ثابت را ترجیح دهید. فقط زمانی از عبارات استفاده کنید که نگاشت به x بستگی داشته باشد یا به توابع (توان، لگاریتم، مثلثات) نیاز داشته باشد.

چگونه یک واحد مرجع انتخاب کنم؟

یک واحد پایدار و به طور گسترده قابل درک را انتخاب کنید که بعد مورد نظر شما را نشان دهد (مثلاً متر برای طول، متر مربع برای مساحت). مرجع معنای ابعادی را لنگر می‌اندازد.

آیا زوایا بر حسب درجه هستند یا رادیان؟

رادیان. قبل از استفاده از توابع مثلثاتی، درجه‌ها را با ضرب در PI/180 تبدیل کنید.

آیا می‌توانم واحدهای سفارشی را زنجیره‌ای کنم؟

بله، اما از چرخه‌ها خودداری کنید. نمودار را غیرچرخه‌ای نگه دارید و زنجیره را برای حفظ وضوح مستند کنید.

فهرست کامل ابزارها

همه 71 ابزار موجود در UNITS

فیلتر بر اساس:
دسته‌ها: