Меню

Mathcad как отключить единицы измерения



Mathcad как отключить единицы измерения

БлогNot. «Оптимизация» размерных единиц в MathCAD или Откуда Взялись Литры?

«Оптимизация» размерных единиц в MathCAD или Откуда Взялись Литры?

Как известно, одна из сильных сторон пакета MathCAD — умение работать с размерными единицами, то есть, не просто перемножить 2 числа, но и «понимать», что если 5 вольт умножить на 2 ампера, то будет 10 ватт:

Увидеть все размерные единицы можно в окне Вставка — Единицы (Insert — Unit).

Однако, в ряд версий встроено «упрощение» размерностей, иногда «упрощающее» их весьма странно, так что умножив 2 квадратных метра на 3 метра мы рискуем получить следующее:

«L» — встроенное обозначение для литров в нелокализованной версии. Проблема решается просто — двойным щелчком мыши на числе вызываем окно форматирования (Format Result), переключаемся на вкладку, отвечающую за показ размерностей (Unit Display) и снимаем стоящую там по умолчанию галочку «упрощения»:

Видим, как положено, 6 кубометров. Формально результат, конечно, был правильным — 2 «бака» с основанием в квадратный метр и высотой по 3 метра дадут в сумме как раз показанные выше 6000 литров (кубических дециметров) жидкости, но ожидаешь-то другого 🙂

19.01.2013, 15:06; рейтинг: 13227

Источник

Mathcad как отключить единицы измерения

Физические величины в Mathcad

(опубликовано в журнале «КомпьютерПресс» 3’2000 – статья на CD — ROM )

Три «школьных» анекдота в качестве эпиграфа:

1. Диалог в учительской:

Преподаватель Закона Божьего, обращаясь к физику: Сегодня ваш любимчик двойку получил. Спросил я его, что такое Божественная Сила. Так он мне ответил, что это произведение Божественной Массы на Божественное Ускорение.

Физик: Я ему и по физике двойку поставлю. Ведь произведение Божественной Массы на Божественное Ускорение дает Силу с Божественностью в квадрате, а не в первой степени.

2. Диалог на экзамене:

Преподаватель: Что такое лошадиная сила?

Ученик: Это сила, какую развивает лошадь ростом в один метр и весом в один килограмм.

Преподаватель: Да где ж вы такую лошадь видели?!

Ученик: А ее так просто не увидишь. Она хранится в Париже, в Палате мер и весов.

Архимед, Паскаль и Ньютон играют в прятки. Архимед водит и начинает считать. Паскаль убегает за горизонт, «в бесконечность», а Ньютон оглядывается, берёт палку, рисует вокруг себя квадрат со стороной 1 метр и становится внутрь квадрата. Архимед заканчивает считать, открывает глаза и видит Ньютона:

Архимед: Я вижу Ньютона!

