Wolfram Technology Essentials Course: 13+ Hours of Video Lectures, Theory and Challenges

Wolfram Technology Essentials Course: 13+ Hours of Video Lectures, Theory and Challenges

All course documents can be downloaded here.

I read this course a couple of years ago to a fairly large audience. It contains a lot of information about how the system works. Mathematica, Wolfram Cloud and language Wolfram Language.

However, of course, time does not stand still, and lately a lot of new things have appeared: from advanced features work with neural networks to all kinds web operations; now it is wolfram engine, which you can put on your server and access it like Python; you can build all kinds geographical visualizations or chemical; there are huge repositories all kinds of data, including machine learning; you can connect to various databases; solve complex mathematical problems, etc.

All the possibilities of Wolfram technologies are difficult to enumerate in a couple of paragraphs or a few minutes.

All this prompted me to make a new course, which is now registration in progress.

I am sure that once you discover the possibilities of the Wolfram Language, you will use it more and more often, solving your problems quickly and efficiently in a variety of areas: from science to design automation or website parsing, from neural networks to illustration processing, from molecular visualization to building powerful interactives.

1 | Overview of Wolfram Mathematica and Wolfram Cloud Systems


Lesson contentWhat is Wolfram Mathematica?
- Created by Steven Wolfram
—— Some recent articles by Stephen Wolfram translated into Russian
— List of built-in functions and symbols
—— Number of built-in functions depending on the version
—— Hard disk space
— More about Mathematica in general
- All Wolfram Research products
New and updated features
— Code for getting these lists
New in the front-end
New geometric language
— Basic geometric objects
- Functions for geometric calculations
—— Measure area
—— Distance to area
—— Working with areas
— Area setting functions
— Working with grids
- Full integration with other functions
Analytical and numerical solution of differential equations
- WhenEvent for analytical tasks
— Analytical solution of DE with delay
— Finite element method
Machine Learning - Machine Learning
classify
Predict
- Example
"Language Entity» - a new language for working with databases + A huge number of new databases
A new language for working with geographic information
What are other news?
- Base language extension
- Association - indexed arrays
- dataset - built-in database format
PlotTheme
- Calculations related to time
— Analysis of random processes
— Time series
— Integration with Wolfram Cloud
— Integration with devices
— Advanced document templates, HTML
Wolfram Programming Cloud

2.1 | Introduction to the language, its features. The main difficulties for novice users. Working with the Mathematica interface and its features - a predictive interface, free form input, etc.


Lesson contentWolfram Language
Principles of the Wolfram Language
What is important to remember when working with the Wolfram Language?
Getting Started in Mathematica
Important keyboard shortcuts
- Shift+Enter or Enter on the numeric keypad
- Ctrl+Shift+Enter
- F1
- F2
Getting Information About Symbols
—? - function Definition
— ?? - function Information
- Press F1
- Predictive interface
Working with Palettes
—Basic Math Assistant
— Classroom Assistant
—Writing Assistant
- Chart Element Schemes
—Color Schemes
—Special Characters
- Working with graphics and drawings
—— Drawing Tools
——Get Coordinates
—— Primary image processing
— Working with graphs
Wolfram Language & System | Document Center
Predictive Interface — Predictive interface
- Context-sensitive auto-completion of entered commands
—— Working with built-in functions and syntax templates
—— Working with User Variables
- Computed predictive interface - suggestion panel for further actions
Integration with Wolfram|Alpha
— Wolfram|Alpha website
- Integration between Wolfram|Alpha and Mathematica
—— Search for closed-form decimal representations
—— Blood pressure information
—— Step by step solution of the matrix equation by the Gauss method

2.2 | Specifying functions, working with lists, template expressions and associations


