2014 dxdy logo

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

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




Начать новую тему Ответить на тему На страницу 1, 2, 3, 4, 5 ... 7  След.
 
 Wolfram(Mathematica) vs Python для инженеров
Сообщение13.09.2019, 19:42 


23/12/07
1763
Хотелось бы поднять вопрос, что из двух языков имеет смысл преподавать инженерам (интеллектуальные транспортные системы) в качестве средств быстрого прототипирования и расчетов.
Wolfram (Mathematica) нравится в первую очередь универсальностью, последовательностью построения языка, работой "из коробки", но не нравится корявыми средствами отладки, средствами организации модульности, отставанием от библиотек Python по возможностям. Ну и, платная.
Python, честно говоря, не нравится вообще (не поддерживает нормально ни функционального, ни объектного программирования, во многом непоследователен, завязка на пакеты и т.п.). Поэтому все не могу решить, стоит ли делать переход на него (сейчас преподается Wolfram).
Кто что думает по этому поводу?

 Профиль  
                  
 
 Re: Wolfram(Mathematica) vs Python для инженеров
Сообщение13.09.2019, 19:54 


08/12/17
340
Если все необходимые возможности есть в python, то за преподавание на основе платной mathematica нужно жестоко карать. Вообще, за преподавание на основе платного ПО при наличии бесплатного, да еще и опенсорсного, аналога надо карать.

 Профиль  
                  
 
 Re: Wolfram(Mathematica) vs Python для инженеров
Сообщение13.09.2019, 20:47 


16/08/19
70
Для инженеров нужно R преподавать.

 Профиль  
                  
 
 Re: Wolfram(Mathematica) vs Python для инженеров
Сообщение13.09.2019, 20:54 
Заслуженный участник


09/05/12
25179
По-видимому, Mathematica в этом случае не может рассматриваться вообще (даже если исключить совершенно правильное соображение, высказанное alesha_popovich), у нее совершенно другая ниша. Python - может быть, но это тоже вариант так себе.

Если в будущей профессиональной деятельности инженеров предполагается действительно серьезный счет, то все эти игрушки нужно выкидывать и учить что-то серьезное. Если нет - Octave более чем достаточно (ну или уже упомянутого R, это тоже вполне осмысленный вариант).

 Профиль  
                  
 
 Re: Wolfram(Mathematica) vs Python для инженеров
Сообщение13.09.2019, 22:50 


23/12/07
1763
alesha_popovich в сообщении #1414917 писал(а):
Если все необходимые возможности есть в python, то за преподавание на основе платной mathematica нужно жестоко карать. Вообще, за преподавание на основе платного ПО при наличии бесплатного, да еще и опенсорсного, аналога надо карать.

По этой логике - раз есть Linux, учить работать на Windows - преступление.

vend в сообщении #1414926 писал(а):
Для инженеров нужно R преподавать.


всегда полагал, что R заточен под статистическую обработку данных и не покрывает ниши, которые покрывают Mathematica, Mapple, Mathcad и т.п. (те же символьные математические манипуляции ака символьное интегрирования/дифференцирование/решение уравнений и неравенств, проверка стат. гипотез с символьно заданными семействами распределений и т.п.)

Pphantom в сообщении #1414927 писал(а):
По-видимому, Mathematica в этом случае не может рассматриваться вообще (даже если исключить совершенно правильное соображение, высказанное alesha_popovich), у нее совершенно другая ниша.

Не соглашусь. Mathematica, даже по заявлению ее автора, изначально разрабатывалась как система, способная вместить все известные научные знания. Хоть это и немного амбициозно, но пока, надо признать, она с этой задачей более-менее справляется - сложно найти мат. модель, которую бы нельзя было бы изучать с ее помощью (вот тут можно глянуть области, которые она охватывает на данный момент: wolfram.com/language)

Насчет Octave. Я с ним не знаком, но судя по тому, что на офф. сайте, он все же заточен больше на численные методы.

 Профиль  
                  
 
 Re: Wolfram(Mathematica) vs Python для инженеров
Сообщение13.09.2019, 23:46 


11/07/16
825
alesha_popovich
Цитата:
Если все необходимые возможности есть в python, то за преподавание на основе платной mathematica нужно жестоко карать.

Мне неизвестны, в частности, реализации символьного интегрирования и решения ОДУ и ДУЧП в Python, сравнимые с таковыми в Мathematica.

 Профиль  
                  
 
 Re: Wolfram(Mathematica) vs Python для инженеров
Сообщение14.09.2019, 00:09 
Заслуженный участник
Аватара пользователя


30/01/06
72407
_hum_
Боюсь, проблема в том, что никто не знает, кроме вас, что нужно
    _hum_ в сообщении #1414915 писал(а):
    инженерам (интеллектуальные транспортные системы)

Более традиционные представления об инженерах не очень стыкуются с
    _hum_ в сообщении #1414959 писал(а):
    символьные математические манипуляции ака символьное интегрирования/дифференцирование/решение уравнений и неравенств, проверка стат. гипотез с символьно заданными семействами распределений
