Недавно, просматривая список функций в FreeMat, я заметил там упоминание о массиве ячеек, отдалённо напоминающем списки из Lisp-а. И появилось желание попробовать сделать что-нибудь для работы с символьными выражениями... например, функцию для дифференцирования функции аналитически... Итак, дайте бубен, будут танцы! :)
Показаны сообщения с ярлыком freemat. Показать все сообщения
Показаны сообщения с ярлыком freemat. Показать все сообщения
суббота, 26 декабря 2015 г.
суббота, 12 декабря 2015 г.
Freemat. Многопоточность
Вам грустно? Одиноко? Устали ждать, когда закончится расчёт? Попробуйте многопоточность!:)
суббота, 5 декабря 2015 г.
Freemat. ООП
С увеличением уровня сложности компьютерного расчёта разница между ним и программой стирается (если вообще имела место быть). По-этому пользователю вполне может пригодиться такая проверенная временем технология, как возможность создания объектов и манипулирования ими ( == объектно-ориентированное программирование). В качестве примера попробуем создать класс для работы с рациональными числами rat.
пятница, 9 октября 2015 г.
Liber est mutus magister
Опыт работы с кроссплатформенными математическими программами, а также желание им поделиться, появились у меня достаточно давно, и первоначально приняли форму hand-made книги "Математика for free", которую я выложил в интернете. Раньше я не публиковал в этом блоге ссылку на неё, т.к. материал частично повторялся. Кроме того, блог содержит значительно больше информации, чем книга. Тем не менее, возможно, кому-то удобнее иметь справку под рукой, чем каждый раз заходить в интернет, если так, вы можете скачать книгу с моего диска. Я писал её как справочник и сам периодически пользуюсь им, особенно, после длительных перерывов в работе. Буду рад, если она пригодится кому-то ещё :)
суббота, 19 апреля 2014 г.
Freemat. Программирование
В завершение обзора Freemat хочется сказать несколько слов об имеющихся средствах создания сложных вычислительных алгоритмов (или даже программ).
пятница, 18 апреля 2014 г.
Freemat. Аппроксимация
Допустим, вы провели серию экспериментов и получили некоторое множество данных, которые хотели бы интерполировать или экстраполировать. Freemat предлагает одну функцию на все случаи жизни: interplin1().
пятница, 11 апреля 2014 г.
Freemat. Работа с данными
Freemat умеет загружать данные из файлов, создавать из них матрицы, обрабатывать и затем снова записывать в виде файлов. В текстовом режиме поддерживаются файлы xml, html, но мы рассмотрим формат csv, т.к. многие измерительные приборы сохраняют результаты именно в нём. К тому же, это обычный текстовый формат, просто обязательным разделителем в нём является запятая.
суббота, 5 апреля 2014 г.
Freemat. Дифференциальные уравнения
Freemat умеет решать только обыкновенные дифференциальные уравнения первого порядка, и только одним способом - методом Рунге-Кутта. Чтобы им воспользоваться, нужно представить уравнение в виде y'(t) = f(t,y) и задать начальное условие y(0) = y0. Сам расчёт производится функцией ode45:
[t,y] = ode45(f(t,y), tsp, y0, option),
где f(t,y) - функциональная связь производной со значением аргумента и функции,
tsp - интервал t, на котором производится расчёт,
y0 - значение функции в начальной точке,
option - дополнительные параметры.
пятница, 4 апреля 2014 г.
Freemat. Графики
В Freemat вы можете либо строить график по точкам, либо указать выражение функции, и всё равно строить график по точкам...
суббота, 29 марта 2014 г.
Freemat. Векторы и матрицы
Freemat, как и MATLAB, "заточен" на работу с матрицами. Это означает, что все операции выполняются максимально быстро, и их запись не вызывает у пользователя лишних проблем.
пятница, 28 марта 2014 г.
воскресенье, 23 марта 2014 г.
Freemat. Начало работы
При запуске программы открывается окно, которое включает в себя меню, панель инструментов и рабочую область. По умолчанию, здесь также отображаются
браузер файлов, история проводимых
расчётов, список переменных и панель
отладки. Не буду вдаваться в подробности, т.к. единственное, что нам сейчас необходимо, это большой белый прямоугольник в правой части окна, где после английского текста присутствует значок "-->". Здесь и происходит работа с программой.
суббота, 22 марта 2014 г.
Freemat. "Это Спарта!"
Думаю, на конкурсе двойников MATLAB программа Freemat заняла бы почётные призовые места в номинациях "Интерфейс", "Синтаксис" и "Концепция". Действительно, данная программа пытается быть максимально совместимой со своим знаменитым прототипом. И в основе её также лежит работа с матрицами. Есть, конечно, и различия, прежде всего, функционал. Как ни пытайся, а в 20 МБ не удастся уместить все возможности MATLAB! Вот только нужны ли они в повседневной жизни? (Здесь я имею ввиду версию Freemat 4.0. Более поздние варианты значительно выросли в объёме, но изменения в функционале я не заметил. Если ошибаюсь, поправьте.)
Это одна из моих любимых
программ, потому что при своём скромном
размере она предоставляет весь необходимый
инструментарий для комфортного написания
достаточно сложных вычислительных
алгоритмов. Freemat хорошо работает с
матрицами, полиномами, имеет базовые
средства для обработки сигналов,
изображений, визуализации данных. Из
недостатков могу отметить отсутствие
некоторых "актуальных" функций,
например, для численного интегрирования
или поиска корней уравнений. В этом
случае придётся самостоятельно о себе
позаботиться и "вручную" написать
необходимый функционал. В общем, просто, изящно, и ничего лишнего!
Получить программу и всю необходимую информацию можно по адресу:
http://freemat.sourceforge.net
Подписаться на:
Сообщения (Atom)

