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

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

Rambler's Top100

Рейтинг@Mail.ru

Что нового?

2012-02-21
Сайт переехал на новый адрес www.loginovprojects.ru.
2011-10-29
Вышла статья Выбор библиотеки для работы с COM-портами в Delphi.
2011-10-02
Вышла статья Работа с электронной почтой с использованием компонентов Indy.
2011-08-20
Вышла статья Установка и запуск Turbo Pascal в ОС Windows и Linux (zip, 180КБ).
2011-05-20
Вышла статья Замечания по потокобезопасной работе с базами данных.
2010-12-09
Разработано приложение TestMatrix, демонстрирующее некоторые возможности Matrix32 и упрощающее исследование и реализацию новых алгоритмов. Без проблем компилируется на любой версии, начиная с Delphi 7. Из дополнительных библиотек требует SafeIniFiles

Вышла статья Исследование и разработка алгоритмов с помощью программы TestMatrix

Все наиболее важные модули и проекты были адаптированы для работы в Delphi 2010. В описании таких проектов указано "Проверено на D7, D2007, D2010"
2010-07-18
Вышла статья Пишем свой HTML-редактор (wysiwyg HTML editor). Статья на данный момент является незавершенной, по мере возможностей будет дорабатываться.
2010-05-29
Добавлен модуль LDSSecurityUnit, позволяющий определять и настраивать права доступа к различным объектам Windows (файлы, каталоги, ключи реестра и т.д.). В модуле доступным языком описана краткая теория настройки прав доступа в ОС Windows. Используются следующие WinAPI-функции: GetNamedSecurityInfo, SetNamedSecurityInfo, ConvertSecurityDecriptorToStringSecurityDescriptor, ConvertStringSecuityDescriptorToSecurityDescriptor, ConvertSidToStringSid, LookupAccountSid.
16-03-2008
Вышло очередное обновление Matrix32. Добавлена поддержка библиотеки Lapack и выполнен еще ряд менее значительных изменений. Подробности, как всегда, вы сможете найти в файле Changes.txt, лежащем в архиве matrix32.zip.
10-08-2007
Внесен ряд изменений и исправлений. Добавлена поддержка локализации. Текстовые сообщения системы Matrix32 вынесены в отдельный модуль "Matrix32Messages.inc". Добавлена поддержка формата языковых файлов, используемого авторским модулем локализации LangReader.
16-03-2007
За то время, сколько я данный раздел не обновлял, система претерпела колоссальные изменения. Модуль Matrix прекратил развитие. В сентябре 2006 года началась работа по созданию нового мощного инструмента под названием Matrix32. Новый движок увеличил потенциальные возможности в десятки раз. С его помощью можно программировать математические алгоритмы очень высокой сложности простыми методами.

Разместил на сайте новую справочную систему для Matrix32. Она сгенерирована с помощью средства Time2Help. Весь текст справочной системы расположен в модуле Matrix32 (он-то и вошел в справочную систему).

Обновил гостевую книгу. Теперь вы вновь можете задавать в ней интересующие Вас вопросы. Также со мной вы можете общаться по e-mail или по аське.

В качестве бонуса в модуль matrixDemos.pas добавлена функция решения СЛАУ SlauGauss().

Старый Matrix уже не поддерживается. Однако эта система по прежнему доступна для скачивания. Ссылка на справочную систему Matrix есть только на этой странице.
27-02-2006
Сайт разработки принял совершенно новый облик. Теперь всюду используются скрипты, позволяющие на порядок ускорить время создания сайта. Появилась возможность закачки исходников на сайт (любой зарегистрированный пользователь теперь может закачать) zip-архив размером не более 500 Кбайт). Полностью обновлена справочная система. Кроме on-line-версии доступна версия off-line (чтобы ее скачать, зайдите в категорию "Разное").

