Приветствую вас. Есть такая книга в которой ставится математическая задача, затем составляется математическая модель с полным объяснением и затем строится на языке программирования. На данный момент хочу научится решать математические задачи+реализовывать их программно, что то типа, часто встречающихся задач по программированию и высшей математике. Цель - это свободно решать математические уравнения+составлять для них программы. Может быть у вас есть другая точка зрения по этому поводу?
У меня точка зрения - скачай масм , поставь себе задачу - решить уравнение 2+2=? и РЕАЛИЗУЙ её решение. Или - купи гуся и ...
Для таких целей используется пакеты Маткад, матлаб, а на решение задач скажем на С/C++ уйдет больше времени..
Есть такая программка Maple она служит для вычислений. Программка хороша тем что она делает символьные вычисления (преобразование формул), а также числовые и позволяет составлять программы на своем языке. Развитие вычислительной технике привело к возможности решения дифференциальных уравнений в численном виде. Не все дифференциальные уравнения можно решить аналитически, а только численно. Но это сейчас считается старой школой. С развитием вычислительной технике появилось множество алгоритмов. Часть из них математически, но часть логические. Даже строгой границе назвать трудно так как математика она повсюду. Если ко второй части можно отнести структуры данных. То в первую входит большой класс нечеткая логика(нейронные сети), датамайниниг, распознавание образов, минимизация(оптимизация), решения систем уравнений(линейных, нелинейных, дифференциальных), аппроксимация. И то половина не столько математическая сколько именно логическая. А также криптография, фильтрация (подавление шумов, преобразование информации) Теория графов, развивается и развита очень сильно и применяется для задач оптимизации. Правда сама оптимизация за частую решается в лоб перебором или эмпирический алгоритмом. Что касается высшей математике. То она вся применяется. И даже больше. Применяется в программирование. В распознаваниях образов так применяют все. Весь мат аппарат. В физике классическим подходом является описание процесса системой дифференциальных уравнений и их решений на компьютере. Но это узкий подход. Алгоритмы известны и уже запрограммированы. Matlab, Matcad, Maple записали уравнения а решаются они одной строчкой. Встают вопросы, как реализовать решение. В результате вытекают. К примеру 30 тыс уравнений которые просто так не решаются потому что матрицы целиком в память не влазят. Идет все возможная оптимизация. К примеру, применяются матричное блочные алгоритмы. Основные усилия сводятся к постановки задачи. Без этого код не напишешь. Решение это вторастипенно главное научиться понимать почему применяется то или иное действие и что оно дает. Тут смотрел алгоритм заполнения пустых мест на изоброжении на основе соседних элементов. Пытался въехать почему применяется N мерный вектор да еще и ортагональный к нему.
maverick Щас по курсам/урокам разным в интернете, типа http://algolist.manual.ru/ Pavia, спасибо что высказались по теме. Вот создана тема в "Для новичков" решение лабараторных - больше 80%, ато и больше процентов, не понятно ни чего, ни то что пытаться что то реализовать. В общем в каком направлении двигаться, что бы снизить процент незнания.
Это верно только для одномерного случая. Попробуйте решить уравнения с частными производными и вы обнаружите, что во всех математических пакетах такой функции вообще нет. Да и в одномерном случае решать краевые задачи математические пакеты не умеют. Даже решение систем обычных, но нелинейных уравнений превращается в проблему, когда у вас сотни переменных.
halyavin Врешь, решить можно обсалютно все. Математический пакет это не панацея, он за вас все делать не будет. Ему необходимо помогать, как "ребенку", он положил один кубик, вы другой. Это не значит что если нет какой либо команды, то нельзя обойтись 2-3 другими для нахождения окончательного ответа. (слава богу мат.макетах более 4000 команд)
halyavin Вау. А Это что по твойму? =MathCad 14= ODESolve rkfixed Stiffb и др =Maple 11= dsolve =MatLAB 7.1= ode45 и тд Ну так кто мешает записат в форме Коши? Да так я тебе и поверил смотрим по BVP. =Maple 11= dsolve =MatLAB 7.1= bvp4c
Pavia Посмотри внимательно на перечисленные тобой функции. Уже даже в названиях некоторых присутствует сокращение ODE, то есть Ordinary Differential Equation. Речь же шла о PDE - Partial Differential Equation, которые действительно решаются значительно хуже (хотя конечно решаются, тут halyavin погорячился). Если с MathCad я работал мало, то функцию ode45 в Matlab'e в свое время реализовывал самостоятельно - не решает она PDE, хоть тресни (название кстати указывает на применяющийся метод - RK5(4))
Stiver Помойму для решения PDE их тоже можно применять. Все равно помима этих функции есть и специализированне для PDE. =MathCad 14= pdesolve =Maple 11= pdesolve =MatLAB 7.1= pdepe PS. На этом форуме много математиков =)