понедельник, 29 декабря 2008 г.

Интервью Кинчева в МК

Константин прессу не жалует, поэтому "комсомольцы" общались с ним по аське:) Ответы короткие, без всякого политеса. Ну и нечего с такой желтизной особо церемониться.

Молодца вообще он. Скоро полтинник. Трое детей студенческого возраста, все в сфере искусства. "Ремня получали все";) Представляю...

"Становится ли артист заложником своих фанатов?" "Только когда артисту приходится вызволять фанатов из ментовки".

В статье есть несколько фото Кинчева. Худой, но плечевой пояс и руки накачаны ой-ой. Энергии, чувствуется хватает, хотя говорит, что любит полежать на диване.

В чем его образ жизни изменился после принятия Православия - не пойму. Ну да, наркотики больше не употребляет (а "те кто торчали вместе со мной давно гниют в земле"). Но слушает панк, пост-панк, нью-метал и почему-то хип-хоп (Гуф и Нагано, запомнилось).

Вот так.

ps Сайт про работу с WinXP: www.winxp.su

суббота, 13 декабря 2008 г.

Word again: перекрестные ссылки

Итак, наша основная цель - сделать все ссылки в документе Word динамическими.

С литературой все жутко просто. Если она оформлена списком (а так обычно и бывает), то
Вставка->Перекрестная ссылка;
появятся элементы всех списков документа.
Тип ссылки - Aбзац;
Вставить ссылку на - Номер абзаца;

А если у нас текст в одном документе, а список лит-ры в другом? Сделаем текст - главным документом, а список лит-ры - вложенным.

Создаем документ text.doc. Создаем другой документ - со списком лит-ры, liter.doc. В режиме структуры в text.doc на панели Структура нажимаем Вставить вложенный документ, выбираем liter.doc. Теперь можно вставлять вышеописанным способом ссылки на лит-ру. Но при этом liter.doc должен быть ЗАКРЫТ!

Для обновления перекрестных ссылок нажать F9.

пятница, 12 декабря 2008 г.

Динамические ссылки в Word

Я что-то уже засомневался в подавляющем превосходстве TeX над Word. Оказывается, в Word можно добиться практически чего угодно.

Большие страдания доставляет отсутствие в Word возможности вставки номеров формул, рисунков и т.д., которые обновлялись бы динамически (удалили первую формулу - номера следующих и, главное - ссылки на них, уменьшились на единичку).

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

вторник, 9 декабря 2008 г.

Верстка книг в Word

Набранный в Word текст необязательно распечатывать в виде толстой пачки бумаги. Можно сделать аккуратненькую тетрадку формата A5. А как?

Для этого существуют специальные макросы. Это файлы .dot. Надо положить такой файл в директорию C:\Documents and Settings\Administrator\Application Data\Microsoft\Шаблоны. Затем в Word выбираем Сервис -> Шаблоны и надстройки -> Добавить,
щелкаем по файлу макроса.

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

Я нашел два таких макроса. Это Booklet2000 и ВерсткаТекстаКнижкой. Первый работать отказался (не выводит на печать) :( Второй весьма хорош.

notes по второму макросу:
Когда пускаем сверстанную книжку на двустороннюю печать, после первого прохода надо повернуть стопку бумаги на 180 градусов против часовой стрелки, а затем уже класть в лоток (для принтеров HP);

На вход макросу надо подавать документ, разбитый на страницы A4. Если сделать A5 - будет глючить. Макрос сам масштабирует документ под A5.

пятница, 5 декабря 2008 г.

Режим структуры в Word

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

Используется, понятное дело, для структурирования документа. Выбираем заголовок, стрелочкой влево на панели повышаем его уровень до Уровня 1 (самый нижний уровень - Основной текст). Рядом с ним появляется плюс. Теперь весь текст вплоть до следующего заголовка того же уровня можно сворачивать/разворачивать, как функции в Visual Studio.

Редактировать в этом режиме неудобно. Поэтому лучше делать так: развернули нужный пункт, поставили в него курсор, перешли в режим разметки. Рекомендую.

upd: Чтобы просмотреть структуру документа можно на панели инструментов выбрать уровень заголовков, до которого необходимо свернуть документ. В меню Вид есть полезный пунктик Схема документа, который отображает заголовки на специальной панельке слева (как в pdf)

ps А 8 декабря начнется спецоперация у берегов Сомали. Европейские державы будут давить пиратов. Как во времена Барбароссы:) Ждем развития событий.

четверг, 27 ноября 2008 г.

Message Mapping в VS2005

Как связывать сообщения Windows с членами класса в Visual Studio 2005 ?

(нетривиальный вопрос, в одном форуме видел, толком человеку не ответили).

Открываем файл с объявлением класса (.h)
Идем в меню View -> Other Windows -> Properties Window (Alt + Enter)
Нажимаем кнопку Messages
Тыкаем на нужное сообщение - в классе создается функция-член со стандартным названием
(WM_CHAR<->OnChar)

