Summary of New Features in 10

A list of key new features since 9.

Core Language & Structure

open all close all

Associations »

Association ( <||> ) an association between keys and values

Key indicate a key within a part specification

Keys  ▪  Values  ▪  Lookup  ▪  KeySort  ▪  KeyUnion

Merge combine elements that have common keys

Counts, CountsBy associate values with the number of times they occur

GroupBy group values by collecting those sharing a criterion ("map reduce")

JoinAcross combine lists of associations that match ("SQL join")

PositionIndex build an index of positions at which values occur

Templates »

StringTemplate  ▪  FileTemplate  ▪  XMLTemplate  ▪  NotebookTemplate

TemplateObject general symbolic template

TemplateExpression an arbitrary expression evaluated when the template is applied

TemplateApply  ▪  TemplateSequence  ▪  TemplateSlot  ▪  TemplateIf  ▪  TemplateWith  ▪  ...

Entities »

EntityValue get values for properties of entities

Entity represent a particular entity in the world

EntityProperty  ▪  EntityProperties  ▪  CommonName  ▪  CanonicalName  ▪  EntityTypeName  ▪  ...

Finding Elements »

SelectFirst, FirstCase, FirstPosition find the first element satisfying a criterion

MaximalBy, MinimalBy find elements that maximize, minimize a criterion

Testing Expressions »

AllTrue, AnyTrue, NoneTrue apply a test multiple times across a list

IntersectingQ, DisjointQ, SubsetQ compare elements of two sets

BooleanQ

Data Manipulation & Analysis

Entities »

EntityValue get values for properties of entities

Entity represent a particular entity in the world

EntityProperty  ▪  EntityProperties  ▪  CommonName  ▪  CanonicalName  ▪  EntityTypeName  ▪  ...

Machine Learning »

Classify classify data into categories using a built-in classifier or learning from examples

Predict predict values from data using a built-in predictor or learning from examples

ClassifierFunction  ▪  PredictorFunction  ▪  ClassifierMeasurements  ▪  PredictorMeasurements

WDF (Wolfram Data Framework) »

SemanticImport import a file to give WDF

Interpreter specify how to convert a string to WDF

"Date"  ▪  "City"  ▪  "Number"  ▪  "PhoneNumber"  ▪  "URL"  ▪  ...

ThermodynamicData properties of thermodynamic substances

Formulas »

FormulaData give the equations for a specific formula

FormulaLookup look up formula names based on specific criteria

QuantityVariable represent a physical quantity

QuantityVariableIdentifier  ▪  QuantityVariablePhysicalQuantity  ▪  QuantityVariableDimensions  ▪  QuantityVariableCanonicalUnit

Currency

CurrencyConvert convert between different currencies

InflationAdjust current and historical inflation adjustments

DatedUnit associate a specific date with a unit

Broad Support for Time Series Processing »

TimeSeries series consisting of time-value pairs

EventSeries special time series with no interpolation between samples

TemporalData general collection of time series

Basic Operations

TimeSeriesWindow give the time series in the specified time window

TimeSeriesInsert insert time-value pairs into a time series

TimeSeriesRescale  ▪  TimeSeriesResample  ▪  TimeSeriesShift  ▪  TimeSeriesThread  ▪  TimeSeriesMap  ▪  TimeSeriesMapThread  ▪  RegularlySampledQ  ▪  MinimumTimeIncrement

Filtering & Aggregating Time Series

MovingMap apply a function to a moving overlapping window

TimeSeriesAggregate apply a function to a moving non-overlapping window

Differences  ▪  Accumulate  ▪  MovingAverage  ▪  MovingMedian  ▪  ...

LowpassFilter  ▪  HighpassFilter  ▪  MeanFilter  ▪  ...

Time Series Process Modeling »

TimeSeriesModelFit automatically fit a time series model

TimeSeriesForecast  ▪  CorrelationFunction  ▪  PowerSpectralDensity  ▪  ...

Date & Time

DateObject  ▪  TimeObject

DateFormat  ▪  CalendarConvert  ▪  TimeZoneConvert

New in Image Processing & Analysis »

BarcodeImage, BarcodeRecognize generate and recognize 1D or 2D barcodes

