Чтение онлайн

на главную - закладки

Жанры

Журнал «Компьютерра» № 9 от 7 марта 2006 года
Шрифт:
Модели для сборки

Несмотря на хорошо проработанный интерфейс, Algebrus, по-видимому, проектировался прежде всего как среда разработки со встроенным интерпретатором языка XPascal. Дело в том, что некоторые из ее возможностей не выведены на интерфейсный уровень, и даже доступ к ним из командной строки не реализован в полной мере. Примером может служить численное интегрирование с помощью метода Integrate. В качестве одного из параметров он принимает интегрируемую функцию (переменную типа TMathFunc); однако, не обращаясь к XPascal Editor, вы не сможете объявить «свою» функцию – это означает, что, хотя вы и можете вызвать Integrate

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

Более того, хотя командную строку и стоит, пожалуй, использовать для простейших вычислений, XPascal является гораздо более естественным средством для общения с Algebrus.

Что можно сказать об этом языке? Во-первых, это «надстройка» над обыкновенным Паскалем, включающая в себя большое количество функций, которые могут быть полезны при математических расчетах. Например, в языке есть такие типы данных, как матрица и кватернион, и реализованы различные методы для работы с ними (скажем, вычисление определителя). Есть и другие приятные «мелочи», которые отличают этот язык от классического Паскаля: так, стандартные арифметические операторы (+, –, *) можно применять к векторам и матрицам, а можно и переопределить для работы с какими-либо другими типами данных. В то же время изменения не затрагивают основ языка, поэтому у человека, уже знакомого с Паскалем, освоение среды Algebrus не займет много времени. С другой стороны, недостатком программы, весьма существенным для потенциальных разработчиков, является отсутствие доступа ко встроенным библиотекам – то есть узнать, как именно реализованы используемые Algebrus’ом функции, не представляется возможным. Кроме того, XPascal – это, по-видимому, расширенная версия Паскаля «обыкновенного», но не Object Pascal, то есть этот язык не является объектно-ориентированным в строгом смысле слова (хотя в нем реализована поддержка пользовательских типов данных и структур), что тоже едва ли можно причислить к достоинствам программы.

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

Остается рассмотреть последний и, вероятно, самый важный вопрос: на кого рассчитан Algebrus? Для решения специфических прикладных задач, требующих использования сложного математического аппарата, он едва ли подойдет, набор реализованных в нем методов для этого недостаточно широк. Впрочем, Algebrus может оказаться весьма полезен как платформа для разработки более серьезной техники, требуемой для решения той или иной задачи. Кроме того, в роли потенциальных пользователей могут выступать студенты, которым приходится иметь дело с различными расчетами, и даже школьники; а вот профессиональные математики скорее предпочтут «вооружение» помощнее – скажем, тот же Matlab. Впрочем, не стоит забывать, что Algebrus – проект относительно новый, а значит, ситуация еще может измениться.

XPascal в действии

Одним из самых интересных методов, реализованных в Algebrus, является, на мой взгляд, DSolve, предназначенный для численного решения дифференциальных уравнений и их систем.

В качестве параметров DSolve принимает функцию f (она должна быть объявлена заранее), задающую векторное поле,

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

procedure DFunc ( x : Vector; t : Real; var dx : Vector ); const

F : real = 25; // частота

D : real = 0.25; // параметр системы

// дифференциальное уравнение осциллятора

dx[1] := x[2];

dx[2] := -F*F*x[1]-2*D*F*x[2];

S : Matrix; // матрица решения

// решаем ОДУ

S := DSolve( DFunc, {0, 1}, 0, 1 );

// выводим результат

PlotData( S[2], S[3], FALSE, psLine );

Софтерринки

Автор: Павел Каледа

Chronodesk

ОС: Windows

Адрес: ixite.ru/exe/chronodesk

Версия: 1

Размер: 240 Кбайт

Интерфейс: русский

Цена: бесплатно

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

iMarkup

ОС: Windows

Адрес: www.imarkup.com/products/imarkup_client.asp