Скорее, инженерам нужны численные расчёты, численное решение уравнений и неравенств, работа с большими системами уравнений и неравенств (от с.з. до оптимизации). А названное вами - скорее для учёных (разных областей, так что тут тоже непонятно).

 Профиль  
                  
 
 Re: Wolfram(Mathematica) vs Python для инженеров
Сообщение14.09.2019, 00:29 
Заслуженный участник


09/05/12
25179
_hum_ в сообщении #1414959 писал(а):
По этой логике - раз есть Linux, учить работать на Windows - преступление.
Возможно, не так радикально, но что-то в этом есть. :-)
_hum_ в сообщении #1414959 писал(а):
всегда полагал, что R заточен под статистическую обработку данных
В принципе да, но и вычислительные задачи общего характера тоже можно решать.
_hum_ в сообщении #1414959 писал(а):
и не покрывает ниши, которые покрывают Mathematica, Mapple, Mathcad и т.п. (те же символьные математические манипуляции ака символьное интегрирования/дифференцирование/решение уравнений и неравенств, проверка стат. гипотез с символьно заданными семействами распределений и т.п.)
Не покрывает (Mathcad не в счет). Но вы уверены, что инженерам нужна аналитика в таких объемах, что CAS становятся необходимым инструментом? Это какие-то более чем необычные инженеры.
_hum_ в сообщении #1414959 писал(а):
Mathematica, даже по заявлению ее автора, изначально разрабатывалась как система, способная вместить все известные научные знания. Хоть это и немного амбициозно, но пока, надо признать, она с этой задачей более-менее справляется - сложно найти мат. модель, которую бы нельзя было бы изучать с ее помощью (вот тут можно глянуть области, которые она охватывает на данный момент
Знаете, это просто несерьезно. Эти "все известные научные знания" - в основном игрушки для школьников, зачем (кроме как с рекламными целями) всю эту шелуху нужно было приделывать к неплохой в целом системе компьютерной алгебры, совершенно непонятно.

Вы можете все же внятно сформулировать, кого и зачем вы пытаетесь готовить?

_hum_ в сообщении #1414959 писал(а):
Насчет Octave. Я с ним не знаком, но судя по тому, что на офф. сайте, он все же заточен больше на численные методы.
Естественно. А вам реально нужно что-то другое? Судя по названию, это может быть еще работа с базами данных, но и тут Mathematica, мягко говоря, не при чем.

 Профиль  
                  
 
 Re: Wolfram(Mathematica) vs Python для инженеров
Сообщение14.09.2019, 11:13 


23/12/07
1763
Munin
Это инженеры в университете. Соответственно, они сталкиваются не только с чисто прикладными задачами, но и с теоретическими (наподобие, построить/исследовать аналитическую модель движения транспортного потока в таких-то условиях [для общего представления о проблематике: https://en.wikipedia.org/wiki/Traffic_flow], модель эффективности функционирования участка дорожной сети, регрессионные модели колебания транспортного спроса и аварийности и проч. [кому интересно, могут глянуть Иносэ Х., Хамада Т. "Управление дорожным движением"]).

То есть, в общем случае нужен широкий спектр мат. моделей и методов их исследования. В этом плане Mathematica как нельзя лучше для этого подходит.

Pphantom в сообщении #1414980 писал(а):
Знаете, это просто несерьезно. Эти "все известные научные знания" - в основном игрушки для школьников, зачем (кроме как с рекламными целями) всю эту шелуху нужно было приделывать к неплохой в целом системе компьютерной алгебры, совершенно непонятно.

Как сказать. Вот не далее как вчера еще раз восхитился накопленными в Mathematica математическими знаниями, а именно, нашел возможность аналитически рассчитывать вероятности (в том числе условные) событий, связанных со случайной величиной, по ее распределению: wolfram/Probability. То есть, вы одной строчкой можете спросить, какова вероятность события "$\xi ^2  + \eta ^2\leq 1$ и $\xi  + \eta  \leq 1/4$", если $(\xi, \eta)$ - случайный вектор, имеющий Дирихле-распределение с заданными параметрами. Впечатляет (раньше для этого пришлось бы расписывать события, сводить это к кратным интегралам, а те к повторным).

Pphantom в сообщении #1414980 писал(а):
Вы можете все же внятно сформулировать, кого и зачем вы пытаетесь готовить?

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

На всякий случай: wiki/Инженерное_дело#Настоящее_время

 Профиль  
                  
 
 Re: Wolfram(Mathematica) vs Python для инженеров
Сообщение14.09.2019, 12:07 


16/08/19
70
_hum_ в сообщении #1414959 писал(а):
всегда полагал, что R заточен под статистическую обработку данных и не покрывает ниши, которые покрывают Mathematica, Mapple, Mathcad и т.п. (те же символьные математические манипуляции ака символьное интегрирования/дифференцирование/решение уравнений и неравенств, проверка стат. гипотез с символьно заданными семействами распределений и т.п.)


Слушайте, вы совершенно неправильно поставили вопрос. А разве Python покрывает хоть что-то из того что вы описали? НЕТ! Ни один язык программирования не покрывает. Mathematica, Mapple, Mathcad это всё математические пакеты, а не языки программирования. Python, R, ... это языки программирования. Они несовместимы. Так что у вас несовместимый выбор, математический пакет или язык программирования. Это всё равно что спрашивать небо или земля? Трактора или компьютеры?

Для начала определитесь что вам нужно, обсчитывать любые большие математические данные (не только статистические) и строить продвинутые графики или проводить символьные вычисления, потому что пакеты с символьными вычислениями совершенно неспособны делать первые две задачи нормально. Что вам нужно - язык программирования или математический пакет?

PS. R естественно универсальный высокоуровневый язык заточенный на любые математические/вычислительные расчеты больших массивов данных и построения продвинутых графиков с оформлением всего этого в финальную документацию (на выходе прямо готовый документ необходимый заказчику).

 Профиль  
                  
 
 Re: Wolfram(Mathematica) vs Python для инженеров
Сообщение14.09.2019, 12:14 
Аватара пользователя


11/06/12
10390
стихия.вздох.мюсли
vend в сообщении #1415016 писал(а):
Mathematica, Mapple, Mathcad это всё математические пакеты, а не языки программирования.
По меньшей мере касательно Математики это неправда. WL вполне себе ЯП, а Математика — одна из его реализаций.

 Профиль  
                  
 
 Re: Wolfram(Mathematica) vs Python для инженеров
Сообщение14.09.2019, 12:20 


16/08/19
70
Правда, большую программу на языке Математика не напишешь, и не пишут - ни разу не видел. Математика это именно математический пакет входным для которого является фунциональный язык. Математика - это не язык программирования, это язык программы Математика. Это большая разница.

 Профиль  
                  
 
 Re: Wolfram(Mathematica) vs Python для инженеров
Сообщение14.09.2019, 13:00 
Аватара пользователя


11/06/12
10390
стихия.вздох.мюсли
vend в сообщении #1415018 писал(а):
большую программу на языке Математика не напишешь, и не пишут
Это потому, что там одной строкой можно сделать то, для чего на другом языке потребуется двести.
vend в сообщении #1415018 писал(а):
Математика - это не язык программирования, это язык программы Математика. Это большая разница.
Поясните, пожалуйста, в чём она.

 Профиль  
                  
 
 Re: Wolfram(Mathematica) vs Python для инженеров
Сообщение14.09.2019, 14:19 
Заслуженный участник


09/05/12
25179
_hum_ в сообщении #1415013 писал(а):
Соответственно, они сталкиваются не только с чисто прикладными задачами, но и с теоретическими (наподобие, построить/исследовать аналитическую модель движения транспортного потока в таких-то условиях [для общего представления о проблематике: https://en.wikipedia.org/wiki/Traffic_flow ], модель эффективности функционирования участка дорожной сети, регрессионные модели колебания транспортного спроса и аварийности и проч. [кому интересно, могут глянуть Иносэ Х., Хамада Т. "Управление дорожным движением"]).
Хорошо, зайдем с другого конца. Объемы преподавания математики у них какие? Можно для простоты только список названий предметов с примерным количеством аудиторных часов.

А то использование любой CAS подразумевает понимание, что именно эта CAS делает (т.е., в частности, хотя бы принципиальную способность проделать это самому).
_hum_ в сообщении #1415013 писал(а):
Вот не далее как вчера еще раз восхитился накопленными в Mathematica математическими знаниями, а именно, нашел возможность аналитически рассчитывать вероятности (в том числе условные) событий, связанных со случайной величиной, по ее распределению
Если выражаться проще, вы нашли, что математический пакет умеет делать что-то математическое. :-) Это, конечно, хорошо, но это совсем не то же самое, что "все известные научные знания", особенно если речь идет о других областях, не о математике.
_hum_ в сообщении #1415013 писал(а):
людей, нацеленных на эффективную организацию дорожного движения с помощью информационных и телекоммуникационных технологий.
Т.е. не можете? Людей, нацеленных на что-то с помощью модных в этом сезоне слов, многие готовят (и с неизменно одинаковым успехом). В данном случае требуется описание, какие конкретные задачи эти люди должны уметь решать.

 Профиль  
                  
 
 Re: Wolfram(Mathematica) vs Python для инженеров
Сообщение14.09.2019, 15:52 


16/08/19
70
Aritaborian в сообщении #1415025 писал(а):
vend в сообщении #1415018 писал(а):
большую программу на языке Математика не напишешь, и не пишут
Это потому, что там одной строкой можно сделать то, для чего на другом языке потребуется двести.


Отнюдь не поэтому, хватает языков столь же лаконичных как и язык ВольфрамМатематики (тот же R). Причина совсем в другом, в реальной неприспособленности этого языка к разработке программ.

Цитата:
vend в сообщении #1415018 писал(а):
Математика - это не язык программирования, это язык программы Математика. Это большая разница.
Поясните, пожалуйста, в чём она.

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

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 101 ]  На страницу 1, 2, 3, 4, 5 ... 7  След.

Модераторы: Модераторы, Супермодераторы



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

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


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

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