ConformImages make a list of images that have conforming properties

RemoveBackground separate and remove background from an image

DominantColors improvements and new options to find a list of dominant colors

RandomColor  ▪  ColorDistance  ▪  ChromaticityPlot

ConstantImage  ▪  LinearGradientImage  ▪  RadialGradientImage

ImageCollage  ▪  LocalAdaptiveBinarize  ▪  GrowCutComponents  ▪  ImageApplyIndexed  ▪  ImageSaliencyFilter  ▪  SavitzkyGolayMatrix

Use more functions for processing and analyzing 3D images

ComponentMeasurements  ▪  SelectComponents

ImageRotate  ▪  ImageTransformation  ▪  ImagePerspectiveTransformation

EdgeDetect  ▪  CrossingDetect  ▪  ContourDetect  ▪  CornerFilter

HistogramTransform  ▪  HistogramTransformInterpolation

FourierDCTFilter

Visualization & Graphics

LABColor, LUVColor, XYZColor use CIE color spaces for styles and color functions

Maps & Cartography »

GeoGraphics construct maps and geographic images from primitives and directives

GeoPath  ▪  GeoStyling

Specialized Plots

NumberLinePlot plot numbers, intervals, and predicates on a number line

MandelbrotSetPlot plot the Mandelbrot set over a region

JuliaSetPlot plot the Julia set for a function

Enhanced Legends

PlotLegends improved legends using dashing, thickness, plot markers, and label styles

ArrayPlot improved automatic legends

MatrixPlot improved automatic legends

Legended improved placement of multiple legends and wider support as a wrapper for data

ListLogPlot  ▪  ListLogLinearPlot  ▪  ListLogLogPlot  ▪  QuantilePlot  ▪  ProbabilityPlot  ▪  ProbabilityScalePlot

Enhanced Units

Create financial plots from data with units

CandlestickChart  ▪  KagiChart  ▪  PointFigureChart  ▪  RenkoChart  ▪  LineBreakChart

PlotTheme specify an overall theme for visualizations

Symbolic & Numeric Computation

Geometric Computation »

Geometric computation framework for modeling and computing with geometric regions.

Plane Geometry »

SSSTriangle  ▪  ArcLength  ▪  Area  ▪  ...

Solid Geometry »

Tetrahedron  ▪  Volume  ▪  RegionMember  ▪  ...

Properties and Measures »

RegionNearest find the nearest point in a region

RegionMeasure  ▪  RegionCentroid  ▪  RegionDistance  ▪  ...

Solvers over Regions »

Integrate, NIntegrate integrate over regions

NDSolve solve partial differential equations over regions

Solve  ▪  NSolve  ▪  Minimize  ▪  NMinimize  ▪  ...

Special Regions »

Ball a ball given by center and radius

Simplex  ▪  Hexahedron  ▪  InfiniteLine  ▪  ...

Formula Regions

ImplicitRegion a region given by combinations of inequalities and equalities

ParametricRegion a region given by parametric functions

Mesh Regions »

MeshRegion a region specified by a collection of mesh cells

BoundaryMeshRegion a region boundary specified by a collection of mesh cells

HighlightMesh  ▪  MeshCellStyle  ▪  MeshCellLabel  ▪  ...

Data Regions »

DelaunayMesh a Delaunay triangulation mesh constructed from points

VoronoiMesh  ▪  ConvexHullMesh  ▪  ...

Region Converters »

DiscretizeGraphics, BoundaryDiscretizeGraphics discretize 2D or 3D graphics

DiscretizeRegion, BoundaryDiscretizeRegion discretize a region

Derived Regions »

RegionUnion the union of regions

TransformedRegion a region as the image of a transformation

RegionIntersection  ▪  BooleanRegion  ▪  RegionBoundary  ▪  ...

Inactive Operators

Inactive new inactive operator for working with formal operations

Inactivate inactivate parts of expressions

Activate  ▪  IgnoringInactive

Enhanced Calculus

DSolveValue, RSolveValue new functions that can directly return functions of solutions

DSolve now solves delay differential and hybrid differential equations

Sum new algorithms for functional telescoping, multiple sums, and special functions