Lesson contentLists
- List {...} and function List[…] - "Natural" display of lists
— Ways to generate lists
- Indexing of elements and some numerical characteristics of the list. Functions Length и Depth
- Selection of elements occupying certain places in the list, using the function Part([[…]])
- Renaming list items
- Generating a list using a function Table
- Generating a list of numbers using a function Range
Associations
— Setting an association and working with it
- Dataset - database format in the Wolfram Language
Template expressions
- Introduction to Templates
— Basic object templates: Blank (_), BlankSequence (__), BlankNullSequence (___)
What can be done with templates? Function Cases
— Determining the type of expression in a template
- Imposing restrictions on templates using functions Condition (/;), PatternTest (?), except, as well as the application of test functions
- Creation of templates with the possibility of alternative selection using the function alternatives (|)
Functions
— Application of deferred assignment SetDelayed (:=)
— Applying absolute assignment Set (=)
- Setting a function that remembers the values ​​\uXNUMXb\uXNUMXbthat it has already found and a recurrent function
— Function attributes and functions Attributes, SetAttributes, ClearAttributes, Protect, Unprotect to work with them
Pure functions
- Applying a function Function (&)
Where are pure functions used?

2.3 | Create visualizations


Lesson contentSymbolic graphic language
— Graphic primitives
—— One-dimensional
—— XNUMXD
—— XNUMXD
—— Auxiliary
- Function Graphics
—— Syntax
——— The simplest example
——— Layers
——— Layer permutations
——— General and particular properties of layers
—— Function options Graphics
--- AspectRatio
--- axes
--- AxesLabel
--- AxesOrigin
--- AxesStyle
--- Ticks
--- Ticks Style
--- background
--- ContentSelectable
--- CoordinatesToolOptions
--- Epilogue
--- Prolog
--- Frame
--- FrameLabel
--- RotateLabel
--- FrameStyle
--- FrameTicks
--- FrameTicksStyle
--- Gridlines
--- GridLinesStyle
--- ImageSize
--- Plot Label
--- LabelStyle
--- PlotRange
--- PlotRangeClipping
--- PlotRangePadding
—— Style settings
——— Colors (named colors + colors from color spaces, say, rgbcolor), transparency (Opacity)
——— Line thickness: Thick, Thin, Thickness, Absolute Thickness
——— Dot size: PointSize, AbsolutePointSize
——— Ending style of lines and breakpoints: cap form, JoinForm
——— Function Style to customize the appearance of the text
——— Functions faceform и EdgeForm to control the appearance of the area and its borders
—— Example
——— Approximate solution
——— The solution is exact
——— Why is the exact solution very useful?
- Function Graphics3D
—— Syntax
——— The simplest example
——— General and particular properties of graphical objects
—— Function options Graphics3D
--- AxesEdge
--- Boxed
--- BoxRatios
--- box style
--- clipplanes
--- ClipPlanesStyle
--- facegrids
--- FaceGridsStyle
--- Lighting
--- SphericalRegion
--- ViewPoint, ViewVector, ViewVertical
—— Example: section of a cube
——— From static XNUMXD object to interactive
Built-in functions for creating visualizations
Basic 2D functions
plot
ContourPlot
RegionPlot
Parametric plot
Polarplot
ListPlot
Basic 3D functions
Plot3D
ContourPlot3D
RegionPlot3D
ParametricPlot3D
ListPlot3D
Connection of functions for building visualizations and basic functions Graphics и Graphics3D
— 2D
— 3D

2.4 | Creating interactive objects, working with controls, creating user interfaces


