Градусы и радианы в архиве: почему число без единицы меняет смысл

Запросить

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

Связь единиц и конкретное значение

В принятом определении один градус равен π/180 радиана. Поэтому 90° соответствуют π/2 рад, то есть приблизительно 1,5708 рад. Для перевода числового значения из градусов в радианы его умножают на π/180. Обратный перевод выполняют умножением на 180/π. Поворот при этом не изменяется: меняется способ выразить его величину.

Предположим, условный файл содержит значение 90 с единицей deg. Программа, ожидающая rad, не должна получить просто число 90 после удаления подписи. Нужны преобразование и новая подпись. Если же источник уже выдал π/2 рад, повторное применение коэффициента градусов создаст другую ошибку. Следовательно, правило «всегда умножать вход на π/180» подходит только к заранее установленной единице входного поля.

Что хранить вместе с числом

Полезно разделять исходное значение, исходную единицу и нормализованное значение. Для учебной строки это могут быть 90, deg и π/2, rad. Сведения о преобразовании связывают с версией схемы. Тогда при повторном чтении видно, где находится оригинал и какой шаг уже выполнен. Хранение двух колонок без пояснения, какая из них исходная, оставляет возможность повторной конвертации.

Округление выполняют с учётом назначения результата. Запись 1,57 рад не равна точному π/2, хотя может быть достаточной для поясняющей таблицы. Добавление длинной цепочки десятичных знаков к исходному округлённому измерению не повышает его точность. Коэффициент пересчёта и качество самого наблюдения относятся к разным вопросам. Правильная единица необходима для вычисления, но не является паспортом точности датчика.

Единица не задаёт всё соглашение

Даже после перевода необходимо знать начало отсчёта, направление увеличения и диапазон представления. Значение в радианах само по себе не сообщает, отсчитывается ли угол от севера, оси корпуса или условной линии. Оно также не устанавливает связь с истинным или магнитным направлением. Эти параметры нельзя восстановить только по размерности и примерному диапазону чисел.

При передаче архива следующему обработчику полезнее приложить одну заполненную контрольную строку, чем обещание «все углы приведены». Проверяют исходную единицу, выполненный коэффициент, выходную подпись и отсутствие повторного преобразования. Если сведения об единице отсутствуют, поле оставляют неопределённым до получения описания источника. Догадка по красивому графику может скрыть ошибку, а не исправить её. Этот подход не устанавливает нормативный формат судовых сообщений и не заменяет документацию конкретного интерфейса.

Все разборы