Product new algorithms for functional telescoping

DifferenceDelta new results for differences of special functions

DiscreteRatio new results for ratios of special functions

Enhanced Algebraic Computation

NSolve new homotopy-based algorithm for fast solution of polynomial systems

Reduce, Solve, FindInstance new fast solving over the reals

Function Properties

FunctionPeriod find the period of functions over the reals, integers, and complexes

FunctionDomain find the domain of a function

FunctionRange find the range of a function

Vector Analysis

ArcLength length

ArcCurvature curvature

FrenetSerretSystem generalized curvatures and associated basis

Linear Algebra »

PositiveSemidefiniteMatrixQ new and improved matrix predicates

NormalMatrixQ  ▪  OrthogonalMatrixQ  ▪  SquareMatrixQ  ▪  ...

New Special Functions

LogisticSigmoid the logistic function

CantorStaircase the Cantor ternary function

MinkowskiQuestionMark  ▪  ScorerHi  ▪  ScorerGi  ▪  FresnelF  ▪  FresnelG  ▪  RiemannXi  ▪  DirichletBeta  ▪  DirichletEta  ▪  DirichletLambda  ▪  Fibonorial  ▪  AlternatingFactorial  ▪  FareySequence

Nonlinear Control Systems »

AffineStateSpaceModel affine model and

FeedbackLinearize linearization through nonlinear feedback and state transformation

AsymptoticOutputTracker tracker with state feedback

NonlinearStateSpaceModel  ▪  FullInformationOutputRegulator  ▪  ...

Probability & Statistics

AutocorrelationTest test for autocorrelation in data

Time Series Processes »

TimeSeriesModelFit automatic fitting, diagnostics, and forecasting for time series

ARCHProcess, GARCHProcess new classes of time series processes

ARProcess, ARMAProcess full support for vector processes

MAProcess  ▪  SARMAProcess  ▪  FARIMAProcess

Markov Processes

HiddenMarkovProcess hidden Markov process with discrete or continuous emissions

FindHiddenMarkovStates hidden state decoding (Viterbi decoding etc.)

Parametric Processes »

TransformedProcess transformations of random processes

WhiteNoiseProcess new and improved capabilities for parametric processes

PoissonProcess  ▪  WienerProcess  ▪  GeometricBrownianMotionProcess  ▪  ...

Strings & Text

Templates »

StringTemplate  ▪  FileTemplate  ▪  XMLTemplate  ▪  NotebookTemplate

TemplateObject general symbolic template

TemplateExpression an arbitrary expression evaluated when the template is applied

TemplateApply  ▪  TemplateSequence  ▪  TemplateSlot  ▪  TemplateIf  ▪  TemplateWith  ▪  ...

WDF (Wolfram Data Framework) »

SemanticImport import a file to give WDF

Interpreter specify how to convert a string to WDF

"Date"  ▪  "City"  ▪  "Number"  ▪  "PhoneNumber"  ▪  "URL"  ▪  ...

Graphs & Networks

Graphs & Networks

MultigraphQ framework-wide support for multigraphs

MixedGraphQ framework-wide support for mixed (directed and undirected) graphs

FindSpanningTree find a spanning tree (or spanning forest) of a graph

VertexContract  ▪  EdgeContract  ▪  LinkRankCentrality

Visualization

Graph3D generate 3D layouts for graphs

PerformanceGoal performance improvements for all graph visualization

GraphLayout additional planar embedding "TutteEmbedding"

Paths & Connectivity

FindPath find all paths between two vertices

FindVertexIndependentPaths  ▪  FindEdgeIndependentPaths

KVertexConnectedComponents  ▪  KEdgeConnectedComponents  ▪  KVertexConnectedGraphQ  ▪  KEdgeConnectedGraphQ

Tours & Cycles

FindShortestTour new and improved capabilities for tours and cycles

FindCycle find all cycles

FindFundamentalCycles  ▪  EdgeCycleMatrix

Isomorphisms

FindGraphIsomorphism find several isomorphism mappings between graphs

GraphAutomorphismGroup the group of all ways to remap vertex indexes

CanonicalGraph canonical form for graphs

Relations

TransitiveClosureGraph the transitive closure or reachability graph

