Математические пакеты и проблема передачи знаний. Статья В

advertisement
1
Математические пакеты и проблема передачи знаний д.т.н. Очков В.Ф., к.т.н. Яньков Г.Г. История развития человеческой цивилизации – это история развития средств и технологий
передачи знаний от поколения к поколению. В этом историческом процессе можно
выделить три революционных скачка-преобразования: возникновение письменности,
изобретение книгопечатания и внедрение компьютерных информационных технологий.
Последнее преобразование проходит на наших глазах.
Все эти преобразования, изменившие и меняющие наш мир, как правило,
сопровождались кризисами различной глубины и различной степени болезненности
выхода из них. Если говорить о компьютерных информационных технологиях, то тут в
настоящее
время
наблюдается
кризис,
который
условно
называют
«кошмаром
унаследованного программного обеспечения».
В чем суть этого кризиса?! Представим себе некую фирму, корпорацию или
университет, которые за 30 – 40 лет интенсивного использования компьютеров
разработали и накопили большое количество программ различной степени сложности для
расчета и моделирования разнообразных процессов, аппаратов и технологии в тех или
иных областях знаний (производств), а также для создания и управления базами данных
(знаний).
На
смену
устаревающим
компьютерам
приходят
новые
с
новыми
операционными системами. Компьютеры объединяются в локальные сети, которые, в
свою очередь, не остаются в стороне от процесса «глобализации» – интегрируются в
интернет. Модернизация компьютерного парка часто приводит к тому, что старые
прикладные программы перестают запускаться на новых или обновленных компьютерах –
рабочих станциях и серверах. Приходится либо от таких программ отказываться, либо
тратить время и средства на создание или приобретение неких утилит (эмуляторов) для
запуска старых программ на новых или обновленных компьютерах. Но это еще полбеды.
Настоящая беда состоит в том, что из «фирм, корпораций, университетов» уходят люди,
которые создавали эти программы, а пришедшие им на смену молодые специалисты не
могут модернизировать эти программы, приспособить их под новые требования. Виной
тому и отсутствие соответствующих инструментальных средств и просто невозможность
разобраться
в
программах,
написанных
на
устаревших
(мертвых)
языках
программирования. Если же все-таки с большим трудом удается воссоздать или
модернизировать старую программу, используя старые или даже новые языки
программирования, генерирующие коды, понятные только программистам, то эта
«кошмарная» проблема через некоторое время всплывает опять.
2
А вот другая сторона этой проблемы.
В научных статьях, монографиях, в учебниках и учебных пособиях почти всегда
публикуются формулы, таблицы, графики, рисунки… В настоящее время этот
«иллюстративный материал»1 готовится также с помощью компьютера. Для ввода формул
в электронный текст созданы специальные компьютерные редакторы – Word Equation,
LaTeX и др. Но формулы, введенные в текст либо «от руки», либо набранные с помощью
компьютерных редакторов, остаются «мертвыми», т.к. по ним можно посчитать, взяв в
руки калькулятор или присев (повернувшись) к компьютеру и введя нужные формулы из
книги или статьи. Сами по себе формулы, увы, ничего не считают. «Если на сцене висит
ружье, то оно должно выстрелить – если в тексте есть формула, то она должна считать!».
В «мертвых» формулах нередко «сидят» ошибки. Авторы собрали довольно большую
коллекцию опечаток в справочниках весьма солидных отечественных и зарубежных
издательств. Так например, вместо 0,02387 напечатано 0,02387 (двойка перестала быть
нижним индексом, отмечающим повторяющиеся нули), а вместо 27.39 – напечатано 72.93
(типичная ошибка наборщиков) и т.п. Такие ошибки практически невозможно выявить
при традиционной (визуальной) правке корректур «бумажных» справочников, которые
часто, но далеко не всегда выходят со списком опечаток. Тем не менее, ошибки остаются
ошибками со всеми вытекающими негативными последствиями в историческом процессе
передачи знаний от человека к человеку, от поколения к поколению.
В настоящее время намечается решение вышеназванных проблем.
Историю использования компьютеров для научно-технических расчетов условно
можно разбить на три исторических этапа (вернее, три подэтапа третьего этапа – см.
выше):
работа с машинными кодами;
программирование на языках высокого уровня;
использование математических пакетов типа Mathcad, Maple, Matlab,
Mathematica, MuPAD, Derive и др.2.
Четких границ между перечисленными этапами (информационными технологиями)
нет. Работая в среде математической программы можно при необходимости вставить в
расчет электронную таблицу или собственные функции, написанные на языке C, в код
которых вкраплены фрагменты ассемблера. Машинные коды, кстати, остались в
1
Хотя формулы трудно назвать «иллюстрациями». Во многих книгах и статьях именно формулы являются
некой концептуальной и сущностной доминантой, а текст – это комментарий (иллюстрация), нередко
раздутые в целях повышения объема статьи или книги.
2
Электронные таблицы Excel как, впрочем, и программа Matlab занимают промежуточное положение между
языками программирования и математическими программами.
3
программируемых калькуляторах, которые по-прежнему широко используются в научнотехнических расчетах. Здесь скорее следует говорить не об изолированных этапах
развития
средств
решения
задач,
а
о
расширении
и
переплетении
спектра
инструментальных средств, о некой тенденции, которая, в частности, приводит к резкому
сокращению времени создания и реализации на компьютере расчетных методик и
математических моделей, к исключению программиста как дополнительного (и зачастую
«бестолкового») звена между исследователем и компьютером, к повышению открытости
самих расчетов, когда можно видеть не только результат, но и все формулы в
традиционном их написании, а также все промежуточные данные, подкрепленные
графиками и диаграммами.
В настоящее время многие компьютеры (рабочие станции) и даже ноутбуки, а
также карманные компьютеры и смартфоны (коммуникаторы) проводно и безпроводно
подключены к интернету или к интранету. В интернете сейчас можно найти не только
справочно-информационные материалы в виде текстов, графиков, таблиц и рисунков, но и
«живые» расчеты, в которых можно изменить исходные данные и получить новый ответ.
Нередко эти расчеты делаются на довольно мощных компьютерах (серверах) с
распараллеливанием вычислительных операций, что намного ускоряет сам расчет, если,
конечно, этот процесс не лимитируется скоростью передачи данных по сетям. Такие
расчеты несложно администрировать – ставить на них пароль для доступа, осуществлять
платный (абонентский) доступ, предоставлять возможность выбора языка общения
(русский, английский и т.д.), подправлять, расширять, модернизировать и т.д.
Нельзя не отметить еще один важный аспект проблемы «исследователь–
программист»
(«человек–компьютер»).
Языки
программирования
не
терпят
«дилетантства» со стороны исследователя. Это означает, что программирование требует
от человека максимальной отдачи, что часто влечет за собой частичную или даже полную
потерю
квалификации
программирования.
в
основной
Математические
специальности,
пакеты
не
«подсаживание
вызывают
у
на
иглу»
человека
такого
«болезненного привыкания». Можно не работать с математической программой полгода,
год, но основные навыки общения с этой программой не утрачиваются и, если
потребуется, то возникшая задача тут же будет быстро и качественно решена без
привлечения сторонних программистов. Справедливости ради отметим, что можно
привести
ряд
примеров,
когда
специалисты-некомпьютерщики
становились
высококлассными компьютерщиками, создающими успешные программные продукты не
только прикладного, но и общекомпьютерного (системного) характера.
4
Математические пакеты вслед за электронными таблицами создавались как
программное средство, альтернативное традиционным языкам программирования. Многие
специалисты в конкретных областях знания (физика, химия, биология, машиностроение и
т.д.), а также школьники и студенты не могли эффективно использовать компьютер из-за
трудностей в освоении языков программирования.
Но «нет роз без шипов». Главный недостаток многих математических пакетов
состоял в том, что они, как правило, не могли генерировать так называемые исполняемые
файлы (exe-файлы), которые можно запускать без программы-прародительницы. Это, в
частности, существенно мешало такому прогрессивному явлению, как разделение
сидящих за компьютером на пользователей и разработчиков. Специалисты, работающие с
математическими пакетами, как правило, вели «натуральное хозяйство»: разрабатывали
расчетные методики сугубо для личного употребления либо для узкого круга коллег,
умеющих работать с конкретными математическими пакетами. Передать свои наработки в
том числе и на коммерческой основе можно было только тому, у кого на компьютере
установлен нужный математический пакет. А этот человек скорее всего не будет покупать
готовый файл, а постарается воссоздать расчет сам. Речь идет, конечно, о небольших
расчетных программах, где продолжительность их создания и отладки сопоставима с
продолжительностью поиска их готового варианта, установки на компьютер и освоения
новой программы. Но удельный вес таких программ довольно высок.
Самый распространенный математический пакет – это Mathcad. Главная причина
такой популярности в том, что Mathcad имеет очень низкий порог вхождения. Школьник,
студент, аспирант, инженер или ученый при необходимости может поставить на свой
компьютер пакет Mathcad и уже через несколько часов успешно решать с его помощью
довольно сложные задачи. При условии, конечно, если этот человек знаком с азами
компьютерной грамотности и имеет навыки работы с клавиатурой и мышкой – работал,
например, с Word’ом. Другие же математические программы требуют специальных
знаний, которые приобретаются далеко не за «несколько часов». Mathcad также требует от
пользователя «специальных знаний». Но эти знания плавно приобретаются пользователем
по мере углубления в «недра» пакета – по мере изучение методов решения возникающих
специальных задач: поиск корней уравнений и систем, построение графиков, решение
дифференциальных уравнений и систем (обыкновенных и в частных производных),
решение статических задач и многое другое. При необходимости пакет Mathcad можно
дополнить
специальными
приложениями,
расширяющими
его
возможности
и
позволяющими решать специальные задачи. Пример – программа WaterSteamPro
5
(www.wsp.ru), подключающая к Mathcad функции по теплофизическим свойствам
теплоносителей и рабочих тел энергетики.
У
пакета
Mathcad
порог
доступности
низкий
и
в
ином,
несколько
«противоправном» смысле. В Сети и на развалах торговцев программами всегда можно
найти
нужную
русифицированную
нелицензионную
версию
Mathcad’а.
Многие
пользователи этого пакета, освоив его на «левых» версиях и почувствовав все его
преимущества, покупают легальную версию или, по крайней мере, ставят перед
начальством вопрос о покупке пакета Mathcad в свой НИИ или вуз.
Можно сказать и так. У пакета Mathcad нет порога вхождения, а есть некий пандус,
позволяющий пользователю плавно въехать на любой уровень использования пакета.
В 2003 г. в Московском энергетическом институте (ТУ) «в рамках решения
проблемы передачи знаний от поколения к поколению» (а это основная функция сферы
образования) и в плане выполнения инновационной образовательной программы был
запущен в эксплуатацию так называемый Mathcad Calculation Server (MCS) — сервер,
позволяющий запускать на нем Mathcad-документы и обращаться к ним дистанционно
через интернет.
Технология MCS позволяет решить следующие проблемы.
Нет необходимости ставить на компьютер пользователя саму программу
Mathcad нужной версии где-то искать, проверять на отсутствие вирусов и запускать
прикладные файлы. Достаточно подключить компьютер к интернету и обратиться к MCS
через браузер (обозреватель) Internet Explorer (версия 5.5 и выше) или через браузеры,
которыми оборудованы карманные компьютеры или сотовые телефоны-коммуникаторы.
При этом сохраняется полная иллюзия, что на компьютере открыт Mathcad-документ, в
котором можно изменить исходные данные и считать (распечатать, сохранить на диске)
ответ. Сама же расчетная методика (набор формул в традиционной математической
нотации, а не в виде компьютерных программ — особенность, за которую так любят
Mathcad), а также промежуточные данные могут быть либо открыты, либо закрыты
полностью или частично.
Новые расчетные методики, открытые для изучения (см. выше3), становятся
моментально доступны всем членам интернет-сообщества или работникам отдельной
корпорации, НИИ, университета. Достаточно только сообщить будущим пользователям
3
Еще один аспект открытости Mathcad-документов. Начиная с 12-й версии Mathcad-документы
записываются на диск не только в виде закрытого двоичного кода, доступного только самому пакету
Mathcad, но и в виде текстового xml-файла. Это позволяет читать и редактировать расчеты не только в среде
Mathcad. Если пакет Mathcad вдруг перестанет существовать, то файлы, созданные в нем, не пропадут. Их
можно будет использовать в других программах.
6
соответствующие интернет-адреса. Кроме того, сведения о данных расчетах будут
появляться в списках, выдаваемых различными поисковыми системами интернет (yandex,
google и др.). Чтобы эти расчеты стали товаром, можно администрировать доступ к сайту,
сделать его платным (умеренно платным, частично платным), окружить ссылки на них
баннерами и т.д.
Любые ошибки, опечатки, недоработки, обоснованные и необоснованные
допущения в расчете, замеченные как самим разработчиком, так и пользователями, могут
быть быстро исправлены. Несложно также модернизировать и расширять расчеты,
редактируя открытые формулы.
Технология MCS не исключает традиционной возможности скачивания с
сервера самих Mathcad-документов для их расширения и модернизации. Для этого
достаточно в расчете сделать соответствующие ссылки. С файлами, размещенными для
скачивания из Сети, можно поступить следующим образом. Можно передавать их только
для счета на рабочей станции с установленным пакетом Mathcad, закрыв с помощью
пароля сами расчеты. А можно отдавать их безвозмездно на коммерческой основе для
работы без ограничений.
Технология MCS позволяет экономить денежные средства на приобретение
математического обеспечения для компьютеров корпорации или университета. Нет
необходимости ставить всем сотрудникам программу Mathcad для ведения рутинных
расчетов, оборудовать соответствующим образом компьютерные классы. Достаточно
поставить ее только тем, кто создает методики расчетов. Остальные могут вести расчеты
через общедоступный MCS.
Технология MCS помогает оптимально решить проблему лицензирования работы с
программой: пользователю нет необходимости покупать дорогостоящую программу
Mathcad или, нарушая законодательство, ставить на компьютер ее нелегальную копию —
достаточно только обратиться к MCS. Покупать дорогостоящие программы должен будет
только разработчик — создатель расчетных методик, размещаемых на MCS или
передаваемых mcd-файлами.
Не нужно также учиться обращаться с Mathcad-документами, открытыми в Сети,
бояться испортить их. Изменение исходных данных в MCS-документе ведется с помощью
несложных приемов, которые многие уже освоили, общаясь с коллегами на различных
сетевых форумах, играя в сетевые и несетевые компьютерные игры и т.д.
Одной из важных форм передачи знаний являются фундаментальные справочники
по конкретным научным дисциплинам. Нередко одним изданием такого справочника
пользуется несколько поколений людей.
7
В 1999–2004 гг. в Издательстве Московского энергетического института (ТУ) было
выпущена справочная серия «Теплотехника и теплоэнергетика» в 4-х книгах под
редакцией А.В. Клименко и В.М. Зорина.
В 2005-2007 гг. в МЭИ под руководством В.Ф. Очкова создан сайт
http://twt.mpei.ac.ru/tthb, с помощью которого на базе MCS реализованы в интернете в
on-line-форме многие формулы, таблицы и графики справочной серии. Данные ресурсы
широко используются в учебном процессе студентами, аспирантами и преподавателями
теплоэнергетических специальностей технических вузов и колледжей, в системе
подготовки и переподготовки кадров для энергетики, в инженерной практике, а также при
выполнении научных и проектных работ. Эти обстоятельства обусловили необходимость
выпустить книгу, содержащую всю имеющуюся в настоящее время информацию об
интернет-ресурсах такого характера, а также о способах их создания и поддержки.
Отдельные фрагменты данной книги опубликованы в интернете и уже являются неким
«живым», развивающимся «мягким» изданием справочника, которое непрерывно
дополняется наработками читателей – пользователей сайта. Эти наработки в настоящее
время уже доступны широкому кругу потенциальных пользователей. В 2007 г.
Издательским Домом МЭИ при поддержке Российского фонда фундаментальных
исследований (www.rffi.ru) был выпущен пятый том справочника под названием
«Интернет версия справочника «Теплоэнергетика и теплотехника»: Инструментальные
средства
создания
и
развития».
Данное
издание
призвано
неким
образом
систематизировать этот процесс.
В первой граве справочника описан интерфейс инструментальных средств создания
web-справочников на базе математической программы Mathcad, а также приемы и методы
публикации Mathcad-документов со справочной информацией в Сети.
Во второй главе представлены приемы «оживления» формул и расчетных методик
в Сети. Даны ссылки на интернет-описания инструментов пакета Mathcad для решения
уравнений и систем уравнений, алгебраических и дифференциальных.
В третьей главе описаны методы перевода графиков в цифровой формат и
последующего «оживления» их в Сети. Даны ссылки на интернет-ресурсы, связанные с
решением различного рода статистических задач.
Четвертая глава посвящена проблеме «оживления» в интернете табличной
информации.
В пятой главе описаны приемы опубликования в интернете расчетов, созданных с
помощью языка программирования C.
8
Приложение содержит перечень основных справочных ресурсов, открытых в
интернете по описываемой в книге технологии, а также иллюстрации типичных файлов.
Данная работа («твердое» издание + сайт интернета») является во многих
отношениях пионерской. Она, помимо прочего, нацелена и на решение проблемы
оптимального сочетания положительных качеств «твердых» и «мягких» вариантов
справочников и устранения их традиционных недостатков. Ниже показаны типичные
интернет-страницы справочника с «живыми» решениями задач справочника.
Как известно, основным рабочим телом энергетики является вода и водяной пар.
Теплофизические свойства этого теплоносителя рассчитываются по наборам формул,
разработанных под эгидой Международной ассоциации по свойствам воды и водяного
пара (IAPWS – www.iapws.org). На рис. 1 отображена страница интернета, зайдя на
которую можно рассчитать по формулам IAPWS 2003 года динамическую вязкость воды и
водяного пара в зависимости от температуры и давления. При этом посетитель сайта
видит все работающие формулы, по которым ведется расчет, со всеми промежуточными
данными, а также и значения всех коэффициентов формул. Это позволит при
необходимости посетителю сайта создать собственную программу по расчету данного
физического свойства воды и, главное, быстро отладить ее, имел под рукой контрольные
промежуточные данные из интернета.
Подобные открытые «живые» расчеты, доступные в интернете, созданы и для
других наборов формул, утвержденных IAPWS. Путь к ним лежит со специального сайта
с
адресом
http://twt.mpei.ac.ru/ochkov/WSPHB/index.html,
на
который
есть
соответсвующая ссылка из официального сайта IAPWS.
Есть страницы сайта интернета, где в целях ускорения расчета и экономии трафика
посетителя выдаются только ответы без промежуточных данных. На других же страницах
ответ фиксируется на графиках и поверхностях, что позволяет оценивать влияние
параметров воды и водяного пара (давление, температура, плотность, энтальпия, энтропия
и др.) на рассчитываемые параметры.
С сайта www.wsp.ru можно скачать специальные программы и подсоединить их к
популярным расчетным средам, чтобы иметь под рукой свойства воды и водяного пара
без обращения к Интернету.
В настоящее время в энергетике воду и водяной пар стали теснить другие рабочие
тела и теплоносители. В частности, на электростанциях стали использовать газовые
турбины – сепаратно или в связке с паровыми турбинами, реализуя так называемые
бинарные циклы. На описываемых сайтах интернета есть соответствующие странички,
9
зайдя на которые можно рассчитать теплофизические свойства газов и газовых смесей,
работающих в газотурбинных и парогазовых энергетических установках.
Создание функции, возвращающей теплофизические свойства рабочих тел
энергетики,
позволили
разработать
и
открыть
в
Интернете
сайт
с
адресом
http://twt.mpei.ac.ru/TTHB/2/ThermCycleMCS.html, на котором собраны ссылки на
страницы с «живыми» расчетами термодинамических циклов. На рис. 2 показан сайт с
«живыми» формулами, по которым ведется расчет термодинамического КПД цикла Отто.
Эту величину можно вычислить по формуле, приведенной в правом нижнем углу рис. 2.
Но мало кто даже из преподавателей помнит, как была выведена эта формула (проблема
передачи знаний от поколения к поколению!). На рис. 2 расчет данного КПД ведется
также и с опорой на базовые понятия (уравнение Клайперона-Менделеева, энтропия,
внутренняя энергия), а также через решение систем интегрально-алгебраических
уравнений (блок Given – Find). Все это, с одной стороны, позволяет легко понять логику
расчета, а с другой стороны, отойти от линейности: удельные изобарные теплоемкости
рабочих тел энергетики далеко не константы и значительно изменяются от температуры и
давления.
Подобные страницы интернета созданы практически для всех термодинамических
циклов. При этом процессы, происходящие в них, отображаются на двух- и трехмерных
«живых» диаграммах с возможностью выбора параметров осей.
На рис. 3 показана страничка интернета с «живыми» формулами по расчету
температурного поля и теплового потока в круглой трубе в стационарных условиях.
Посетитель сайта имеет возможность не только видеть набор формул в традиционном
написании, но и изменить исходные данные и получить новый ответ в виде чисел и
графиков. При этом, как и в примере, показанном на рис. 2, решается система двух
уравнений (блок Given – Find).
Выводы Математические пакеты, поставленные на сервера интернета, позволяют решать
проблему «передачи знаний от поколения к поколению» за счет реализации в Сети
открытых «живых» расчетов. Интернет-версия справочной серии «Теплоэнергетика и
теплотехника» – «живой» пример передачи знаний новому поколению исследователей,
работающих в энергетической отрасли.
10
Литература 1. Александров А.А., Орлов К.А., Очков В.Ф. Математические пакеты – новые
подходы при расчетах процессов термодинамики и других научных дисциплин // Известия
высших учебных заведений. Проблемы энергетики. 2005. № 11–12, С. 80—86.
2. Очков В.Ф. Новые информационные технологии в энергетике: направления,
решения, проблемы // Новое в российской электроэнергетике. 2005. № 11, С. 22—31.
3. Очков В.Ф. Математические пакеты и сетевой интерактивный теплотехнический
справочник: проблемы и решения // Теплоэнергетика. 2006. № 6, С. 71—77.
4. Очков В.Ф., Александров А.А., Орлов К.А. Термодинамические циклы: расчеты
в Интернете // Вестник МЭИ. 2007. № 1, С. 43—50.
5. Теплофизические свойства воды и водяного пара в Интернете / А.А.Александров,
В.Ф.Очков, К.А.Орлов, А.В.Очков // Промышленная энергетика. 2007. № 2, С. 29—35.
6. Очков
В.Ф.
Создание
«Электронной
энциклопедии
энергетики»
–
информационный вклад в производственные и учебные процессы // Теплоэнергетика.
2007. № 7, С. 10—14.
7. Свойства теплоносителей и рабочих тел энергетики: информация в интернете /
В.Ф.Очков, А.А. Александров, К.А.Орлов, А.В.Очков // Новое в российской
электроэнергетике. №1. 2008. С. 28—43.
Download