Этот курс я прочел пару лет назад для довольно обширной аудитории. Он содержит очень много информации о том, как устроена система Mathematica, Wolfram Cloud и язык Wolfram Language.
Однако, конечно, время не стоит на месте и за последнее время появилось очень много нового: от продвинутых возможностей работы с нейросетями до всевозможных веб-операций; теперь есть Wolfram Engine, который можно поставить на свой сервер и обращаться к нему, как к Python; можно строить всяческие географические визуализации или химические; есть огромные хранилища всевозможных данных, в том числе по машинному обучению; можно подключаться ко всевозможным базам данных; решать сложнейшие математические задачи и пр.
Все возможности технологий Wolfram трудно перечислить за пару абзацев или несколько минут.
Все это сподвигло меня сделать новый курс, на который сейчас идет регистрация.
Уверен, открыв для себя возможности языка Wolfram Language, вы станете его использовать все чаще и чаще, решая свои задачи быстро и эффективно в самых разных областых: от науки до автоматизации дизайна или парсинга сайтов, от нейросетей до обработки иллюстраций, от визуализации молекул до построения мощных интерактивов.
1 | Обзор систем Wolfram Mathematica и Wolfram Cloud
Содержание урокаЧто такое Wolfram Mathematica?
— Создатель — Стивен Вольфрам
—— Некоторые недавние статьи Стивена Вольфрама в переводе на русский язык
— Список встроенных функций и символов
—— Количество встроенных функциий в зависимости от версии
—— Объем, занимаемый на жестком диске
— Подробнее о Mathematica вообще
— Все продукты Wolfram Research
Новые и обновленные функции
— Код получения этих списков
Новое во фронт-энде
Новый геометрический язык
— Базовые геометрический объекты
— Функции для геометрических вычислений
—— Мера области
—— Расстояние до области
—— Работа с областями
— Функции задания областей
— Работа с сетками
— Полная интеграция с другими функциями
Аналитическое и численное решение дифференциальных уравнений
— WhenEvent для аналитических задач
— Аналитическое решение ДУ с запаздыванием
— Метод конечных элементов
Machine Learning — Машинное обучение
— Classify
— Predict
— Пример
«Язык Entity» — новый язык работы с базами данных + Огромное количество новых баз данных
Новый язык работы с географической информацией
Что ещё нового?
— Расширение базового языка
—— Association — индексированные массивы
—— Dataset — встроенный формат баз данных
— PlotTheme
— Вычисления, связанные со временем
— Анализ случайных процессов
— Временные ряды
— Интеграция с Wolfram Cloud
— Интеграция с устройствами
— Продвинутые шаблоны документов, HTML
Wolfram Programming Cloud
2.1 | Введение в язык, его особенности. Основные сложности начинающих пользователей. Работа с интерфейсом Mathematica и его возможностями — предсказательным интерфейсом, свободной формой ввода и пр.
Содержание урокаWolfram Language
Принципы Wolfram Language
Что важно помнить при работе с Wolfram Language?
Начало работы в Mathematica
Важные сочетания клавиш
— Shift+Enter или Enter на цифровой клавиатуре
— Ctrl+Shift+Enter
— F1
— F2
Получение информации о символах
—? — функция Definition
— ?? — функция Information
— Нажать на F1
— Предсказательный интерфейс
Работа с палитрами
— Basic Math Assistant
— Classroom Assistant
— Writing Assistant
— Chart Element Schemes
— Color Schemes
— Special Characters
— Работа с графиками и рисунками
—— Drawing Tools
—— Get Coordinates
—— Первичная обработка изображений
— Работа с графaми
Wolfram Language & System | Documentation Center
Predictive Interface — Предсказательный интерфейс
— Контекстно-чувствительное автодополнение вводимых команд
—— Работа со встроенными функциями и синтаксическими шаблонами
—— Работа с пользовательскими переменными
— Вычисляемый предсказательный интерфейс — панель предложения дальнейших действий
Интеграция с Wolfram|Alpha
— Сайт Wolfram|Alpha
— Интеграция между Wolfram|Alpha и Mathematica
—— Поиск представлений в замкнутой форме десятичных дробей
—— Информация об артериальном давлении
—— Пошаговое решение матричного уравнения методом Гаусса
2.2 | Задание функций, работа со списками, шаблонными выражениями и ассоциациями
Содержание урокаСписки
— Список {…} и функция List[…]
— «Естественное» отображение списков
— Способы генерирования списков
— Индексация элементов и некоторые числовые характеристики списка. Функции Length и Depth
— Вычленение элементов, занимающих определенные места в списке, с помощью функции Part([[…]])
— Переобозначение элементов списка
— Генерирование списка с помощью функции Table
— Генерирование списка чисел с помощью функции Range
Ассоциации
— Задание ассоциации и работа с ней
— Dataset — формат баз данных в Wolfram Language
Шаблонные выражения
— Введение в шаблоны
— Базовые шаблоны объектов: Blank (_), BlankSequence (__), BlankNullSequence (___)
— Что можно сделать с помощью шаблонов? Функция Cases
— Определение типа выражения в шаблоне
— Наложение ограничений на шаблоны с помощью функций Condition (/;), PatternTest (?), Except, а также применение тестовых функций
— Создание шаблонов, имеющих возможность альтернативного выбора с помощью функции Alternatives (|)
Функции
— Применение отсроченного присваивания SetDelayed (:=)
— Применение абсолютного присваивания Set (=)
— Задание функции, которая помнит значения, которые она уже находила и рекуррентной функции
— Атрибуты функций и функции Attributes, SetAttributes, ClearAttributes, Protect, Unprotect для работы с ними
Чистые функции
— Применение функции Function (&)
— Где используются чистые функции?
2.4 | Создание интерактивных объектов, работа с элементами управления, создание пользовательских интерфейсов
Содержание урокаСимвольный динамический язык
— Функция Dynamic
—— Простейшие примеры
——— Изменение параметра
——— Отображение построения решения
— Элементы управления
—— Slider
——— Простейший пример
—— Slider2D
——— Простейший пример
—— IntervalSlider
——— Простейший пример
—— Checkbox
——— Простейший пример
—— CheckboxBar
—— Setter
—— SetterBar
—— RadioButton — специальный вид Setter
—— RadioButtonBar — специальный вид SetterBar
—— Toggler
—— TogglerBar
—— Opener
—— ColorSlider
——— Простейший пример
—— PopupMenu
——— Простейший пример
—— InputField
——— Простейший пример
—— Другие объекты…
Функция Manipulate
— Синтаксис
— Упрощенный синтаксис элементов управления
—— {x, a, b}
—— {x, a, b, dx}
—— {{x, x0}, a, b}, {{x, x0}, a, b, dx}
—— {{x, x0, label}, a, b}, {{x, x0, label}, a, b, dx}
—— {{x, initial, label}, ….}
—— {x, color}
—— {x, {val1, val2, …}}
—— {x, {val1-lbl1, val2->lbl2, …}}
—— {x, {xmin, ymin}, {xmax, ymax}}
—— {x, {True, False}}
—— {x} и {{x, x0}}
—— {x, Locator}
—— {x, {xmin, ymin}, {xmax, ymax}, Locator}
—— {{x, {{x1, y1}, {x2, y2}, …}}, Locator} или
{{x, {{x1, y1}, {x2, y2}, …}}, {xmin, ymin}, {xmax, ymax}, Locator}
—— {{x, …}, …, Locator, LocatorAutoCreate->True}
—— {{x, …}, …, type}
— Опции Manipulate
—— ContinuousAction
—— LocalizeVariables
—— Initialization
—— SaveDefinitions
—— SynchronousInitialization
—— SynchronousUpdating
—— TrackedSymbols
— Конструктор манипуляторов
— Создание сцепленных манипулятор и привязка локаторов к кривой с помощью опции TrackingFunction
2.5 | Импорт, экспорт, обработка данных, файлов, изображений, звука, веб-страниц. Работа с API веб-ресурсов на примере API ВКонтакте, а также работа со встроенными способами работы с API Facebook, Twitter, Instagram и др.
Содержание урокаРабота с файлами и их именами
— Поиск файлов и смежные задачи
—— $InstallationDirectory, $BaseDirectory
—— NotebookDirectory
—— FileExistsQ
—— FileNames
— Создание имен файлов
—— DirectoryName
—— FileNameJoin
—— FileNameSplit
—— FileNameTake
—— FileBaseName
—— FileExtension
Функции Import и Export
— Форматы импорта и экспорта
— Import
—— Примеры
— Export
—— Примеры
Обработка данных
— Импорт и обработка данных из TXT
— Импорт и обработка данных из MS Excel
Работа с изображениями
— Что можно делать?
— Обработка коллекции изображений
Работа со звуком
— Пример
Импорт и обработка данных с веб-страниц
— Импорт информации с сайта Центрального Банка РФ
—— Решение
—— Обобщение
— Импорт информации с сайта Яндекс.Словари
Работа с API
— API ВКонтакте
—— Первые шаги
—— AccessToken
—— Пример работы с API ВКонтакте
— Встроенный API Facebook, Twitter, Instagram
2.6 | Работа со встроенными курируемыми базами данных Wolfram, интеграция с Wolfram|Alpha
Содержание урокаОбщесистемная поддержка единиц измерения
— Первое применение
— Пример использования в расчетах
—— Решение систем уравнений с величинами, обладающими размерностью:
—— Анализ размерности (Pi-теорема):
на примере задачи о гравитационной неустойчивости среды
——— Вспомогательный код
——— Решение
——— Выводы
Встроенные базы данных
— Все функции для работы с курируемыми базами данных Wolfram Research
— Примеры
—— Создание карты мира, раскрашенной в соответствии с уровнем ВВП
—— Периодическая система химических элементов им. Д. И. Менделеева
— Как сохранять курируемые базы данных Wolfram Research для мгновенного обращения?
—— Решение Леонида Шифрина…
——— Код
——— Пример работы
Язык Entity
— (Ctrl + =) — получение модуля для локального преобразования запроса в свободной форме в формат Wolfram Language
— Entity
— EntityValue
— EntityClass
— EntityProperties, EntityPropertyty
— Дифференциация Entity по внешнему виду
Интерпретатор Interpreter
— Список типов интерпретации
— Функция Interpreter
— Функция SemanticInterpretation
— Функция SemanticImport
Интеграция с Wolfram|Alpha
— Свободная форма ввода (= в начале ячейки Input)
—— Примеры
— Локальный ввод в свободной форме (Ctrl + = в любом месте ячейки Input
—— Пример
— Полноценный результат запроса Wolfram|Alpha (== в начале ячейки Input)
—— Некоторые примеры использования Wolfram|Alpha
——— Математика
——— Физика
——— Химия
——— Теория вероятностей, статистика и анализ данных
——— Погода и смежные вопросы
——— Интернет и компьютерные системы
——— Музыка
——— Еда, питание, здоровье
— Функция WolframAlpha
—— Пример 1: Диаграммы Эйлера-Венна и логические схемы для функций булевой алгебры от трёх переменных.
—— Пример 2: Поиск ближайших именованных цветов к данному
3 | Работа с Wolfram Cloud: создание прямого API, форм ввода, CloudCDF и др.
Содержание урокаЧто такое Wolfram Cloud?
— Из чего состоит Wolfram Cloud?
— Что можно делать с помощью Wolfram Cloud?
Wolfram Programming Cloud
— Типы аккаунтов Wolfram Programming CloudТипы аккаунтов Wolfram Programming Cloud
— Облачные кредиты
Облачные функции в Mathematica и Wolfram Desktop
— Функции для непосредственной работы с облаком, а так же те, которые способны работать и с облачными обектами.
— Информационные функции облака
—— CloudAccountData — информация о вашем аккаунте в Облаке
—— CloudConnect, CloudDisconnect — подключение к Облаку или отключение от него
—— CloudObjects — ваши облачные объекты
—— $CloudCreditsAvailable — количество доступных облачных кредитов
Интерфейс облака, первые шаги
— Основное окно
— Окно информации о вашем аккаунте
— Окно с информацией о использовании ваших объектов Облака и Облачных кредитов
— Окно нового документа
Функция FormFunction
— Назначение и синтаксис
— Простейший пример
— CloudDeploy
— Типы переменных
— Работа с переменными
—— Параметр «Interpreter»
—— Параметр «Default»
—— Параметр «Input»
—— Параметр «Label»
—— Параметр «Help»
—— Параметр «Hint»
— Настройка внешнего вида формы
—— AppearenceRules
—— FormTheme
— Возможные форматы результата
— Вставка русского текста
—— Пример
— Примеры
—— Создание приложения для решения уравнения
—— Создание приложения для обработки изображения
—— Создание географического приложения с «умными полями»
Функция APIFunction
— Примеры
—— Создание приложения для решения уравнения
—— Создание географического приложения с «умными полями»
4 | Технология CDF — мгновенное встраивание интерактивных объектов, созданных в Mathematica в веб-страницы, тонкости. Использование готовых интерактивных объектов с сайта Wolfram Demonstrations Project в своих проектах и их изменение. Реальные примеры и бизнес-приложения
Содержание урокаCDF — Computable Document Format — Формат вычисляемых документов
— Технология CDF
— Краткое сравнение с другими форматами
— Этапы создания CDF
—— Иллюстрированные шаги
— Реальные примеры
— Wolfram Demonstrations Project
Создание CDF на основе Manipulate
— Шаг 1. Создание приложения
— Шаг 2. Сохранение его в формате CDF
— Шаг 3. Вставка в веб-страницу
Создание CDF на основе DynamicModule
— Шаг 1. Создание приложения
— Шаг 2. Сохранение его в CDF
— Шаг 3. Вставка в веб-страницу
— Еще один пример сложного CDF
Создание готовых веб-страниц на основе CDF
— Пример
EnterpriseCDF
— Отличия CDF и EnterpriseCDF
— Базовое сравнение CDF и EnterpriseCDF
— Детальное сравнение CDF, EnterpriseCDF, Wolfram Player Pro и Mathematica
CloudCDF
— Что такое CloudCDF?
— Пример создания CloudCDF
—— Пример 1
—— Пример 2
5 | Работа с Wolfram Language и Mathematica, предустановленных и бесплатных на Raspberry Pi (с операционной системой Raspbian)
Содержание урокаRaspberry Pi, первое знакомство
— Что это такое?
— Где можно купить?
— Где и как установить ОС, с поддержкой Wolfram Language
Raspberry Pi и Wolfram Language
— Страница проекта
— Страница документации
— Как выглядит Raspberry Pi после установки
— Идея программирования на Wolfram Language на Raspberry Pi
Производительность Raspberry Pi
— Вычисление некоторого кода
— Стандартный встроенный тест производительности Wolfram
— Сравнение с производительностью Python на Raspberry Pi
Пример почтового робота, который работает на Raspberry Pi
Примеры работы с Raspberry Pi
— Создание GPS-трекера
—— Вам потребуются
—— Вид после сборки
—— Программа для Mathematica на Raspberry Pi
— Снимаем фото
—— Вам потребуются
—— Вид после сборки
—— Программа для Mathematica на Raspberry Pi
— Использование GPIO
—— Вам потребуются
—— Вид после сборки
—— Программа для Mathematica на Raspberry Pi
— Другие примеры
Где найти дополнительную информацию о интеграции Wolfram Language и Raspberry Pi?
Прошу прощения за качество звука, в некоторых роликах он не так хорош, как хотелось бы.
В новых роликах и вебинарах все хорошо со звуком и видео в 2K. Присоединяйтесь: каждую неделю на канале идут прямые эфиры.