TransitiveReductionGraph the transitive reduction or Hasse diagram

Polynomials

TuttePolynomial new graph polynomials

ChromaticPolynomial  ▪  FlowPolynomial

Images

LABColor, LUVColor, XYZColor use colors defined in CIE color spaces

New in Image Processing & Analysis »

BarcodeImage, BarcodeRecognize generate and recognize 1D or 2D barcodes

ConformImages make a list of images that have conforming properties

RemoveBackground separate and remove background from an image

DominantColors improvements and new options to find a list of dominant colors

RandomColor  ▪  ColorDistance  ▪  ChromaticityPlot

ConstantImage  ▪  LinearGradientImage  ▪  RadialGradientImage

ImageCollage  ▪  LocalAdaptiveBinarize  ▪  GrowCutComponents  ▪  ImageApplyIndexed  ▪  ImageSaliencyFilter  ▪  SavitzkyGolayMatrix

Use more functions for processing and analyzing 3D images

ComponentMeasurements  ▪  SelectComponents

ImageRotate  ▪  ImageTransformation  ▪  ImagePerspectiveTransformation

EdgeDetect  ▪  CrossingDetect  ▪  ContourDetect  ▪  CornerFilter

HistogramTransform  ▪  HistogramTransformInterpolation

FourierDCTFilter

Geometry

Geometric Computation »

Geometric computation framework for modeling and computing with geometric regions.

Plane Geometry »

SSSTriangle  ▪  ArcLength  ▪  Area  ▪  ...

Solid Geometry »

Tetrahedron  ▪  Volume  ▪  RegionMember  ▪  ...

Properties and Measures »

RegionNearest find the nearest point in a region

RegionMeasure  ▪  RegionCentroid  ▪  RegionDistance  ▪  ...

Solvers over Regions »

Integrate, NIntegrate integrate over regions

NDSolve solve partial differential equations over regions

Solve  ▪  NSolve  ▪  Minimize  ▪  NMinimize  ▪  ...

Special Regions »

Ball a ball given by center and radius

Simplex  ▪  Hexahedron  ▪  InfiniteLine  ▪  ...

Formula Regions

ImplicitRegion a region given by combinations of inequalities and equalities

ParametricRegion a region given by parametric functions

Mesh Regions »

MeshRegion a region specified by a collection of mesh cells

BoundaryMeshRegion a region boundary specified by a collection of mesh cells

HighlightMesh  ▪  MeshCellStyle  ▪  MeshCellLabel  ▪  ...

Data Regions »

DelaunayMesh a Delaunay triangulation mesh constructed from points

VoronoiMesh  ▪  ConvexHullMesh  ▪  ...

Region Converters »

DiscretizeGraphics, BoundaryDiscretizeGraphics discretize 2D or 3D graphics

DiscretizeRegion, BoundaryDiscretizeRegion discretize a region

Derived Regions »

RegionUnion the union of regions

TransformedRegion a region as the image of a transformation

RegionIntersection  ▪  BooleanRegion  ▪  RegionBoundary  ▪  ...

Time-Related Computation

Broad Support for Time Series Processing »

TimeSeries series consisting of time-value pairs

EventSeries special time series with no interpolation between samples

TemporalData general collection of time series

Basic Operations

TimeSeriesWindow give the time series in the specified time window

TimeSeriesInsert insert time-value pairs into a time series

TimeSeriesRescale  ▪  TimeSeriesResample  ▪  TimeSeriesShift  ▪  TimeSeriesThread  ▪  TimeSeriesMap  ▪  TimeSeriesMapThread  ▪  RegularlySampledQ  ▪  MinimumTimeIncrement

Filtering & Aggregating Time Series

MovingMap apply a function to a moving overlapping window

TimeSeriesAggregate apply a function to a moving non-overlapping window

Differences  ▪  Accumulate  ▪  MovingAverage  ▪  MovingMedian  ▪  ...

LowpassFilter  ▪  HighpassFilter  ▪  MeanFilter  ▪  ...

Time Series Process Modeling »

TimeSeriesModelFit automatically fit a time series model

TimeSeriesForecast  ▪  CorrelationFunction  ▪  PowerSpectralDensity  ▪  ...