Lesson contentSymbolic dynamic language
- Function Dynamic
—— The simplest examples
——— Change parameter
——— Solution build display
- Controls
- slider
——— The simplest example
- Slider2D
——— The simplest example
- IntervalSlider
——— The simplest example
- checkbox
——— The simplest example
- CheckboxBar
- setter
- SetterBar
- RadioButton - special kind setter
- RadioButtonBar - special kind SetterBar
- toggler
- toggle bar
- opener
- color slider
——— The simplest example
- PopupMenu
——— The simplest example
- InputField
——— The simplest example
—— Other objects…
Function Manipulate
- Syntax
- Simplified syntax for controls
—— {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} and {{x, x0}}
—— {x, Locator}
—— {x, {xmin, ymin}, {xmax, ymax}, Locator}
—— {{x, {{x1, y1}, {x2, y2}, …}}, Locator} or
{{x, {{x1, y1}, {x2, y2}, …}}, {xmin, ymin}, {xmax, ymax}, Locator}
—— {{x, …}, …, Locator, LocatorAutoCreate->True}
—— {{x, …}, …, type}
— Options Manipulate
- ContinuousAction
- LocalizeVariables
- Initialization
- SaveDefinitions
- SynchronousInitialization
- SynchronousUpdating
- TrackedSymbols
— Designer of manipulators
- Create linked manipulators and bind locators to a curve using the option TrackingFunction

2.5 | Import, export, processing of data, files, images, sound, web pages. Working with the web resource API using the VKontakte API as an example, as well as working with built-in methods for working with the APIs of Facebook, Twitter, Instagram, etc.


Lesson contentWorking with files and their names
- Search for files and related tasks
- $InstallationDirectory, $BaseDirectory
- Notebook Directory
- FileExistsQ
- Filenames
- Creating filenames
- DirectoryName
- FileNameJoin
- FileNameSplit
- FileNameTake
- FileBaseName
- file extension
Functions Import и Export
- Import and export formats
Import
—— Examples
Export
—— Examples
Data processing
— Import and processing of data from TXT
— Import and processing of data from MS Excel
Working with images
— What can be done?
- Processing a collection of images
Working with sound
- Example
Importing and processing data from web pages
— Import of information from the website of the Central Bank of the Russian Federation
-- Solution
—— Generalization
— Import information from the Yandex.Dictionaries website
Working with the API
— API VKontakte
-- First steps
—— AccessToken
—— An example of working with the VKontakte API
- Built-in Facebook, Twitter, Instagram API

2.6 | Working with built-in curated Wolfram databases, integration with Wolfram|Alpha


