Pull to refresh
244
0
Осипов Роман @OsipovRoman

Руководитель IT-студии, эксперт Wolfram, математик

Send message

Новое в Wolfram Language: функция TimelinePlot для создания временной шкалы

Reading time2 min
Views10K
Несколько лет назад мы создали сайт, посвященный хронологии возникновения и развития различных систематизированных данных и вычисляемых знаний, которые вы можете посмотреть онлайн. Я написал код, который размещает события вдоль временной шкалы, а затем наши дизайнеры провели серьёзную работу касательно дизайна получаемого материала (шрифты, заголовки, цвета и тому подобное) и довели качество до коммерческого уровня.



В общем, в прошлом году мы добавили функцию NumberLinePlot в Wolfram Language для визуализации точек, областей и неравенств. Как только пользователи начали работать с NumberLinePlot, мы начали получать просьбы о введении подобной функции, но с датами и временем, поэтому мы решили, что пришло время для TimelinePlot.
Читать дальше →
Total votes 15: ↑15 and ↓0+15
Comments10

Создаем собственную метеостанцию, интегрированную с Wolfram Cloud

Reading time5 min
Views11K
Недавно Стивен Вольфрам анонсировал сервис Wolfram Data Drop, который является отличным инструментом для загрузки любых типов данных с любого устройства. Я покажу как можно использовать Wolfram Data Drop с самодельной метеостанцией, для создания которой нам понадобятся лишь простое железо и несколько строчек кода. Эта метеостанция будет производить измерения температуры каждую секунду, и каждую минуту производить выгрузку среднего за эту минуту значения в Wolfram Data Drop. Таким образом, будет получаться 60 точек на графике температура– время каждый час, 1440 точек в сутки. Используя эти данные и Wolfram Programming Cloud, можно изучать изменения температуры с течением времени. К примеру, можно выяснить, сколько раз за день температура достигала определённых минимальных и максимальных значений, когда температура изменялась наиболее быстро. С помощью этих данных можно даже составлять прогнозы. Быть может, у кого-то даже получится сделать более точные предсказания, чем у местной метеостанции!

Build-Your-Own-Weather-Station-in-a-Snap-with-the-Wolfram-Cloud_1.png
Читать дальше →
Total votes 13: ↑12 and ↓1+11
Comments8

Wolfram Data Drop — новый сервис Wolfram Research

Reading time10 min
Views13K
Перевод поста Стивена Вольфрама (Stephen Wolfram) "The Wolfram Data Drop Is Live!". Выражаю огромную благодарность Кириллу Гузенко за помощь в переводе.

Куда должны идти данные из интернета вещей? У нас есть отличная технология в Wolfram Language для интерпретации, визуализации, анализа запросов и прочих интересных вещей. Но вопрос в том, как должны все эти данные из подключённых к сети устройств и всех остальных источников попасть туда, где с ними можно делать всё вышеперечисленное? Сегодня мы запускаем то, что, на мой взгляд, является отличным решением данной проблемы: Wolfram Data Drop.

Wolfram Data Drop

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

Так что же такое Wolfram Data Drop? На функциональном уровне это универсальный агрегатор данных, предназначенный для получения и организации данных, получаемых с различных сенсоров, устройств, программ, людей или чего бы ты ни было. При том данные хранятся в облаке таким образом, что могут быть использованы для вычисления и обработки так, как будто они хранятся на самом устройстве (бесшовная интеграция вычислений и данных).
Читать дальше →
Total votes 19: ↑18 and ↓1+17
Comments6

3/14/15 9:26:53 Празднование «Дня числа Пи» века, а также рассказ о том, как получить свою очень личную частичку числа пи

Reading time8 min
Views56K

Перевод поста Стивена Вольфрама (Stephen Wolfram) "Pi or Pie?! Celebrating Pi Day of the Century (And How to Get Your Very Own Piece of Pi)"
Выражаю огромную благодарность тем, кто помог мне сделать этот перевод: Курбану Магомедову и Ольге Лавренюк.


Эта суббота будет «Днем числа Пи» века. Дата 3/14/15 в формате месяц/день/год задает первые цифры числа π=3.1415… А 9:26:53.589… утра будет «супер моментом дня числа Пи».


Благодаря Mathematica и Wolfram|Alpha, я уверен, что наша компания выдала миру больше раз число π, чем какая-либо другая организация в истории. Поэтому, конечно, мы должны сделать нечно особенное (мероприятие SXSW) для этого особенного Дня числа Пи.


Читать дальше →
Total votes 43: ↑38 and ↓5+33
Comments46

