stringtranslate.com

GNU-единицы

GNU Units — это кроссплатформенная компьютерная программа для преобразования единиц величин. Она имеет базу данных единиц измерения , включая эзотерические и исторические единицы. Например, это позволяет преобразовывать скорости, указанные в фурлонгах за две недели , и давления, указанные в тоннах на акр . Выходные единицы проверяются на соответствие входным, что позволяет проверять преобразование сложных выражений.

История

GNU Units был написан Адрианом Мариано как реализация утилиты units , входящей в состав операционной системы Unix . Первоначально он был доступен по разрешительной лицензии. Вариант GNU распространяется по лицензии GPL, хотя проект FreeBSD поддерживает свободную версию модулей до смены лицензии.

единицы(Утилиты Unix)

Оригинальная программа единиц была стандартной частью Unix с ранних версий Bell Laboratories . [2] Исходный код для версии, очень похожей на оригинал, доступен в проекте Heirloom . [3]

Реализация GNU

GNU units включает в себя несколько расширений оригинальной версии, [4] включая

Определения единиц измерения, включая нелинейные преобразования и списки единиц, могут расширяться пользователем.

База данных с открытым текстом definitions.units сама по себе является хорошим справочником, поскольку она подробно прокомментирована и содержит ссылки на многочисленные источники.

Другие реализации

UDUNITS — похожая утилита, за исключением того, что она имеет дополнительный интерфейс библиотеки программирования и возможности преобразования дат. UDUNITS считается де-факто программой и библиотекой для преобразования единиц измерения для файлов netCDF . [5]

История версий

GNU Units версии 2.19 был выпущен 31 мая 2019 года, чтобы отразить пересмотр SI 2019 года ; версия 2.14, выпущенная 8 марта 2017 года, исправила несколько незначительных ошибок и улучшила поддержку сборки в Windows. Версия 2.10, выпущенная 26 марта 2014 года, добавила поддержку рациональных показателей степеней больше единицы и добавила возможность сохранения интерактивного сеанса в файле для предоставления записи выполненных преобразований. Начиная с версии 2.10, 32-разрядный двоичный дистрибутив Windows был доступен на веб-странице проекта (32-разрядный порт Windows версии 1.87 был доступен с 2008 года как часть проекта GnuWin32 ).

В версии 2.02, выпущенной 11 июля 2013 года, добавлен вывод шестнадцатеричных чисел с плавающей точкой и две другие опции для упрощения изменения формата вывода.

Версия 2.0, выпущенная 2 июля 2012 года, добавила возможность преобразования в суммы единиц, таких как часы и минуты или футы и дюймы. Кроме того, в этом выпуске добавлена ​​поддержка кодировки UTF-8. [6] Добавлено положение для определений единиц, специфичных для локали. Синтаксис для определения нелинейных единиц был изменен, и добавлены необязательные спецификации домена и диапазона. Названия файлов данных стандартных и персональных единиц были изменены, а определения валют были помещены в отдельный файл данных; был добавлен скрипт Python для обновления определений валют.

История версий подробно описана в файле NEWS, включенном в исходный дистрибутив.

Использование

Units выведет результат преобразования в две строки. Обычно первая строка (умножение) — это желаемый результат; вторая строка — это то же самое преобразование, выраженное в виде деления.

Units также может функционировать как универсальный научный калькулятор; он включает в себя несколько встроенных математических функций, таких как sin , cos , atan , ln , exp и т. д.

Попытка преобразовать несовместимые типы измерений приведет к тому, что устройства выведут сообщение об ошибке соответствия и отобразят сокращенную форму каждого измерения.

Примеры

В примерах ниже показаны результаты работы модулей GNU версии 2.10.

Интерактивный режим

Курсы обмена валют с www.timegenie.com на 28.03.20142729 единиц, 92 префикса, 77 нелинейных единицУ вас есть: 10 стадийВам нужно: мили * 1.25 / 0,8У вас есть: 1 галлон + 3 пинтыВам нужно: кварты * 5.5 / 0,18181818У вас есть: sqrt(метр) ^Единица не является корнемУ вас есть: sqrt(акр)Вы хотите: фт * 208.71033 / 0,0047913298У вас есть: 21 БТЕ + 6500 фут-фунт-силаВы хотите: БТЕ * 29.352939 / 0,034068139У вас есть: _Вы хотите: J * 30968.99 / 3.2290366e-005У вас есть: 3.277 ч.Вы хотите: время 3 ч + 16 мин + 37,2 секУ вас есть: 1|2 дюймаВы хотите: см * 1.27 / 0,78740157

Подчеркивание ('_') используется для обозначения результата последнего успешного преобразования единиц.

В командной строке (неинтерактивно)

C:\> единицы измерения "десять стадий за две недели"  "километров в час"  * 0,0059871429  / 167,02458
% единицы  чашка  унции ошибка соответствия  0,00023658824 м^3  0,028349523 кг

Выражения сложных единиц

Одна из форм уравнения Дарси–Вейсбаха для потока жидкости имеет вид

где Δ P — перепад давления, ρ — плотность массы, f — (безразмерный) коэффициент трения, L — длина трубы, Q — объемный расход, а d — диаметр трубы. Может быть желательно иметь уравнение в виде

который будет принимать типичные единицы США; константу A 1 можно определить вручную, используя метод единичного фактора , но ее можно определить быстрее и проще, используя единицы : [7]

$ единиц "(8/пи^2)(фунт-сила-сила/фут^3)фут(фут^3/с)^2(1/дюйм^5)" фунт/кв . дюйм  * 43,533969  / 0,022970568  

Технический документ Crane № 410, [8] Уравнение 3-5 дает мультипликативное значение 43,5.

Смотрите также

Примечания

  1. ^ GPL-3.0 или более поздняя версия с 2007-09-26 (1.87)
  2. ^ GPL-2.0 или более поздняя версия с 1997-01-14 (1.53) по 2006-11-11 (1.86)

Ссылки

  1. ^ https://ftp.gnu.org/gnu/units/ . Получено 8 марта 2024 г. . {{cite web}}: Отсутствует или пусто |title=( помощь )
  2. ^ Bell Telephone Laboratories, Incorporated (1979). "Unix Seventh Edition Manual". Мюррей Хилл, Нью-Джерси: Alcatel-Lucent Bell Labs. Архивировано из оригинала 2008-10-19 . Получено 2011-04-23 .Онлайн-архив страниц руководств, входящих в состав дистрибутивов седьмого издания Unix .
  3. ^ "Heirloom Project CVS repository" . Получено 2016-02-01 .
  4. ^ Мариано, Адриан (2014). «Единицы: программа преобразования единиц и научный калькулятор». Бостон, Массачусетс: Free Software Foundation, Inc. Получено 29.03.2014 .
  5. ^ Как указано в нескольких соглашениях NetCDF , например:
    • COARDS«Соглашения по стандартизации файлов NetCDF». 10.02.1995. Архивировано из оригинала 27.05.2010 . Получено 12.04.2007 .
    • CF«Соглашения о метаданных NetCDF по климату и прогнозам (CF)». 2014-03-29.
  6. ^ (немецкий язык) «GNU Units 2.0 berechnet Feet und Inches», linux-magazin.de , 3 июля 2012 г.
  7. ^ GNU версии 2.10, Windows XP SP3, оболочка PTC MKS Korn
  8. ^ Технический документ № 410, Поток жидкостей через клапаны, фитинги и трубы. Нью-Йорк: Crane Co. 1985.

Внешние ссылки