Советы тем, кто работает с Mathcad (Расчет с использованием физических величин. Методика двумерной сплайн-интерполяции)

Страницы работы

7 страниц (Word-файл)

Фрагмент текста работы

Советы тем, кто работает с Mathcad

(третий выпуск)                                                    Валерий Очков

http://twt.mpei.ac.ru/ochkov

Советы 21-23 — это корректировка предыдущих советов, связанная с выходом в свет восьмой версии Mathcad (см. статью на лазерном диске, прилагаемом к десятому номеру журнала “КомпьютерПресс” за 1998 г.).

Совет 21.

Советом 3 (“КомпьютерПресс” 3’98) рекомендовано на одной строке Mathcad-программы писать несколько операторов, разделяя их запятыми. За счет этого программа становиться более компактной и вся умещается на экране дисплея, где ее легче отлаживать, где ею легче любоваться...

К сожалению, Mathcad 8 не понимает такой недокументированной разделительной запятой между операторами и начинает “ругаться”, когда ему подсовывают программы, упакованные вышеописанным способом (см. сообщение об ошибке на рис. 1).

Два выхода из положения:

а) оставить по одному оператору на каждой строке, как это рекомендовано документацией по Mathcad.

б) Стереть ранее поставленную запятую (запятые):

Рис. 1 (1.bmp)

Созданная пользователем функция V возвращает объем конуса, у которого радиус основания r, а высота h. В программе-функции V(r, h) две строки: первая — расчет значений двух локальных переменных S и V, а вторая — возврат значения переменной V. При вызове первой функции в среде Mathcad 8 возникает ошибка. Если запятую стереть (подвести к ней курсор и нажать клавише Del), то появятся скобки, которые можно также стереть (см. ниже на рис, 2 строку вторую сверху и третью снизу),а можно и оставить для лучшего чтения программы (рис. 1).

Важное замечание: на последней строке программы допускается писать только один оператор!

Из-за этого ограничения нельзя (а очень хочется) писать программы с одной строкой. Судите сами:


Функция V вернула не значение локальной переменной V, а произведение (!?) трех величин, о чем свидетельствует метр в восьмой (а не в третьей — объем) степени.

Резюме: на одной строке Mathcad-программы (исключая последнюю) можно писать несколько операторов, разделяя их запятыми, а потом эти запятые стирая. Этим можно добиться большей компактности программы.

Совет 22.

В совете 12 (8’98) рекомендовалось для маскировки[1] некоторых математических выражений писать их “черным по черному”. Для этого достаточно активное выражение (выражение, на котором находится курсор) “подсветить”: нажать правую кнопку мыши, отдать команду Property… (Свойства…) и щелкнуть по флажку Highlight Region, предварительно выбрав черный цвет подсветки. Но в этом способе создания выражений-инкогнито есть изъян — их можно просмотреть, изменив цвет выражений с черного (умолчание) на любой другой, хорошо видимый и на белом и на черном фонах. Не спасет здесь и защита Mathcad-документа (суть совета 13 в 8’98).

Эта проблема решена в среде Mathcad 8, где выделенный фрагмент документа (команда Area в меню Insert) можно не только защитить от редактирования (с паролем или без пароля — команда Area-Lock в меню Format), но и захлопнуть (команда Area-Collapse в меню Format).

Совет 23.

Заставить синус “проглатывать” не радианы, а градусы можно не только переопределением встроенной функции (рис. 3):


Это очень скользкий прием — какую-то функцию переопределил, а потом про это забыл.

Работать с угловыми градусами (deg) можно более привычным для Mathcad способом — использованием встроенных и пользовательских (см. ниже совет 24) единиц измерения физических величин:


Разработчикам Mathcad стоило бы запретить возможность переопределения встроенных функций и констант (новый проект “Советы тем, кто разрабатывает Mathcad” или “Если бы директором Mathcad был бы я…”).

Итак, “зады” советов подчистили — идем дальше.

Совет 24.

Ведя расчет с использование физических величин, неплохо в заголовке задать пользовательские единицы, которые, во-первых, учитывают национальные названия и, во-вторых, дают возможность использовать множители — мили, кило, Мега, Гига и т.д.:


Совет 25.

В вышеприведенном Mathcad-документе дается ссылка (Reference) на другой Mathcad-документ, где формируются пользовательские функции, возвращающие термодинамические параметры воды (водяного пара) и других веществ (метан, фреон и др.). Эти параметры рассчитываются, как правило, сплайн интерполяцией по опорным точкам, определяемым экспериментально. Функции и скелетные таблицы IAPSW (Международная ассоциация по свойствам воды и водяного пара) можно “скачать” из ftp://twt.mpei.ac.ru/ochkov/thermo.mcd.

Этот и последующие советы будут касаться методов оформления пользовательских функций, интерполирующих табличные данные. Вот как может выглядеть функция (рис. 2), возвращающая удельную энтальпию (h) перегретого водяного пара (ss — Superheated Steam) в зависимости от его температуры (T) и давления (P).

Рис. 2 (2.bmp)

А вот советы, “вытекающие” из функции на рис. 2:

Педагогический опыт автора[2] говорит о том, что студенты, выполняющие

Похожие материалы

Информация о работе