Date & Time

DateObject  ▪  TimeObject

DateFormat  ▪  CalendarConvert  ▪  TimeZoneConvert

Astronomical Computation »

Sunrise, Sunset time of sunrise, sunset for any location and date

SunPosition  ▪  MoonPosition  ▪  MoonPhase  ▪  ...

PlanetData static and dynamic properties of solar system planets

PlanetaryMoonData  ▪  CometData  ▪  ...

StarData positions and properties of all stars in standard catalogs

ConstellationData  ▪  GalaxyData  ▪  ...

SatelliteData properties and real-time computed positions of artificial satellites

DeepSpaceProbeData planetary and deep space probes

Geographic Data & Computation

Maps & Cartography »

GeoGraphics create maps based on detailed worldwide geographic information

GeoListPlot plot points or regions on maps

GeoRegionValuePlot create geographic heat maps

GeoPosition a position on the Earth

GeoVisibleRegion  ▪  GeoVisibleRegionBoundary  ▪  DayNightTerminator  ▪  ...

GeoStyling styling for rendering any region ("OutlineMap", "StreetMap", "ReliefMap", ...)

GeoBackground  ▪  GeoZoomLevel  ▪  GeoScaleBar  ▪  ...

GeoProjection projection to use ("Mercator", "Equirectangular", "Robinson", ...)

GeoGridLines  ▪  GeoGridLinesStyle

Entity countries, cities, and other geographic entities, entered e.g. using

AdministrativeDivisionData  ▪  OceanData  ▪  ...

MountainData  ▪  BuildingData  ▪  AirportData  ▪  UniversityData  ▪  ...

Scientific and Medical Data & Computation

Physics & Chemistry »

ElementData bulk, atomic, chemical, etc. properties of all chemical elements

ChemicalData structural, physical, and other properties of chemical compounds

ThermodynamicData  ▪  ParticleData  ▪  ...

FormulaData  ▪  PhysicalSystemData  ▪  ...

Astronomical Computation »

Sunrise, Sunset time of sunrise, sunset for any location and date

SunPosition  ▪  MoonPosition  ▪  MoonPhase  ▪  ...

PlanetData static and dynamic properties of solar system planets

PlanetaryMoonData  ▪  CometData  ▪  ...

StarData positions and properties of all stars in standard catalogs

ConstellationData  ▪  GalaxyData  ▪  ...

SatelliteData properties and real-time computed positions of artificial satellites

DeepSpaceProbeData planetary and deep space probes

Connected Devices »

DeviceOpen open a connection to a device

FindDevices attempt to find devices available on a particular machine

DeviceRead  ▪  DeviceWrite  ▪  DeviceExecute  ▪  DeviceExecuteAsynchronous  ▪  ...

Engineering Data & Computation

Nonlinear Control Systems »

AffineStateSpaceModel affine model and

FeedbackLinearize linearization through nonlinear feedback and state transformation

AsymptoticOutputTracker tracker with state feedback

NonlinearStateSpaceModel  ▪  FullInformationOutputRegulator  ▪  ...

New in Image Processing & Analysis »

BarcodeImage, BarcodeRecognize generate and recognize 1D or 2D barcodes

ConformImages make a list of images that have conforming properties

RemoveBackground separate and remove background from an image

DominantColors improvements and new options to find a list of dominant colors

RandomColor  ▪  ColorDistance  ▪  ChromaticityPlot

ConstantImage  ▪  LinearGradientImage  ▪  RadialGradientImage

ImageCollage  ▪  LocalAdaptiveBinarize  ▪  GrowCutComponents  ▪  ImageApplyIndexed  ▪  ImageSaliencyFilter  ▪  SavitzkyGolayMatrix

Use more functions for processing and analyzing 3D images

ComponentMeasurements  ▪  SelectComponents

ImageRotate  ▪  ImageTransformation  ▪  ImagePerspectiveTransformation

EdgeDetect  ▪  CrossingDetect  ▪  ContourDetect  ▪  CornerFilter

HistogramTransform  ▪  HistogramTransformInterpolation

FourierDCTFilter

Connected Devices »

DeviceOpen open a connection to a device