Версия: 3.97.6

Размер: 2,6 Мбайт

Интерфейс: английский

iMarkup представляет собой своеобразный маркер для Internet Explorer и подобных браузеров, позволяющий делать пометки прямо на веб-страницах. При последующем посещении такой страницы браузер отобразит ее вместе с пометками. Кроме текста, с помощью iMarkup можно записывать и прикреплять к страницам голосовые сообщения. Вся информация о пометках хранится в зашифрованном виде.

TaskSwitchXP Pro

ОС: Windows XP/2003

Адрес: www.ntwind.com/taskswitchxp

Версия: 2.0

Размер: 370 Кбайт

Интерфейс: многоязычный, в том числе русский

Цена: бесплатно

TaskSwitchXP Pro – диспетчер Windows-приложений. После установки утилита поселится в системном лотке. При нажатии на иконку появится окошко (прозрачность которого можно настроить) со списком запущенных программ. При наведении курсора на название задачи утилита показывает окно задачи в уменьшенном масштабе. Можно определять задачи и окна, которые будут исключены из списка активных. Программа имеет множество настроек горячих клавиш и внешнего вида, а также параметров интеграции с Windows.

BGEye

ОС: Windows

Адрес: optionalreaction.com/software/bgeye

Версия: 1.33

Размер: 480 Кбайт

Интерфейс: английский

Цена: бесплатно-

Утилита BGEye отображает на рабочем столе (в виде обоев) ежеминутно обновляемую информацию о системе. Среди выводимых параметров (выбираются по желанию) – имя пользователя и компьютера, время астрономическое и время работы компьютера, модель процессора и его частота, количество запущенных процессов, объем оперативной памяти, полное и занятое место на жестких дисках, подключенные USB-устройства и пр.

Поделиться:
Популярные книги

На границе империй. Том 8. Часть 2

INDIGO
13. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 8. Часть 2

Охотник за головами

Вайс Александр
1. Фронтир
Фантастика:
боевая фантастика
космическая фантастика
5.00
рейтинг книги
Охотник за головами

Дикая фиалка заброшенных земель

Рейнер Виктория
1. Попаданки рулят!
Любовные романы:
любовно-фантастические романы
эро литература
5.00
рейтинг книги
Дикая фиалка заброшенных земель

Барон устанавливает правила

Ренгач Евгений
6. Закон сильного
Старинная литература:
прочая старинная литература
5.00
рейтинг книги
Барон устанавливает правила

Весь цикл «Десантник на престоле». Шесть книг

Ланцов Михаил Алексеевич
Десантник на престоле
Фантастика:
альтернативная история
8.38
рейтинг книги
Весь цикл «Десантник на престоле». Шесть книг

Квантовый воин: сознание будущего

Кехо Джон
Религия и эзотерика:
эзотерика
6.89
рейтинг книги
Квантовый воин: сознание будущего

Неудержимый. Книга VI

Боярский Андрей
6. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Неудержимый. Книга VI

Неудержимый. Книга XII

Боярский Андрей
12. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Неудержимый. Книга XII

Барон Дубов 2

Карелин Сергей Витальевич
2. Его Дубейшество
Фантастика:
юмористическое фэнтези
аниме
сказочная фантастика
фэнтези
5.00
рейтинг книги
Барон Дубов 2

Идеальный мир для Лекаря 25

Сапфир Олег
25. Лекарь
Фантастика:
фэнтези
юмористическое фэнтези
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 25

Наследник павшего дома. Том II

Вайс Александр
2. Расколотый мир [Вайс]
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Наследник павшего дома. Том II

Краш-тест для майора

Рам Янка
3. Серьёзные мальчики в форме
Любовные романы:
современные любовные романы
эро литература
6.25
рейтинг книги
Краш-тест для майора

Решала

Иванов Дмитрий
10. Девяностые
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Решала

Демон

Парсиев Дмитрий
2. История одного эволюционера
Фантастика:
рпг
постапокалипсис
5.00
рейтинг книги
Демон