Архивы: по дате | по разделам | по авторам

Mathcad 2000 - глазами инженера

Архив
автор : НИКОЛАЙ ЯХОВИЧ    08.02.2000

- 2000? Это больше повод, чем проблема.
Из подслушанного




В данном случае - это повод познакомиться с очередной версией популярной математической среды обитания. Именно обитания - ведь в Mathcad'е можно не только работать, но и существовать в нем, создавать свои собственные Mathcad'овские миры, властвовать ими, волноваться за них и в случае удачи - гордиться. Каковы же они - миры 2000? И не только в отношении Mathcad'а; оглянитесь вокруг - витрины и прилавки, и, кажется, само небо вопиет: "2000!" Конечно, принципы, если они есть, нашей рекламы - лучше пересолить, чем недосолить, да и магия числа завораживает; правда, почему-то больше продавцов, чем покупателей. Видимо, человечество, разделенное прилавком на две свои лучшие половины, имеет и различные позиции по отношению к большим цифрам с нулями. Однако маркетингу - маркетингово, а инженеру - что достанется, пора взглянуть на новенького.

Непросто, и очень непросто, рассказывать о Mathcad'е после Очкова. Он Гуру, и без него многие захватывающие возможности программы остались бы втуне. Но, отдав дань Учителю и помолясь в душе...

Итак, Mathcad 2000 - первые впечатления. Увы, как бы кто ни преклонялся перед этой уникальной программой, вплоть до утверждения, что прогресс не остановился бы, если из всего прикладного обеспечения остались бы Autocad и Mathcad, причем первый - более в силу необходимости, а второй - в силу гениальности, - начальный блин вышел "как всегда".

Представьте себе, как, налюбовавшись на setup'овские картинки и предвкушая радость новых впечатлений, вы запускаете в двухтысячнике один из своих файлов и... "ждите ответа...". Ожидание почему-то затягивается. Быстренько проверяем тот же файл в 7-й версии - 10 секунд. Снова Mathcad 2000 - аж 29 секунд. Далее по расписанию - поиск причин и следствий. Точность та же, заменяющих функций на первый взгляд нет. Что ж, пора, видно, залезать в Resource Center. Эх, кто бы нас пожалел - больше десятка лет учить немецкий или французский язык, а теперь скакать по английским help'ам, не опасаясь (или опасаясь?) за свой рассудок.

Тут же натыкаемся на новинку - возможность решения дифференциальных уравнений в блоке Solve через функцию odesolve. Прекрасно, надо запомнить, но, увы, это не прибавляет скорости.

И... открытие. Теперь, чтобы отследить источник ошибки, достаточно нажать правую кнопку мыши и выбрать Trace Error (эх, на годик пораньше бы - вот вам еще одно подтверждение вселенской универсальности, а главное, крепости заднего ума). Срочно оборудуем ошибку, упрятав "засланного казачка" поглубже в один из вложенных программных модулей. И что же? Отследив все обращения к источнику ошибки, бедолагу "Даньку" засвечивают в момент - инкриминируется выход из размерности массива. После такой демонстрации я, к примеру, почти созрел предать забвению мечты о быстроходности, радуясь за тех, кому не придется изощряться при отладке программных участков своих расчетов, и печалясь о своей зарплате, плачущей, в свою очередь, по Pentium III. По поводу последнего рассуждения незабвенный Бегемот воскликнул бы: "Я восхищен!" Именно он, как известно, неизменно отдавал дань "хорошо упакованным силлогизмам".

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

Оказалось (да здравствует Mathcad!) - возможно. Но путь до "оказалось" был, смею вас заверить, весьма непрост. И как пригодился бы тогда Trace Error. Ну, кто старое помянет... в любом случае, получив (надеюсь, надежный) инструмент контроля и поиска ошибок, пользователи ответят адекватным увеличением объемов вычислений на Mathcad'е. Что до "надеюсь" и тем более "надежный", понятно, оговорки необходимы - кто знает, как поведет себя контрразведка в предстоящей нелегкой борьбе с ошибками. Да и у нас в стране, если уж делают ошибки, так исправлять их приходится за несколько подходов, стирая и заново раскрашивая красные дни в календарях или издавая свои собственные - для коренных народов.

К слову, о цвете, цветиках и графике. Кто сейчас поверит утверждению, что можно добиться благосклонного внимания заказчика, проиллюстрировав расчеты черно-белым, двухмерным графиком. А теперь оглянитесь вокруг: это не Photoshop, это обыкновенные, если, конечно, можно назвать обыкновенным все связанное с Mathcad'ом, результаты вычислений.

В части таких красивых поверхностей можно предсказать замечательный успех новой функции со странным названием Polyhedron; здесь, конечно, настораживает некоторая тетразвездность результатов, но не будем смешивать политику с математикой, не забывая, что произошло в свое время с другим Сиамом - политэкономией.