Небольшие изменения проведены над ядром Matrix. Исправлена ошибка, касающаяся функции GetMem() в методе NewArray(). Описан новый тип данных: PRealArray. Добавлены методы: GetRowAddress() и GetArrayListSize().
19-01-2006
Добавлены следующие операции:
=
<>
<
<=
>
>=
and
or
xor
not
15-01-2006
Обновление модуля Matrix.pas. Связано с небольшим изменением в функции CalcFunc2(). Теперь в качестве входных массивов SourArray1 и SourArray2 можно задавать: - имена массивов, причем массивы должны иметь одинаковые размеры, или состоять из одного элемента; - непосредственно числовые значения (Real, Integer и т.п.).
11-01-2006
Окончательно сформированы функции ядра. Существующие функции удаляться или переименовываться больше не будут. Наведен порядок в коде - теперь он смотриться довольно симпатично и выполняется заметно быстрее (в этом автору помог fenik aka Николай :). Обновлены все страницы сайта - теперь на них находится только актуальная информация.
7-01-2006
Продолжается переделка функций Матрикса. Улучшена функция DoError(). Стала универсальной функция CalcFunc2() - теперь в качестве входных аргументов можно задавать не только имя массива, но и непосредственно числовое значение. Изменены функции чтения/записи в поток/память. Если раньше тип переменных указывался в строковом виде, то теперь нужно передавать переменную типа TStandartType. Теперь функция ElWiseOp() не поддерживается.
Улучшен алгоритм поиска массивов. Теперь имена массивов хэшируются, а поиск хэша выполняется гораздо быстрее.
На сегодня это все основные изменения.
3-01-2006
Вышла новая версия системы. Переделаны практически все функции. Справочная система пока не обновлена. Будет время - обновим.
11-11-2005
Снова хочу порадовать всех, кто пользуется этой системой. Были переработаны все функции, предназначенные для работы с файлами. Теперь они стали быстрее и "умнее". Особенно хочется отметить улучшение функций для работы с двоичными файлами (SaveToBinFile(), LoadFromBinFile(), SaveArrayToBinFile(), LoadArrayFromBinFile()). Они переделаны полностью и уже не поддерживают старый формат. Эти функции стали работать значительно быстрее и уже автоматически анализируют тип данных в массивах. Различают следующие типы элементов: Byte, Shortint, Word, Short, DWord, Integer и Real. Соответственно, сами файлы стали занимать гораздо меньше места на диске. Исправлено несколько незначительных ошибок (ошибка автоматического уничтожения временных рабочих областей).
10-11-2005

Полностью переработан движок, изменены все внешние функции. В результате эффективность и надежность системы повысились в несколько раз. Переработан раздел справки "Система MatriX", сформированы конкретные принципы программирования внешних функций, а сам процесс их программирования значительно упрощен. Появились несколько новых функций: GetMin(), GetMax(), MinMax(), Mean() и др. Отменена условная компиляция, описанная в предыдущем пункте, т.к. новый способ организации массивов оказался чрезвычайно эффективным. Теперь с MatriX не поставляется модуль списков Lists.pas, так как необходимость в нем отпала. Времени на создание одной рабочей области требуется в несколько раз меньше, чем раньше.

Пересмотрен смысл функции NewArray(), которая создает массив указанных размеров. Если раньше эта функция по-умолчанию забивала созданный массив нулями, то теперь функция этого не делает. Оказывается, создание нулевого массива редко требуется, в большинстве случаев достаточно просто зарезервировать память необходимого размера. Если нужно создать именно нулевой массив, то вам придется явно указывать параметр Init=True.

Появилось новое быстрое свойство ElemFast[], предназначенное для чтения/записи элемента массива.

В целом, пользоваться системой стало гораздо проще и удобнее чем раньше.

29-10-2005
Значительно увеличилась скорость доступа к элементам массивов. Введена условная компиляция {$DEFINE SPEEDUP}. Если отключить эту опцию, то скорость доступа к данным будет прежней, а если не отключать, то скорость увеличиться в 3 - 4 раза (однако при этом максимальное число массивов в каждой рабочей области ограничивается до 1000, впрочем, вы можете сами устанавливать это значение по своему усмотрению). Наибольшую скорость доступа к данным обеспечивает свойство ElemI[]. Теперь оно всего-навсего в полтора раза уступает доступу к элементам обычных массивов Delphi. Появилась функция GetElemCount(), возвращающая общее число элементов рабочей области для всех массивов кроме тех, которые были переданы по ссылке. Также в ядре появился ряд новых функций. В следующий раз описание всех новых функций появится в справочной системе.
22-10-2005
Внесены довольно значительные изменения, может возникнуть проблема несовместимости. Изменения следующие:
  • Функция InvMatrix() была переименована в Transpose(). Такое название более правильное. Дело в том, что Inv означает вычисление обратной матрицы, а не транспонирование.
  • Добавлены следующие функции:
    • IsSingle() - возвращает True, если матрица имеет всего 1 элемент;
    • IsSquare() - возвращает True, если матрица квадратная;
    • SizeEqual() - определяет, равны ли размеры двух матриц между собой.
08-10-2005
Изменения эстетического характера. Проведено форматирование кода с помощью утилиты DelforExp (по совету мастера Delphi Игоря Шевченко). Изменены ссылки со старого сайта delphimatrix.narod.ru на этот сайт. Было проведено тестирование скоростных характеристик Matrix, которые показали, что система работает до 2 быстрее системы Matlab. Началась работа по созданию системы визуализации - скоро изобразительные возможности Matrix будут не хуже, чем в Matlab.

03-10-2005
Сайт переехал сюда. Старый адрес: http://delphimatrix.narod.ru/. Изменен дизайн сайта (вернее, он только здесь появился). Большое спасибо администратору сайта kladovka.net.ru Роману Янковскому, который оказал большую помощью по оформлению и размещению здесь данного сайта.
Логинов Дмитрий © 2005-2015