Изображение квадрата Дюрера

ООО АВТОМАТИКА плюс

Rambler's Top100

Рейтинг@Mail.ru

История развития проекта Matrix32

Впервые об этом проекте я заявил в 2005г. На сайте delphimaster.ru Вы можете отследить всю его историю.

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

Совсем иная ситуация с Си, Си++. В интернете можно найти море предложений, позволяющих решать практически любую математическую задачу. В среде математиков не принято программировать в Дельфи, им больше нравится Си, Си++, Фортран, Матлаб. Эти средства (условно) не обладают столь мощными возможностями по разработке графического интерфейса пользователя, как Дельфи, однако этим не отвлекают и дают возможность максимально сосредоточиться на решении поставленной задачи.

Я начал разработку проекта Matrix в 2004 г. В то время свободного времени было очень много. Я много его угрохал на разработку данного проекта (годы). В результате удалось создать некую альтернативу Матлабу. Поддерживаются те же самые типы данных, что и в Матлабе, реализованы почти все основные операции по обработке матриц. В некоторых случаях задействованы математические библиотеки BLAS и LAPACK, над разработкой и улучшением которых постоянно трудятся лучшие умы среди математиков. Многие вещи работают быстрее, чем в Матлабе (обработка m-файлов в Матлабе иногда очень медленная). Матлаб умеет конвертировать m-файлы в код на языке С++, однако это все равно тянет с собой все ядро матлаба, а разобраться с тем, что он сгенерировал, весьма сложно и долго, даже для профессионального разработчика С++.

Модуль matrix32.pas по своей структуре получился весьма удачным. Пользоваться им очень легко, несмотря на всю сложность реализации. Даже если человек не является корифеем в Дельфи (а тем более в С++), он без труда сможет начать разработку собственной программы для решения математической задачи. Matrix32 обеспечивает 100%-е взаимодействие с Матлабом, поэтому разрабатывать интерфейс можно в Дельфи, а вычисления возложить на Матлаб. Кстати, в Матлабе также можно разрабатывать интерфейс пользователя, можно даже с базами данных работать, но все это выглядет бесконечно скучно по сравнению в возможностями Дельфи :)

Matrix32 будет для Вас очень удобным средством, если вы работаете в Дельфи с числовыми массивами для проведения каких-либо математических вычислений. В Matrix32 реализован мощный механизм для хранения и управления массивами. Любое количество массивов можно разместить в рабочей области (workspace), в списке (list), в массиве ячеек (cell), причем возможна иерархия любого уровня вложенности. Массивы могут содержать элементы любого числового типа, иметь любую размерность. Массив / объект / рабочую область можно в любой момент сохранить в файл / TMemoryStream / TFileStream, а затем загрузить, если в этом возникла необходимость.

На основе Matrix32 вы можете производить собственные математические пакеты, которым смогли бы конкурировать с Матлабом или его аналогами. Правда, смысл от этого - исключительно образовательный. Например сейчас я - успешный разработчик программного обеспечения, мои разработки используются во всех регионах России. Но этот опыт был получен во многом благодаря Matrix32. Если Вы начинающий программист и имеете возможность и достаточное количество свободного времени для тщательного изучения Дельфи (или иного инструмента разработки), обязательно воспользуйтесь этим. Иначе в практической работе Вы рискуете с головой увязнуть в проблемы предметной области, а с инструментом разобраться так и не сможете (подобно плотнику, способному забить гвоздь в абсолютно любую деревянную поверхность, но не представляющему, как починить разболтавшийся молоток, а ведь он и по голове шарахнуть может).

При разработке проекта Matrix очень мощный аудит исходных кодов обеспечили участники форума delphimaster.ru. Код вылизывался очень тщательно, поэтому за качество и надежность я ручаюсь, но при этом не несу никакой ответственности за возможные сбои и ущерб, принесенный по моей или чужой вине.

Логинов Дмитрий © 2005-2015