Показаны сообщения с ярлыком matlab. Показать все сообщения
Показаны сообщения с ярлыком matlab. Показать все сообщения

вторник, 20 марта 2012 г.

Предобуславливатели и Matlab

Набор предобуславливателей в Matlab невелик - по сути один только ILU(p).

По счастью, люди, которые пишут соответствующий код, в курсе, что нам неохота осваивать Фортран ради пары экспериментов с новым предобуславливателем. Поэтому не забывают добавить в архив интерфейс к Matlab-у (а то и сделать полноценную Matlab-версию).

По ссылкам можно скачать несколько не самых заезженных предобуславливателей с Matlab-интерфейсом:
  • Sparslab (AINV, SAINV, RIF, ICAJ);
  • SPAI (тут только документация);
  • Saad software (смотреть Matlab suite, там есть ARMS в .m).

И вот еще по дороге какой-то объемистый документ нашел с главой про preconditioning. Многообещающая фраза "it can be proved that..."

среда, 23 июля 2008 г.

Matlab: открывайте правильно

Долго мучился в свое время, надо б записать для памяти:
чтоб при записи в файл из .m - скрипта знаки перевода каретки(\n) не превращались в квадратики, надо открывать файл так:

f = fopen(fname, 'wt');


-Почему блондинки открывают йогурт прямо в магазине?
-Потому что на упаковке написано: "Открывать здесь!"

пятница, 28 марта 2008 г.

Мультики в Matlab: просто, но не качественно

Анимация - самый красивый и наглядный способ отображения динамических процессов.

В Matlab мультики можно делать например так: грузим поочередно файлы с данными, потом строим по каждому график, добавляем картинку как фрейм в мультик. Есть, кстати, ещё какой-то способ.

Теперь надо сохранить анимашку. Хорошо бы в avi - там можно регулировать fps (mpeg, вроде бы, не предоставляет такой возможности, там всегда fps = 30 или типа того). Вроде всё просто:

mov = avifile(dstfile, 'fps', fps);

for i = 1:framenum

%строим очередной график
F = getframe(gcf);
mov = addframe(mov,F);
end;


mov = close(mov);

Беда в том, что в получающемся мультике поверхность ч.б., а цвет присутствует только в виде разводов там и сям. Единственное, что помогает - это загрузка colormap из оттенков серого, но ведь хочется как обычно - всех цветов радуги:) Плюс ещё не всегда получается записать в уже созданный файл, видимо , Matlab забывает освободить дескриптор.

Можно ещё скачать такую примочку - mpgwrite. Это одноимённые .m и .dll файлы, которые надо положить в любую папку, прописанную в Path программы Matlab. Позволяет писать в mpg. С цветами всё в порядке. Но почему-то сцена помещается не полностью - словно сделан положительный zoom.

Короче, задумка была замечательная - дать возможность создавать Matlab с помощью всего нескольких команд. Но реализация подкачала.

понедельник, 15 октября 2007 г.

Полезные команды Matlab

Список файлов в папке: files = dir('dirname'). В files сохраняется список файлов в данной директории виде массива структур с полями: name, date, bytes (размер файла в байтах), isdirectiry(1, если name - папка).

Сохранение рисунка из figure в графический файл - print. Можно выбирать формат файла (bmp, eps, jpeg, много других) и регулировать разрешение.
C помощью разных опций эта команда также может печатать графики, сохранять их в clipboard и сохранять всё содержимое figure.

Число обусловленности матрицы (отношение максимального с.з. к минимальному) - cond. Некая оценка этого числа - rcond. Если матрица хорошо обусловлена, то rcond близко к 1, если плохо - к 0. Как сказано в хелпе "rcond более эффективна, но менее надёжна, чем cond".