Инструкция
разработчику on-line расчетных методик для Интернет в среде Mathcad
Содержание:
Очень часто посетители разного рода компьютерных форумов (рис.
1.1) задают вопросы, касающиеся выбора программ для расчетов, просят дать
сравнение математических пакетов и
отметить их сильные и слабые стороны. Такие вопросы инициируют всплески
дискуссий, где спорящие быстро забывают о спросившем и о его «расчетных»
потребностях и начинают бурно обсуждать качественные и количественные
характеристики пакетов, которые у всех на слуху: Mathcad, MatLab, Mathematica, Maple и др. (рис. 1.1).
Рис. 1.1. Форумы сайта www.exponenta.ru
Своеобразная попытка «количественного» сравнения этих пакетов была
предпринята, например, на сайте пользователей MatLab (www.matlab.ru). Там велся онлайновый опрос
посетителей – спрашивалось, какой пакет они используют для расчетов.
Естественно, полоска, визуализирующая процент
приверженцев того или иного пакета, у слова «MatLab» всегда была самая длинная – ведь на
этот форум в основном и заходят пользователи MatLab. Остальные либо заблудились, либо зашли
на «чужой» форум из любопытства – что, мол, там обсуждают – такие же проблемы,
с какими я сам сталкиваюсь в своем пакете, или что-то другое… Но все прекрасно
понимают, что это никакой не опрос, а чистой воды пиаровская акция, а в это,
увы, превращаются почти все опросы. С таким же успехом можно судить о
доходах и потребительских предпочтениях россиян по результатам опроса москвичей
у входа в дорогой супермаркет. Упоминаем же мы об этом опросе лишь потому, что
там опять фигурировали «Mathcad, MatLab, Mathematica, Maple и др.» – «великолепная четверка»
компьютерной математики.
Но в ряду перечисленных на рис. 1.1 программ нет самой
востребованной программы расчетов на персональных компьютерах – электронных таблиц. А ведь, более 90% всех компьютерных расчетов проводятся в среде этого неотъемлемого
компонента электронного инженерного офиса. Мы пока не будем говорить о
степени сложности
решаемых задач, об их особой специфике. Но даже если в нашей статистике
учитывать некий коэффициент сложности задач (Excel – 1, Mathcad – 2… Mathematica – 10, к примеру, и т.д.), то все
равно Excel «забьет»
все остальное. Даже без учета бухгалтерских расчетов. Mathcad же займет в этом рейтинге «почетное»
второе место. С количеством «разобрались». А теперь поговорим о качественной
стороне вопроса.
Можно утверждать, что беда пакета Mathcad (беда в том смысле, что его все время
пытаются сравнить с пакетами MatLab, Maple, Mathematica, а самих пользователей Mathcad непрерывно уговаривают перейти на
более «серьезные» пакеты) в… его названии – в
этом самом «Math», вернее только в «Ma». Пакет Mathcad (и на этом настаивают его
разработчики) нужно сравнивать не с пакетами MatLab, Maple, Mathematica, а с электронными таблицами. Mathcad создавался как программное средство,
альтернативное электронным
таблицам. И не
электронным таблицам современным, а тем, какие были на момент
создания первых версий Mathcad. Хотя органические недостатки электронных таблиц,
которые попытались обойти (нивелировать) разработчики Mathcad, так и остались в последних версиях Excel. Обрисуем их вкратце.
Электронные таблицы подкупают своей простотой, и это одна из причин их высокой популярности: берем содержимое двух ячеек (щелкнем по ним курсором мыши), сложим их, а ответ (сумму) поместим вот тут! На клавиатуре при этом нажимается всего лишь пара клавиш – «равно» и «плюс» (рис. 1.2).
Ячейкам A2 и A3 можно дать имена a
и b, например. Тогда формула в ячейке A4 будет выглядеть так: =a + b. В среде Mathcad знак равенства переместился в конец формулы a + b =. Кроме того, в ячейке Excel видима либо формула, либо результат. В Mathcad-документе можно видеть формулу и результат одновременно |
Но эта простота, как это часто случается, оказывается «хуже воровства»: в
расчетах, созданных с помощью электронных таблиц, не сможет разобраться не
только другой человек, желающий развить их или просто проверить правильность
заложенных методик и формул, но зачастую и сам разработчик. Этот недостаток
пытались исправить, интегрированием в электронные таблицы языков
программирования (VBA для Excel, например) и других полезных инструментов. Но при
этом получалось так, что «от чего ушли – к тому и пришли»: электронные таблицы,
как, впрочем, и сам Mathcad создавались как прямая альтернатива языкам программирования – тому же
языку BASIC, например. Но закрытость расчетов в
электронных таблицах очень мешает их активному использованию (активному в
смысле возможности изучения, проверки и модернизации) в первую очередь в сфере
образования. А это основной потребитель математических пакетов. Бухгалтеру или
инженеру, если он не создает свои собственные расчетные методики, достаточно
ввести данные и считать ответ. Преподавателям же и студентам ответ, как
правило, не очень и нужен – важно изучение пути к ответу. Написать одной
строкой в текстовом режиме более-менее сложную формулу в ячейку Excel или строку VBA еще можно, но проанализировать ее,
показать ее студентам для иллюстрации физического явления или технологического
процесса, связанного с этой формулой, крайне трудно. В среде Maple, например, формула вводится тоже в
текстовом режиме, но тут же переводится в вид, к которому человечество привыкло
задолго до появления компьютеров (рис. 1.3).
Пользователь в среде Maple вводит |
В среде Mathcad этап
текстового ввода формул исключен – пользователь сразу набирает («набивает», как
говорят студенты) и редактирует
«многоэтажную» формулу со всеми привычными математическими символами (рис.
1.4).
Букву n охватывает
курсор,
который можно |
За это Mathcad и
хвалят (те, кто привык к такому графическому способу ввода формул),
и ругают (естественно, те, кто так и не оторвался от текстового, DOS-овского интерфейса). А можно сказать
и так – фирмы-разработчики, оставшиеся верными текстовому режиму ввода
информации в формулах, были дальновидными, даже не осознавая это. Дело в том,
что текст – это пока основной способ оперативной передачи данных в сети
Интернет (см. далее рис. 2.7,
например).
«Ахиллесова пята»
пакета Mathcad в его названии, которое как бы
авансом приписывает эту программу к «элитному клубу» математических пакетов.
Вторая беда в том, что разработчики Mathcad, может быть, из-за желания
отработать этот аванс все время «подтягивали» эту программу к математическим
пакетам, встраивая в него все новые и новые математические инструменты. Многие
из них оказались очень полезными и востребованными, а другие же только
отягощали пакет. Так, например, в Mathcad 11 вставлены инструменты решения
дифференциальных уравнений в частных производных (см. http://twt.mpei.ac.ru/mas/worksheets/pde_Temperature.mcd, например), хотя все понимают, что
сколько-нибудь сложную задачу этими инструментами не решить. Можно только
показать студентам, что это такое – дифференциальное уравнение в частных
производных и как можно подойти к его решению. Для сложных и реальных задач
нужно брать другие пакеты или даже (и скорее всего) разрабатывать индивидуальные
алгоритмы, что, кстати, можно прекрасно делать и в среде Mathcad. Вот и начинают сравнивать пакет Mathcad с Maple или MatLab, где эти инструменты более развиты.
И сравнение это, конечно, не в пользу Mathcad. Ввключением в Mathcad специализированных, а не
общематематических инструментов разработчики Mathcad как бы сами подставляют себя под
огонь критики и толкают пакет на тупиковый путь развития – на путь, который уже
давно прошли «настоящие» матпакеты. Бьет это и по традиционным
пользователям Mathcad, которые не так сильны в математике, да и не чувствуют
особой нужды в ней для решения своих рутинных задач. Новые сложные инструменты
новых версий Mathcad часто только смущают таких пользователей, лишний раз как бы
упрекая их в незнании каких-то специальных разделов математики. Да и накладно
все это в финансовом
плане –
новые версии Mathcad с несущественными изменениями появляются чуть ли не каждый
год.
Здесь представляется оптимальным не подключать к Mathcad все новые и новые специализированные
инструменты (для решения ДУ в частных производных, например, – см. выше), а
идти уже опробованным путем создания отдельных специализированных приложений,
которые пользователи при необходимости могли бы приобретать отдельно. Перечень таких приложений
можно найти на сайте http://www.mathcad.com/library/Electronic_Books.asp. Еще раз подчеркнем, что некоторые
специфические функции Mathcad открывают некий «ящик Пандоры» и вынуждают этот пакет
претендовать на то, что ему никогда не принадлежало. В реальной практике
инженера сложных задач не так уж много (к счастью, а может, к сожалению). Но очень много
рутинных небольших задач, связанных, например, с использованием различных норм и
правил. Так, по Интернет-адресу http://twt.mpei.ac.ru/mas/worksheets/Izol_Trub_Teploset.mcd хранится Mathcad-документ по расчету
толщины теплоизоляции труб согласно СНиП («Строительные нормы и правила» – см. http://docinfo.ru/docs.html, например). И таких примеров
множество.
Особо сложной математики в них нет из-за того, что они ориентированы на
ручные расчеты. С ними часто мучаются – считают каждый раз заново, ошибаются… Mathcad хорош тем, что расчет, выполненный с
его помощью, может читать человек, ничего не знающий об этом пакете.
У фирмы MathSoft Engineering & Education. Inc, – у разработчика Mathcad есть, кстати, программный продукт без особых «математических» претензий, но со всеми достоинствами популярной и востребованной программы для рутинных инженерных расчетов на компьютере. Это пакет StudyWorks (www.studyworksonline.com), который широко используется в старших классах школ США. Успех этого пакета объясняется и тем, что в него интегрированы электронные учебники по всем базовым школьным дисциплинам: математика, физика, химия, информатика и т.д. Возможности пакета во многом покрывают и программу высшей школы, по крайней мере, для тех вузов и специальностей, которым не нужна «особая» математика. Так, в меню Algebra (рис. 1.5; в среде Mathcad оно называется Symbolic) собраны необходимые команды символьной математики (решение уравнений, взятие производной, поиск первообразной и др.), но убраны специфические – интегральные преобразования, например. Ядро пакета небольшое, но при необходимости его можно «нарастить» электронными учебниками (см. рис. 1.5: курс математики находится на отдельном диске). Кроме того, пакет StudyWorks, как и Mathcad дополнен справочным материалом. Если этого не хватает для решения задачи (домашнего задания по математике, например), то есть on-line выход в Интернет (StudyWorks! On-line), включая и выход на специализированный форум (HomeworkHelp).
Сам же Mathcad, как отмечают многие пользователи и мы подчеркнули
выше, очень перегружен, хотя до конца так и не «дорос» до «взрослых»
математических программ. Если эту «перегрузку» снять – вынести, например,
специализированные инструменты в обособленные пакеты (надстройки, электронные
учебники), то и получится этот самый недорогой и
неглючный StudyWorks, годный для ведения огромного
количества рутинных научно-технических расчетов.
Судьба Mathcad довольно неопределенна и нестабильна. Вернее, скажем
так – она очень волнует автора и многих других его коллег. Хорошо бы, если б
этот пакет проглотила бы «всеядная» фирма Microsoft и сделала Mathcad, например, некой утилитой тех же электронных
таблиц так,
чтобы пользователь Excel мог в особом листе Excel-книги хранить сложные формулы,
строить «научные» (а не «деловые») графики, работать с физическими величинами и
т.д.
Другой сценарий: пакет Mathcad должен вернуться на рынок после
существенной переработки и с новым названием –
без ко многому обязывающей приставки «Math».
Третий сценарий. Разработчики Mathcad освободят основную массу
пользователей от обязанности и потребности покупать сам пакет и регулярно
обновлять его, а заодно обновлять (заменять) операционную систему и даже сам
компьютер. Этот сценарий уже частично реализуется. Речь идет о так называемом Mathcad Application Server (см. www.mathcad.com/server, www.vpu.ru/mas), на котором проводятся расчеты
разной степени сложности в режиме удаленного доступа. Связь же с этим сервером
осуществляется через Internet: пользователь (клиент сервера) шлет на сервер свои данные и
получает ответ. При этом у пользователя сохраняется полная иллюзия, что он
открыл Mathcad-документ и работает с ним. Значительному количеству
пользователей Mathcad нужен не для разработки собственных сложных алгоритмов, а
для решения рутинных математических задач: построение графиков, решение
уравнений и систем (алгебраических, дифференциальных), несложная статистика и
т.д. и т.п. (см. раздел Разное в Приложении «Содержание MAS…»). Такие задачи не
должны требовать разработки собственных программ – они давно уже разработаны и
основательно протестированы. Основная проблема тут – доступ к этим программам,
что является основной целью MAS.
Некую нестабильность пакета Mathcad в его настоящем виде ощущают даже
его разработчики. Они, конечно, в этом открыто не признаются и даже обидятся на
утверждающих это. Но эта нестабильность чувствуется по косвенным признакам.
Главный из них – уже отмеченное неоправданно частое обновление версий Mathcad и посылаемые вдогонку «заплатки».
Но основное преимущество Mathcad
(как, впрочем, и Excel) по сравнению с другими расчетными пакетами состоит в
том, что Mathcad не требует особой
компьютерной и математической подготовки для решения задач средней сложности.
Если с пакетом Mathcad долго не работать, то навыки работы с ним не забываются и при
необходимости можно сразу приступить к решению возникшей расчетной задачи.
«Конкуренты» же Mathcad, реальные и мнимые требуют непрерывного тренажа иначе
восстановить навыки будет довольно трудно.
Итак. Пакет Mathcad оторвался от несовершенных
и примитивных,
но, тем не менее, (или «тем самым») очень популярных электронных таблиц и стал
«дрейфовать» в сторону «элитных» математических программ, но так и не добрался
до них. Продолжая «корабельные» аналогии, можно утверждать, что у Mathcad есть свой собственный «курс» и
довольно многочисленные «пассажиры», которые не собираются пересаживаться на
другие корабли. Смущает этих «пассажиров» (не всех, конечно) и пассажиров других судов
(судов другого класса) только то, что на
корабле вывешен флаг с буквами «Math».
Mathcad Application Server – это начало реализации третьего сценария.
Как правило, Mathcad-документы имеют структуру, состоящую из трех частей – ввод исходных данных, расчет и вывод ответа, в предельно упрощенном виде показанных на рис. 2.1.
Эти части нередко выделяют в три области
– Areas, в которых
возможны сепаратные действия – защита от редактирования (Lock-Unlock) и/или скрытие (Collapse-Expand).
|
Структура реального документа, как правило, не имеет четких границ между этими тремя областями. Если область расчета занимает несколько страниц, то при отладке ее «захлопывают» (команда Collapse) для того, чтобы одновременно видеть исходные данные и результат. Можно разбить расчет на несколько областей и открывать их поочередно. При желании в области можно создать новую область и выстроить расчет по иерархии (недокументированный прием) |
WebControls есть не у любой версии Mathcad, а только у Mathcad 11.1 Enterprise Edition (и выше; у автора на компьютере стоит Mathcad 11.2а – с диска была установлена версия
11.0, а «заплатка» 2а была «скачана» с сайта
http://www.mathcad.com/download).
WebControls отличаются от своих несетевых
аналогов (Controls – см.
их список над словом WebControl в центре рис. 2.2, а также панель правее слова Go) главным образом тем, что для
функционирования WebControls не надо писать или редактировать программы на языках,
поддерживающих технологию Active Scripting (JScript и VBScript – см. рис. 2.15). Такие программы в
сети нежелательны, т.к. через них в основном переносятся компьютерные вирусы.
Из-за этого многие разработчики не вставляют в свои программы Controls, а по-прежнему используют только
операторы := или ≡ . В среде Mathcad 2001i появилась возможность фиксации таких
«скриптов» в открываемом документе, как это делается в среде Word или Excel. По этой причине можно рекомендовать
вставлять WebControls не только в Mathcad-документы, подготавливаемые к открытию в сети, но и в
обычные, несетевые. Следует только помнить, что Mathcad-документ с WebControls может работать только в среде Mathcad 11.2 Enterprise Edition – в самой последней (февраль 2004) и
самой дорогой версии этого вычислительного пакета.
Документ, показанный на рис. 2.1,
после подготовки и публикации на MAS должен выглядеть как на рис. 2.3.
При открытии этого
документа на MAS линии |
Из рис. 2.3 видно, что операторы а:= и b:= (сравните с рис. 2.1) заменены на текстовые
окошки (поля) – Text box. Дополнительно вставлена кнопка Submit, переименованная в «Пересчитать». Но о ней мы расскажем
позже – в главе 3.
Границы областей, маркированных нами как «Исходные данные», «Расчет» и «Вывод ответа», как уже отмечено, на MAS не будут видны. Можно «захлопнуть»
область «Расчет» и оператор с:= a + b не будет виден. Это очень важно –
разработчик может скрыть от пользователя часть Mathcad-документа, опубликованного в сети,
предоставляя возможность только счета. А можно, наоборот, открыть и выделить
цветом наиболее интересные и важные части расчета, например, для проверки как
самой методики расчетов так и исходных данных. Кстати, о проверке. Если в нашем
примере на рис. 2.1 и 2.3 переменные а и/или b могут принимать значения только в
оговоренных интервалах (0 < a < 3, например), то будет полезно вставить в Mathcad-документ
некий «КПП» (контрольно-пропускной пункт: a := if(0 < a < 3, a, “Ошибка!”), блокирующий дальнейшие вычисления,
если пользователь ненароком или специально ввел неверные исходные данные. Здесь
важно не только правильно записать формулы, но и защитить документ «от дурака».
Такие же «кпп» хорошо установить перед
выводом ответа. Они должны блокировать вывод результата, если исходные данные
дают несовместимое сочетание. Так по адресу http://twt.mpei.ac.ru/mas/worksheets/Calc_Q_VPU.mcd хранится программа расчета проектной
производительности водоподготовки для электростанции, которая возвращает не
число, а текст «Ошибка в данных!», если пользователь ввел ошибочное сочетание
параметров проектируемой станции.
Название «Text box» не совсем правильное. Через этот
элемент интерфейса можно вводить не только (и не столько) текстовые константы,
но и числа – простые (как на рис.
2.3), так и комплексные (-5+3i, например). При этом приходится
опираться на старую (DOS-овскую) запись формата чисел: не 103, а Е3 (е3) – см. рис. 2.4. Если введенная строка символов не «похожа» на число, то
она воспринимается как текст. В несетевом аналоге текстового окошка любая цепочка
символов воспринимается как текст, который нужно было конвертировать в число
функцией num2str (см. рис.
2.15, например) из группы встроенных функции «String».
В первых трех случаях введенная информация воспринимается как числовая константа (число – простое или комплексное), а в четвертом – как текстовая константа (цепочка символов в кавычках) |
Автором совместно с Томом Гудманом (Tom Gudman – tom_gutman@compuserve.com) разработана методика ввода через
текстовое окошко (так и хочется сказать «игольное ушко») массивов (векторов и
матриц), а также функций пользователя, что отображено на рис. 2.5, 2.6 и 2.7.
Первый оператор if в программе выбирает из введенной строки цифры 0…9 или (булевый оператор или V) точку с минусом |
На рис. 2.5 показано, как цепочка символов, введенная в текстовое окошко, преобразуется в вектор с
помощью пользовательской функции Str2VMat. При этом разделителями чисел в текстовом окошке могут быть любые
символы, отличающиеся от 0…9, точки (десятичный
разделитель) и знака «минус». В нашем случае разделителями чисел служат пробелы.
Матрицу можно ввести построчно или по столбцам, несколько усложнив метод, показанный на рис. 2.5, – вводя отдельные строки. Но если матрица квадратная и произвольного размера, то можно ввести ее в виде вектора размером n2, а затем «упаковать» в квадратную матрицу (рис. 2.6).
Таким же образом можно ввести и неквадратную матрицу, оговорив число строк и столбцов в ней |
По адресу http://twt.mpei.ac.ru/mas/worksheets/lsolve.mcd можно открыть в Интернет решатель системы линейных
алгебраических уравнений вида А·х = В, где массивы А
(квадратная матрица коэффициентов при неизвестных) и В (вектор свободных членов) вводятся
по технологии, показанной на рис. 2.5 и 2.6.
Частично решена и проблема ввода через текстовое
окошко функции пользователя. Так, на
рис. 2.7 показан «текстовый» ввод функции пользователя с одним аргументом, по
которой строится график. Сам алгоритм перевода текста в формулу довольно
громоздок (его можно скачать тут
), и на рис. 2.7 не показан – спрятан в захлопнутой области (пояснения по вводу функций
через текстовое окошко).
Частичность этого решения в том, что к данной функции нельзя применить символьную математику и использовать в ней переменные, заданные ранее, хотя список аргументов функции y можно изменять и расширять (см. пример по адресу http://twt.mpei.ac.ru/mas/worksheets /Fit_f_x_a_b_c.mcd) |
Пример работы с функцией, введенной через текстовое окошко http://twt.mpei.ac.ru/mas/worksheets/F_X_Y_Plot.mcd.
Очень полезной особенностью Mathcad является его работа с физическими величинами. На рис. 2.8
показано, как оператор Р:= 123·mm заменяется на текстовое окошко.
Волнистая черта под буквой P указывает, что эта переменная определяется повторно. Но это не ошибка (а такие ошибки стал отмечать Mathcad 11.1), а прием «досылки» в переменную единицы измерения |
Здесь показан аргумент у радиокнопок (UnitP). |
Переменную P можно вывести многократно с различными единицами длины |
Очень часто единицы
измерения в расчетах фигурируют лишь как комментарии, а не множители,
упрощающие и контролирующие сам расчет. Это связано с тем, что: 1) многие
встроенные функции Mathcad не приспособлены к работе с размерными аргументами (см. статью по этому
поводу – http://twt.mpei.ac.ru/ochkov/Unit_MC_MP/Unit_MC_MP.htm); 2) массивы (вектора и матрицы) Mathcad могут хранить только безразмерные величины
или величины, одной физической величины – длина, давление и т.д. и 3) в
расчетах фигурируют так называемые эмпирические формулы – формулы, где
переменные связаны с конкретными единицами измерений, а не с физическими
величинами. Если единица измерения (мг/л, например) фигурирует в расчете не как
переменная, а как комментарий, то рекомендуется вставлять ее в расчет, как
единичный коэффициент, завершающий оператор вывода числового значения – мг/л: = 1 C=25
■ ← мг/л. В
этом случае единица измерения станет «плавающей» – будет перемещаться
оставаться на нужном месте при изменении длины выводимого числа (см. пример http://twt.mpei.ac.ru/mas/worksheets/Comp_procent.mcd).
На рис. 2.11-2.14 показаны диалоговые окна
формирования (и форматирования) сетевых элементов управления, перечисленных на
рис. 2.2: Text box (текстовое окошко), Check box (галочка), List box/combo box (список), Radio button group (радиокнопки). О кнопке Submit разговор особый – см. раздел 3.
Если число вариантов ввода информации ограничено, то можно (нужно) ее вводить не через текстовое окошко (через клавиатуру), а через выбор из предложенного списка (мышкой). Мы это уже делали (см. рис. 2.10), прося пользователя не набирать единицу длины на клавиатуре, а выбрать ее из трех вариантов – m, mm и cm. Если в списке всего две позиции (да или нет – альтернативный вопрос), то обычно используют «галочку», три и более – радиокнопки и/или список. Список отличается от радиокнопок лишь тем, что в списке часть позиций может быть скрыта и выведена на экран прокруткой. (Если же из списка нужно выбрать не одну, а несколько позиций, то его заменяют на группу галочек – см. пример http://twt.mpei.ac.ru/mas/worksheets/Tests/Test_Cone.mcd). В принципе, галочки более универсальный инструмент, чем радиокнопки, хотя требуют более сложного программирования. В радиокнопках всегда должна быть активирована одна из кнопок, и этим как бы пользователю подсказывается одно из решений, которое может быть и ложным. Галочки же могут быть все пустыми, что оставляет пользователю полную свободу выбора. Кроме того, расстояние между галочками может быть любым и расположены они на листе могут в любом порядке, а не только вертикально как радиокнопки. Дополнительно можно запрограммировать так, что галочки будут перемешиваться перед каждым обращением к документу. Это также будет исключать какое-либо предпочтение при выборе варианта. Выбранных позиций в группе галочек может быть больше чем одной, что может быть задумано разработчиком при создании данной расчетной или проверочной методики.
18 – это ширина окошка (не менее 5 символов), а 255 – максимальное число вводимых символов |
Это и ему подобные диалоговые окна (см. рис. 2.12 – 2.14) возникают после
нажатия кнопки «Далее >», отмеченной в правом нижнем углу рис. 2.2.
Через диалоговое окно, показанное на рис. 2.11,
пользователь может изменить ширину самого текстового окошка и/или максимальную
длину вводимого текста. При этом подчеркивается, что нажатие на клавишу Enter будет сигналом на передачу измененных
данных на MAS. Повторяем, кнопка «Пересчитать», показанная на рис. 2.3, может быть
лишней. Но в этом случае не будет лишним вставить в документ соответствующий
комментарий. Иначе пользователь может не дождаться ответа – глобус в верхнем
правом углу браузера не будет крутиться.
Русские буквы в ярлыке галочки могут быть искажены. В этом случае ярлык можно приписать отдельной картинкой |
В диалоговом окне форматирования галочки (рис. 2.12) есть собственная
«галочка», «постановка» которой создателем MAS-приложения будет означать, что
изменение в «галочке», поставленной в самом Mathcad-документе, будет тут же передаваться
на MAS. Такие же галочки имеются и в диалоговых окнах форматирования радиокнопок (рис. 2.13) и списка (рис. 2.14).
Как видно из сравнения рис. 2.13 и 2.14 в диалоговом окне списка (рис.
2.14) есть окошко (правый верхний угол), фиксирующее число элементов, которые
будут одновременно показаны в списке. Если это число меньше числа элементов в
списке, то они будут показаны с прокруткой. В «радиокнопках» всегда
показаны все элементы (кнопки). В этом, как мы уже отметили, и состоит
единственное отличие списка от радиокнопок.
На рис. 2.13 и 14 зафиксированы два способа настройки
радиокнопок и списка – см. «галочку» с надписью «Values equal Names – значения равны именам». В первом
случае (рис. 2.13) переменная, связанная с блоком радиокнопок или списком (у
нас это UnitP), принимает текстовое значение, хранящееся в
соответствующей ячейке колонки Names («Values equal Names»), а во втором (рис. 2.14) –
значение (числовое или текстовое) из ячейки в колонке Value. К сожалению, пользователь не
может записать туда встроенные или пользовательские переменные и
выражения, а только константы. В несетевых аналогах радиокнопок и списка
вышеописанное форматирование велось через чистое программирование на язык Basic – см. рис. 2.15.
Внимание! Элементы управления интерфейсом
«Список» и «Радиокнопки» могут работать неправильно, если в них введены
некоторые спецсимволы – символ градусов (°), например. Это относится (увы) и к
буквам кириллицы. Поэтому пример на рис. 2.14 более предпочтителен, чем пример
на рис. 2.13. Но тут одно неудобство – нужно помнить, что 1 – это килограммы, 2
– граммы и т.д.
Программа (макрос), вшитая в Mathcad-документ, как отмечено выше, и
была причиной отказа от Controls и перехода к WebControls. Из-за этого в списке WebControls не оказалось такого удобного
элемента интерфейса как «бегунок» (Slider). Зато сетевые радиокнопки устроены
более правильно, чем их несетевые аналоги. В несетевых элементах интерфейса нет
радиокнопок, а есть радиокнопка. А это ошибка – радиокнопок может быть три и
более, но никак не одна или две.
«Бегунок» удобен тем, что он позволяет мышкой
выставить нужное значение переменной в заданном диапазоне и с заданной
размерностью. Но бегунок можно сымитировать (рис. 2.16), отформатировав
определенным образом список – оставив в окне только один элемент, а в таблице
форматирования (Name – Value: см. рис. 2.13 и 2.14) записав нужное количество
дискретных значений, присваиваемой переменной: 0.1, 0.11, 0.12…0.2, например,
как на рис. 2.16.
Высота выпадающего списка не должна превышать высоту экрана дисплея. В противном случае работать с таким списком становится неудобно и его приходится заменять на текстовое окошко. Правее свернутого списка можно указать, что в нем будет раскрыто: диапазон и шаг дискретных значений. Если вводятся тексты, то их следует отсортировать по алфавиту |
В идеале можно (и нужно!) так спроектировать интерфейс для пользователя MAS, что он не будет касаться
клавиатуры, а будет работать только с мышкой.
Мы говорили о том, что в сетевом Mathcad-документе, может и не быть кнопки Submit. Но в документ можно вставить и несколько таких кнопок, если документ объемный и исходные данные нужно менять в разных местах. В этом случае такие места нужно «отмечать» такой кнопкой Submit (пример с двумя такими кнопками показан на рис. 2.18). Хорошим решением будет разбивка расчета на отдельные блоки, окончание которых фиксируется кнопкой Submit. Расчеты по последующему блоку будут заблокированы до тех пор, пока пользователь не введет нужные исходные данные в предыдущих блоках, не проверит правильность решения и не нажмет очередную клавишу Submit.
Те, кто проектировал интерфейс пользователя на языках
программирования (Visual C, Visual Basic, Delphi и др.), отметят, что интерфейс MAS довольно скудный. Мы уже отмечали,
что там нет Combo box – окошка, совмещающего текстовое окошко и список. Не
предусмотрена возможность «гашения» некоторых элементов интерфейса, если
какая-либо переменная принимает определенное значение (частичное решение этой
проблемы
http://twt.mpei.ac.ru/MAS/Worksheets/Smart_Input.mcd) и т.д. Но здесь нужно
принимать во внимание, что WebControls – это не разработка MathSoft, а стандартные средства передачи
данных в Интернет, которые пока не очень богатые. Это некие заготовки
(полуфабрикаты), которые можно доработать.
Так, на рис. 2.17 показано, как можно скомбинировать текстовое окошко и список, и получить Combo box. Такое комбинированное окошко, сочетающее текстовое окошко и список, задействовано в документе по адресу http://twt.mpei.ac.ru/mas/worksheets/VPU_4_1.mcd – пользователь имеет возможность выбрать значения диаметра фильтра из списка (1.0, 1.5, 2.0, 2.6, 3.0 и 3.4 м) или ввести свое значение.
Это правило требует существенной коррекции при
подготовке Mathcad-документа к работе в сети. Дело в том, что объемный документ
с большими графическими вставками будет «тормозиться» в сети. Поэтому основные
комментарии (история создания документа, его подробное описание, инструкция по
работе и др.) целесообразно поместить в отдельный (не Mathcad) документ (в html-файл, созданный в Word’е, например), а в самом Mathcad-документе поместить только минимум
комментариев и ссылку на «большие», дополнительные комментарии, которые открываются
в отдельном окне браузера. По этой же причине не рекомендуется перегружать Mathcad-документ сложными графиками. С
другой стороны, следует помнить, что в Mathcad-документе, открытом на MAS, нет возможности мышкой вращать
трехмерный график, например. Поэтому следует дублировать такой график в разных
ракурсах. Другое решение: можно запрашивать углы ориентации графика вокруг осей
и делать пересчеты перед выводом трехмерного графика на дисплей – см. пример на
сайте http://twt.mpei.ac.ru/mas/worksheets/3D_Plot_Rotate.mcd.
Следует отметить, что технология MAS, предоставляя пользователю
возможность доступа к операторам и функциям Mathcad, отсекает он него команды меню.
Публикуя документ в Интернете, следует думать и о его многоязычности. Для этого, во-первых,
все комментарии можно продублировать на нескольких языках – по-русски,
по-английски и т.д. Есть и другое решение – давать пользователю возможность
выбора языка (рис. 2.18).
Если пользователя
английский язык (умолчание) не устраивает, то он может перед началом расчета выбрать из списка другой и нажать на клавишу Choose. Документ вернется с комментариями на выбранном языке. Операторы, выводящие ответ, стоит отметить цветом, как это сделано на рис. 2.17 и 2.18. Другим цветом можно выделить WebControls, через которые меняются исходные данные |
Решение, приведенное на рис. 2.18, такое: разноязычные комментарии вводятся в вектор, элементы которого выводятся на дисплей в зависимости от выбранного языка (первый язык – первый элемент, второй язык – второй элемент и т.д.). Есть и третье решение – дать возможность пользователю открывать несколько вариантов одного расчета (несколько файлов) с комментариями и переменными (Vinput и Vвх, например) на различных языках. Так построены документы http://twt.mpei.ac.ru/mas/worksheets/Tests/Test_Cone.mcd и http://twt.mpei.ac.ru/mas/worksheets/Tests/Test_Cone_Eng.mcd, например.
И последнее. При открытии MAS-приложений в Интернете могут возникать проблемы с показом букв кириллицы не только в WebControls, но и в простых текстовых комментариях Mathcad-документов. Поэтому можно рекомендовать заменять текстовые комментарии именами переменных, где спецсимволы вставлены после взятия аккорда «Ctrl + Shift + j», помня о том, что их должно быть минимальное количество (см. выше). Здесь будет одно ограничение – нельзя использовать точку, т.к. она становится невидимой и выделяет последующую часть имени переменной в нижний индекс Vвх, например.
В Mathcad-документ можно внедрить фрагменты Excel, MatLab, LabView и обмениваться данными с этими
программами. Excel, например, часто внедряют, чтобы удобнее было вводить и выводить таблицы
(вектора и матрицы) или задействовать специфические функции электронных таблиц (рис. 2.19).
После нажатия клавиши «Next>» будут запрошены переменные, значения которых передаются в Excel и переменные, которые принимают значения из таблицы |
Список, показанный на рис. 2.19, зависит от программ, которые установлены
на компьютере. Mathcad-документ с «чужепрограммными» вставками можно размещать на MAS только после решения лицензионных
вопросов с разработчиками соответствующих программ. Ведь программы
приобретались для использования только на рабочей станции, а не для открытия в
Интернете. Если вообще приобретались.
При подготовке Mathcad-документа к публикации в сети может оказаться так, что имя переменной или функции, нормально работающее в среде Mathcad, дает сбой при открытии этого документа в сети. Обычно это случается, если используются русские буквы в именах. Вообще-то в именах объектов программирования русские буквы нежелательны не только в «работающих» именах переменных, функций, файлов и т.д., но даже и в комментариях (см. выше). Тем не менее, их приходится использовать особенно в специфических расчетах, где те или иные объекты уже давно получили русские имена, которым пользователи давно привыкли. У многих этих переменных есть латинские аналоги, но у некоторых нет. Если русские буквы необходимы в формулах, то можно посоветовать прием нивилирования «русскости» этих переменных. Автор заметил, что, например, переменные ч (час), мг-экв (миллиграмм-эквивалент) и некоторые другие – Ц. баз (базовая цена, где баз – это нижний текстовый индекс) при открытии Mathcad-документ в сети дают сбой – переменные «краснеют» с сообщением об ошибке «Переменная или функция не определена». «Подлечить» такие переменные можно, поставив первым их символом пробел. Вид переменной не изменится (она только чуть сдвинется вправо), а расчет восстановится. «Лечить» переменные также можно заменой (подправкой) их имени через команду Edit/Replace, проставив галочку у слова Math в диалоговом окне настройки замены.
Следует помнить, что Mathcad по-настоящему поддерживает только латинские и греческие буквы. Наши хитрости, связанные с «лечением» покрасневших имен переменных, содержащих спецсимволы, (пробел в начале имени) не является документированным. Следовательно можно ожидать, что в новой версии Mathcad данный прием не будет работать. Если все же без русских букв не обойтись, то можно порекомендовать накрывать латинские «поганые» названия картинкой с русскими символами - см. совет 214 из книги «Советы пользователям Mathcad». Пример специальных переменных – http://twt.mpei.ac.ru/mas/worksheets/Spec_Var.mcd.
При работе с Mathcad-документом, открытым в сети на MAS или в самой оболочке Mathcad, может возникнуть проблема ввода
большого изменяющегося массива данных (пример по адресу http://twt.mpei.ac.ru/mas/worksheets/Exp_Steam_K_300_240_LMZ.mcd, где пользователь должен просмотреть
и при необходимости изменить значения в нескольких десятках текстовых окошках,
прежде чем нажать на кнопку Recalculate). Ввод таких данных через обычные (Web)Controls (текстовые
окошки) очень трудоемок и неудобен. При
работе вне сети (в самой оболочке Mathcad) эта проблема обычно решается
записью исходных данных файлом на диск и считыванием их в массивы Mathcad (функция
READPRN и др.).
При работе с MAS такая технология затруднительна, но можно рекомендовать другую.
Пользователь перед тем, как работать с МАS, в электронных таблицах, например,
готовит новые исходные данные – см. рис. 2.20.
После того, как данные готовы (это могут быть подправленные
данные предыдущего сеанса связи с MAS, например, хранящиеся в архиве
пользователя), они простым копированием (Ctrl+Insert – Shift+Insert) переносятся в «длинное» текстовое
окошко Mathcad-документа, открытого в сети (см., например, рис. 2.5 и 2.6) – в одно окошко или
несколько, если длина копируемой цепочки символов превышает 256 знаков. После
этого нажимается кнопка Submit (или клавиша Enter – cм. комментарий на рис. 2.11) и расчет
ведется с новыми исходными данными. Если ответ также объемен, то можно
порекомендовать выводить его не отдельными скалярными величинами, а таблицей,
которую также можно скопировать из сетевого Mathcad-документа – перенести в документ
пользователя для дальнейшего анализа и обработки. При этом следует помнить, что
вертикальные и горизонтальные прокрутки объемных массивов (векторов и матриц) в
сети не работают. Кроме того, там не будет возможности раскрытия составных
массивов (Nested Array).
Предложенное решение проблемы архивации и ввода в сетевой Mathcad-документ объемных исходных данных в принципе должно быть встроено в MAS, и об этом автор сообщил разработчикам (см. п. 15 в Приложении «Содержание MAS…»). Во многих несетевых расчетных программах – приложениях Windows в меню File есть специальные команды (New [Project], Open [Project] и Save [Project]), позволяющие работать с архивом исходных данных – см. рис. 2.21, где эти команды показаны (меню и диалоговые окна одного приложения Windows-программы с именем расчета водоподготовительной установки, где данные по отдельным проектам (сеансам работы с программой) хранятся на диске в файлах с именами Sample1.rod, Sample2.rod, ... Sample8.rod).
Готовя Mathcad-документ для публикации в сети, нужно решить вопрос о стартовых значениях исходных данных. Как правило, разработчик сетевого расчета, продолжая традицию Mathcad с его основным оператором интерфейса «:=», строит документ так, что в расчете даны некие типовые исходные данные, которые пользователь может (но не обязан!) изменить, отредактировать. С одной стороны, это удобно – можно сразу просмотреть расчет, ничего в нем не меняя или меняя отдельные данные. С другой стороны, это чревато и ошибками, связанными с тем, что пользователь может где-то не изменить нужные данные и получить неправильный ответ. Поэтому можно рекомендовать записывать в текстовое окошко, например, не стартовое (типовое) значение, а прочерк («–»), блокирующий расчет и требующий тем самым от пользователя обязательного ввода нужных исходных данных. По этой же причине можно рекомендовать использовать группу «галочек», а не список или радиоточки при организации выбора варианта исходных данных.
Задачи, выложенные на MAS, направлены, в основном, на решение практических задач и построены следующим образом. Обратившемуся к MAS предлагается через WebControls ввести исходные данные, нажать на кнопку Recalculate и получить ответ. Но если такой документ как бы «вывернуть наизнанку», то его можно приспособить и для образовательных целей: допустимо генерировать исходные данные и просить пользователя (обучаемого, тестируемого) ввести нужные формулы, по которым высчитывается ответ, который сравнивается с истинным. На основании этого сравнения делается вывод о знании пользователем соответствующего процесса, аппарата и/или технологии. Это может делаться и в рамках контроля или самоконтроля при изучении учебного материала, а также при организации практических занятий. При этом необходимо либо в самом расчетном документе, либо в документах, на которые сделаны ссылки из расчетного документа, дать все необходимые теоретические и справочные материалы, «подталкивающие» обучаемого к правильному ответу. Пример такого документа хранится по адресу http://twt.mpei.ac.ru/mas/worksheets/Tests/Test_Cone.mcd. Там предлагается по заданным геометрическим размерам прямого круглого конуса определить его некоторые параметры – высоту и объем (рис. 2.22).
По документу, показанному на рис. 2.23 и хранящемуся по адресу http://twt.mpei.ac.ru/MAS/Worksheets/Chem/Chem_R_N26t.mcd, обучаемому предлагают составить самому и решить с помощью компьютера химическую задачу.
В таких документах (рис. 2.22, 2.23) необходимо решить следующие проблемы.
Необходимо генерировать исходные данные так, чтобы они находились в разумном диапазоне.
Необходимо либо выбрать исходные данные из довольно объемной таблицы, либо генерировать эти данные, опираясь на генераторы псевдо- и/или истиннослучайных чисел, отбраковывая неверные исходные данные (см. пункт 1).
В исходных данных могут быть разные единицы измерения, что должно подтолкнуть обучаемого к изучению определенных разделов метрологии.
Работа с формулами, по которым ведутся расчеты, может идти либо через выбор из предложенного списка (высота конуса – см. выше), либо через ввод формул через текстовые окошки (объем конуса). Эти два метода имеют плюсы и минусы. Выбор из предложенного списка подразумевает, что в нем есть и неверные результаты, а это очень спорный момент в методологическом плане. Считается, что обучаемый может запомнить неверный ответ в предложенном списке и не запомнить правильный. Ввод формулы через текстовое окошко не совсем удобен тем, что формулу при этом приходится вводить в текстовом режиме, опираясь не на общематематические, а на «компьютерные» варианты написания операторов – не , а sqrt(X), например. Но это не так уж и плохо – пользователь, изучая специальную дисциплину, заодно и осваивает некоторые приемы работы на компьютере. В формулах допустим ввод как числовых констант, так и переменных, их хранящих.
При сравнении численных ответов пользователя, включая и те, какие были введены через формулы (см. пункт 4) с истинными результатами, необходимо принимать во внимание точность математических операций. Так, например, пользователь может ввести число π как 3.14, что будет несколько отличаться от истинного значения этой фундаментальной математической константы.
Более подробно эта сторона использования MAS описана в статье "Mathcad Application Server: новые возможности в сфере открытого образования" (http://twt.mpei.ac.ru/ochkov/Edu_MAS/index.html)
Проблему администрирования (допуска) к расчетным документам MAS можно решать традиционными средствами, используемыми в Интернет – регистрация, получение пароля и т.д. Эти инструменты можно приложить как ко всему сайту, хранящему расчетные методики, так и к отдельным расчетам. Так, на рис. 2.23 показан расчет температуры в конденсаторе (см. рис. 2.18). Расчет организован так, что при исходных данных, показанных на рис. 2.24 (Pv = 0.95 бар и В = 750 мм рт.ст.) ответ дается – (tc = 32.8 ºС / 91.1 ºF). При других исходных данных расчет блокируется, а ответ не показывается. Чтобы все заработало, пользователю с именем Login необходимо получить от разработчика пароль и ввести его в соответствующее текстовое окно (Password).
1. Необходимо в среде Mathcad 11.2 Enterprise Edition отредактировать Mathcad-документ – вставить WebControls вместо операторов присваивания. Если данной версии Mathcad у пользователя нет, он может отметить, например цветом эти операторы присваивания и попросить администратора MAS сделать нужные замены (см. рис. 2.1 и 2.3).
2. Послать по электронной почте или передать при встрече данный Mathcad-документ администратору MAS – автору этого текста, например. Еще лучше, если WebSheet будет расположен на двух MAS. Дополнительно, например, на MA-сервере фирмы Софтлайн (http://mas.exponenta.ru). Администратор этого сайта - Ивановский Ростислав Игоревич (mas@exponenta.ru). Так на сайте фвтора можно увидеть слова (дубль). Это означает, что соответствующий расчет продублирован на запасном сервере. Естественно, можно приобрести MAS и в индивидуальное пользование.
3. После установки Mathcad-документа на MAS проверить его работу и за несколько итераций (переписка с администратором сервера) отладить его.
В инструкции разработчику приложений для Mathcad Application Server (MAS – см. http://mas.mathsoft.com/mas/documentation/guide/guide.mcd) сказано, что кнопка Submit бесполезна в «нормальных» Mathcad-документах (в WorkSheets), а необходима только для WebSheets – Mathcad-документов, подготовленных для публикации в Интернет посредством MAS. Эту информацию не поленились даже вставить в диалоговое окно Submit Button Properties – см. подчеркнутые автором строки на рис. 3.1 «Кнопка Submit бесполезна в несетевом Mathcad-документе».
Но информация, подчеркнутая на рис. 3.1, не совсем верна. Вернее, она дезориентирует пользователей Mathcad и отсекает от них очень интересный
инструмент
Во-первых, в WebSheets и без этой кнопки в принципе можно обойтись. Кнопку Submit нажимают после того, как в Mathcad-документе сделаны нужные изменения и их необходимо передать (to submit по-английски «передавать, представлять на рассмотрение, экспертизу») на MAS-сервер для расчета в среде Mathcad, установленной на этом сервере. Но если в этом документе меняются данные лишь в одном WebControls, то можно так отформатировать этот «сетевой» элемент интерфейса, что изменение в нем и нажатие клавиши Enter будет сигналом для посылки данных на MAS-сервер и без нажатия на кнопку Submit, которая в этом случае становится лишней. Так в библиотеке фирмы MathSoft по адресу http://mas.mathsoft.com/mas/library/calc_DeltaP_A400.mcd хранится WebSheet, отправленный в эту библиотеку автором, и в который автор забыл вставить кнопку Submit. Тем не менее, расчеты по этому сетевому документу ведутся без особых трудностей. В отношении элемента Text box (см. рис. 2.11) это свойство (окно ввода текста и кнопка Submit «в одном флаконе») устанавливается автоматически, а в остальных трех элементах через «галочку» – рис. 3.2.
Здесь
просматривается прямая аналогия с режимом ручного
пересчета в среде Mathcad (Excel, Word, BASIC, Pascal и т.д.) – кнопку Submit можно
сравнить с кнопкой F9, которую нажимают после
того, как в WorkSheet сделаны
нужные изменения через операторы «:=» или сетевые или несетевые Controls и необходимо, чтобы были сделаны
нужные пересчеты.
Во-вторых, кнопка Submit может быть очень полезна не только в WebSheets, но и в WorkSheets – в традиционных (несетевых) Mathcad-документах. Дело в том, что нажатие на эту кнопку увеличивает на единицу значение переменной, связанной с кнопкой Submit (после запуска Mathcad-документа в сетевом или несетевом режиме значение этой переменной равно нулю). Эта переменная является своеобразным счетчиком нажатий на кнопку Submit – количества обращений к самому MAS. Эта особенность кнопки Submit может быть очень полезна и в Интернете и вне сети – формальная переменная может управлять самим Mathcad-документом, меняя, например, его вид. Так, на рис. 3.3 показан Mathcad-документ с графической иллюстрацией метода Ньютона (касательных) численного поиска нуля функции, где нажатие на кнопку Submit позволяет пошагово просматривать приближение к искомому нулю функции (рис. 3.4).
На MAS-сервере МЭИ (http://www.vpu.ru/mas)
можно найти пошаговые иллюстрации (псевдоанимации) следующих классических методов
численного решения задач с опорой на кнопку Submit:
·
вышеописанный метод Ньютона – http://twt.mpei.ac.ru/mas/worksheets/newton.mcd
· метод золотого сечения –
http://twt.mpei.ac.ru/mas/worksheets/Gold_Ratio.mcd
· методы Эйлера и Рунге-Кутта решения обыкновенного дифференциального уравнения – http://twt.mpei.ac.ru/mas/worksheets/Euler.mcd ■
Термодинамическая
поверхность воды и водяного пара
Цикл Ренкина (вариант
1 вариант
2: 3D диаграммы)
Давление
в конденсаторе (пример многоязычного расчета)
Расчет
расширения пара в турбине К-300-240 ЛМЗ
Расчет подогревателя низкого давления турбины
Расчет
подогревателя высокого давления турбины
Расчет толщины теплоизоляции труб теплосети
Расчет содержания кислорода во влажном воздухе
Расчет газотурбинной установки
Расчет газотурбинной установки STIG
Расчет коэффициента теплоотдачи от стенки трубы к воде в экономайзере парового котла
Температурное поле в остывающем стержне
Термогидравлика градирни
Задачи электронного курса по тепломассообмену в энергетических установках
Кривая
титрования буферного раствора (углекислота)
Пересчет
жесткости в различных единицах
Удельная электропроводность растворов
Таблица значений коэффициента активности иона
Задачи из решебника по химии для 7-11 классов
База
данных по водным источникам
Выбор
проектной производительности ВПУ для электростанции (в отладке)
Расчет
равновесных концентраций ионов в воде после известкования и коагуляции
Расчет
реальных концентраций ионов в воде после известкования и коагуляции
Расчет
перепада давления на фильтре с анионитом Пьюролайт A400
Расчет умягчения воды на катионите Пьюролайт C100
Задачи из учебного пособия "Водоподготовка в энергетике"
Расчет объема серной кислоты для приготовления разбавленного раствора
Расчет водного режима систем охлаждения конденсаторов турбин по СНиП 11-31-74 (в разработке)
Опрос химцехов на предмет модернизации ВПУ (в разработке)
Карбонатный индекс и теплосеть
Экология, охрана труда и энергосбережение
Расчет
вредных выбросов ТЭС в атмосферу по РД 34.02.304-95 (разработке)
Расчет шумового воздействия на обходчика турбины
Примеры решения задач по энергосбережению
Расчет себестоимости выработки
электроэнергии на ТЭС (в разработке)
Расчет себестоимости обессоленной
воды на ТЭС (в разработке)
Технико-экономическое сравнение методов водоподготовки на ТЭС (в разработке)
Трехступенчатое испарение в барабанном котле
Расчет оптимальной температуры уходящих газов из котла
Диаграмма Пурбе для системы Fe-H20
Проверка принадлежность двух серий экспериментов к одной выборке
Расчет оптимальных параметров и анализ динамики АСР с ПИД-регулятором
Построение графиков функций y(x) и f(x,y) Задача о краске (целочисленное программирование)
Сложный процент
Задача
о пожарном ведре
Поиск нуля функции методом Ньютона
Поиск нуля функции методом половинного деления Интегрирование методом прямоугольников
Интегрирование методом трапеций
Решение
ОДУ методами Эйлера и Рунге-Кутта
Сглаживание
табличных зависимостей
Предсказание
Построение поверхности f(x,y) с вращением
Маленький экзамен по геометрии
Ханойские башни Smart Input Допуск по паролю
Поиск глобального минимума по генетическому алгоритму
Решение ОДУ методом Рунге-Кутта с переменным шагом
ДЕПАРТАМЕНТ
ГЕНЕРАЛЬНОЙ
ИНСПЕКЦИИ ПО ЭКСПЛУАТАЦИИ ЭЛЕКТРИЧЕСКИХ СТАНЦИЙ И СЕТЕЙ г. Москва,
просп. Вернадского, д.101, корп.3 |
|
Об
организации научно-технических
и инженерных
расчетов энергетики в Интернет
В настоящее время большое количество научно-технических расчетов в
энергетике реализовано в программной среде
Mathcad, которая позволяет, с одной стороны, сохранить естественную
форму записи формул расчета, а с другой – вставить в них мощный математический
аппарат (решение уравнений и систем – алгебраических и дифференциальных –
обыкновенных и в частных производных, работа с векторами и матрицами, решение
статистических задач, плоская и объемная графика, аналитические преобразования,
анимация, создание сложных пользовательских функций средствами встроенного
языка программирования, работа с единицами измерения и др.). Кроме того, в
среде Mathcad возможен
вызов функций по теплофизическим свойствам воды и водяного пара WaterSteamPro (см. www.wsp.ru и информационное
письмо № ИП-14-27-2001 от 03.08.2001
г.). В среду Mathcad могут быть интегрированы также такие широко
распространенные современные программные среды как Excel, MatLab и LabView. Все это делает программу
Mathcad одним из самых популярных средств выполнения инженерно-технических
расчетов инженерами-энергетиками.
В декабре 2003 г. в Московском энергетическом
институте (ТУ) введен в пробную эксплуатацию так называемый Mathcad Application
Server (MAS), позволяющий запускать на нем Mathcad-документы и обращаться к ним
дистанционно – через Интернет. Интернет-адрес уже установленных на MAS
расчетных методик, связанных с энергетикой – http://www.vpu.ru/mas. Там же можно найти ссылки на документы,
касающиеся технологии работы с MAS.
Технология MAS позволяет решить следующие проблемы:
• нет
необходимости ставить на компьютеры пользователей (инженеров-энергетиков и
научных работников) саму программу Mathcad, искать, проверять на отсутствие
вирусов и запускать прикладной файл; достаточно только подключить компьютер к
Интернет и обратиться к MAS через
браузер (Internet Explorer 5.5 и выше); при этом сохраняется полная иллюзия того, что
на компьютере открыт Mathcad-документ, в котором можно изменять исходные
данные, просматривать промежуточные результаты расчетов, а также все формулы и
считывать (распечатывать, сохранять на диске) ответ;
Технология
MAS решает проблему лицензирования работы с программой Mathcad: пользователю (электростанциям и
энергообъединениям) нет необходимости покупать саму дорогостоящую программу
Mathcad или ставить на компьютер «пиратскую» копию программы, а также постоянно
обновлять их – достаточно только обратиться к MAS и выполнить нужный расчет.
По вопросам
установки расчетных методик энергетики на MAS обращаться к Очкову Валерию
Федоровичу – mailto:OchkovVF@mpei.ru, тел./факс (095) 362-71-71.
В «Корпоративном образовательном и
научном центре ЕЭС» планируется провести серию семинаров по технологии
использования MAS в энергетике.
Начальник Департамента ГИЭС И.Ш. Загретдинов
· Русскоязычные книги по Mathcad http://www.exponenta.ru/soft/Mathcad/mathcad_book.asp
· Англоязычные книги по Mathcad http://www.mathcad.com/library/Print_Books.asp
· Статьи и книги В.Ф.Очкова по Mathcad http://twt.mpei.ac.ru/ochkov/work2.htm
MAS suggestions and errors list from
Valery Ochkov