Конвертер Пользовательских Единиц

Пользовательские Единицы: Моделирование, Формулы и Лучшие Практики

Определите свои собственные единицы измерения, привязанные к 'Базовой Единице' или другой пользовательской единице. Моделируйте линейные коэффициенты или полные выражения и организуйте согласованные семейства для вашего проекта или области.

Основные Понятия

Что такое Пользовательская Единица?
В этом конвертере пользовательская единица определяется пользователем и привязывается к другой пользовательской единице (или к Базовой Единице). Вы выбираете имя, символ, ссылку и коэффициент или выражение, которое преобразует значения в выбранную ссылку.

Моделирование на Основе Ссылок

Ваша ссылка — это другая пользовательская единица или 'Базовая Единица'.

Выражение для преобразования сопоставляет входные значения с пространством ссылочной единицы (система намеренно не зависит от единиц).

  • Безопасность Размерности
    Выбирая ссылку, вы неявно связываете пользовательскую единицу с этим семейством. Поддерживайте согласованность семейств (например, связанные единицы, ссылающиеся на одну и ту же базу).
  • Компонуемость
    Измените ссылку позже, не переименовывая единицу — нужно только скорректировать выражение.
  • Аудируемость
    Каждая единица имеет одно, четкое определение: ссылка + выражение.

Коэффициент против Выражения

Простые единицы используют постоянный коэффициент (например, 1 фу = 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.
  • Стиль
    Используйте регистр, подобный СИ, где это имеет смысл (например, '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 фу = k × База).Используйте постоянное число (без x). Стабильно и точно.
Степенное МасштабированиеПроизводные от базовой шкалы (k^2, k^3).Используйте pow(k, n), где k — базовая шкала.
Соотношение или НормализацияЕдиницы, определенные относительно эталонного уровня (например, x / ref).Полезно для индексных измерений; держите ref явным в выражении.
Логарифмическая ШкалаПерцептивные шкалы или шкалы соотношения мощности (например, в стиле дБ 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 репрезентативными значениями и проверьте двусторонние преобразования.
  • Избегайте циклических ссылок; выбирайте стабильную ссылочную единицу.
  • Документируйте допущения (домены, смещения, типичные диапазоны).

Стартовые Шаблоны и Примеры

Эти примеры иллюстрируют распространенные шаблоны моделирования в этой системе только для пользовательских единиц. Замените константы и ссылки в соответствии с вашими потребностями.

ИмяФормулаСсылкаПримечания
Единица, Масштабированная от Базы (фу)0.3048Базовая ЕдиницаОпределяет 1 фу = 0.3048 × База (простой линейный коэффициент).
Степенное Масштабирование (фу²)pow(0.3048, 2)Базовая ЕдиницаПроизводная от базовой шкалы (k^2).
Объемное Масштабирование (фу³)pow(0.3048, 3)Базовая ЕдиницаПроизводная от базовой шкалы (k^3).
Индекс из Ссылкиx / 42Базовая ЕдиницаНормализация по фиксированному уровню (домен x > 0).
Соотношение Мощности (стиль дБ)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.
Соотношение Единиц с GCDx / gcd(x, common_divisor)Базовая ЕдиницаМатематическая связь с использованием вспомогательной функции GCD с константой пользовательской единицы.
Цепочка Угловых Преобразованийdegrees(x * PI / reference_angle)Пользовательская Угловая ЕдиницаПреобразование в градусы с использованием пользовательской угловой единицы и вспомогательной функции degrees().

Управление и Сотрудничество

  • Ведите каталог утвержденных пользовательских единиц с владельцами и датами пересмотра.
  • Используйте версионирование при развитии определений; избегайте ломающих изменений в символах.
  • Записывайте происхождение констант и ссылок (стандарты, литература, внутренние документы).
  • Автоматизируйте тесты проверки (проверки диапазона, образцы преобразований, монотонность).

Часто Задаваемые Вопросы

Следует ли мне использовать постоянный коэффициент или выражение?

Предпочитайте постоянный коэффициент, когда зависимость является линейной и фиксированной. Используйте выражения только тогда, когда сопоставление зависит от x или требует функций (степени, логарифмы, тригонометрические).

Как мне выбрать ссылочную единицу?

Выбирайте стабильную, широко понятную единицу, которая отражает предполагаемую размерность (например, метр для длины, м² для площади). Ссылка закрепляет размерное значение.

Углы указываются в градусах или радианах?

В радианах. Преобразуйте градусы, умножая на PI/180 перед использованием тригонометрических функций.

Могу ли я связывать пользовательские единицы в цепочку?

Да, но избегайте циклов. Держите граф ациклическим и документируйте цепочку для сохранения ясности.

Полный Справочник Инструментов

Все 71 инструментов, доступных на UNITS

Фильтровать по:
Категории:

Дополнительно