Lesson contentSystem-Wide Units of Measure Support
- First application
— Example of use in calculations
—— Solving systems of equations with quantities that have the dimension:
—— Dimension analysis (Pi-theorem):
on the example of the problem of gravitational instability of a medium
——— Auxiliary code
--- Solution
--- Conclusions
Embedded databases
- All features for working with Wolfram Research curated databases
- Examples
—— Create a world map colored according to the level of GDP
—— Periodic system of chemical elements. D. I. Mendeleev
How to store curated Wolfram Research databases for instant access?
—— Leonid Shifrin’s decision…
--- Code
——— Working example
Entity language
- (Ctrl + =) - get a module for local translation of a free-form query into the Wolfram Language format
Entity
EntityValue
EntityClass
EntityProperties, EntityProperty
- Differentiation Entity in appearance
Interpreter Interpreter
— List of interpretation types
- Function Interpreter
- Function semantic interpretation
- Function Semantic Import
Integration with Wolfram|Alpha
— Free form input (= at the beginning of the cell Input)
—— Examples
- Local input in free form (Ctrl + = anywhere in the Input cell
—— Example
- The full result of the Wolfram|Alpha query (== at the beginning of the Input cell)
—— Some examples of using Wolfram|Alpha
--- Mathematics
——— Physics
——— Chemistry
——— Probability theory, statistics and data analysis
——— Weather and related matters
——— Internet and computer systems
--- Music
——— Food, nutrition, health
- Function WolframAlpha
—— Example 1: Euler-Venn Diagrams and Logic Circuits for Boolean Algebra Functions in Three Variables.
—— Example 2: Finding the nearest named colors to a given

3 | Working with Wolfram Cloud: creating a direct API, input forms, CloudCDF, etc.


Lesson contentWhat is Wolfram Cloud?
— What does the Wolfram Cloud consist of?
— What can you do with the Wolfram Cloud?
Wolfram Programming Cloud
— Types of Wolfram Programming Cloud AccountTypes of Wolfram Programming Cloud Account
— Cloud loans
Cloud Functions in Mathematica and Wolfram Desktop
- Functions for direct work with the cloud, as well as those that are able to work with cloud objects.
— Information functions of the cloud
- CloudAccountData — information about your account in the Cloud
- Cloud Connect, cloud disconnect — connection to the Cloud or disconnection from it
- CloudObjects - your cloud objects
- $CloudCreditsAvailable - the number of available cloud loans
Cloud interface, first steps
- main window
— Window of information about your account
— A window with information about the use of your Cloud objects and Cloud credits
— New document window
Function FormFunction
- Purpose and syntax
- The simplest example
CloudDeploy
— Variable types
— Working with variables
—— Parameter "Interpreter"
—— Default parameter
—— Parameter "Input"
—— Parameter "Label"
—— Parameter "Help"
—— Parameter "Hint"
- Customizing the appearance of the form
- AppearanceRules
——FormTheme
- Possible result formats
- Insert Russian text
—— Example
- Examples
—— Create an app to solve an equation
—— Creating an image processing application
—— Building a geographic app with smart fields
Function APIFunction
- Examples
—— Create an app to solve an equation
—— Building a geographic app with smart fields

4 | CDF technology - instant embedding of interactive objects created in Mathematica into web pages, subtleties. Using ready-made interactive objects from the Wolfram Demonstrations Project site in your projects and modifying them. Real examples and business applications


Lesson contentCDF - Computable Document Format - Computable Document Format
— CDF technology
— Brief comparison with other formats
— Stages of creating a CDF
—— Illustrated steps
— Real examples
— Wolfram Demonstrations Project
Create a CDF based on Manipulate
- Step 1. Create an application
- Step 2: Save it as a CDF
— Step 3: Embed in a web page
Creating a CDF based on DynamicModule
- Step 1. Create an application
- Step 2. Saving it to CDF
— Step 3: Embed in a web page
— Another example of a complex CDF
Creation of ready-made web pages based on CDF
- Example
EnterpriseCDF
— Differences between CDF and EnterpriseCDF
— Basic comparison of CDF and EnterpriseCDF
— Detailed comparison of CDF, EnterpriseCDF, Wolfram Player Pro and Mathematica
CloudCDF
What is CloudCDF?
— Example of creating CloudCDF
—— Example 1
—— Example 2

5 | Working with Wolfram Language and Mathematica, pre-installed and free on Raspberry Pi (with Raspbian operating system)


Lesson contentRaspberry Pi, first acquaintance
- What it is?
— Where can I buy?
— Where and how to install the OS, with Wolfram Language support
Raspberry Pi and Wolfram Language
— Project page
— Documentation page
— What does the Raspberry Pi look like after installation
— The idea of ​​programming in Wolfram Language on Raspberry Pi
Raspberry Pi Performance
— Calculation of some code
- Standard built-in Wolfram benchmark
- Comparison with Python performance on Raspberry Pi
An example of a mail robot that runs on a Raspberry Pi
Raspberry Pi Examples
— Creation of a GPS tracker
—— You will need
—— View after assembly
—— Program for Mathematica on Raspberry Pi
— We take a photo
—— You will need
—— View after assembly
—— Program for Mathematica on Raspberry Pi
- Using GPIOs
—— You will need
—— View after assembly
—— Program for Mathematica on Raspberry Pi
— Other examples
Where can I find more information about Wolfram Language and Raspberry Pi integration?

I apologize for the sound quality, in some videos it is not as good as we would like.

In new videos and webinars, everything is fine with sound and video in 2K. Join: every week on the channel there are live broadcasts.

Webinar example



Source: habr.com

Add a comment