2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Сравнение интерфейсов математического ПО
Сообщение29.11.2012, 12:04 


29/11/12
3
Так уж случилось, что после многолетнего перерыва мне опять необходимо делать расчёты.
Поскольку времени прошло много (~15 лет), кроме того ось сменилась с Windows на Linux, сейчас пришлось наново пересмотреть предложения открытого и закрытого рынка в этом направлении. Программ немало, я насчитал навскидку такие: Maxima, Octave, Scilab, Sage, SMathStudio, Mathematica, Matlab, Maple (системы компьютерной алгебры упоминаю вместе с численными, ибо они тоже умеют считать). Наверное, еще есть, но и этого для начала хватит. Подобрал немного литературы, немного почитал. Вот какие впечатления от этого.
Практически все (да наверное все) авторы книг и документации характеризуют свой предмет исследования на ура. В любой программе можна сделать все, если не стоят экзотические и архисложные задачи. А вот вопрос практической работы в ПО как-то обходится стороной. Для авторов этих книг зачастую бедность средств визуализации формул, контроля за вычислениями, отладки ошибок, внесения правки - не проблема, они не придают этому должного значения. И это все так, я начинаю уже думать, может я чего-то не так понимаю? Как вариант - эти средства существуют, просто нужен дельный совет.
Теперь немного детальнее о том, что я хочу здесь донести.
После окончания ВУЗа были знания Pascal и MathCad. Тогда я четко понимал разницу между ними, что в чём лучше делать (ну конечно, это касается тех задач, которыя я решал). Всегда лучше было для меня иметь реализованный алгоритм или методику какого-то расчёта в Pascal, но опыт показывал, что этот расчёт целесообразно сначала сделать расчёт одного варианта вручную, потом программирование идёт быстрее. Расчёт вручную замечательно выполнял MathCad. Его преимущества при этом следующие.
- Формулы вводятся в натуральном виде с учётом многоэтажности, греческих букв, других символов, индексов и т.д. Как результат нет необходимости составлять таблицу идентификаторов, значительно уменьшается количество ошибок при вводе формул;
- Введенные формулы и результаты отображаются в одном месте, что улучшает контроль за расчётом;
- Лёгкость внесения правки - возвращаешся на место, где введена формула, вносиш исправления, больше ничего делать не надо.
Конечно, есть и недостатки - отсутствие средств контроля за выполнением некоторых важных функций (напр., корень уравнения решается слишком долго, или результат какой-то не такой, как ожидалось), ограниченность средств программирования (вплоть до невозможность решать задачу).
Некоторые математические программы вроде бы лишены таких возможностей (как и недостатков) и ведут себя как традиционные языки программирования, и непонятно, чем они лучше за Pascal, Fortran, Python... Недостающие функции можно постепенно реализовать, но владения языками программирования даёт возможность делать не только математические расчёты. Есть еще базы данных, работа з графикой, выполнение программы под клиента... Выходит так, что учить ещё один язык программирования нецелесообразно.
Из всего этого пока я вижу больше пользы в уклоне в сторону возможностей а-ля MathCad.
Это первый вопрос, по которому хотелося бы услышать мнение опытных и не очень пользователей.
Второй вопрос - хочу услышать мнения касательно выбора ПО и техники работы в интерфейсе этого ПО для выполнения разных задач. Именно:
1. Продвинутый калькулятор. Пример: необходимо линейкой и транспортиром снять некоторые данные с карты и быстро сделать пересчет по нескольким формулам.
2. Выполнение и оформление лабораторной работы. Ну, например, какая-то статистика - ввести данные, штук 30-40, по формулам сделать расчёт, построить график и таблицу с результатами.
3. Выполнения расчётного алгоритма, который содержит 20-30 формул, есть итерационные циклы, условия.
Добавление новых задач приветствуется.

В конце ещё хотел вернуться к перечню ПО, который я привёл вначале. Конечно, я понимаю и придаю должную важность разделению ПО на свободное и платное. Пока что мое мнение таково, что платное ПО важно для обучения, начальных шагов. Оно документировано, оснащено примерами. Когда научился, запомнил синтаксис, получается - можно переходить на гнутые программы. Особняком стоит SMathStudio. Оно самое близкое к MathCad (лидеру моего сообщения), свободно сейчас, но не открыто и таким в перспективе не будет (иначе не понятно, почему автор его не открывает). Делание ставки на него может оказаться неперспективным по двум причинам: закрытость в перспективе или же медленное развитие вплоть до прекращения, ибо автор действует в одиночку.
Это третий вопрос, который хотелось бы обсудить.
Спасибо всем, кто дочитал до конца. Надеюсь на полезный обмен мнениями.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group