Отображение молекулярных орбиталей с помощью языка Wolfram Language (Mathematica)

Reading time2 min
Views8.9K

Перевод поста Jason B. "Plotting electronic orbitals using Mathematica".
Выражаю благодарность за помощь в переводе участнику сообщества ВКонтакте Русскоязычной поддержки Wolfram Mathematica Курбану Магомедову.
Скачать перевод в виде документа Mathematica, который содержит весь код использованный в статье, а также дополнительные материалы, можно здесь.


Химикам часто бывает полезно изображение молекулярных орбиталей (МО). Они используются для описания волновой функции электронов в атомах или молекулах. Как правило, это результаты различных квантово-химических или квантово-физических расчетов, производимых в специализированном программном обеспечении для расчета МО, которые представлены в виде cube-файла, разработанного Gaussian. Эти файлы содержат объемные данные для построения орбиталей на трехмерной сетке.

Существует множество приложений для просмотра cube-файлов, такие как VMD или GaussView, но я хотел бы воспользоваться возможностями Mathematica, которые она дает для совмещения и создания различных типов графических объектов, а также автоматизации всего процесса, что в итоге позволило эффективно создавать кадры для видео, в котором можно наблюдать изменение МО.


Читать дальше →
Total votes 14: ↑14 and ↓0+14
Comments0

Построение кроссвордов с помощью языка Wolfram Language (Mathematica)

Reading time8 min
Views11K

Перевод поста Майкла Тротта (Michael Trott), «Constructing Crossword Arrays Faster».
Скачать перевод в виде документа Mathematica, который содержит весь код использованный в статье, можно здесь.


В главе 6 моей книги Mathematica GuideBook for Programming, в качестве примера работы со списками я обсудил то, как построить массив, представляющий собой кроссворд. Хотя этот пример был хорош для демонстрации продвинутой работы со списками, тем не менее, использование списков не является оптимальным путем построения массива кроссворда. Сложность добавления нового слова в массив с уже размещенными n-1 словами составляла для этого алгоритма ConstructingCrosswordArrays_1.png, таким образом общая сложность составления массива кроссворда из n слов становилась равной ConstructingCrosswordArrays_2.png.

На протяжении последних нескольких лет, некоторые пользователи Mathematica спрашивали меня о том, можно ли построить более быстрый алгоритм. Ответ — да, можно. Если мы будем применять методы хеширования, то мы сможем быстро и за одно и тоже время проверять, можно ли использовать некоторый элемент массива и, следовательно, мы сможем снизить общую сложность алгоритма с ConstructingCrosswordArrays_3.png до ConstructingCrosswordArrays_4.png, что для кроссвордов из тысяч слов даст большую разницу во времени, затрачиваемом на вычисления. Этот алгоритм реализован в данной статье. Когда мы размещаем отдельные буквы слова в некоторой прямоугольной таблице необходимо рассматривать множество различных ситуаций. В результате в статье содержится большее, чем обычно, количество процедурного кода. Хотя некоторые определения функций несколько длинные, благодаря комментариям между шагами вычислений и ветками решений код должен быть довольно простым для чтения и понимания.
Читать дальше →
Total votes 32: ↑28 and ↓4+24
Comments7

Наследие Якоба Бернулли в Wolfram Language (Mathematica)

Reading time4 min
Views13K

Перевод поста Олександра Павлыка (Oleksandr Pavlyk), «Jacob Bernoulli’s Legacy in Mathematica».
Скачать перевод в виде документа Mathematica, который содержит весь код использованный в статье, а также дополнительные материалы, можно здесь.


16 января 2015 г. исполнилось 360 лет со дня рождения Якоба Бернулли.

In[1]:=

jacob-bernoulli-legacy_1.gif

Out[2]=

jacob-bernoulli-legacy_2.png

In[3]:=

jacob-bernoulli-legacy_3.png

Out[3]=

jacob-bernoulli-legacy_4.png

In[4]:=

jacob-bernoulli-legacy_5.png

Out[4]=

jacob-bernoulli-legacy_6.png

Якоб Бернулли стал первым математиком известнейшей семьи Бернулли, к которой принадлежат многие известные математики XVII и XVIII веков.

Математическое наследие Якоба Бернулли очень богато. Он ввел так называемые числа Бернулли (Wiki / MathWorld), нашел решение дифференциального уравнения Бернулли (Wiki / MathWorld), изучал процесс Бернулли (Wiki / MathWorld), доказал неравенство Бернулли (Wiki / MathWorld), вычислил число e (Wiki / MathWorld), а также выявил слабый закон больших чисел (теорема Бернулли) (Wiki / MathWorld).
Читать дальше →
Total votes 20: ↑19 and ↓1+18
Comments0

