Mathcad і b>
MAS - що це таке b>
p>
Дуже
часто відвідувачі різного роду комп'ютерних форумів
задають питання, що стосується вибору програм для розрахунків, просять дати порівняння
математичних пакетів і відзначити їх сильні та слабкі сторони. Такі питання
ініціюють сплески дискусій, де сперечаються швидко забувають про попит і про
його «розрахункових» потребах і починають бурхливо обговорювати якісні і кількісні
характеристики пакетів, які у всіх на слуху: Mathcad, MatLab, Mathematica,
Maple та ін p>
Своєрідна
спроба «кількісного» порівняння цих пакетів була зроблена, наприклад, на
сайті користувачів MatLab (http://www.matlab.ru/). Там вівся онлайновий опитування
відвідувачів - запитувалося, який пакет вони використовують для розрахунків. p>
Природно,
смужка, візуалізуються відсоток прихильників того чи іншого пакету, у слова
«MatLab» завжди була найдовша - адже на цей форум в основному і заходять користувачі
MatLab. Інші або заблукали, або зайшли на «чужий» форум з цікавості
- Що, мовляв, там обговорюють - такі ж проблеми, з якими я сам стикаюся в
свій пакет, або щось інше ... Але всі прекрасно розуміють, що це ніякий не
опитування, а чистої води піарівська акція, а в це, на жаль, перетворюються майже всі
опитування. З таким же успіхом можна судити про доходи та споживчих
перевагах росіян за результатами опитування москвичів біля входу в дорогий
супермаркет. Згадуємо ж ми про це опитуванні лише тому, що там знову
фігурували «Mathcad, MatLab, Mathematica, Maple та ін» - «чудова
четвірка »комп'ютерної математики. p>
Але
в ряду програм немає найбільш затребуваною програми розрахунків на персональних
комп'ютерах - електронних таблиць. Але ж, більше 90% всіх комп'ютерних розрахунків
проводяться в середовищі цього невід'ємного компонента електронного інженерного
офісу. Ми поки що не будемо говорити про ступінь складності розв'язуваних завдань, про їх
особливої специфіки. Але навіть якщо у нашій статистиці враховувати якийсь коефіцієнт
складності завдань (Excel - 1, Mathcad - 2 ... Mathematica - 10, приміром, і т.д.),
то все одно Excel «заб'є» все інше. Навіть без обліку бухгалтерських
розрахунків. Mathcad ж займе в цьому рейтингу «почесне» друге місце. З
кількістю «розібралися». А тепер поговоримо про якісну сторону питання. P>
Можна
стверджувати, що біда пакету Mathcad (біда в тому сенсі, що його весь час
намагаються порівняти з пакетами MatLab, Maple, Mathematica, а самих користувачів
Mathcad безперервно вмовляють перейти на більш «серйозні» пакети) в його ...
назві - у цьому самому «Math», вірніше тільки в «Ma
».
Пакет Mathcad (і на цьому наполягають його розробники) треба порівнювати не з
пакетами MatLab, Maple, Mathematica, а з електронними таблицями. Mathcad
створювався як програмний засіб, альтернативне електронних таблиць. І не
електронних таблиць сучасним, а тим, які були на момент створення перших
версій Mathcad. Хоча органічні недоліки електронних таблиць, які
спробували обійти (нівелювати) розробники Mathcad, так і залишилися в
останніх версіях Excel. Змалюємо їх коротко. P>
Електронні
таблиці підкуповують своєю простотою, і це одна з причин їх високої
популярності: беремо вміст двох осередків (клацнемо по них курсором миші),
складемо їх, а відповідь (суму) помістимо ось тут! На клавіатурі при цьому натискається
всього лише пара клавіш - «одно» і «плюс». p>
Але
ця простота, як це часто трапляється, виявляється «гірша за крадіжку»: у
розрахунках, створених за допомогою електронних таблиць, не зможе розібратися не
тільки інша людина, що бажає розвинути їх або просто перевірити правильність
закладених методик і формул, але часто і сам розробник. Цей недолік
намагалися виправити, інтеграцією в електронні таблиці мов
програмування (VBA для Excel, наприклад) та інших корисних інструментів. Але
при цьому виходило так, що «від чого пішли - до того і прийшли»: електронні
таблиці, як, втім, і сам Mathcad створювалися як пряма альтернатива мов
програмування - того ж мови BASIC, наприклад. Але закритість розрахунків у
електронних таблицях дуже заважає їх активного використання (активного в
сенсі можливості вивчення, перевірки та модернізації) у першу чергу в сфері
освіти. А це основний споживач математичних пакетів. Бухгалтеру або
інженеру, якщо він не створює свої власні розрахункові методики, достатньо
ввести дані і вважати відповідь. Викладачам ж і студентам відповідь, як
правило, не дуже і потрібна - важливе вивчення шляху до відповіді. Написати однієї
рядком у текстовому режимі більш-менш складну формулу в клітинку Excel або
рядок VBA ще можна, але проаналізувати її, показати її студентам для
ілюстрації фізичного явища або технологічного процесу, пов'язаного з
цією формулою, вкрай важко. У середовищі Maple, наприклад, формула вводиться теж у
текстовому режимі, але тут же переводиться у вид, до якого людство звикло
задовго до появи комп'ютерів. p>
За
це Mathcad і хвалять (ті, хто набив звик до такого графічного способу введення
формул), і лають (природно, ті, хто так і не відірвався від текстового,
DOS-івського інтерфейсу). А можна сказати й так - фірми-розробники, що залишилися
вірними текстового режиму введення інформації у формулах, були далекоглядними, навіть
не усвідомлюючи це. Справа в тому, що текст - це поки основний спосіб оперативної
передачі даних у мережі Інтернет (див. далі рис. 2.7, наприклад). p>
«Ахіллесова
п'ята »пакета Mathcad в його назві, що як би авансом приписує цю
програму до «елітного клубу» математичних пакетів. Друга біда в тому, що
розробники Mathcad, може бути, через бажання відпрацювати цей аванс весь час
«Підтягували» цю програму до математичних пакетів, вставляють у нього все
нові і нові математичні інструменти. Багато хто з них виявилися дуже
корисними і затребуваними, а інші ж тільки чинили пакет. Так, наприклад,
у Mathcad 11 вставлені інструменти рішення диференціальних рівнянь в приватних
похідних (див. http://twt.mpei.ac.ru/mas/worksheets/pde_Temperature.mcd,
наприклад), хоча всі розуміють, що скільки-небудь складну задачу цими
інструментами не вирішити. Можна лише показати студентам, що це таке --
диференціальне рівняння в приватних похідних і як можна підійти до його
рішенням. Для складних і реальних завдань потрібно брати інші пакети або навіть (і
швидше за все) розробляти індивідуальні алгоритми, що, до речі, можна
чудово робити і в середовищі Mathcad. От і починають порівнювати пакет Mathcad з
Maple або MatLab, де ці інструменти більш розвинені. І порівняння це, звичайно,
не на користь Mathcad. У включенням в Mathcad спеціалізованих, а не общематематіческіх
інструментів розробники Mathcad як би самі підставляють себе під вогонь
критики і штовхають пакет на тупиковий шлях розвитку - на шлях, який вже давно
пройшли «справжні» матпакети. Б'є це і за традиційними користувачам Mathcad,
які не такі сильні в математиці, та й не відчувають особливої потреби в ній для
вирішення своїх рутинних завдань. Нові складні інструменти нових версій Mathcad
часто тільки бентежать таких користувачів, зайвий раз як би закидаючи їх у
незнання якихось спеціальних розділів математики. Та й накладно все це в
фінансовому плані - нові версії Mathcad з несуттєвими змінами
з'являються ледь не щороку. p>
Тут
видається оптимальним не підключати до 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 гарний тим, що розрахунок, виконаний з його допомогою,
може читати людина, нічого не знає про це пакеті. p>
У фірми MathSoft
Engineering & Education. Inc,
- У розробника Mathcad є, до речі, програмний продукт без особливих
«Математичних» претензій, але з усіма достоїнствами популярною і
затребуваною програми для рутинних інженерних розрахунків на комп'ютері. Це
пакет StudyWorks (http://www.studyworksonline.com/), який широко
використовується в старших класах шкіл США. Успіх цього пакету пояснюється і тим,
що в нього інтегровані електронні підручники по всіх базових шкільним
дисциплін: математика, фізика, хімія, інформатика і т.д. Можливості пакету
багато в чому покривають і програму вищої школи, по крайней мере, для тих вузів і
спеціальностей, яким не потрібна «особлива» математика. Так, у меню Algebra (рис.
1.5; в середовищі Mathcad воно називається Symbolic) зібрані необхідні команди
символьної математики (рішення рівнянь, взяття похідної, пошук
первісної тощо), але прибрані специфічні - інтегральні перетворення,
наприклад. Ядро пакета невелике, але при необхідності його можна «наростити»
електронними підручниками. Крім того, пакет StudyWorks, як і Mathcad доповнений
довідковим матеріалом. Якщо цього не вистачає для вирішення задачі (домашнього
завдання з математики, наприклад), тобто on-line вихід в Інтернет (StudyWorks!
On-line), включаючи і вихід на спеціалізований форум (HomeworkHelp). P>
Сам
ж Mathcad, як відзначають багато користувачів і ми підкреслили вище, дуже
перевантажений, хоча до кінця так і не «доріс» до «дорослих» математичних
програм. Якщо цю «перевантаження» зняти - винести, наприклад, спеціалізовані
інструменти у відокремлені пакети (надбудови, електронні підручники), то і
вийде цей самий недорогий і неглючний StudyWorks, придатний для ведення
величезної кількості рутинних науково-технічних розрахунків. p>
Доля
Mathcad досить невизначена і нестабільна. Вірніше, скажімо так - вона дуже
хвилює автора і багатьох інших його колег. Добре б, якщо б цей пакет
проковтнула б «всеїдна» фірма Microsoft і зробила Mathcad, наприклад, якоїсь
утилітою тих же електронних таблиць
так, щоб
користувач Excel міг в особливому аркуші Excel-книги зберігати складні формули,
будувати «наукові» (а не «ділові») графіки, працювати з фізичними величинами і
т.д. p>
Інший
сценарій: пакет Mathcad повинен повернутися на ринок після істотної
переробки та з новою назвою - без багато до чого зобов'язує приставки «Math». p>
Третій
сценарій. Розробники Mathcad звільнять основну масу користувачів від
обов'язки і потреби купувати сам пакет і регулярно оновлювати його, а
заодно оновлювати (замінювати) операційну систему і навіть сам комп'ютер. Цей
сценарій вже частково реалізується. Мова йде про так званий Mathcad
Application Server (див. www.mathcad.com/server, www.vpu.ru/mas), на якому
проводяться розрахунки різного ступеня складності в режимі віддаленого доступу. Зв'язок
ж з цим сервером здійснюється через Internet: користувач (клієнт сервера)
шле на сервер свої дані і отримує відповідь. При цьому у користувача
зберігається повна ілюзія, що він відкрив Mathcad-документ і працює з ним.
Значному кількості користувачів Mathcad потрібен не для розробки
власних складних алгоритмів, а для вирішення рутинних математичних задач:
побудова графіків, рішення рівнянь і систем (алгебраїчних,
диференціальних), нескладна статистика і т.д. і т.п. (див. розділ Різне в
Додатку «Зміст MAS ...»). Такі завдання не повинні вимагати розробки
власних програм - вони давно вже розроблені і грунтовно протестовані.
Основна проблема тут - доступ до цих програм, що є основною метою
MAS. P>
Якусь
нестабільність пакету Mathcad в її сучасному вигляді відчувають навіть його розробники.
Вони, звичайно, в цьому відкрито не визнаються і навіть ображаються на які стверджують це.
Але ця нестабільність відчувається за непрямими ознаками. Головний з них - вже
зазначене невиправдано часте оновлення версій Mathcad і посилають навздогін
«Латочки». P>
Але
основна перевага Mathcad (як, втім, і Excel) в порівнянні з іншими
розрахунковими пакетами полягає в тому, що Mathcad не вимагає особливої комп'ютерної та
математичної підготовки для вирішення задач середньої складності. Якщо з пакетом
Mathcad довго не працювати, то навички роботи з ним не забуваються і при
необхідності можна відразу приступити до вирішення виниклої розрахункової задачі.
«Конкуренти» ж Mathcad, реальні та уявні вимагають безперервного тренаж інакше
відновити навички буде досить важко. p>
Отже.
Пакет Mathcad відірвався від недосконалих і примітивних
,
але, тим не менше, (або «тим самим») дуже популярних електронних таблиць і став
«Дрейфувати» у бік «елітних» математичних програм, але так і не дістався
до них. Продовжуючи «корабельні» аналогії, можна стверджувати, що у Mathcad є
свій власний «курс» і досить численні «пасажири», які не
збираються пересідати на інші кораблі. Бентежить цих «пасажирів» (не
всіх, звичайно) і пасажирів інших судів (судів іншого класу) тільки те, що
на кораблі вивішений прапор з літерами «Math». p>
Список літератури b> p>
Для
підготовки даної роботи були використані матеріали з сайту http://twt.mpei.ac.ru
p>