А если вас не устраивает старый добрый Декарт и все это затр... ехмеренное пространство, - пожалуйста, пользуйтесь четвертым измерением - анимация к вашим услугам. Для тех, кто видит цветные сны и очень хочет увидеть их наяву: загляните в раздел Graphing and visualization того же Resource Center, туда, где показано, как превратить в цветную реальность самые серые математические фантазии. Причем в равной мере все это работает и с объемом, только, конечно, много медленнее, и труднее добиться ярких оттенков, особенно действуя наугад. Попробуйте и почувствуйте себя Алисой в Зазеркалье.

Удивительно, что нет раздела Sound, наверное, эту конфетку готовят к следующему веку. Но имеющегося вполне достаточно, чтобы заблудиться в многомерности и запутаться в многозначности. Хотя по поводу многозначности все рекорды бьет фраза, то ли из анекдота, то ли вправду из какого-то послекризисного договора: "Оплата по факсу...". Вот уж где простор для поиска фантастических решений. Опять на ум приходит удивительный кот: "Уплочено!" Но это, кажется, по поводу мандаринов, керосина и прочей частной торговли.

Конечно, нельзя удержаться и не попинать раздел символьных вычислений Mathcad'а. Правда, можно подозревать, что все инсинуации по поводу символьных преобразований исходят из зависти к более продвинутому конкуренту и сводятся в конце концов к одному: кто здесь хозяин творческого процесса, мы - люди, или они - машины (клопы). Хотя после того, как Каспаров проиграл в шахматы какому-то "голубому" компьютеру, вопрос решен, и, увы, не в нашу пользу.

Но, столкнувшись с преобразованием формул длиной в несколько сотен переменных, хочется чего-нибудь такого, автоматического, например, упростить - Simpify, или вынести за скобки - Collection. Ан нет, как и всякая другая творческая личность, когда ее заставляют выполнять рутинную работу, Mathcad встает на дыбы: он, видите ли, сыт по горло вашими формулами, короче - stack overflow, и приехали. Причем двухтысячный еще и издевается - предлагает переслать результат в буфер и даже может предъявить по требованию, но... в формате Maple. По секрету могу предложить способ обма... обхода ограничений, срабатывает, конечно, только в более "простой" седьмой версии. Делается так: берете ту самую, ну очень длинную Формулу, разбиваете ее знаком плюс с переносом (вот к чему эти многоточия), и пожалуйста, наслаждайтесь прелестями символьной математики.

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

И, несомненно, Mathcad 2000 сильно обрадует аспирантов, особенно ту их, частично ленивую, частично гениальную породу, что готовы по трем замеренным точкам вывести новую формулу или подтвердить закономерность, приснившуюся шефу в прошлую среду; одним словом, при помощи аппроксимации перевернуть мир, а заодно защитить диссертацию. Конечно, мир усложнился, если для переворота требуется наличие трех, а не одной точки опоры, что, несомненно, убеждает в правоте концепции прогресса, как в целом, так и прогресса Mathcad 2000 в частности.

Отдельного и более обстоятельного разговора требуют, по-видимому, средства связи Mathcad 200 с другими приложениями. Вероятно, кого-нибудь приведет в состояние устойчивой прострации возможность использования Mathcad-выражений в Excel и прямая связь с Autodesk-приложениями. Ну, по поводу связей, альянсов и мезальянсов сломано немало копий, а в большинстве случаев самым надежным оказывается использование для обмена данными обычного текстового файла, тем более что в Mathcad'е есть специально выделенные для этого функции и нет необходимости выдумывать что-то свое.

Наверное, те, кто любит следить за развитием сюжета, с нетерпением ожидают окончания поиска причин некоторой заторможенности нового Mathcad'а, но, как любил говорить один старый еврей своим наследникам: "Не дождетесь!" А погадать о возможных причинах - пожалуйста. Наиболее вероятным представляется запарка разработчиков фирмы перед новым коммерческим годом и запуск отладочной версии как 2000-й. Менее вероятен сговор с производителями hard'а, и совсем не хочется верить, что всему виной красивые новинки и особенно вызывающий восхищение Trace Error, в своей дотошности проверяющий уже работающие функции.

И прошу не обвинять меня в консерватизме, но, по моему убеждению, к Mathcad 2000 следует обращаться только в смутные периоды неудачных отладок или для наведения цветного глянца на результаты вычислений, а считать "по старинке" - в надежной, проверенной "семерке".



Николай Яхович - главный инженер конструкторской фирмы, работает в Mathcad с версии 2 (под DOS). Возраст (около 40 лет) и двое детей позволяют говорить об устоявшейся жизненной позиции и правильном месте Mathcad в авторской картине мира. Тов. Н. С. Яхович именно работает с программой.

© ООО "Компьютерра-Онлайн", 1997-2022
При цитировании и использовании любых материалов ссылка на "Компьютерру" обязательна.