Создание фотомозаик с помощью языка Wolfram Language (Mathematica)

Reading time4 min
Views25K

Скачать перевод в виде документа Mathematica, который содержит весь код использованный в статье, можно здесь (архив, ~3 МБ).

Введение


До Нового 2015-го года осталось уже менее суток:

In[1]:=

ImageMosaic_2.png

Out[1]=

ImageMosaic_3.png

Мне хотелось бы поздравить всех с Наступающим Новым 2015-м годом и рассказать о том, как вы можете сделать своим близким необычный подарок в виде фотомозаики, созданной с помощью системы Mathematica 10 и языка Wolfram Language.

Идея фотомозаики в целом довольно проста: создать изображение на основе коллекции других изображений небольшого размера.

Для того, чтобы создать фотомозаику можно действовать двумя основными способами:

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

  • Сложный способ: по сути повторяет первый способ за исключением того, что разбиение исходного изображения производится некоторым “адаптивным” алгоритмом на фрагменты различного размера.

Для упрощения рассматриваемой задачи будем создавать мозаику из квадратных миниатюр.
Читать дальше →
Total votes 45: ↑41 and ↓4+37
Comments7

Поиск самых длинных цепочек слов в русском языке с помощью языка Wolfram Language (Mathematica)

Reading time6 min
Views42K

Скачать перевод в виде документа Mathematica, который содержит весь код использованный в статье, можно здесь (архив, ~5 МБ).

Введение


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

Предположим, что у нас есть несколько последовательных метаграмм, скажем:

мнение-мление-тление-трение-прение-поение-роение-рдение-бдение-биение

они образуют цепь метаграмм, или цепочку слов.

Отсюда проистекает игра под названием цепь слов (word ladder), которую придумал в далеком 1879 году Льюис Кэрролл.

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

В этом посте мы постараемся проанализировать цепочки слов, которые могут быть построены в русском языке, а также найдем цепочки наибольшей длины.
Читать дальше →
Total votes 80: ↑77 and ↓3+74
Comments24

Поиск наилучшей последовательности просмотра списка 250 лучших фильмов с помощью языка Wolfram Language (Mathematica)

Reading time7 min
Views56K

Скачать перевод в виде документа Mathematica, который содержит весь код использованный в статье, можно здесь (архив, ~76 МБ).

Введение


Некоторое время назад, если быть точным — 515 дней, вышел пост Маттиаса Одисио (Matthias Odisio) под названием “Random and Optimal Mathematica Walks on IMDb’s Top Films” (Случайные и оптимальные блуждания Mathematica по списку 250 лучших фильмов по версии IMDB). В нем рассказывается о том, каким образом можно получить оптимальную последовательность просмотра фильмов из соответствующего списка, основанную на близости жанров фильмов и близости постеров фильмов с точки зрения цвета.
Читать дальше →
Total votes 100: ↑93 and ↓7+86
Comments36

Расширяя полотно картины Ван Гога “Звездная ночь” с помощью языка Wolfram Language (Mathematica)

Reading time3 min
Views76K

Перевод поста Piotr Wendykier "Extending Van Gogh's Starry Night with Inpainting"
Скачать перевод в виде документа Mathematica, который содержит весь код использованный в статье, можно здесь (архив, ~8 МБ).


Могут ли компьютеры научиться рисовать, как Ван Гог? Определенно да, до некоторой степени! Для этого, подобно художникам-копиистам, алгоритму сначало потребуется взять некоторое оригинальное произведение, а затем он сможет на их основе создать что-то сам. Насколько хорошо он сможет с этим справиться? Пожалуйста, судите сами.

ExtendingVanGoghStarryNightInpainting_1.gif
Вторая премия на фотоконкурсе ZEISS
Читать дальше →
Total votes 117: ↑110 and ↓7+103
Comments36

«Математика – один из видов искусства»: пост к столетию со дня рождения Мартина Гарднера

Reading time3 min
Views59K

Перевод поста Эда Пегга Младшего (Ed Pegg Jr) "Martin Gardner’s 100th Birthday"

Я думаю, содержание этого поста будет интересно всем, кто любит математику и ее красоту, всем, кто знаком с замечательными книгами и задачами Мартина Гарднера, а также будет полезно учителям, школьникам и студентам. Все ссылки в данном посте ведут на сайты Wolfram Demonstrations Project (коллекция бесплатных интерактивных демонстраций, созданных пользователями системы Mathematica на языке Wolfram Language с помощью технологии Computable Document Format (CDF), при этом для вас доступны исходные коды всех демонстраций, а значит, вы можете каждую из них скачать, изучить и изменить под себя) и Wolfram MathWorld (крупнейшая и самая авторитетная онлайн-энциклопедия по математике).