Ньютон: Э, нет! Ньютон на метр квадратный – это Паскаль! Обознатушки — перепрятушки! (источник — http://www.anekdot.ru/id/414958)

Сейчас никого не удивляет тот факт, что не только аспиранты, инженеры и студенты, но и школьники решают свои задачи на компьютере. Удивление или, по крайней мере, вопросы может вызывать лишь выбор конкретной программной среды для этих целей. Ответ на вопрос, почему для расчетов пользователи компьютеров все чаще и чаще прибегают к услугам Mathcad , может быть и такой: Mathcad обладает уникальной возможностью оперировать не просто величинами, а физическими величинами.

Работа в среде Mathcad – эта третья ступень в использовании вычислительной техники при решении физико-математических, инженерно-технических, а также учебных (школьных и вузовских) задач. Две предыдущие ступени – это работа с машинными кодами (на ассемблере, например) и с языками программирования ( BASIC , Pascal , C , fortran и т.д.).

Использование вычислительной техники в научно-технических расчетах сыграло с этими расчетами злую шутку: из расчетов были безжалостно выброшены размерности физических величин и единицы их измерения – метры, килограммы, секунды… Ручное решение физической задачи (школьной или вузовской задачи по физике, если говорить конкретнее), как правило, требовало и требует оперирования сугубо размерными величинами. Автоматизация таких расчетов – написание программ для компьютера исключает из задачи ее «физику»: переменные программы хранят только числовые величины, а соответствующие им единицы измерений программист должен «держать в уме». Из-за этого при переводе расчета на язык ЭВМ необходимо придерживаться строгого правила – все физические величины должны быть в одной системе единиц, кроме того, они должны быть без множителей мили, мега и т.д. Это жесткое правило вызывало и вызывает ряд неудобств, основные из которых следующие:

1. Международная система (СИ) хоть и широко распространена в мире, но не является и никогда не будет единственной. Базирование программы на какой-либо одной системе величин мешает естественному процессу глобального обмена идеями, получившему новое ускорение в эпоху Internet [1] .

2. В процессе создания программы большую роль играет ее отладка, а основной инструмент отладки – это вывод на дисплей промежуточных результатов, анализ которых позволяет локализовать и устранить ошибку, если она была допущена при подборе формул и/или при написании самой программы. А здесь важно не только вывести значение какой-либо физической величины с правильным форматом, но и выразить ее в нужных единицах нужной системы измерения. Система СИ при всех ее достоинствах внедрялась и у нас и во всем остальном мире «как картошка на Руси» – в виде «подарочного набора». Часть единиц измерения (метры, секунды) используются без каких-либо проблем, другие же («нагрузка») так и не прижились в качестве доминирующих единиц. В теплоэнергетике, например, давление пара в котле чаще всего измеряют и выражают в атмосферах [2] , а давление в конденсаторе – в миллиметрах ртутного столба. «Узаконенная» стандартная единица измерения давления – паскаль (ньютон на квадратный метр) оказалась крайне неудобной. Трудно припомнить научно-техническую область, где паскали применялись бы в чистом виде – без масштабирующих множителей [3] (бары, килопаскали, мегапаскали и др.). Дело в том, что «живая», вернее «прижившаяся» единица измерения, связана с «жизнью» – с физическим явлением или физическим опытом: атмосфера, как следует из самого названия, – это давление воздуха на уровне моря (примерное давление – см. рис. рис. 7 и рис. 11), а миллиметры ртутного столба напоминают нам об экспериментах Э.Торричели (в среде Mathcad torr – это и есть миллиметр ртутного столба). В теплоэнергетике исключение «внесистемных» атмосфер и миллиметров ртутного столба – замена их на паскали чревата не просто неудобствами, но серьезными сбоями в работе, связанными, например, с тем, что оператор, управляющий энергоблоком [4] , будет неправильно интерпретировать показания манометров, проградуированных в «правильных» единицах давления.

3. В создаваемые программы приходиться вставлять формулы, выведенные не только в результате теоретического анализа проблемы ( F = m g – см. анекдот в эпиграфе, T = m c 2 и т.д.), но и полученные после статистической обработки экспериментальных данных. Коэффициенты таких формул (см., например, рис. 12 ниже), как правило, жестко связаны с той или иной системой единиц измерения и нередко требуют пересчета для использования в программе. Это может вносить дополнительные погрешности и чревато ошибками (промахами).

Один из путей решения проблемы единиц – это отказ от размерных физических величин и переход к использованию безразмерных чисел [5] , хранящих количественную оценку тех или иных физических явлений, – число Рейнольдса, число Нуссельта, число Шмидта и т.д. Еще более радикальный путь – это переход от числовых характеристик к качественным оценкам физических явлений и технологических процессов. Можно сказать, что давление в котле равно стольким атмосферам, а можно сказать, что давление нормальное (низкое, высокое и т.д.) и построить систему управления энергоблоком, основанную на подобных лингвистических (экспертных) оценках и опирающуюся на теорию нечетких множеств [6] .

Пакет Mathcad полностью поддерживает математику работы с размерными переменными, что и будет описано данной статье.

Исключение единиц измерения физических величин из расчетов на компьютере сказалось и на работе в среде Mathcad. Многие неопытные пользователи примерно так начинают формировать Mathcad -документ

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

Читайте также:  Линейка для измерения авто

Механизм работы с единицами измерений физических величин позволяет в среде Mathcad:

· вводить исходные данные в нужной системе измерений и в нужных единицах измерений;

· вести контроль размерностей в формулах, по которым проводятся расчеты (не складывать килограммы с метрами, грубо говоря);

· выводить рассчитанные данные в нужной системе измерений и в нужных единицах измерений;

Механизм работы с размерными величинами будет проиллюстрирован примерами.

На рис. 1 показано решение в среде Mathcad простейшей физической задачи: на площадь S действует сила F ; спрашивается, чему равно давление P .

Рис. 1. Расчет давления в среде Mathcad

Физические задачи в среде Mathcad не просто могут, но и должны решаться с подключением единиц измерения физических величин – силы, площади и давления, если иметь в виду нашу задачу. В Mathcad документе по умолчанию синим цветом окрашены комментарии, а черным – математические выражения, а именно:

· Пункт 1.1. Переменной F оператором «:=» присваивается не просто число 20 , а двадцать килограмм силы. Для этого числовая константа пользователем перемножается [7] на одну из системных (предопределенных) переменных, хранящих единицы измерения физических величин. У нас эта переменная имеет имя kgf – килограмм ( kg ) силы ( f – force ). «Припечатать» единицу измерения можно, воспользовавшись услугами «Мастера размерностей», диалоговое окно которого ( Insert Unit – Вставить единицу измерений) выводится на дисплей нажатием кнопки с изображением мерной кружки (см. рис.1). В диалоговом окне Insert Unit три поля и три кнопки. В первом поле пользователь выбирает нужную физическую величину ( Dimension : Force – сила, Frequency – частота, Inductance – индуктивность, Luminosity – освещенности и т.д. – см. таблицу в конце статьи), а во втором – единицу измерения ( Unit : для силы это Dynes – дина, уже упоминавшийся Kilogram ( force ) – килограмм силы, Newton – ньютон и Pounds ( force ) – фунт силы). В третьем поле показана система измерений, которую пользователь также вправе менять (см. ниже рис. 2 и рис. 5). Кнопка ОК вставляет выбранную единицу и убирает с дисплея окно Insert Unit , кнопка Insert – вставляет единицу и оставляет окно на дисплее для дальнейшей работы с ним, а кнопка Cancel (отмена) выполняет третью комбинацию действий – убирает окно и не вставляет единицу.

· Пункт 1.2. Ввод значения переменной S . Здесь единица измерения площади вводятся без помощи Мастера размерностей, т.к. сокращение квадратных сантиметров ( cm 2 ) запомнить довольно легко (как записать русские см , а не латинские cm – см. рис. 3).

· Пункт 2. Расчет значения давления. Переменная P при этом принимает не только числовое значение (результат деления значения переменной F на значение переменной S ), но и результат деления килограмма силы на квадратный сантиметр, вернее просто силы на площадь.

· Пункт 3. Вывод рассчитанного значения давления:

· Пункт 3.1. Значение давления выводится с форматом и с размерностью умолчания – сочетание основных единиц измерения массы ( kg ), расстояния ( m ) и времени ( sec ), записанное одной строкой. В выражении kg × m -1 × sec -2 – увидеть давление можно, если его помножить и тут же поделить на m – kg × m /( m 2 × sec ) .

· Пункт 3.2. Вывод единиц измерения не в виде одной строки, а в виде дроби: первый шаг форматирования – см. галочку в поле Format Units окна Result Format на рис. 1. Данное окно вызывается на дисплей двойным щелчком по числовому результату.

· Пункт 3.3. Вывод результата с упрощенными до одной переменной ( Pa – паскаль) единицей измерения давления. Паскали получились потому, что Mathcad (европейская версия) по умолчанию ориентирован на SI – на международную систему измерения (см. поле System в окне Insert Unit на рис. 1). Если же изменить систему измерений (см. рис. 2) – перейти от SI , например, к британской (американской – U . S .) системе, то давление будет измеряться уже не в паскалях, а в «заокеанском» аналоге единицы измерения давления, где вместо килограммов выступают фунты ( lb ), а вместо метров – на футы ( ft ) [8] .

Рис. 2. Изменение системы измерений

Пользователь Mathcad может выразить давление в любых других единицах измерения давления – встроенных (перечисленных в окне Insert Unit на рис. 1 и в таблице ниже) или пользовательских. На рис. 3 рассчитанное давление выведено в паскалях ( Pa ) и в атмосферах физических ( atm – 760 миллиметров ртутного столба). Кроме них в Mathcad встроены и перечислены в окне Inset Unit и другие единицы измерения давления: дюймы ртутного столба ( in _ Hg ), фунты силы на квадратный дюйм ( psi ) и миллиметры ртутного столба ( torr , единица, названная в честь Э.Торричелли). Если же пользователя этот список не устраивает, то он может ввести в расчет пользовательские единицы (или просто национальное написание международных единиц измерения), связав их со встроенными: кгс := kgf , см: = cm и т.д. В конце рис. 3 давление выведено в атмосферах технических – килограмм силы на квадратный сантиметр. Более того, давление можно выразить, связав силу не с «квадратной» ( cm 2 ), а с «прямоугольной» ( см × m ) площадью.

Рис. 3. Смена единиц измерения давления

В среду Mathcad встроены инструменты работы с основными (время, длина, масса, сила тока, освещенность, температура и количества вещества) и с производными величинами – см. таблицу ниже. Механизм работы с пользовательскими величинами (не с единицами, а с величинами) в среде Mathcad не предусмотрен. Но единицы измерения новых (нефизических) величин можно ввести в расчет, связав их с единицей измерения какой-либо встроенной величины, которая в данном расчете не используется – с освещенностью [9] , например.

Рис. 4. Работа с пользовательской нефизической (экономической) величиной

На рис. 4 ведется расчет платы за потребленную электроэнергию – на мощности 300 Вт ( watt ) работали 150 дней ( day ). Единица измерения стоимости временно приравнивается к канделе ( cd ) – см. пункт 1 на рис. 4. При этом ответ (плата за электроэнергию) будет выведен в канделах, которые нужно будет переправить на рубли [10] – см. последнюю строку на рис. 4. Можно было в Mathcad документе на рис. 4 записать не руб := cd , а руб := 1 , но связывание единиц измерения новой величины с одной из встроенных, не использующейся в данном расчете, позволяет сохранить механизм контроля размерностей. Дело в том, что ввод в расчет единиц измерения позволяет не только подстраивать ответ под нужную шкалу восприятия пользователем физических величин (в одном месте давление лучше вывести в атмосферах, а в другом – в миллиметрах ртутного столба и т.д.), но и блокирует, например, сложение метров с килограммами.

Единицы измерения физических величин – это по своей сути предопределенные переменные, хранящие размерные величины, «вид» которых зависит от выбранной системы измерений – см. рис. 5, где показаны «метаморфозы» трех основных единиц измерения массы: килограмма ( kg ), грамма ( gm ) и английского фунта ( lb [11] ).

Рис. 5. Что хранят единицы измерения массы

На рис. 5 показано, как будут выглядеть три оператора вывода основных единиц массы, если менять систему измерений.

Как видно из рис. 1, приведенного в начале статьи, технология решения задач в среде Mathcad полностью повторяет технологию «ручного» решения: вводятся исходные данные (пункт 1 на рис. 1 – «делай раз»), ведется расчет («делай два») и выводится результат («делай три»). При этом создатель Mathcad -документа вправе требовать от будущего пользователя ввода не просто исходных значений переменных (числа), но и числа с нужной размерностью.

Читайте также:  Как измерить перчатки для мужчин

Рис. 6. Контроль размерности переменной

На рис. 6 показан один из способов контроля размерностей: к введенной переменной прибавляется и тут же отнимается единичный метр. С вводимой величиной ничего не происходит, но если она безразмерная или хранит размерность не длины, а какой-то другой величины, то расчет прерывается сообщениями об ошибке: « The units in the expression do not match – единицы измерения в выражении не соответствуют друг другу» и « This variable or function is not defined above – эта переменная или функция не определена выше». Оператор d := d + m — m несколько странен с позиций традиционного программирования [12] , но в среде Mathcad он вполне закономерен, если вспомнить что m – это единичный метр. Кроме того, в среде Mathcad можно иметь разные одноименные переменные, обозначенные как Variables и User 1, чем мы и воспользовались при контроле размерности переменной d .

Для контроля размерности переменной можно использовать и встроенную функцию UnitsOf (см. рис. 6), возвращающую единицу измерения своего аргумента.

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

Рис. 7. «Размерный» график

На рис. 7 показан расчет изменения давления по высоте с использованием барометрической формулы [13] . Результаты расчета выведены в виде графиков – левый график для континентальной Европы, правый – для США и Великобритании. Если по осям графика записать такие выражения: по оси ординат – p ( h ) , а по оси абсцисс – h (высота, которую мы дискретно меняем (табулируем) от 0 до 20 км с шагом 100 м), то шкалы осей будут градуированы в паскалях и в метрах. Изменение градуировки происходит так: пользователь меняет p ( h ) на p ( h )/единица измерения давления и h на h /единица измерения длины , выбирая тем самым нужную градуировку осей графика – метрическую, британскую или еще какую-то другую: не километры, а метры, не тысячи футов, а мили, мм (дюймы) ртутного столба [14] , а атмосферы и т.д., подстраивая график по оптимальное его восприятие человеком.

Элементы Mathcad документа (ввод исходных данных, расчет по формулам, вывод результатов) выполняется в их естественной последовательности – сверху вниз и слева на право. Пользователь Mathcad может нарушить этот порядок, организовав циклы (часть операторов выполняется циклически до тех пор, пока не будет выполнено некое условие) или альтернативы (выполняется либо одна, либо другая группа операторов). Еще два атрибута программирования в среде Mathcad – это объединение части (группы) операторов в операторный блок, который выполняется как один оператор, и работа с локальными переменными, видимыми только внутри программного блока.

Последующие два рисунка (рис. 8 и рис. 9) проиллюстрируют особенности использования единиц измерения в Mathcad-программах.

Рис. 8. Размерность в программах

На рис. 8 с помощью инструментов программирования формируется функция пользователя, возвращающая объем прямого круглого конуса в зависимости от диаметра его основания и длины образующей (два аргумента функции). Разработчик Mathcad (фирма MathSoft , Inc . – www.mathsoft.com ) не гарантирует правильность работы механизма размерностей, если в программе есть циклы [15] . Циклов в нашей программе нет (там задействованы только два из трех атрибутов программирования – объединение операторов в блок, отмеченный вертикальной, чертой и объявление локальных переменных d , a , r , и h через оператор « ¬ »), но, тем не менее, в программе мы сразу лишаем переменные их размерности: d ¬ Диаметр/ m , а ¬ Образующая/ m («береженого Бог бережет»). «Отнятые» у переменных метры в конце выполнения программного блока «возвращаются с процентами» – с метрами кубическими.

Британский или английский пользователь Mathcad может тут использовать футы и/или дюймы, но на работу функции V это не повлияет: вызывая ее, можно использовать любые единицы длины и объема – см. примеры на рис. 8.

При использовании единиц измерения в программах может возникнуть такая проблема. Часто бывает необходимо, чтобы функция пользователя возвращала не одно, а несколько значений [16] . Если вернуться к нашей функции расчета объема конуса, то можно попытаться заставить ее возвращать не только объем конуса, но и остальные рассчитанные внутри функции параметры конуса, хранящиеся в локальных переменных: R (радиус основания конуса), H (высота), S (площадь основания) и, естественно, V (сам объем). Выводятся все эти значения в виде массива: матрицы с двумя столбцами, первый из которых – это комментарии. Во втором столбце выводятся вышеперечисленные параметры конуса, лишенные своей размерности из-за того, что элементами массива (вектора или матрицы) в среде Mathcad могут быть только величины одной размерности или просто безразмерные – см. рис. 9.

Рис. 9. Функция, возвращающая «букет» переменных

Из формируемой матрицы можно изъять нужный элемент, припечатав к нему нужную единицу измерения:

В списке встроенных единиц измерения температуры есть градусы Кельвина ( К ) и Ренкина ( R ) [17] , но нет более «житейских» градусов Цельсия и Фаренгейта. Дело в том, что к этой физической величине применяют два метрических понятия – единица измерения и шкала измерения [18] : градус Цельсия равен градусу Кельвина, но шкала Цельсия сдвинута по отношению к шкале Кельвина на 273,15 градусов (Цельсия или Кельвина). Из-за этого к единицам (шкалам) измерения температуры нельзя применить простое правило создания пользовательских единиц измерения, связав их со встроенными через множители, как это было сделано на рис. 3. На рис. 10 показан один из возможных механизмов работы с пользовательскими единицами (шкалами) измерения температуры в среде Mathcad . Для конвертирования градусов Цельсия, градусов Фаренгейта и градусов Реомюра [19] в градусы Кельвина или Ренкина введены три пользовательские функции с именами ° C , ° F и ° Реомюра , которые при вводе температур вызываются не в виде функции – t := ° C (300) , а в виде постфиксного оператора – t := 300 ° C , что создает полную иллюзию работы с внесистемной единицей измерения – с градусом Цельсия. Но переменная t при этом «захватывает» температуру в абсолютной шкале измерения: t = 573.15 К или t = 1031.67 R . Вывод значения температуры по шкале Цельсия или Фаренгейта ведется еще более хитро. Для этого объявляются две функции с невидимыми именами (в среде Mathcad это возможно): у первой функции (вывод температуры по шкале Цельсия) имя – пробел, а у второй (вывод температуры по шкале Фаренгейта) – два пробела. При этом для маркировки выведенного значения температуры пришлось «одолжить» символы C и F у заряда и емкости. Здесь нет ничего крамольного –относительные шкалы измерения мы используем только при вводе и выводе значений температуры. Сами же расчеты ведутся только в абсолютной шкале температур (градусы и шкалы Кельвина или Ренкина).

Рис. 10. Работа с «житейскими» градусами в среде Mathcad

Барометрическая формула и графики изменения давления по высоте, показанные на рис. 7, незримо присутствует в одном из рассказов Марка Твена [20] . Дело было в горах и разговор зашел о том, что кипящая в котелке вода может подсказать высоту над уровнем моря. Герои рассказа забыли, что нужно опустить в кипящую воду – термометр или барометр. Термометра под рукой не оказалось, сунули в воду барометр, который тут же сломался. Опустили в воду другой – эффект тот же самый. Высоту над уровнем моря так и не определили, но зато научились варить отличнейший «суп из барометров». Серьезно разбирать сюжеты Марк Твена – дело бессмысленное. Но мы рискнем.

Героям рассказа Марк Твена достаточно было перенести показания барометра на ординату графика на рис. 7, чтобы узнать высоту над уровнем моря. Кипятить термометр следовало лишь в том случае, если бы под рукой не оказалось барометра.

Рис. 11. Определение высоты по температуре кипятка

На рис. 11 показано, как в среде Mathcad можно определить высоту над уровнем моря по температуре кипящей воды. Для этого одной барометрической формулы не достаточно. Нужна еще и формула (функция), связывающая температуру кипящей воды с давлением. Эта функция имеет имя wsp _ pst и входит в пакет функций теплофизических свойств воды и водяного пара, разработанных для Mathcad в Московском энергетическом институте [21] К.Орловым – студентом автора. В Mathcad-документе на рис. 11 первой строкой делается ссылка ( Reference ) на файл с именем WaterSteamPro . mcd , где эти функции созданы. После такой ссылки в рабочем документе становятся доступными («видимыми») все нужные для работы пользовательские функции, возвращающие параметры воды и водяного пара. Для удобства работы с этими функциями сделано так, чтобы они были видимы и описаны в Мастере функций Mathcad. Файл с именем Системы единиц. mcd , на который также делается ссылка, хранит пользовательские единицы измерения.

Читайте также:  Как измерить длину изделия штанов

Файлы WaterSteamPro . mcd и Системы единиц. mcd можно скачать из Internet-адреса http://twt.mpei.ac.ru/orlov/watersteampro на условиях shareware .

Серьезный разбор задачи о высоте над уровнем моря – это дело не совсем «серьезное». И не только потому, что юмор Марк Твена всячески «сопротивляется» этому. Дело и в том, что барометрическая формула предназначена только для идеального газа. Кроме того, давление воздуха на одной и той же высоте может сильно колебаться. Температуру воздуха мы приняли за 5 градусов Цельсия, а она сильно изменяется по высоте.

Но цель нашего расчета не в разборе рассказа, а в показе возможностей Mathcad при решении «размерных» задач (тема статьи, если кто-то забыл).

Использование размерностей физических величин в среде Mathcad позволяет по-новому организовать расчеты по эмпирическим формулам, переменные которых «намертво» привязаны к определенным единицам измерения. Переход к новым единицам требует перезаписи формул.

Пример. Для расчета теплоотдачи при кипении [22] воды пользуются формулой (источник – справочник «Теплоэнергетика и теплотехника» т.1. Общие вопросы . М.: Издательство МЭИ, 1999 – 528 с.: ил ).

, (1)

где α – ккал/(м 2 . ч . К); p – кгс/см 2 ; q – ккал/(м 2 . ч).

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

Необходимо определить новое значение этого множителя. Обозначим его буквой С, тогда:

. (2)

1 Вт/(м 2. К) = 0,860 ккал/(м 2 . ч . К);

1 Па = 1,02 . 10 -5 кгс/см 2 ;

1 Вт/м 2 = 0,860 ккал/(м 2 . ч).

Подставляя коэффициенты из одной системы единиц в формулу для расчета теплоотдачи при кипении, получаем новое значение постоянного множителя:

, (3)

и в новых единицах формула (1) примет вид:

, (2.1)

где α – Вт/(м 2. К); p – Па; q – Вт/м 2 .

На рис. 12 показано решение этой «метрической» проблемы в среде Mathcad.

Рис. 12. Работа с эмпирическими формулами в среде Mathcad

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

При работе с размерностями Mathcad может возникать интересная ситуация, связанная с округлением степени единицы измерения физической величины до целых значений. На рисунке ниже показана такая ситуация, когда по ошибке или специально из литра извлекается квадратный корень:

Mathcad выдает ответ: квадратный корень из литра равен стольким-то метрам в первой степени, т.е. просто метрам, что смущает вдумчивых пользователей, которые вполне законно делают вывод о том, что Mathcad не совсем корректно работает с размерностями. Но здесь дело в том, что Mathcad округляет до целого степень единицы измерения. Если подставить в ответ другую единицу измерения (метр в степени полтора), то все станет на свои места (см. выше).

Округляет до целого только Mathcad 2000 [23] – более ранние версии (Mathcad 8, например) выдавали и дробные степени единиц измерения ( m 1.5 , например). Разработчики Mathcad посчитали было, что дробная степень единицы измерения – это «сапоги всмятку». Но это не совсем так. Можно, например, длину измерять в галлонах, из которых извлекли кубический корень. Почему бы и нет! Если есть единица объема кубический метр, то допустима и единица длины – кубический корень из галлона (литра, стера и т.д.).

Один персонаж Аркадия Райкина (алкоголик) измерял комнату чекушками (бутылками в 0,25 литра водки), а потом пытался высчитать площадь в «квадратных литрах». Он был не очень далек от истины:

Литра будет служить в качестве единицы площади, если его возвести в соответствующую дробную степень (две трети).

Дивертисмент

В романе Агаты Кристи «Убийство в Месопотамии» читаем: «Начнем с того, что его рост, на мой взгляд, не превышал пяти футов и пяти дюймов». Загадка роста знаменитого сыщика – Эркюля Пуаро разгадывается в среде Mathcad одним оператором:

5 ft + 5 in = 165.1 cm

Можно, конечно, возразить, что эту простенькую задачу можно решить и без Mathcad . Cтóит только взять в руки калькулятор и энциклопедический словарь. Но ценность Mathcad в том, что он объединяет в себе (интегрирует) и калькулятор [24] , и справочник по физическим величинам, и многое другое [25] .

Более сложную загадку о росте своего героя оставил нам И.С. Тургенев. Второй абзац знаменитой повести «Муму» начинается так: «Из числа всей ее челяди самым замечательным лицом был дворник Герасим, мужчина двенадцати вершков роста, сложенный богатырем и глухонемой от рождения».

вершок := 4.445 см (В справочник мы все-таки заглянули)

12 вершок [26] = 53.36 см

Герасим, судя по этому подсчету, не дотягивал не то что до богатыря – не тянул на карлика. В чем тут дело!?

Гипотеза первая. Тургенев, описывая Герасима, имел в виду не простые, а какие-то особые вершки. Ведь есть сажень, а есть косая сажень («косая сажень в плечах!»), маховая сажень, есть метрическая тонна, а есть «длинная» тонна, «короткая» тонна, есть сухопутная миля, а есть морская и т.д. Но поиск [27] таинственных «удлиненных» вершков окончился неудачей – вершки оставались вершками: семь четвертых дюйма, одна четвертая пяди, одна шестнадцатая аршина, одна сорок восьмая сажени и т.д.

Более вероятной представляется другая гипотеза, связанная с принципом умолчания. Дело в том, что рост человека, как правило, укладывается в диапазоне от 2 до 3 аршин:

Аршин := 16 вершок (вершки определены выше)

2 аршин = 142.24 см

3 аршин = 213.36 см

Три аршина – это хороший баскетболист, а два аршина – рулевой восьмерки в академической гребле.

Представим себе такую сценку прошлого века [28] , близкую, правда, не Тургеневу, а другому великому русскому писателю – Достоевскому. В тюрьму прибывает новая партия арестантов. Первый тюремщик измеряет их рост, а второй (писарь) заносит цифры в протокол. В помещении, где все это происходит, звучат короткие фразы: «Пять», «Три с половиной, «Четыре с четвертью» и т.д. Отсчет в вершках (первое умолчание) здесь ведется не от пола (нуль – абсолютная шкала измерения), а от двух аршин (второе умолчание – относительная шкала измерения). Тургенев выбросил из повести «два аршина» потому, что краткость это сестра не только таланта, но и процесса быстрой и точной передачи информации. В основе компромисса между требованиями точности и быстродействия лежит этот самый принцип умолчания.

Опираясь на изложенную гипотезу, несложно подсчитать рост Герасима:

2 аршин + 12 вершок = 195.58 см

Вот это нормальный богатырский рост! (Развитие и некоторое дублирование темы – см. статью Mathcad и некоторые тайны художественной литературы, журнал Домашний компьютер, № 5, 2000).

Источник