В начале имплементации классов - частей приложения Visual C++ (объект вида, документа и т.д.) есть секции связывания, там можно руками прописать:

BEGIN_MESSAGE_MAP(CMyView, CView)
// Standard printing commands
ON_COMMAND(ID_FILE_PRINT, &CView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_DIRECT, &CView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_PREVIEW, &CView::OnFilePrintPreview)

ON_WM_CHAR()

END_MESSAGE_MAP()

Интервью Егора Летова

Нашел сборник интервью Игоря Федоровича Летова.

Раньше думал, что он такой выпендривающийся декадент, типа братьев Самойловых. Нет, думающий начитанный человек. Очень хорошо ставит на место тупых журналюг. Логично объясняет свое мировоззрение.

На заметку:
1. "Все идет по плану " - стеб от имени "нетрезвого человека, у которого все плохо, который пришел домой и смотрит телевизор".
2. Черный Лукич - младший товарищ Летова. "Мы идем в тишине" пели и тот и другой.
3. "Мы музыкой не занимаемся". "То что мы делаем - это шаманство". "Мы показываем, что надо делать в меняющейся обстановке, оставаясь при этом людьми".
4. "Егор, как ты относишься к наркотикам?" - "Очень хорошо отношусь".
5. "У Игоря Федоровича нет никакого прикида. Что есть, то и надевает на концерты" - Лукич.

ps Песню "Афганский синдром" написал Роман Неумоев из "Инструкции по выживанию". Но Гр.Об. ее тоже исполняли.

воскресенье, 2 ноября 2008 г.

FAR manager

Нравится мне FAR. Симпатичный такой, синенький. Глаза на нем отдыхают.

Как работать с FTP. Сначала выбираем FTP: F9 (Меню) - Right (Правый) - Change Drive - FTP. Клавишей Tab переходим в окошко FTP, в котором выводится список существующих коннектов к различным серверам. Нажимаем Shift+F4, появляется окошко для создания нового коннекта. Для анонимных серверов надо в строчке login набрать anonymous, в строке password - адрес электронной почты.

Полноэкранный режим. Alt-Enter

Обзор сети (Network в меню Alt-F1/F2). Показал пустую панель...


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

PowerPoint - межстрочный интервал

Долго искал, как менять расстояние между строками на слайдах PPT. Привычного меню"Абзац" (как в Word) нет. Оказалось, что в PPT сделали специальный пункт для этой цели - Формат\Интервалы, в котором можно менять межстрочный интервал, а также отступы до и после абзаца.

четверг, 16 октября 2008 г.

Архив рассылки по VC на RSDN

Указатель по числам 2001 год

18 марта - про STL, часть первая
25 марта - Службы Windows NT: назначение и разработка
1 июля - Я никогда не буду использовать MFC

среда, 8 октября 2008 г.

Две фишки в Word

Граждане, читайте рубрику RTFM в Компьютерре! Много интересного найдете.

http://www.computerra.ru/gid/rtfm/

1. Как избавиться от форматирования текста в Word.
Рррр, как я ненавижу это самоопределение стилей. А достаточно нажать "Ctrl+пробел" или "Ctrl+Shift+Z" - и Word в мгновение ока очистит любой выделенный текст от стилевого оформления и ненужного форматирования.

2. Отображение пути файла в Word.
Если у нас есть несколько одниоименных файлов в разных папках, то при работе с ними может возникнуть путаница, так как Word отображает только имя файла. Бороться с этим можно с помощью простого макроса.

Код макроса следующий:
Sub AutoOpen()
ActiveWindow.Caption = ActiveDocument.FullName
End Sub

Приведённый код нужно, скопировав в буфер обмена Windows, перенести в окно
вызываемого посредством меню "Макрос -> Создать" редактора Visual Basic и
cохранить изменения в шаблоне Normal.dot.

пятница, 3 октября 2008 г.

Чему учат в Интернете?

Всему. Плохому и хорошему.

Здесь будут помещены ссылки на всякие онлайновые курсы ( ну, или просто хорошие объемистые туториалы) на самые разные темы.

Как прокладывать локальную сеть
Руководство (во, хороший перевод для слова туториал - руководство!) для чайников. С картинками и доступным языком. Все - от обжима проводов до всяческих настроек.

Интернет Университет ИТ (www.intuit.ru)
Численные методы решения уравнений в частных производных. Авторы - А.И.Лобанов, И.Б. Петров.
Основы организации операционных систем Microsoft Windows
To be continued.

понедельник, 29 сентября 2008 г.

Inkscape - редактор векторной графики

Помимо всего прочего, этот редактор еще и фриварный. Функциональность, конечно, поменьше, чем у CorelDraw, но вещь, безусловно, очень и очень полезная.Установочный файл весит около 40 Мб.

Сайт проекта - здесь : www.inkscape.org

Пара приемчиков, на память.

Работа с окружностью. На ней есть три узла -два кружка и один квадратик. Квадратик - для масштабирования (при зажатом Cntrl - пропорции сохраняются, это верно и для других фигур). Двигая кружочки можно разомкнуть окружность. Можно использовать и три кнопки на панели инструментов - замкнутая дуга, разомкнутая, сектор.

Прямые линии. Узлы-квадратики -- для маcштабирования. В середине узел-крестик, это ось вращения линии. Ее можно передвигать к любому из двух концов отрезка.

вторник, 23 сентября 2008 г.

Словари и справочники для мобилы

Мобилу с поддержкой java можно сделать весьма умным советником и помощником, если оснастить его соответствующим софтом.

Каждая программулька состоит из двух файлов: .jar и .jad. Заливаем их на телефон, запускать приложение можно сразу.

Сабж несложно найти в Интернете.
например здесь неплохая поборка:
http://www.smpda.com/soft_dictionaries.html

есть клиент-серверные и обычные проги. Направленность самая разная. Отмечу англо-русские словари (в т.ч. большие), программы с разной инфой (автомобильные коды РФ, почтовые коды РФ и Украины, гитарные аккорды), а также мега-проекты, типа толкователей снов и (какая прэлесть!) словарь фени на 7000 слов. Must have, однозначно.

Некто Константин Книжник сделал неплохой сайт, где выложены его фриварные программы для мобил:

http://www.garret.ru/DataBase_rus.htm

Самое ценное здесь - двунаправленный словарь Мюллера на 67000 слов. Ну и всякое там, по мелочи.

На очереди - мобильные карты.


Дремлет Малыш, под одеялом темно
Спит он и видит сладкие сны
Ш у б а - д у б а
В них, как и прежде, влетает в окно
Карлсон, вернувшийся с войны !!!!
(С) Олег Медведев, "Карлсоны", альбом "Зеленая дверь"

понедельник, 1 сентября 2008 г.

Децибелы

Уже второй день разгоняю сонливость боевиком группы "Алиса" "Небо славян". Мощная энергетика этой песни действительно заряжает. Только сейчас понял, что сорваный голос Кинчева мне куда роднее и ближе, чем Кипелов с его консерваторским образованием.

Кинчев, который смотрит на нас бешеными глазами с футболок припанкованных алисоманов - наверно самая яркая фигура в современно русском роке. Вот только непонятно - если он настолько глубоко воспринял православие - почему не убрал пентаграмму и знак анархии из логотипа группы?

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

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

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

f = fopen(fname, 'wt');


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

понедельник, 21 июля 2008 г.

Регулярные выражения в Word

На форуме программистов Весельчак У нашел полезную инфу - в Ворде есть регулярные выражения, которые можно использовать в при поиске/подстановке. Разумеется , они не такие мощные, как в Perl.

Вот ссылка на хорошую статью по теме:
Finding and replacing characters using wildcards

http://word.mvps.org/FAQs/General/UsingWildcards.htm

Пара замечаний:
Microsoft пользуется термином wildcarts вместо regular expressions. В русской версии Word -а в окне Cntrl-F надо поставить галочку напротив строчки "подстановочные знаки ". Поди, догадайся...

В упомянутой статье сказано, что строчка
[0-9]{1,2}
ищет последовательность из одной или двух цифр. Так вот, Word не понимает такой шаблон, надо ставить точку с запятой, вместо запятой.

Если мы ищем такую последовательность, заключенную в скобки - номер формулы - то надо написать
\([0-9]{1;2}\),
Если т.к. круглые (и квадратные) скобки - считаются спецсимволами при включенных "подстановочных знаках ".

Вот мы уже и привыкли к лесенке до 7 и обратно на турниках.


четверг, 17 июля 2008 г.

Fryazino underground music

Вот что во Фрязино люди сочиняют:

Холод
В серых стенах старинного замка
Плачет дитя.
У него отобрали кусочек тепла.
В серых стенах старинного замка
Сырая земля.
Завядает последний росточек.

Он ощущает холод четвёртый день
Он ощущает холод…

В серых стенах старинного замка
Отняли мечту,
Вместо веры оставили правду и холодную пустоту
В серых стенах туманная дымка, взгляд в темноту

Я тону в ощущении жажды,
Я уже это видел однажды

Я ощущаю холод четвёртый день
Я ощущаю холод…

Серые стены старого замка размыла вода,
Твёрдый камень в мелкую крошку осыпался навсегда
Плотной стены тумана уж нет, а жаль…
В серых стенах погребена печаль…

Мне напомнило "Раду и Терновник" и "Адо".

Теряем

1
Однажды мы вышли из дома чтоб выбрать дорогу и вместе идти по ней
Солнце светило и мы улыбались друг-другу и было легко дышать
Но кто-то внезапно подумал, что двигаться дальше он хочет немного быстрей
А кто-то другой ни словом, ни жестом не посмел удержать.

Ещё не поздно выкрикнуть в след "постой!"
Ещё есть время догнать до поворота,
Но нам привычнее просто махнуть рукой.
Так мы снова теряем кого-то.

2
Ещё один дорогой человек ушёл из поля зрения глаз.
Никто не ошибся дорогой, просто не по пути.
Тепло заходящего солнца на спинах ещё объединяет нас.
И вслух никто не сказал, но каждый подумал:

Прости! Здесь наши следы разойдутся.
Я больше НЕ обещаю вернуться.
Прощай, звонить не забывай!
Прощай! Прощай!

припев:Ещё не поздно выкрикнуть в след "постой!"
Ещё есть время догнать до поворота,
Но мы с улыбкой просто помашем рукой
Так всю жизнь мы теряем кого-то.
(C) группа Межгород, текст - DRDR
Неплохо, по-моему. С душой. Особенно второе.

понедельник, 7 июля 2008 г.

Полиграфические термины

Весь мозг себе свернёшь, пока найдёшь нужную ТеХовскую команду, которая меняет вид документа (шрифт, межстрочный интервал). Всё потому, что в полиграфии используются спецтермины, которые простой смертный не знает. С поиском в англоязычном интернете проблем, разумеется, столько же.

Итак.
  1. Расстояние между буквами в слове = разрядка,
    межбуквенный интервал;
    inter-letter spacing, letterspacing.
  2. Расстояние между строками = интерлиньяж ;
    interlinear spacing.
  3. Верстка = make-up, making-up (ну кто бы мог подумать!).

воскресенье, 6 июля 2008 г.

subfig.sty

Это замечательный пакет для TeX, который позволяет делать несколько картинок под одним заголовком. Например: рис.1 , Профили решения уравнения теплопроводности. На рис.1a - 1d будет показано 4 профиля в разные моменты времени.

Чтобы можно было работать с subfig.sty надо кроме него самого установить (положить в папку с .tex - файлом) ещё caption.sty версии не позднее 2003/12/01.

По умолчанию буквы, нумерующие картинки, заключеныв круглые скобки. Если это не устраивает, надо при подключении пакета задать соответствующую опцию:

\usepackage[labelformat = simple]{subfig}

Опция empty вообще уберет буквенную нумерацию.

четверг, 3 июля 2008 г.

Фразы

Стены гаражей вдоль ж/д Фрязино - Москва - собрание красивых граффити и громких фраз. Например:

Апокалипсис уже идет!

От смерти не откупишься! (НБП)

За епископа Диомида!

Риэлтор Харламов - жулик!

А еще много интересного можно услышать по радио. Вот сегодня была программа про кино:

"Необходимо расширить сильно сузившиеся в последнее время рамки медийных
лиц" (в смысле нужны свежие актеры в фильмах)

понедельник, 16 июня 2008 г.

Закладки в pdf

Чтобы можно было делать закладки в pdf, надо в .tex документе подключить пакет
hyperref, вот так:
\usepackage[pdftex, bookmarksnumbered=true]{hyperref}
(первая опция нужна для pdflatex-a).

Пара ссылок по теме:
http://theoval.sys.uea.ac.uk/~nlct/latex/pdfdoc/pdfdoc/pdfdoc.html#619
http://www.mpch-mainz.mpg.de/~joeckel/pdflatex/

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

TeX notes #3

Сегодня - немного информации про уравнения в несколько строчек. Например, мы хотим
поставить краевую задачу, у нас три строки - уравнение, краевые и начальные условия. Нужно, чтоб задача имела один номер (задача (1), а не задача (1) - (3)).

Можно воспользоваться окружением eqnarray, но почему-то весь интернет кроет его на все лады (с 1 по 12й :). Взамен предлагается align. Выранивание там делается точно так же - по знакам '&'. По умолчанию каждая строчка нумеруется, но можно отключить номера в отдельных строках, поставив \notags перед \\ (linebreak).

Ссылки:
http://www.math.uiuc.edu/~hildebr/tex/displays.html
http://crab.rutgers.edu/~karel/latex/class4/class4.html

Если мне память не изменяет, в eqnarray всё было цивильней - номер ставился один на все строки сам, его местоположение выбиралось оптимальным (красивым) образом.

Why not use eqnarray?
http://sepp.oetiker.ch/texlive-20051102-mo/FAQ-eqnarray.html

четверг, 15 мая 2008 г.

Структура. Ordnung!

Прежде чем писать большой документ (скажем, диссертацию по мат.физике) надо детально продумать его структуру. Иначе потом придётся делать много тупой утомительной работы по расстановке ссылок на уравнения и литературу, сверки версий частей документа и прочей ерунды.

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

Итак, план диссера такой - три части (каждая состоит из нескольких пунктов), введение , заключение, список литературы. Иллюстраций будет много.

Каждая часть помещается в свою папку (PartN), каждый пункт - в свой файл. Поскольку удобнее просматривать диссер по частям, в каждой папке имеется каркасный файл partN.tex (оформляемый как отдельный документ TeX с преамбулой), который включает все .tex - файлы папки. В каждой папке PartN есть своя папка img с картинками. Таким образом, каждую часть можно компилировать отдельно, в свой pdf.

В корневой папке Disser лежит главный файл disser.tex, в который будут включены все главы. Включать в него файлы partN.tex из папок partN, т.к. возникают проблемы с путями. Поэтому в Disser сделаны дополнительные каркасные файлы partN.tex , состоящие из строчек типа
\input{./PART1/ch6}

Единственная пока проблема - с картинками. Поскольку в каждой части своё хранилище графики, включение из корневой папки файлов-пунктов с картинками будет вызывать ошибки. Видимо, придётся сделать общее хранилище img в корневой папке. Либо сделать папки типа imgN в корневой, так пути покороче будут.

Да, и очень удобно, что в PsPAD есть возможность создавать проекты. Про этот чудо-редактор надо отдельный пост написать, но это потом.

А вчера "Зенит" выиграл Кубок УЕФА, победив в финале "Глазго Рейнджерс" 2:0 !

понедельник, 12 мая 2008 г.

О богато иллюстрированной статье.

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

У меня получилось страниц 25 текста и штук 30 иллюстраций. Делаю pdf. Время компиляции в pdflatex-jv такое, что заснуть можно ожидаючи. Плюс ещё такая неприятность: если много окружений figure идёт подряд, то возникает ошибка too many unprocessed floats. Бороться с ней можно вставляя после картинок \pagebreak (по правилам и так картинки должны быть каждая на своей странице) и хотя бы несколько строчек текста. Понятно, что он совершенно лишний, но без него ничего не получается.

Напрашивается естественное решение - сделать отдельно файл с текстом и файлы с картинками. В одном файле все картинки уместить не удастся из-за упомянутой ошибки.

Хорошо. А что делать со ссылками на картинки в тексте? И как сделать, чтоб во втором файле нумерация картинок начиналась не с 1, а с n+1, где n - число картинок в первом файле?

Делаем так. В основной текст, в самом конце вставляем (\input) .tex файл с пустыми figure. в которых сделан label с теми именами, которые уже вставлены в ссылки в тексте.
Здесь опять может возникнуть ошибка с float, но мы её поборем упомянутыми средствами - потом выкинем странци с белибердой из pdf.
Обязательно наличие caption перед label (!!!!!) иначе в тексте все ссылки будут иметь один номер (у меня почему-то 8). Всё, теперь в тексте будут ссылки типа "на рис.21 мы видим бифуркацию".

Текст и картинки компилируем в отдельные pdf. Во втором файле с картинками надо сделать нумерацию с номера n+1. Для этого инициализруем соответсвующий счётчик:
\setcounter{figure}{n}.
Именно n, а не n+1!

Теперь в игру вступает замечательная софтина PDFTools, которая умеет сливать pdf и выкидывать из них страницы (и ещё много чего). Выкидываем последние страницы из файла с текстом, затем сливаем всё в один итоговый pdf.

Теперь надо выкинуть последние несколько страниц

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

День Победы

С утра посмотрел парад на Красной площади. В принципе, понравилось. Впервые за время существования эРэФ прошла бронетехника. "Тунгуска", "Мста", "Тополь", C- 300, бронеавтомобили "Тигр", танки Т-90, БТР-80. Впечатлила и авиация - Ми-8 (а почему не Акулы или Ми-24?), дальний бомбардировщик, Стрижи и Витязи.

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

пятница, 25 апреля 2008 г.

TeXBooks

Теперь ясно - если возникает ТеХнический вопрос, то не стоит сразу лезть в Интернет в поисках ответа. Угробишь пару драгоценных часов ради пары нужных строчек. Или вообще ничего не найдёшь.

Существует несколько классических книг, которые и надо использовать как главный источник информации по ТеХ-у. Даже если там чего-то и нет, чтение этих кладезей премудрости поможет сделать поиск в Сети более осмысленным.

Итак, TeXInfo Hall of Honor.

  • Львовский. No comments. Мы всего с него начинали. Базовая информация по TeX-у, изложенная с неподражаемым юмором.
  • Гуссенс, Миттельбах, Самарин. Рассказано более чем о сотне пакетов. Приведены управляющие команды различных окружений, что обычно очень сложно найти собранным в одном месте. Скажем, list разобран по косточкам - схема, все параметры (отступы и т.д.).


    <to be continued>

понедельник, 21 апреля 2008 г.

TeX notes #2

Как я уже писал, кавычки типа « » делаются с помощью лигатур.

Для кавычек “” есть специальные команды - \glqq и \grqq соответственно. Использовать нейтральный вариант (") в обычном тексте, видно, не стоит (в Си-шном коде, конечно, он необходим). Команду \grqq надо писать сразу после закавыченного слова (чтоб кавычка
не отрывалась), а после нее хорошо поставить {} - чтобы не сливалась со следующим за кавычкой символом.

Двойные прямые скобки (норма) ставятся так: \| .

воскресенье, 20 апреля 2008 г.

Шесть струн

Неделька выдалась очень музыкальной, надо б про это написать.

Во-первых, по-моей просьбе на КСП ВМК сыграли "Прощание с провинцией" на стихи Витакова. Очень интересный бой: вниз с глушением - большой палец ударяет по басам, остальные согнутые - по нижним, получается такой сухой стук; пальцы выпрямляются, бьют по открытым струнам вниз, потом вверх, при этом левая рука зажимает аккорд - паумсс. Всё вместе звучит как-то так: ЧПОК (\/) - пу(\/) - буумс(^).

Во-вторых, почитал кое-что про блюз. Импровизировать, оказывается, надо в рамках рисунка - пентатоники (пока не вполне понимаю, что это значит), причём обычно не выходя за рамки бокса (отрезка грифа, несколько ладов). Вообще, очень много терминов и фишек.

В-третьих, купил струны ("RotoSound", normal tension) - интересно, что нижние - черные, а не белые, как я привык. Плюс тоненький (0.6 мм, а бывают ещё тоньше) медиатор. Всё это было приобретено в магазине на Фрунзенской в здании МДМ. Уже понял, насколько отличается техника игры пальцами и медиатором.

Фурмач объяснил принцип построения гамм. Мажорная: шаблон - от До до Си, если строим от другой ноты, то длины интервалов берём последовательно, как в шаблоне. Минорные строятся по шаблону от Ля и дальше.

Да, и окончательно оформилась мечта сыграть латину (сальсу, меренги, румбу) на гитаре. У Барабанщиков в песне Куба есть отличный кусочек румбы. Мы им покажем, Фидель!

"Интеллигент - это человек, защищённый от жизни только очками и женой ":) Хм, а если нет жены, что делать? Покупать ротвейллера и лицензию на травматику?

пятница, 4 апреля 2008 г.

Библиотека PETSc

Вот ещё лекция про мат. библиотеки. На этот раз нам рассказывали про PETSc (написали её, вроде, создатели MPI).

Эта библиотека интересна тем, что заточена под решение УРЧП. В ней просто использовать матрицы, создаваемые по заданному шаблону (очень удобно при аппроксимации дифференциальных операторов).

PETSc состоит из набора пакетов. Среди них - пакеты для работы с предобуславливателями, решения СЛАУ с помощью проективных пространств Крылова (каких только пространств не навыдумывали) и для решения систем нелинейных уравнений.

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

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

Да, и есть ещё графическая библиотека, которая позволяет визуализировать профиль матрицы и вектора решений. Мелочь, а приятно - не придётся ради простеньких графиков привлекать сторонние графопостроители.

вторник, 1 апреля 2008 г.

Beamer Notes

Beamer - это ТеХовский пакет, позволяющий делать слайды. К нему прилагается замечательный и подробный userguide, в котором есть исчерпывающая информация по всем вопросам. Однако не всегда просто найти то что нужно - в документе больше 200 стр, а само изложение всевозможных фич и опций довольно запутанное. Вот что может пригодиться:
  • Пустой слайд. Если надо расположить на экране несколько больших графиков, то шапка (headline) и прочее (footline, sidebar) будут лишними, т.к. занимают драгоценное место. Чтобы сделать чистый слад надо написать:

    \begin{frame}[plain]
  • Уменьшение вертикального отступа в шапке. Это когда заголовок слайда всё-таки нужен, но высота полоски неоправданно велика.

    \setbeamertemplate{frametitle}{
    \vskip-2pt
    \begin{beamercolorbox}[wd=\paperwidth]{author in head/foot}
    \begin{center} \insertframetitle \end{center}
    \end{beamercolorbox}}

    По сути, в исходном шаблоне frametitle мы поменяли только vskip.

суббота, 29 марта 2008 г.

Настройка Shimano Acera

Возникла проблема с передним переключателем на байке - цепь не перебрасывалась на самую большую звёздочку.

Почитал статьи по теме (на SportElements и у Paralizer-a), стал настраивать. В общем - ничего сложного. Есть два винта на переклюке и трос, который идёт от манеток. Если рамка переключателя не скидывает цепь с большой звёздочки на маленькую - надо немного вывернуть винт, который дальше от рамы (если цепь, находясь на самой большой звёздочке, трётся о внешний край рамки переклюка, надо его завернуть).

По идее другой винт регулирует положение цепи относительно внутреннего края рамки, т.е. его надо подкручивать, когда нет переключения с малых звёзд на большие. Но мне показалось, что гораздо эффективнее подтягивать тросик. Здесь главное не хвататься за шпульку, которая на конце тросика - сразу слетит, а без неё тросик размочаливается в момент.

Провозился два часа в зоне Б, вроде всё теперь работает. Главное было преодолеть благоговейный страх перед японским механизмом с гордой надписью Shimano :)

пятница, 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 с помощью всего нескольких команд. Но реализация подкачала.