FindDevices attempt to find devices available on a particular machine

DeviceRead  ▪  DeviceWrite  ▪  DeviceExecute  ▪  DeviceExecuteAsynchronous  ▪  ...

Higher Mathematical Computation

Linear Algebra »

PositiveSemidefiniteMatrixQ new and improved matrix predicates

NormalMatrixQ  ▪  OrthogonalMatrixQ  ▪  SquareMatrixQ  ▪  ...

New Special Functions

LogisticSigmoid the logistic function

CantorStaircase the Cantor ternary function

MinkowskiQuestionMark  ▪  ScorerHi  ▪  ScorerGi  ▪  FresnelF  ▪  FresnelG  ▪  RiemannXi  ▪  DirichletBeta  ▪  DirichletEta  ▪  DirichletLambda  ▪  Fibonorial  ▪  AlternatingFactorial  ▪  FareySequence

Vector Analysis

ArcLength length

ArcCurvature curvature

FrenetSerretSystem generalized curvatures and associated basis

Enhanced Calculus

DSolveValue, RSolveValue new functions that can directly return functions of solutions

DSolve now solves delay differential and hybrid differential equations

Sum new algorithms for functional telescoping, multiple sums, and special functions

Product new algorithms for functional telescoping

DifferenceDelta new results for differences of special functions

DiscreteRatio new results for ratios of special functions

Probability & Statistics

AutocorrelationTest test for autocorrelation in data

Time Series Processes »

TimeSeriesModelFit automatic fitting, diagnostics, and forecasting for time series

ARCHProcess, GARCHProcess new classes of time series processes

ARProcess, ARMAProcess full support for vector processes

MAProcess  ▪  SARMAProcess  ▪  FARIMAProcess

Markov Processes

HiddenMarkovProcess hidden Markov process with discrete or continuous emissions

FindHiddenMarkovStates hidden state decoding (Viterbi decoding etc.)

Parametric Processes »

TransformedProcess transformations of random processes

WhiteNoiseProcess new and improved capabilities for parametric processes

PoissonProcess  ▪  WienerProcess  ▪  GeometricBrownianMotionProcess  ▪  ...

Documents & Presentation

Wolfram Predictive Interface »

String Completion autocomplete string arguments

File Name Completion autocomplete file names and paths

Color Chooser choose a color from an interface

Function Template Tooltip show function templates by clicking a tooltip

External Interfaces & Connections

URL Manipulation »

URLEncode convert a string to use URL-style percent encoding

URLDecode convert to Unicode from URL-style percent encoding

URLBuild  ▪  URLParse  ▪  URLShorten  ▪  ...

Database Connections and Resources »

SQLConnectionOpenQ client validity test for SQL connection

SQLConnectionUsableQ server validity test for SQL connection

Connected Devices »

DeviceOpen open a connection to a device

FindDevices attempt to find devices available on a particular machine

DeviceRead  ▪  DeviceWrite  ▪  DeviceExecute  ▪  DeviceExecuteAsynchronous  ▪  ...

Cloud & Deployment

Cloud Functions & Deployment »

CloudObject a handle to an expression or other content in the cloud

CloudGet get an expression from the cloud

CloudPut put an expression into the cloud, creating a new cloud object if necessary

CloudSave save definitions associated with a symbol to the cloud

CloudImport  ▪  CloudExport  ▪  ...

Cloud Evaluation

CloudEvaluate evaluate an expression in the cloud

CloudFunction a pure function to be evaluated in the cloud

Deploying to the Cloud

CloudDeploy deploy code or content to be accessed externally in the cloud

APIFunction symbolic representation of an API to be deployed

FormFunction symbolic representation of a form to be deployed

ExternalBundle representation of a directory of objects

ExportForm  ▪  ResponseForm  ▪  HTTPResponse  ▪  ...

Creating Embeddable Content

EmbedCode HTML etc. code for external embedding of cloud content

Content Management

Permissions  ▪  CloudDirectory  ▪  ...

URL Manipulation »

URLEncode convert a string to use URL-style percent encoding

URLDecode convert to Unicode from URL-style percent encoding

URLBuild  ▪  URLParse  ▪  URLShorten  ▪  ...