Gardner100_1.gif

Читать далее...
Total votes 78: ↑75 and ↓3+72
Comments18

Ресурсы для изучения Wolfram Language (Mathematica) на русском языке

Reading time7 min
Views103K

На протяжении довольно долгого времени я и мои коллеги, участники Русскоязычной поддержки Wolfram Mathematica, занимались разработкой и коллекционированием полностью бесплатных и качественных ресурсов на русском языке, которые позволили бы любому желающему научиться программировать на языке Wolfram Language (Mathematica) самостоятельно.

Думаю, что пришла пора рассказать об этом на Хабрахабре, создав статью о разрабатываемой коллекции ресурсов, которая будет постоянно расширяться и пополняться, и будет служить, по сути, русскоязычным аналогом страницы "Where can I find examples of good Mathematica programming practice?" на сайте Mathematica at StackExchange.com.
Читать дальше →
Total votes 30: ↑29 and ↓1+28
Comments11

Исследование в Mathematica: Бенедикт Камбербэтч успешно пародирует других актеров, но может ли он одурачить компьютер?

Reading time3 min
Views26K
Перевод поста Риты Крук (Rita Crook) "Benedict Cumberbatch Can Charm Humans, but Can He Fool a Computer?".

Вышедший на этой неделе, весьма ожидаемый, в прокат фильм "Игра в имитацию" (The Imitation Game) рассказывает о жизни Алана Тьюринга (100-лет со дня рождения которого совпали с 22-м днем рождения системы Mathematica — подробнее см. пост Стивена Вольфрама Happy Birthday, Alan Turing). Центральной темой фильма являются машины Тьюринга. Интересно, что в 2007 году компания Wolfram Research объявила приз за доказательство универсальности 2,3 машины Тьюринга.

Конечно же, промоушн-видео Бенедикта Камбербэтча, в котором он имитирует голоса и поведение других известных актеров многим понравилось. Но мне захотелось выяснить, сможет ли функционал Mathematica из области Machine Learning распознать его голос, или же он сможет «одурачить» и компьютер тоже.
Читать дальше →
Total votes 34: ↑30 and ↓4+26
Comments20

Материалы конференции о технологиях Wolfram: Wolfram Language, Mathematica 10, SystemModeler 4, Wolfram Cloud

Reading time2 min
Views3K


В ноябре 2014 г. состоялось турне под названием «Эра технологий Wolfram», которое было проведено совместно компаниями Wolfram Research и Softline.

В рамках турне было посещено большое количество организаций в Москве, Казани и Тбилиси: РАНХиГС, МГТУ им. Н. Э. Баумана, МГУПИ, МИЭМ НИУ ВШЭ, ЛАНИТ, ИТИС КФУ, Университет Иннополис, Тбилисский государственный университет, Министерство образования и науки Грузии.

Подробнее об этих событиях можно узнать в сообществе Русскоязычной поддержки Wolfram Mathematica ВКонтакте.

Ниже приведены ссылки на материалы конференций.
Читать дальше →
Total votes 8: ↑6 and ↓2+4
Comments0

Моделирование пандемий с помощью языка Wolfram Language (системы Mathematica 10) на примере лихорадки Эбола

Reading time29 min
Views40K

Перевод поста Виталия Каурова (Vitaliy Kaurov) "Modeling a Pandemic like Ebola with the Wolfram Language".

Выражаю благодарность за помощь в переводе участникам сообщества ВКонтакте Русскоязычной поддержки Wolfram Mathematica: Еве Фрумен, Курбану Магомедову, Глебу Михновцу, Андрею Кротких.

Скачать перевод в виде документа Mathematica, который содержит весь код использованный в статье, можно здесь (архив, ~100 МБ).


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

EbolaAnimFINAL.gif
Читать дальше →
Total votes 55: ↑49 and ↓6+43
Comments42

Приключения в математическом лесу фрактальных деревьев

Reading time8 min
Views36K


Перевод поста Bernat Espigulé Pons, «Adventures into the Mathematical Forest of Fractal Trees».
Скачать перевод в виде документа Mathematica, который содержит весь код использованный в статье, можно здесь.