среда, 26 марта 2008 г.

Программирование со ScaLAPACK

Показали мне тут на днях программу на Fortran, которая решает СЛАУ на многопроцессорном компьютере с помощью библиотеки ScaLAPACK.

Сам ScaLAPACK (Sca = Scalable, масштабируемый, т.е. с возможностью распараллеливания на несколько процессоров) по своей структуре очень похож на LAPACK. Такие же маловразумительные названия в виде набора букв. Первая - P (parallel), дальше - тип данных. потом тип матрицы, далее название решаемой задачи (решение СЛАУ, проблема с.з. и т.д.).

Метод, которым в этой проге решалась СЛАУ, остался, к сожалению, неизвестным. Применялся солвер, решающий систему с плотной матрицей. Использовалось 6 процессоров, при этом матрица разбивалась на 6 частей. Раскладывание кусков по процессорам производилось вручную (т.е. значительная часть программы занималась именно этим). Да, ещё: как нам объяснили, каждому процессору потребуются элементы из других кусков, так что будут обмены (хорошо хоть эту задачу берёт на себя солвер, использующий MPI). Как производится сборка результата в один вектор - осталось непонятным, читать фортрановский код тяжело и непривычно.

Итого. ScaLAPACK - это весьма быстрая библиотека с большой историей использования. Создавалась она в те времена, когда Fortran был в чести, поэтому даже в её реализациях на С и Java надо не забывать про особенности хранения матриц (column-major order). Плюс многое надо делать руками (кроме раскладывания матриц по процессорам может потребоваться, например, какой-нибудь промежуточный массив с нетривиальным заполнением, который тоже надо самому создавать). В общем, ничего сложного, но хочется чего-то более человеческого.

Думается, если б существовала SKA-LAPACK расчёты шли бы веселее:)

From now on I'm not a grim joker anymore. Basta.

понедельник, 17 марта 2008 г.

Тигр спокоен

В Тибете, слава Богу, никакой Чечни не получилось. Хотя в некоторых провинциях беспорядки продолжаются.

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

Беспорядки, продолжавшиеся неделю, начались после демонстрации буддийских монахов, посвящённой 49й годовщине другого восстания в этом овеянном легендами регионе, которое китайцы тогда жестоко подавили. Улыбнул заголовок на Рамблере - " Буддизм с кулаками".

Максим Соколов (телеведущий такой, бородатый и в очках) сказал, что причиной мятежа была провокация. Цель - получить формальный повод для бойкота Пекинской олимпиады. Возможно, так и есть.

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

воскресенье, 16 марта 2008 г.

Китайская Чечня

В древнем загадочном городе Лхасе произошли беспорядки. Тибетцы (есть такой народ) требуют отделения от Китая (или расширения автономии - требуют короче) , стали громить магазины и драться с полицией. Этнические китайцы боятся выходить на улицу.

Правительство КНР вновь проявило свой крутой нрав (вспомнить только Тянь-Аньмынь) и отправило туда войска (солдаты и до 200 военных машин). В столкновениях по разным данным погибло до 80 горожан, есть раненые и среди силовиков. Интернет в городе не работает (представляете, там есть интернет), перебои с телефонной связью и т.д.

Таким образом, у китайцев появилась ещё одна головная боль помимо Уйгурского АО. Сценарий событий очень похож на мятеж в Андижане (говорят, давить тамошних сепаратистов Каримову помогали как раз китайцы) . Правительство КНР дало бунтовщикам срок до понедельника чтобы сдаться - тогда им обещано "снисхождение" (наверно, в тюрьме будут давать не одну лепёшку, а две).

Matlab: фишка с матрицами

Давно хотел написать про одну замечательную вещь в Матлабе. Часто нужно переставить в матрице строки или столбцы. Для этого можно, конечно, умножить её на единичную с соответствующим образом переставленными строками/столбцами. Но есть куда более элегантный способ.

Скажем, есть у нас матрица A из двух строк и мы хотим поменять в ней строки местами.
Пишем:
B(2 :-1: 1, :) = A
и в итоге получаем в матрице B то, что нужно. Интересно, Фортран даёт такую возможность?

понедельник, 10 марта 2008 г.

Аннотирование графиков в Matlab

Для рисования нескольких графиков в одном окне (figure) используется функция hold:
plot(...)
hold on

Однако после каждого hold скидываются параметры ColorOrder и LineStyleOrder, из-за
чего все графики отрисовываются одинаковыми линиями. Это очень неудобно, когда важно понять, в каком порядке графике появлялись на рисунке.

Чтоб избежать этого неприятного эффекта надо заменить hold on на hold all. Теперь графики будут выводиться линиями чередующихся цветов.

Для аннотации графиков хорошо применять оператор
legend('string1', ...., 'string n', k),
который вставляет в график описание вида : string i - образец i-й линии,
а параметр k указывает, где поместить это описание (например, значение k=2 соответствует левому верхнему углу).

среда, 5 марта 2008 г.

Вести FM и неологизмы

Нашёл ещё одну "говорильную " радиостанцию - ВестиFM. Новости политики, экономики, спорта. Интересная передача "Вести хайтек". Сегодня, например, про самую большую плазменную панель рассказывали. "О цене производитель ни гу-гу. Они уже год думают, сколько с нас содрать. Но саудовские шейхи, которые на ценники из принципа не смотрят, уже записываются в очередь ". Передача действительно стоящая - на других радио подобные программы обычно сводятся к новостям типа " пенсионерка из штата Иллинойс стала победительнецей в соревнованиях по боулингу на приставках ".

Очень забавные выражения попадаются в речи экспертов, консультантов и прочей пафосной публики, которая высказывается в эфире по разным вопросам. Скажем, вместо "долги" могут сказать "долговая нагрузка". Или - население не хочет это больше толерировать (в смысле терпеть). Ну а уж неблагоприятный новостной фон, который сопровождает торги на бирже - это вообще песня.

понедельник, 25 февраля 2008 г.

Windows Hotkeys

Мыщка - мышкой, но горячие клавиши здОрово ускоряют работу. Итак
  1. В проводнике кнопкой Alt входим в верхнее меню, соответствующей клавишей выбираем пункт, в нём - подпункт и т.д. Например, хитроумная комбинация Alt + f + w + f создаёт новую папку.
  2. На клавиатуре имеются две кнопочки, которыми мало кто пользуется - со значком Windows (назовём её Win) и с контекстным меню (CM) . Win вызывает меню пуск, CM, как легко догадаться - контекстное меню активного приложения. Создать папку в проводнике можно и так: CM + w + f.
  3. Контекстное меню можно вызвать сочетанием клавиш Shift + F10.

вторник, 19 февраля 2008 г.

Программы для восстановления данных

  • WinRar и WinAce сами могут восстанавливать испорченные архивы, надо только включить опцию Put Recovery Record.

  • ZipRecovery. Может работать с файлами размерами более одного гигабайта. Эту и другие утилиты для восстановления файлов разных можно отсюда: ttp://www.officerecovery.com

  • Advanced Zip Repair. Предусмотрена функция починки архивов, защищённых паролем, а также самораспаковывающихся архивов (SFX). Качать отсюда: http://www.repair-zip-files.com

  • ExcelRecovery. Восстановление офисных файлов (Word, Excel и т.д.). Берём здесь: http://www.officerecovery.com


А вчера умер Егор Летов ...

четверг, 14 февраля 2008 г.

Графика в Matlab

Закрыть все figure-s: close all

Если необходимо сделать несколько figure-s, у которых axes имеют одинаковые свойства (properties):
  1. Создаём структуру с полями, у которой название совпадает с названиями нужных свойств. Значения полей - значения свойств:

    myaxes.Color = [.5 .5 .5];
    myaxes.XGrid = 'on';
    myaxes.YGrid = 'on';
    myaxes.ZGrid = 'on';
    myaxes.GridLineStyle = '--';

  2. Создаём figure, присваиваем её axes свойства, сохранённые в структуре:

    figure(1);
    set(gca, myaxes);

Просто и изящно:)

И последнее - массив строк. Создаём cell array:

str_arr = {'String 1'; String 2'; 'String 3'; 'String 4'};

( Если написать str_arr = ['String 1'; String 2'; 'String 3'; 'String 4'], то Matlab просто слепит всё в одну строку)

Получать i-ю строчку приходится так:

str_i = char(str_arr(i));

понедельник, 4 февраля 2008 г.

Cygwin, GSL и прочие неприятности.

Понадобилась мне какая-нибудь мат. библиотека на Си, в которой были бы функции интерполяции. Остановил выбор на GSL - GNU Scientific Library. Очень богатая библиотека -
несколько видов интерполяции, линейная алгебра, статистика и много ещё всего.

Главная проблема - компилируется она с помощью config и makefile. Т.е. Visual C компилятор, видимо, не сработает, нужен, скажем, gcc. И тут пришлось познакомиться с Cygwin (позднее оказалось, что gsl входит в него). Cygwin - это такая программа, которая по сути эмулирует Linux под Windows (есть другой вариант - UWIN). Есть там и gcc и make и vi и даже KDE с Gnome.

Только вот работает это чудо медленно и глюкаво. Библиотеку откомпилировал после
4х перезагрузок компа. В интернете советуют ставить старую версию (1.3, вроде),
но я не пробовал.

Но самым неприятным было, что после компиляции получаются не lib и dll, а какие-то
.la файлы. Можно было и раньше догадаться, скажете вы. Ну да, но я как-то не подумал.

Короче, нашёл я GSLWin32 - нормальный набор хедэров и dll(2 шт). Сделал тестовый проект
(в include-директории MSVC необходимо положить папоску gsl со всеми хедэрами). Но ..
Студия сказала, что dll поломаны. Думаем дальше.