История развития электродинамики. Уравнения Максвелла

История развития электродинамики. Электромагнетизм

Краткое содержание предыдущих серий

Электромагнетизм

Несмотря на то, что Гильберт в свое время разъединил электричество и магнетизм, ученые все-таки пытались делать попытки снова их объединить. Одним из поводов для поиска связи между этими физическими явлениями послужил случай (описанный в Философских трудах за 1735 год), произошедший в июле 1731 года. В дом одного торговца во время грозы ударила молния, причем пострадал в основном только угол комнаты, где лежали в ящике стальные ножи и вилки. Часть из них расплавилась, а часть осталась цела, но при этом они намагнитились и стали притягивать гвозди и другие металлические предметы.

Читать далее ‘История развития электродинамики. Электромагнетизм’ »

История развития электродинамики. Гальванизм

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

Читать далее ‘История развития электродинамики. Гальванизм’ »

История развития электродинамики. Электростатика

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

Читать далее ‘История развития электродинамики. Электростатика’ »

История развития электродинамики. Магнетизм

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

Читать далее ‘История развития электродинамики. Магнетизм’ »

Про книгу Мацкевича «Солдат империи» и про фильм по книге

Про книгу Мацкевича "Солдат империи" и про фильм по книге

Сижу на днях в кресле, играю на КПК в Worms, родители смотрят телек, начинается реклама какого-то документального фильма. У меня уже давно выработалась аллергия на фильмы, снятые на ОРТ (никак не привыкну, что это теперь просто первый канал) и РТР, да и тут судя по рекламе очередная страшилка на тему СССР vs. США. Но вдруг неожиданно в рекламе называют фамилию «Мацкевич» и начали говорить про систему защиты хвоста самолетов. Вот тут я уже заинтересовался, потому что буквально пару недель назад прочитал книгу того самого Мацкевича, которая называется «Солдат империи, или История о том, почему США не напали на СССР». Фильм, который называется «Как один лейтенант войну остановил», по телевизору я позевал, успел только на последние 10 минут, но потом скачал его с торрентов. Вот решил написать сразу и про книгу, и про фильм.

Читать далее ‘Про книгу Мацкевича «Солдат империи» и про фильм по книге’ »

А.С. Дятлов «Чернобыль. Как это было»

Дочитал книгу А.С. Дятлова «Чернобыль. Как это было». Ее автор, заместитель главного инженера чернобыльской станции, был одним из шести человек, которых суд признал виновными в аварии на четвертом энергоблоке 26 апреля 1986 года. По официальной версии вся вина за аварию была возложена на обслуживающий персонал, но цель этой книги в том, чтобы показать, что персонал был обвинен несправедливо, а авария произошла из-за конструкции самой чернобыльской станции.

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

Затем подробно описывает обвинения, которые были выдвинуты против персонала и, приводя цитаты из нормативных документов, показывает что персонал действовал верно и не нарушил никакие требования к безопасности.

Читать далее ‘А.С. Дятлов «Чернобыль. Как это было»’ »

Две программы для рисования графиков

Две программы для рисования графиков

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

На работе посоветовали программу Grapher от Golden Software, в которой внешний вид графиков можно действительно настроить как угодно, от окна настроек в первый раз глаза разбегаются. Но есть у этой программы один маааленький недостаток — ее разработчики хотят кушать, и поэтому программа стоит денег, причем не маленьких — $349.

После этого, скорее из спортивного интереса, стал искать бесплатный аналог. Как ни странно, среди бесплатных прог,а точнее даже Open Source, в основном попадались исключительно под *nix, среди них была и QtiPlot, которая хоть и Open Source, но за полную сборку без ограничений под винду разработчики тоже хотят денег, а чтобы скомпилировать ее самомстоятельно, надо попотеть.

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

Дальше я попытаюсь сравнить эти две программы.

Хранение данных

Grapher и SciDAVis отличаются между собой настолько, что проще перечислить что у них общего, то есть то, что эти две программы предназначены для рисования графиков, а SciDAVis еще и для обработки данных (в Grapher тоже можно делать несложную обработку, но там это не настолько удобно).

Начнем с того, что у этих двух программ в корне отличается идеология хранения данных. SciDAVis хранит все данные в файле своего проекта, в то время как Grapher хранит только ссылки на файлы с данными. Я так и не понял какая идеология мне больше нравится. С одной стороны в SciDAVis удобно сохранить данные в проект, а потом исходный файл заполнить новыми данными, а на созданный проект это не повлияет.

С другой стороны, в Grapher’е часто пользовался тем, что он не хранит данные у себя в проекте. Во время отладки своей программы можно однажды созданному проекту подсовывать каждый раз новые данные, и для того, чтобы увидеть оформленный результат, достаточно перезапустить Grapher. Но это же создает лишние проблемы при переносе файла проекта с одного компа на другой; Grapher хранит в себе абсолютные пути к файлам и, если видит, что какого-то файла нет, то просит указать новый путь.

Открытие файлов

В качестве исходных данных обе программы понимают текстовые файлы, в которых числа записаны столбцами, и файлы, в которых числа разделяются запятыми (CSV). Кроме этого Grapher может открывать файлы Excel, Lotus 1-2-3 и Symphony, DBF и еще пару форматов собственной разработки.

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

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

Рисование графиков

Внешний вид главного окна Grapher’а напоминает обычный векторный графический редактор с деревом объектов, где на листе располагаются графики

Внешний вид окна Grapher

Grapher оставляет SciDAVis далеко позади по количеству настроек внешнего вида графиков, от которых при первом запуске разбегаются глаза.

Окно настроек внешнего вида для графиков

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

Можно посмотреть и таблицу с данными

Таблица данных в Grapher. Напоминает Excel

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

Внешний вид окна SciDAVis

Настройки графиков здесь поскромнее, например, я не увидел возможности заливать области градиентом, толщина линий задается в неизвестных единицах, в то время как у Grapher ее можно задавать или в inch, или в мм. Еще в SciDAVis хотелось бы иметь возможность делать линии графиков потоньше, чем они есть при минимальной толщине.

Типы графиков

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

Обе программы могут рисовать следующие типы графиков:

  • Обычный график по точкам, когда точки соединяются прямыми линиями или спланом. Исходные точки на графике могут отмечаться какими-нибедь символами. А можно оставить только эти символы без линий и получится так разываемый Scatter.
  • Графики, у которых точки соединяются только горизонтальными и вертикальными линиями, получаются ступеньки.
  • Графики, представляющие собой вертикальные столбики, обычно их называют Bar. Есть отдельный тип графиков, когда кроме вертикального верхнего уровня столбиков задаются еще и нижние уровни.
  • Есть отдельные типы графиков для рисования гистограмм.
  • График, когда область под графиком закрашивается или заштриховывается.
  • Диаграмма в виде долек пирога — Pie Chart.
  • График, изобращающий набор векторов. Причем можно задавать координаты начала и конца вектора, а можно задавать координаты начала, его длину и угол поворота.
  • Так называемый Box Plot, используемый для отображения статистических данных.
  • Линии уровней.
  • Можно рисовать различные трехмерные графики.
    • Трехмерные траектории
    • Трехмерные Scatter’ы
    • Графики в виде трехмерной ленты
    • Трехмерные столбцы, положение на плоскости которых задается двумя координатами, а третья координата определяет их высоту.
    • Трехмерные поверхности. Правда, у SciDAVis такой тип графиков получается угловатый, Grapher умеет сглаживать углы для таких графиков.

Трехмерные графики в SciDAVis’е можно вращать, приближать и удалять мышкой. В Grapher’е вращать можно только вводя углы поворота в свойствах графика. Но у Grapher’а больше настроек для установки источника света и бликов.

Кроме перечисленных типов Grapher может рисовать многие типы графиков в полярной системе координат. График в виде пирога в нем может быть трехмерным. Есть еще в нем такие специфические типа графиков как Stiff diagram и Ternary plot.

Графики в Grapher’е рисовать проще, чем в SciDAVis’е, в котором как правило приходится делать больше нажатий на кнопки. Например, Grapher в качестве данных для одной из координат использовать номера строк, а в SciDAVis’е для этого приходится вручную делать новый столбец, который потом заполнять номерами строк с помощью специального пункта меню.

Ниже приведены несколько типов графиков, построенных в этих программах.

Box whisker в Grapher

Box whisker в Grapher

Трехмерная траектория в SciDAVis

Трехмерная траектория в SciDAVis

Трехмерный пирог в Grapher

Трехмерный пирог в Grapher

Векторы в SciDAVis

Векторы в SciDAVis

Линии уровня в Grapher

Линии уровня в Grapher

Данные, апроксимированные сплайном в SciDAVis

Данные, аппроксимированные сплайном в SciDAVis

Экспорт графиков

Обе программы могут экспортировать графики в различные графические файлы. Список поддерживаемых форматов у Grapher’а посолиднее. SciDAVis из более-менее распространенных растровых форматов знает только BMP и PNG. Странно, что нет ни TIFF, ни JPEG, ни GIF. Да и PNG получается уж слишком большим. Для примера, файл PNG, созданный SciDAVis, весит 500 кБ, а после его пересохранения с помощью Irfan View, он ужимается до 15 кБ (потому что цветов там не много).

Из векторных форматов SciDAVis может сохранять EPS и SVG. При сохранении в SVG я натыкался на глюки, но не знаю кого в них винить, то ли SciDAVis, который файл создавал, толи Inkscape, который его открывал. В отличие от Grapher’а, SciDAVis, к сожалению, не умеет сохранять файлы в формате EMF и WMF, которые лучше всего подходят, если графики надо вставлять в Ворд.

Обработка

В CsiDAVis можно писать скрипты для обработки на языке muParser и вроде бы на Python, но при попытке выбрать язык для скриптов Python, SciDAVis благополучно падает, поэтому такую замечательную задумку мне потестировать так и не удалось, а жаль, я бы таким скриптам нашел применение.

На скрипты Grapher отвечает макросами на языке Basic (так называемый Sax Basic). Эти макросы напоминают макросы из MS Office.

В обоих программах есть возможность рисовать функции, заданные в виде формулы. В Grapher’е для этого есть специальные типы графиков, в свойства которых надо вводить формулы, а в SciDAVis есть возможность заполнить данными, рассчитанные по формуле, столбцы таблицы.

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

У SciDAVis еще есть функции для расчета корреляции, автокорреляции, свертки и деконволюции.

Но в SciDAVis особенно понравились функции взятия прямого и обратного быстрого преобразования Фурье (БПФ, оно же FFT) и функции для работы со спектрами и сигналами.

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

Спектр, когда отрицательные частоты идут после положительных

Спектр без перестановки отрицательных частот в начало

Спектр, когда отрицательные частоты идут до положительных

Спектр, когда отрицательные частоты идут до положительных

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

Кроме того SciDAVis поддерживает плагины, которые могут содержать новые функции, но как их делать я найти пока не смог.

Разное

Еще одним преимуществом SciDAVis является то, что файл его проекта является текстовым файлом, который при желании можно сгенерировать отдельной программой или скриптом. У Grapher’а формат проекта бинарный и закрытый.

Кроме того SciDAVis умеет экспортировать графики и данные в pdf, в принципе, мелочь, но вдруг в хозяйстве пригодится.

На сайте SciDAVis есть кроме стабильной еще бета-версия, в которой значительно изменен интерфейс, но эта версия еще слишком сырая, поэтому про нее говорить пока рановато.

Как видите, у каждой программы есть свои сильные и слабые стороны. У Grapher’а более удобное рисование графиков с большим количеством настроек. Зато в SciDAVis удобней делать обработку данных. Grapher умеет сохранять графики в большее число форматов, но зато у самого SciDAVis проект является текстовым файлом.

Для себя я еще не решил какая из этих программ мне больше подходит, скоро мне понадобится рисовать много графиков, вот тогда и посмотрим.

Еще раз напомню ссылки на программы:

Официальная страница Grapher’а находится здесь, а SciDAVis — здесь.

В.Карцев «Приключения великих уравнений»

Дочитал книжку «Приключения великих уравнений» В.Карцева из серии «Жизнь замечательных идей». Очень понравилась. В книге автор рассказывает про историю развития электричества, магнетизма, а в последствии и электромагнетизма. Книга мне эта попалась, когда писал реферат по философии по истории науки. Точнее эту книгу подсказал препод с нашей кафедры, хотя из этой книжки я практически ничего не использовал, но она меня заинтересовала. И вот, наконец, дошла и до нее очередь.

Большая часть книги состоит из биографий известных физиков. Автор описывает то, как они попали в науку, основные их научные интересы, а потом рассказывает про эксперименты, с помощью которых они сделали свои открытия. Хотя иногда хотелось бы про эксперименты почитать поподробнее. В книге последовательно описываются исследования магнита и притяжение пылинок янтарем (пока они изучались вместе). Потом Гильберт (который был, кстати, врачем) в XVIII веке разделит эти явления и они будут исследоваться независимо, пока их снова не объединит Ампер. Описываются эксперименты Франклина, Ломоносова и Рихмана по изучению молний.

Интересно также наблюдать как изменялись методы изучения явлений, когда сначала просто накапливали факты, затем выводили закономерности, а после получения Максвеллом своих уравнений (сам он их написал 12 штук, а ужу потом Герц и Хэвисайд отбросили лишние и оставили 4, которые и используются до сих пор) стали математически предсказывать явления, которые потом долго не могли выявить экспериментально. Судя по всему автор в названии книги и имел в виду уравнения Максвелла, да и на обложке написаны они же. В книге описываются экспериментальные установки Герца, Попова и Маркони для обнаружения и использования электромагнитных волн, предсказанных Максвеллом. А завершается книга обзором квантовых эффектов и неудачными попытками обнаружения так называемых монополей — «магнитных электронов», математически описанных Дираком, который также предсказал наличие позитрона.

А этой книги было три издания — в 1971, 1972 и, если не ошибаюсь, 1986 году. Я читал не то первое, не то второе издание, интересно было бы посмотреть на третье. Хотел начать читать другую книгу, которую тоже узнал благодаря реферату по философии — «Великие эксперименты в физике» Липсона, но нашел ее только в формате djvu в таком плохом качестве, что на КПК ее читать тяжеловато. Может быть попробую ее перегнать через FineReader, может что-нибудь из этого получится.

В. Карцев «Максвелл»

В продолжение темы, начатой с книги «Приключения великих уравнений», прочитал биографию Джеймса Клерка Максвелла, написанную тем же автором. Удивительно, как автор смог описать так подробно всю жизнь Максвелла, начиная с рождения и до дня смерти. Судя по благодарностям автора тем, кто ему помогал, давал доступ к рукописям в библиотеках, к рисункам того времени, работу он проделал огромную. Особенный упор в книге сделан, естественно, на научную работу Максвелла, описаны его первые научные статьи, как он еще в школе придумал способ для рисования правильных овалов. В книге часто цитируется переписка Максвелла с друзьями и родственниками. Чтобы понять в какой семье жил Максвелл, кратко описывается биография его отца. Подробно рассказывается про научные интересы Максвелла, его приоритеты в разные годы, но особенно автор выделяет его работы по электродинамике и оптике.

Читать далее ‘В. Карцев «Максвелл»’ »