Без сомнения, золотое сечение и в наше время представляется одним из самых таинственных, волшебных и поразительных чисел, которые известны людям: Prikljuchenija-v-matematicheskom-lesu-fraktalnyh-derevev_1.png. (в языке Wolfram Language и системе Mathematica ему соответствует символ GoldenRatio). Как вы увидите из этого поста, это число действительно имеет множество интересных свойств, которые можно исследовать, причём некоторые из них рассматривались ещё в работах учёных Древней Греции, таких как Пифагор и Евклид, другие в работах итальянского математика Леонардо Пизанского, более известного под прозвищем Фибоначчи, или Иоганном Кеплером — астрономом эпохи Возрождения. Хотя это может прозвучать странно, в этом посте я расскажу вам о новых геометрических объектах, связанных с золотым сечением, которые осветили мне путь, когда я пытался отобразить неизвестную ранее область Математического Леса.
Читать дальше →
Total votes 61: ↑58 and ↓3+55
Comments6

Переход от приближенного решения к точному: задача о разбиении квадрата на 50 подобных остроугольных треугольников

Reading time3 min
Views15K


Перевод поста Эда Пегга младшего (Ed Pegg Jr) "From Close to Perfect—A Triangle Problem"
Выражаю благодарность за помощь в переводе Андрею Дудину.
Скачать перевод в виде документа Mathematica, который содержит весь код использованный в статье, можно здесь.


В языке Wolfram Language (доступном, скажем, в системе Mathematica) функция RootApproximant позволяет найти замкнутую форму в виде алгебраического числа для некоторого приближённого числа, и эта функция позволила нам превратить приближенное решение задачи о разбиении квадрата на 50 подобных остроугольных треугольников с углами (45°, 60°, 75°) в точное.

Ясно, что квадрат можно разбить на треугольники (триангулировать), например, просто соединив его противоположные вершины. Известно, так же, что квадрат можно разбить на семь подобных треугольников разной площади или на десять остроугольных равнобедренных треугольников (см. рис. ниже). Известны также классические задачи, связанные с разбиением квадрата на восемь остроугольных треугольников (см. рис. ниже), или на двадцать треугольников со сторонами, относящимися друг к другу как Perehod-ot-priblizhjonnogo-reshenija-k-tochnomu-zadacha-o-razbienii-kvadrata-na-50-podobnyh-ostrougolnyh-treugolnikov_1.png. На третьем чертеже (считая сверху) показано разбиение квадрата на подобные треугольники с углами (45°, 60°, 75°), но вы можете с легкостью заметить, что это решение не корректно, так как один из треугольников немного накладывается на другой.
Читать дальше →
Total votes 44: ↑42 and ↓2+40
Comments5

Компания Wolfram Research открыла сервис Tweet-a-Program: интересных программ на языке Wolfram Language, длина которых не превышает 140 символов

Reading time6 min
Views20K


В языке Wolfram Language небольшой код может делать крайне много. Используя это, мы сделали сервис, который позволит вам получить от этого удовольствие, сегодня мы открываем его — Tweet-a-Program.

Этот сервис соединяет в себе программы на языке Wolfram Language длиной в одно сообщение твиттера и возможность их автоматической отправки в @WolframTaP. Наш Твиттер-бот запустит вашу программу в Wolfram Cloud (Облаке Wolfram), после чего опубликует результат.

Hello World from Tweet-a-Program: GeoGraphics[Text[Style["Hello!",150]],GeoRange->"World"]
Читать дальше →
Total votes 52: ↑47 and ↓5+42
Comments37

Суммирование расходящихся рядов методами Абеля, Бореля, Чезаро и Дирихле

Reading time7 min
Views50K

Перевод поста Давендра Кападия (Devendra Kapadia) "The ABCD of Divergent Series."
Выражаю благодарность за помощь в переводе Андрею Дудину.


Какова сумма всех натуральных чисел? Интуиция подсказывает, что ответ — бесконечность. В математическом анализе сумма натуральных чисел является простым примером расходящегося ряда. Тем не менее, математики и физики сочли полезным придать дробные, отрицательные и даже нулевые значения суммам таких рядов. Цель моей статьи — желание отодвинуть завесу тайны, окружающую результаты суммирования расходящихся рядов. В частности, я буду использовать функцию Sum (функция поиска частичных сумм, рядов и т. п. в Mathematica), а так же другие функции в Wolfram Language для того, чтобы объяснить в каком смысле стоит рассматривать следующие утверждения:

Summirovanie-rashodjashhihsja-rjadov_1.gif


Важность обозначений формул буквами A, B, C, и D вскоре станет вам понятна.
Читать дальше →
Total votes 60: ↑56 and ↓4+52
Comments30

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity