Summary of New Features in 14

A list of key new and improved features since 13.0, including features experimental in 14.0.

Core Language

open all close all

List Manipulation »

Threaded thread arrays at deep levels of other arrays

DeleteElements delete elements from a list

DeleteAdjacentDuplicates delete identical adjacent elements in a list

SymmetricDifference, UniqueElements compare elements of several lists

Splice (updated) splice expressions with any head, not just List

Evaluation and Error Handling

ArgumentsOptions (updated), CheckArguments (updated) support for operator forms

PropagateAborts fine-tune whether aborts are cleared or reissued

TerminatedEvaluation representation of an expression whose evaluation was stopped

TraceOriginal (updated) finer-grained control over evaluation chains to include

Until perform evaluations until passing a test

Functional Programming »

Comap, ComapApply apply lists of functions to an expression

MapApply apply a function at level one

ReplaceAt use replacement rules at specific positions

Expression Testing

CountDistinct (updated) now allows a comparison function to be given

DisjointQ (updated), IntersectingQ (updated), SubsetQ (updated) new SameTest option

LeafCount (updated) new Heads option

PositionSmallest, PositionLargest positions of smallest and largest elements in a list

SameAs operator form of SameQ


RealValuedNumberQ test if an expression is a number with a real value

RealValuedNumericQ test if an expression represents a number with a real value

DigitSum sum of decimal digits in an integer

RomanNumeral (updated), FromRomanNumeral (updated) faster conversions with Roman numerals

ByteArray (updated) now supports empty arrays

Assignments »

Consistently support lists and general string patterns in symbol manipulation functions.

Clear  (updated)   ▪  ClearAll  (updated)   ▪  Remove  (updated)   ▪  Protect  (updated)   ▪  Unprotect  (updated)   ▪  Definition  (updated)   ▪  FullDefinition  (updated) 

OwnValues (updated) now supports symbol names in addition to symbols

DownValues  (updated)   ▪  UpValues  (updated)   ▪  SubValues  (updated)   ▪  DefaultValues  (updated) 


Documentation updates with clarified usages, new notes and many more examples.

StringFreeQ  ▪  StringContainsQ  ▪  StringStartsQ  ▪  StringEndsQ  ▪  StringMatchQ

Entity Framework

EntityType symbolic representation of an entity type

EntityProperty (updated), EntityClass (updated), EntityPropertyClass (updated) support for child types

Persistent Values

PersistentSymbol, LocalSymbol support reassignment functions on parts

Unit Testing

TestCreate create a test object from an input and an expected output

TestObject symbolic representation of a unit test

IntermediateTest create intermediate tests inside TestCreate

TestEvaluate  ▪  TestEvaluationFunction

Kernel Management

KernelConfigurationEdit edit properties for a given kernel

$DefaultParallelKernels list of kernels configured for parallel computing

Parallel Computation

ParallelEvaluate allow selection of subsets of kernels

Parallelize support functions on associations (AssociationMap, KeyMap, KeySelect)


Core Calculus

ImplicitD implicit differentiation

IntegrateChangeVariables change of variables in integrals

DSolveChangeVariables change of variables in differential equations

Fractional Calculus

Fractional Calculus introduction to fractional calculus

FractionalD RiemannLiouville fractional derivative

NFractionalD numerical fractional differentiation

CaputoD Caputo fractional derivative

NCaputoD numerical Caputo differentiation

LaplaceTransform (updated) can now transform Caputo fractional derivatives

DSolve (updated) can now solve Caputo fractional differential equations

MittagLefflerE (updated) the "exponential" of fractional DEs

Vector Calculus

LineIntegrate vector line integrals

NLineIntegrate numerical vector line integrals

SurfaceIntegrate vector surface integrals

NSurfaceIntegrate numerical vector surface integrals

Complex Analysis

ContourIntegrate complex contour integration

NContourIntegrate numerical complex contour integration

ResidueSum sum the residues of a function over a region, typically for contour integration

Integral Transforms

New landmark capabilities, achieving F. Oberhettinger, Tables of Laplace Transforms.

LaplaceTransform  (updated)   ▪  InverseLaplaceTransform  (updated) 

UnilateralConvolve unilateral (AKA causal, one-sided) convolution

Differential & Difference Equations

IncludeSingularSolutions DSolve can now also find singular solutions

RSolveValue (updated) can now use symbolic vector variables

DSolveValue (updated) improved quality and performance for constant coefficient linear DEs

RSolveValue (updated) improved quality and performance for constant coefficient linear ΔEs

Support StateSpaceModel and TransferFunctionModel in place of equations.

DSolveValue  (updated)   ▪  RSolveValue  (updated)   ▪  RecurrenceTable  (updated) 

TruncateSum make it easy to work with infinite sum representations produced by DSolve and other functions

Symbolic Differential Equations (updated) introduction to symbolic differential equations

Asymptotic Calculus

Asymptotic (updated) can now give infinite-order asymptotics for analytic functions

AsymptoticDSolveValue (updated) asymptotic solution of fractional DEs

AsymptoticDSolveValue (updated) can now use symbolic vector variables

AsymptoticRSolveValue (updated) can now use symbolic vector variables


High-Performance Polynomial Algebra

Faster univariate and multivariate polynomial operations, as well as some additional functionality such as modular factoring of multivariate polynomials.

PolynomialGCD  (updated)   ▪  PolynomialLCM  (updated)   ▪  Factor  (updated)   ▪  FactorList  (updated)   ▪  FactorSquareFree  (updated)   ▪  FactorSquareFreeList  (updated)   ▪  Resultant  (updated)   ▪  Discriminant  (updated)   ▪  Subresultants  (updated) 

High-Performance Univariate Rational Linear Algebra

Faster symbolic linear algebra involving matrices with univariate rational functions.

LinearSolve  (updated)   ▪  RowReduce  (updated)   ▪  Inverse  (updated)   ▪  NullSpace  (updated)   ▪  MatrixRank  (updated)   ▪  Det  (updated)   ▪  MatrixPower  (updated) 

Finite Fields

FiniteField represent a finite field

FiniteFieldElement represent an element of a finite field

FiniteFieldEmbedding  ▪  FrobeniusAutomorphism  ▪  FiniteFieldElementTrace  ▪  FiniteFieldElementNorm  ▪  MinimalPolynomial  ▪  MultiplicativeOrder  ▪  FiniteFieldElementPrimitiveQ

Convenience functions for working with finite fields.

ToFiniteField, FromFiniteField convert expressions to and from finite field versions

FiniteFieldIndex, FromFiniteFieldIndex convert to and from the index representation

Support for polynomial computations over finite fields

Factor (updated) factor a polynomial over a finite field

PolynomialGCD (updated) find the g.c.d. of polynomials with coefficients from a finite field

FactorList  (updated)   ▪  FactorSquareFree  (updated)   ▪  FactorSquareFreeList  (updated)   ▪  PolynomialLCM  (updated)   ▪  PolynomialExtendedGCD  (updated)   ▪  Expand  (updated)   ▪  Together  (updated)   ▪  Cancel  (updated)   ▪  IrreduciblePolynomialQ  (updated)   ▪  PolynomialQuotient  (updated)   ▪  PolynomialRemainder  (updated)   ▪  PolynomialQuotientRemainder  (updated)   ▪  Resultant  (updated)   ▪  Discriminant  (updated) 

Matrix operations for finite field matrices.

Dot  (updated)   ▪  LinearSolve  (updated)   ▪  Inverse  (updated)   ▪  RowReduce  (updated)   ▪  NullSpace  (updated)   ▪  MatrixRank  (updated)   ▪  Det  (updated)   ▪  CharacteristicPolynomial  (updated)   ▪  LUDecomposition  (updated) 

Solving equations over finite fields.

Solve  (updated)   ▪  SolveValues  (updated)   ▪  Reduce  (updated)   ▪  FindInstance  (updated)   ▪  Resolve  (updated) 

Equation Solving

NSolve (updated) better support for large-scale equation solving, including a monodromy-based method for polynomial and holomorphic systems of equations

MaxRoots limit the number of roots computed

Structured Matrices

PermutationMatrix structured matrices with short specifications and fast computations

LowerTriangularMatrix  ▪  UpperTriangularMatrix  ▪  BlockDiagonalMatrix  ▪  BlockLowerTriangularMatrix  ▪  BlockUpperTriangularMatrix  ▪  VandermondeMatrix  ▪  CauchyMatrix  ▪  SymmetricMatrix  ▪  HermitianMatrix  ▪  OrthogonalMatrix  ▪  UnitaryMatrix

These are now structured matrices with compact representation and fast computation.

IdentityMatrix  (updated)   ▪  DiagonalMatrix  (updated)   ▪  ToeplitzMatrix  (updated)   ▪  HankelMatrix  (updated)   ▪  FourierMatrix  (updated) 

TargetStructure specify the form of generated output

Support for TargetStructure in matrix constructors.

CholeskyDecomposition  (updated)   ▪  CoreNilpotentDecomposition  (updated) 

DiagonalMatrix  (updated)   ▪  IdentityMatrix  (updated)   ▪  ToeplitzMatrix  (updated)   ▪  HankelMatrix  (updated)   ▪  FourierMatrix  (updated)   ▪  HilbertMatrix  (updated)   ▪  UpperTriangularize  (updated)   ▪  LowerTriangularize  (updated)   ▪  UpperTriangularMatrix  (updated)   ▪  LowerTriangularMatrix  (updated)   ▪  PermutationMatrix  (updated)   ▪  VandermondeMatrix  (updated)   ▪  CauchyMatrix  (updated)   ▪  BlockDiagonalMatrix  (updated)   ▪  BlockLowerTriangularMatrix  (updated)   ▪  BlockUpperTriangularMatrix  (updated)   ▪  FourierDCTMatrix  (updated)   ▪  FourierDSTMatrix  (updated)   ▪  ReflectionMatrix  (updated)   ▪  RotationMatrix  (updated)   ▪  EulerMatrix  (updated)   ▪  HadamardMatrix  (updated)   ▪  RollPitchYawMatrix  (updated)   ▪  PauliMatrix  (updated) 

Matrix decompositions with TargetStructure support. Matrix decompositions are explicitly made to produce structured matrices such as triangular, orthogonal and diagonal.

QRDecomposition  (updated)   ▪  SingularValueDecomposition  (updated)   ▪  HessenbergDecomposition  (updated)   ▪  SchurDecomposition  (updated) 

Interval Matrices

Matrix functions of interval matrices.

Dot  (updated)   ▪  Inverse  (updated)   ▪  MatrixPower  (updated)   ▪  MatrixExp  (updated) 

Linear equation solving for interval matrices.

LinearSolve  (updated)   ▪  LUDecomposition  (updated)   ▪  CholeskyDecomposition  (updated) 

Eigen problems for interval matrices.

Eigenvalues  (updated)   ▪  Eigenvectors  (updated)   ▪  Eigensystem  (updated)   ▪  Det  (updated)   ▪  CharacteristicPolynomial  (updated) 

Mathematical Functions »

Interval Evaluation for Mathematical Functions

CenteredInterval (updated) interval evaluation supported in 36 more special functions

Interval (updated) is now supported in all special functions that do interval evaluation

AlternatingFactorial  (updated)   ▪  AngerJ  (updated)   ▪  Binomial  (updated)   ▪  CatalanNumber  (updated)   ▪  DawsonF  (updated)   ▪  EllipticNomeQ  (updated)   ▪  FactorialPower  (updated)   ▪  Fibonacci  (updated)   ▪  FresnelF  (updated)   ▪  FresnelG  (updated)   ▪  Gudermannian  (updated)   ▪  HankelH1  (updated)   ▪  HankelH2  (updated)   ▪  HarmonicNumber  (updated)   ▪  Haversine  (updated)   ▪  InverseGudermannian  (updated)   ▪  InverseHaversine  (updated)   ▪  JacobiZeta  (updated)   ▪  LogisticSigmoid  (updated)   ▪  LucasL  (updated)   ▪  ParabolicCylinderD  (updated)   ▪  ScorerGi  (updated)   ▪  ScorerGiPrime  (updated)   ▪  ScorerHi  (updated)   ▪  ScorerHiPrime  (updated)   ▪  SphericalBesselJ  (updated)   ▪  SphericalBesselY  (updated)   ▪  SphericalHankelH1  (updated)   ▪  SphericalHankelH2  (updated)   ▪  Subfactorial  (updated)   ▪  Surd  (updated)   ▪  WeberE  (updated)   ▪  WhittakerM  (updated)   ▪  WhittakerW  (updated)   ▪  ZernikeR  (updated)   ▪  Erf  (updated)   ▪  CarlsonRF  (updated)   ▪  CarlsonRC  (updated)   ▪  CarlsonRG  (updated)   ▪  CarlsonRJ  (updated)   ▪  CarlsonRD  (updated)   ▪  CoulombF  (updated)   ▪  CoulombG  (updated)   ▪  CoulombH1  (updated)   ▪  CoulombH2  (updated)   ▪  DirichletL  (updated)   ▪  HurwitzLerchPhi  (updated)   ▪  InverseErf  (updated)   ▪  InverseErfc  (updated)   ▪  LerchPhi  (updated)   ▪  RiemannSiegelTheta  (updated)   ▪  RiemannSiegelZ  (updated)   ▪  WeierstrassP  (updated)   ▪  WeierstrassPPrime  (updated)   ▪  WeierstrassSigma  (updated)   ▪  WeierstrassZeta  (updated)   ▪  WeierstrassHalfPeriods  (updated)   ▪  WeierstrassHalfPeriodW1  (updated)   ▪  WeierstrassHalfPeriodW2  (updated)   ▪  WeierstrassHalfPeriodW3  (updated)   ▪  WeierstrassInvariants  (updated)   ▪  WeierstrassInvariantG2  (updated)   ▪  WeierstrassInvariantG3  (updated) 

Hypergeometric Functions

Support for the Appell bivariate hypergeometric special functions.

AppellF1  (updated)   ▪  AppellF2  ▪  AppellF3  ▪  AppellF4

BilateralHypergeometricPFQ bilateral, i.e. doubly infinite, hypergeometric function

Trees »

Tree Construction & Representation »

Tree (updated) extended representation, including associations of children nodes

UnlabeledTree display a tree without labels

ExpressionTree (updated), TreeExpression (updated) new structure conversions (XML, JSON, FileSystem...)

FileSystemTree tree of subdirectories and files in a directory

Tree Visualization »

Tree (updated) improved graphic design, tree layout and elision

TreeOutline (updated) label and elision options

TreeElementShape specify the visual shape of tree nodes

TreeElementLabelStyle  ▪  TreeElementLabelFunction  ▪  TreeElementStyleFunction  ▪  TreeElementSize  ▪  TreeElementSizeFunction  ▪  TreeElementShapeFunction  ▪  TreeElementCoordinates

ParentEdgeStyle specify the style of tree edges

ParentEdgeLabel  ▪  ParentEdgeLabelStyle  ▪  ParentEdgeLabelFunction  ▪  ParentEdgeStyleFunction  ▪  ParentEdgeShapeFunction

MaxDisplayedChildren  ▪  $MaxDisplayedChildren

Tree Operations »

RootTree first n levels of a tree

TreeLeafCount count number of leaves in a tree

TreeMap (updated), TreeScan (updated) specify arguments supplied to the function

Machine Learning »

Supervised Machine Learning »

Classify (updated), Predict (updated) improved method selection, reporting and documentation

Cluster Analysis »

ClusteringMeasurements analyze the result of a clustering process

Improved automation, support for fixed number of clusters and UpTo.

FindClusters  (updated)   ▪  ClusterClassify  (updated)   ▪  ClusteringComponents  (updated) 

Interpretable Machine Learning

FeatureValueImpactPlot plots the impact of a feature on a model result

FeatureImpactPlot plots the impact of each feature together

CumulativeFeatureImpactPlot plots the cumulative impact of each feature

FeatureValueDependencyPlot plots the result dependency on a feature value


Classify (updated), ClassifierMeasurements (updated) use FittedModel as input

LinearModelFit (updated), NonlinearModelFit (updated) support for uncertainty in the response data

Progress reporting, more efficient continuation when history is provided.

BayesianMaximization  (updated)   ▪  BayesianMinimization  (updated) 

Support for input data using rule base syntax and target column specification.

LinearModelFit  (updated)   ▪  GeneralizedLinearModelFit  (updated)   ▪  LogitModelFit  (updated)   ▪  ProbitModelFit  (updated)   ▪  NonlinearModelFit  (updated) 

Neural Networks »


NetModel (updated), NetGraph (updated) huge speedup on Windows, Linux and Mac (Intel) platforms

NetExternalObject represent an external model that can be used for inference

Network Layers »

AttentionLayer (updated) support for dropout and local masking

BatchNormalizationLayer (updated) faster GPU execution

ConvolutionLayer (updated) support for "Dilation" in 3D

ElementwiseLayer (updated) new activations "Mish" and "GELU"

NormalizationLayer (updated) added "GroupNumber" parameter

RandomArrayLayer (updated) support for more statistical distribution

ReplicateLayer (updated) support for integer arrays

ResizeLayer (updated) support for resampling "Scheme" parameter

Support for Unitize, KroneckerDelta, PossibleZeroQ, Threshold, Mod and Clip.

ThreadingLayer  (updated)   ▪  FunctionLayer  (updated)   ▪  ElementwiseLayer  (updated) 

Network Training »

NetTrain (updated), LossFunction (updated) support for multi-output and nonscalar loss

Encoders & Decoders »

"Image" (updated) resampling and padding support

"Class" (updated) support for top-k and top-p sampling (nucleus sampling)

Video Computation »

Video Object

Video (updated) improved GUI performance and stability, improved storage and sharing, automatic rotation for portrait videos

PlaybackSettings an option to control playback settings in the video GUI

Video Creation »

VideoCapture interactive video recording from webcams and other devices

VideoScreenCapture interactive screen video recording

TourVideo create a tour from 2D graphics and geo graphics

Tour3DVideo create a tour around 3D graphics

FrameListVideo  (updated)   ▪  OverlayVideo  (updated)   ▪  GridVideo  (updated)   ▪  VideoRecord  (updated) 

Video Editing »

VideoExtractTracks separate all tracks or take out specific video, audio or subtitle tracks

VideoTranscode (updated) transcode multiple videos to have conformed properties

VideoJoin (updated) speed improvement, smooth transitions

OverlayVideo (updated) support for text and other overlays, as well as timed overlays

VideoCombine (updated) support for adding subtitles

VideoTimeStretch (updated) support for VideoTransparency option

VideoFrameMap (updated), VideoMap (updated), better support for videos of different duration

New and updated video editing options.

VideoTransparency  ▪  VideoPadding  ▪  VideoEncoding  (updated)   ▪  GeneratedAssetLocation  (updated) 

Support in more image functions for frame-by-frame operations.

RemoveAlphaChannel  (updated)   ▪  SetAlphaChannel  (updated)   ▪  AlphaChannel  (updated) 

Support for time-varying parameters for frame-by-frame operations.

ImageEffect  (updated)   ▪  ImageTake  (updated)   ▪  ImageTrim  (updated)   ▪  ImageReflect  (updated)   ▪  ImageRotate  (updated)   ▪  ImagePerspectiveTransformation  (updated)   ▪  ImageTransformation  (updated)   ▪  ImageForwardTransformation  (updated)   ▪  ImageRecolor  (updated) 

Image Computation »

Segmentation Analysis »

A new generation of neural networks and flexible ways of specifying goals gives substantially more powerful segmentation capabilities used in a variety of functions.

ImageSegmentationComponents segment an image into components

ImageSegmentationFilter filters an image for the foreground components

ImageCases  (updated)   ▪  ImageContents  (updated)   ▪  RemoveBackground  (updated)   ▪  ImageSaliencyFilter  (updated)   ▪  Inpaint  (updated) 

Image Generation »

ImageSynthesize generate an image from a textual prompt

BarcodeImage (updated) support for new barcodes (UPCE and Code93)

ImageCompose (updated) support for plain or styled text and arbitrary expressions for overlays

Computer Vision »

ImageIdentify (updated) updated accuracy of the core model; added a smaller, faster model

TextRecognize (updated), FindImageText (updated) higher accuracies using neural network methods

BarcodeRecognize (updated) support for MicroQR

FindImageShapes find common shapes (lines, circles, ellipses, ...) in an image

Image Geometric Operations »

ImageStitch (updated) support for spherical and cylindrical projection spaces

ImageDisplacements (updated) support for animated images, adding a new method

ImageFeatureTrack (updated) support for animated images

Colors »

Documentation updates for better illustrations and more.

RGBColor  (updated)   ▪  CMYKColor  (updated)   ▪  Hue  (updated)   ▪  LCHColor  (updated)   ▪  LABColor  (updated)   ▪  LUVColor  (updated)   ▪  XYZColor  (updated)   ▪  GrayLevel  (updated) 

Audio & Signal Computation »

Audio Processing »

Audio (updated) significant GUI update for better performance and consistency with other GUIs

AudioTimeStretch (updated), AudioPitchShift (updated) improved quality and speed

Speech Computation »

Support for speech recognition and synthesis through external services (Google, OpenAI & ElevenLabs).

SpeechRecognize  (updated)   ▪  SpeechSynthesize  (updated)   ▪  VoiceStyleData  (updated) 

Dates, Quantities & Uncertainty

Date & Time »

RandomDate, RandomTime uniform distribution of random dates and times

DateGranularity specification of date granularity, such as "Day" or "Week"

Homogeneous support of options in date constructors.

DateObject  (updated)   ▪  TimeObject  (updated)   ▪  DateInterval  (updated)   ▪  FromAbsoluteTime  (updated)   ▪  FromDateString  (updated)   ▪  FromUnixTime  (updated)   ▪  FromJulianDate  (updated) 

DateDifference (updated), DatePlus (updated) new Method option to specify date arithmetic type

DateDifference (updated), DatePlus (updated) improved performance

TimeZone  (updated)   ▪  $TimeZone  (updated)   ▪  TimeZoneConvert  (updated) 

Duration (updated) support dates, intervals and entities

Units & Quantities »

Improved performance of the Wolfram Language Quantity framework. Faster dimensional compatibility checks, unit conversions and quantity arithmetic operations.

Quantity  (updated)   ▪  KnownUnitQ  (updated)   ▪  CompatibleUnitQ  (updated)   ▪  UnitDimensions  (updated)   ▪  UnitConvert  (updated)   ▪  UnitSimplify  (updated)   ▪  CommonUnits  (updated) 

Quantity (updated), UnitConvert (updated) distinguish "DegreesCelsius" and "DegreesCelsiusDifference" in computations with temperatures

UnitConvert (updated) faster unit conversions

QuantityMagnitude  (updated)   ▪  CurrencyConvert  (updated)   ▪  CommonUnits  (updated) 

Uncertainty »

Around (updated) support of uncertain numbers in numerical and comparison functions

NumericalOrder  (updated)   ▪  Less  (updated)   ▪  Equal  (updated)   ▪  LessEqual  (updated)   ▪  Greater  (updated)   ▪  GreaterEqual  (updated) 


Astro Computation »

AstroPosition observed astronomical positions in space and the celestial sphere

AstroDistance physical distance between two celestial objects

AstroAngularSeparation angle between two celestial locations, as observed from a third location

Dated (updated) accept date specifications like year 2023.34 in astronomical computations

NewMoon, FullMoon dates of new moon and full moon

MoonPhaseDate date of any phase of the Moon

LunationNumber, FromLunationNumber continuous count of new moons

AstroSubpoint find the location on Earth having a celestial object directly above

SolarEclipse support for more than 70K eclipses and 80 new properties

Improved precision of astronomy functionality.

Sunrise  (updated)   ▪  Sunset  (updated)   ▪  SunPosition  (updated)   ▪  MoonPosition  (updated)   ▪  DaylightQ  (updated)   ▪  SiderealTime  (updated) 

SphericalDistance compute distances on the unit sphere

Astro Visualization »

AstroGraphics maps of the sky, including solar system objects, stars, galaxies and many other astronomical objects

AstroReferenceFrame specification of the reference frame, location, date and other parameters of an astronomical observation

AstroStyling specification of graphical styles for the elements of an astro map

AstroBackground  ▪  AstroRange  ▪  AstroRangePadding  ▪  AstroCenter  ▪  AstroProjection  ▪  AstroGridLines  ▪  AstroGridLinesStyle  ▪  AstroZoomLevel

Geometric Computation »

AR/VR Support

ARPublish publish 3D graphics and geometries to AR devices

"USD", "GLTF" AR formats for mobile devices

Spline Regions »

High-fidelity geometric regions, compatible with CAD systems.

BezierCurve (updated), BSplineCurve (updated) now geometric regions

BSplineSurface (updated) now geometric regions

Mesh Regions »

MeshRegion (updated) now supports Polyhedron cells, allowing for honeycombs etc.

VoronoiMesh (updated) now supports 3D Voronoi decompositions

MeshRegion (updated), BoundaryMeshRegion (updated) now supports VertexNormals and VertexColors

Special Regions

GeodesicPolyhedron approximate balls from subdivision of Platonic polyhedra

CircumscribedBall minimal enclosing ball

InscribedBall maximum inscribed ball

SpherePoints (updated) return results with any specified precision

InfiniteLineThrough  ▪  CircularArcThrough

Region Reconstruction from Point Clouds

ReconstructionMesh can reconstruct 1D, 2D and 3D meshes from point clouds

EstimatedPointNormals estimate normals to points in a point cloud

GradientFittedMesh  (updated)   ▪  ConcaveHullMesh  (updated) 

Region Distances

RegionHausdorffDistance measure how different two regions are

RegionDistance (updated) the nearest distance between two regions

RegionFarthestDistance the farthest distance between two regions

Boolean & Morphological Operations

Dramatic performance and robustness improvements for 2D Boolean and morphological operations.

RegionUnion  (updated)   ▪  RegionIntersection  (updated)   ▪  RegionDifference  (updated)   ▪  RegionSymmetricDifference  (updated)   ▪  BooleanRegion  (updated)   ▪  RegionDilation  (updated)   ▪  RegionErosion  (updated) 

Spatial Relations

Dramatic performance and robustness enhancements for spatial relation computations.

RegionEqual (updated) improve equality testing for 2D polygonal regions

RegionDisjoint  (updated)   ▪  RegionWithin  (updated)   ▪  RegionCongruent  (updated)   ▪  RegionSimilar  (updated) 

System Integration

SpatialPointData can now be used for points in the geometry framework

Integrate (updated) improved performance and robustness when integrating over regions

Geometry Resources

More curated geometric regions and models

PolyhedronData (updated) 150+ new polyhedra, classes and properties

ResourceData (updated) new 3D geometric models

Import & Export

New and enhanced file formats of CAD, AR & VR, and 3D printing

"STEP", "IGES" standard industry CAD formats

"USD", "GLTF" AR formats for mobile devices

"OBJ" (updated) texture support

"STL" (updated) performance and robustness

"OBJ" (updated) support of vertex normals and colors

Graphics »

Graphics Primitives

Extension to enhance convenience and performance

Disk (updated) multi-disk specification

Graphics (updated), Graphics3D (updated) now accept images as a primitives


New graphics directives for effects in 2D

Blurring blur effect

DropShadowing drop shadow effect

Haloing halo effect


New graphics directives for lighting computation on 3D objects

FlatShading flat per face shading

GouraudShading smooth per vertex shading

PhongShading smooth per pixel shading

Texture Mappings

Support for automatic texturing and standard named texture mappings

TextureMapping specify named texture mappings

"Box"  ▪  "Cubic"  ▪  "Cylindrical"  ▪  "Front"  ▪  "Planar"  ▪  "Spherical"  ▪  "Stereographic"

Texture (updated) now supports named texture mappings

Annulus  (updated)   ▪  Ball  (updated)   ▪  BSplineSurface  (updated)   ▪  Circle  (updated)   ▪  Circumsphere  (updated)   ▪  Cone  (updated)   ▪  ConicHullRegion  (updated)   ▪  Cuboid  (updated)   ▪  Cylinder  (updated)   ▪  Disk  (updated)   ▪  Ellipsoid  (updated)   ▪  FilledTorus  (updated)   ▪  GraphicsComplex  (updated)   ▪  Hexahedron  (updated)   ▪  Parallelepiped  (updated)   ▪  Parallelogram  (updated)   ▪  Polygon  (updated)   ▪  Polyhedron  (updated)   ▪  Prism  (updated)   ▪  Pyramid  (updated)   ▪  Rectangle  (updated)   ▪  Simplex  (updated)   ▪  Sphere  (updated)   ▪  Tetrahedron  (updated)   ▪  Torus  (updated)   ▪  Triangle  (updated)   ▪  Tube  (updated) 


Interaction and Presentation

New dynamic highlighting capabilities for interactive exploration and static highlighting for presentations in static media such as books and articles.

Highlighted (updated) statically or dynamically highlight specific elements in visualization

PlotHighlighting set global highlighting effects for visualizations

Plot  (updated)   ▪  ListPlot  (updated)   ▪  ListLinePlot  (updated)   ▪  ParametricPlot  (updated)   ▪  DateListPlot  (updated)   ▪  LogPlot  (updated)   ▪  LogLogPlot  (updated)   ▪  LogLinearPlot  (updated)   ▪  ListLogPlot  (updated)   ▪  ListLogLogPlot  (updated)   ▪  ListLogLinearPlot  (updated)   ▪  DateListLogPlot  (updated)   ▪  StackedListPlot  (updated)   ▪  StackedDateListPlot  (updated)   ▪  ListStepPlot  (updated)   ▪  DateListStepPlot  (updated)   ▪  AbsArgPlot  (updated)   ▪  ReImPlot  (updated)   ▪  ComplexListPlot  (updated)   ▪  QuantilePlot  (updated)   ▪  ProbabilityPlot  (updated)   ▪  ProbabilityScalePlot  (updated)   ▪  SmoothHistogram  (updated) 

High-Dimensional Visualization

Plot all pairwise 2D projections of data.

PairwiseListPlot array of pairwise list plots

PairwiseDensityHistogram array of pairwise density histograms

PairwiseSmoothDensityHistogram array of pairwise smooth density histograms

Compare all 1D projections of data.

PairwiseQuantilePlot array of pairwise Q-Q plots

PairwiseProbabilityPlot array of pairwise P-P plots

Ternary Visualization

TernaryListPlot plot ratios of quantities

Scaling Functions

ScalingFunctions (updated) now supports nominal, ordinal and date scales

NominalScale pure labels of classes (red, green, blue, ...)

OrdinalScale ordered labels of classes (small < medium < large ...)

Scaling Support in Scalar Visualization Functions

ScalingFunctions (updated) added support in numerous scalar visualization functions

ContourPlot3D  (updated)   ▪  DateListLogPlot  (updated)   ▪  DensityPlot3D  (updated)   ▪  ListContourPlot3D  (updated)   ▪  ListCurvePathPlot  (updated)   ▪  ListDensityPlot3D  (updated)   ▪  ListLogLinearPlot  (updated)   ▪  ListLogLogPlot  (updated)   ▪  ListLogPlot  (updated)   ▪  ListPolarPlot  (updated)   ▪  ListSliceContourPlot3D  (updated)   ▪  ListSliceDensityPlot3D  (updated)   ▪  ListSliceVectorPlot3D  (updated)   ▪  ListSurfacePlot3D  (updated)   ▪  LogLinearPlot  (updated)   ▪  LogLogPlot  (updated)   ▪  LogPlot  (updated)   ▪  ParametricPlot  (updated)   ▪  ParametricPlot3D  (updated)   ▪  PolarPlot  (updated)   ▪  ProbabilityScalePlot  (updated)   ▪  RegionPlot3D  (updated)   ▪  RevolutionPlot3D  (updated)   ▪  SliceContourPlot3D  (updated)   ▪  SliceDensityPlot3D  (updated)   ▪  SliceVectorPlot3D  (updated)   ▪  SphericalPlot3D  (updated) 

Scaling Support in Vector Visualization Functions

ScalingFunctions (updated) added support in numerous vector visualization functions

LineIntegralConvolutionPlot  (updated)   ▪  ListLineIntegralConvolutionPlot  (updated)   ▪  ListStreamDensityPlot  (updated)   ▪  ListStreamPlot  (updated)   ▪  ListStreamPlot3D  (updated)   ▪  ListVectorDensityPlot  (updated)   ▪  ListVectorDisplacementPlot  (updated)   ▪  ListVectorDisplacementPlot3D  (updated)   ▪  ListVectorPlot  (updated)   ▪  ListVectorPlot3D  (updated)   ▪  StreamDensityPlot  (updated)   ▪  StreamPlot  (updated)   ▪  StreamPlot3D  (updated)   ▪  VectorDensityPlot  (updated)   ▪  VectorDisplacementPlot  (updated)   ▪  VectorDisplacementPlot3D  (updated)   ▪  VectorPlot  (updated)   ▪  VectorPlot3D  (updated) 


Updated default color function with a larger dynamic range.

ContourPlot  (updated)   ▪  DensityPlot  (updated)   ▪  ListContourPlot  (updated)   ▪  ListDensityPlot  (updated)   ▪  DensityPlot3D  (updated)   ▪  ListDensityPlot3D  (updated)   ▪  SliceContourPlot3D  (updated)   ▪  SliceDensityPlot3D  (updated)   ▪  ListSliceContourPlot3D  (updated)   ▪  ListSliceDensityPlot3D  (updated)   ▪  ComplexContourPlot  (updated)   ▪  DensityHistogram  (updated)   ▪  SmoothDensityHistogram  (updated)   ▪  ReliefPlot  (updated) 

Documentation & Learning

Updated details for better learning and commonly used graphics options.

Plot  (updated)   ▪  Plot3D  (updated)   ▪  ParametricPlot  (updated)   ▪  ParametricPlot3D  (updated)   ▪  ContourPlot  (updated)   ▪  ContourPlot3D  (updated)   ▪  DensityPlot  (updated)   ▪  DensityPlot3D  (updated)   ▪  ListPlot  (updated)   ▪  ListLinePlot  (updated)   ▪  ListPlot3D  (updated)   ▪  ListContourPlot  (updated)   ▪  ListContourPlot3D  (updated)   ▪  ListDensityPlot  (updated)   ▪  ListDensityPlot3D  (updated)   ▪  RegionPlot  (updated)   ▪  RegionPlot3D  (updated)   ▪  DiscretePlot  (updated)   ▪  DiscretePlot3D  (updated)   ▪  DateListPlot  (updated)   ▪  LogPlot  (updated)   ▪  LogLogPlot  (updated)   ▪  LogLinearPlot  (updated)   ▪  ListLogPlot  (updated)   ▪  ListLogLogPlot  (updated)   ▪  ListLogLinearPlot  (updated)   ▪  DateListLogPlot  (updated)   ▪  VectorPlot  (updated)   ▪  StreamPlot  (updated)   ▪  ListVectorPlot  (updated)   ▪  ListStreamPlot  (updated)   ▪  VectorPlot3D  (updated)   ▪  StreamPlot3D  (updated)   ▪  ListVectorPlot3D  (updated)   ▪  ListStreamPlot3D  (updated)   ▪  VectorDensityPlot  (updated)   ▪  StreamDensityPlot  (updated)   ▪  ListVectorDensityPlot  (updated)   ▪  ListStreamDensityPlot  (updated) 

PDE Modeling »

Symmetry Support »

DiffusionPDETerm (updated) (updated) now support "Axisymmetric" (cylindrical) symmetries

ConservativeConvectionPDETerm  (updated)   ▪  DerivativePDETerm  (updated)   ▪  LaplacianPDETerm  (updated)   ▪  HeatTransferPDEComponent  (updated)   ▪  MassTransportPDEComponent   (updated) SolidMechanicsPDEComponent  (updated)   ▪  LaplacianPDETerm  (updated)   ▪  PoissonPDEComponent  (updated)   ▪  HelmholtzPDEComponent  (updated)   ▪  WavePDEComponent  (updated) 

Partial Differential Equation Models »

SchrodingerPDEComponent model with the Schrödinger equation

FluidFlowPDEComponent model fluid flow, including non-Newtonian fluids

Laminar Flow monograph about modeling laminar flow

HeatTransferPDEComponent (updated) now supports thickness and cross-sectional areas

HeatTransfer (updated) new monograph sections on temperature-dependent heat capacity, heat transfer in multi-material media and phase change

Electromagnetics »

ElectrostaticPDEComponent model electrostatic systems

ElectricPotentialCondition  ▪  ElectricFluxDensityValue  ▪  ElectricSymmetryValue

Electrostatics monograph about modeling electrostatics

Nonlinear Solid Mechanics »

SolidMechanicsPDEComponent (updated) support nonlinear hypo- and hyperelastic material models and damping

SolidMechanicsStress  (updated)   ▪  SolidMechanicsStrain  (updated)   ▪  ...

Solid Mechanics (updated) monograph sections on damping, axisymmetric models, transversely isotropic linear elastic materials and non-orthogonal material orientation

Hyperelasticity monograph explaining MooneyRivlin, neo-Hookean, ArrudaBoyce, Yeoh and Gent hyperelastic material models; plane strain and stress variants; hyperelastic model calibration; multiplicative decomposition; multiple material models; transversely isotropic materials; and the standard reinforcing material model

PDE Application Models »

"Biaxial Tensile Test of Hyperelastic Tissue"  ▪  "Vascular Vessel"  ▪  "Hyperelastic Model Comparison"  ▪  "Hygroscopic Swelling"  ▪  "Quantum Ring"  ▪  "Passive Dew Condensers"  ▪  "Contactless Anemometer"  ▪  "Disc Brake"  ▪  "Heat Conduction in a Multilayer Sphere"  ▪  "Helmholtz Resonator"  ▪  "Spherical Capacitor"  ▪  "Tubular Reactor"  ▪  "Heat Exchanger"  ▪  "Buoyancy Driven Flow"

Graphs & Networks »

Graph Constructors

Easy-to-use graph constructors and layouts

LayeredGraph, LayeredGraph3D graph represented as a layered plot

TorusGraph torus graph

BuckyballGraph buckyball graph

Graph Operations

New set and arithmetic operations on graphs

GraphJoin complete union of graphs

GraphSum addition of graphs

GraphProduct products of graphs

"Cartesian"  ▪  "Conormal"  ▪  "Lexicographical"  ▪  "Normal"  ▪  "Rooted"  ▪  "Tensor"

Graph Resources

More curated graphs and predefined shapes for vertices and edges

GraphData (updated) 500+ new graphs, classes and properties

ResourceData (updated) string values of graph options

VertexShapeFunction  ▪  EdgeShapeFunction  ▪  GraphHighlightStyle

Documentation & Learning

Documentation updates with illustrations and more.

AcyclicGraphQ  (updated)   ▪  AdjacencyGraph  (updated)   ▪  AdjacencyMatrix  (updated)   ▪  BreadthFirstScan  (updated)   ▪  CompleteGraphQ  (updated)   ▪  ConnectedComponents  (updated)   ▪  ConnectedGraphComponents  (updated)   ▪  ConnectedGraphQ  (updated)   ▪  DepthFirstScan  (updated)   ▪  DirectedGraph  (updated)   ▪  DirectedGraphQ  (updated)   ▪  EdgeAdd  (updated)   ▪  EdgeConnectivity  (updated)   ▪  EdgeCount  (updated)   ▪  EdgeCoverQ  (updated)   ▪  EdgeDelete  (updated)   ▪  EdgeIndex  (updated)   ▪  EdgeList  (updated)   ▪  EmptyGraphQ  (updated)   ▪  FindClique  (updated)   ▪  FindCycle  (updated)   ▪  FindEdgeCover  (updated)   ▪  FindEdgeCut  (updated)   ▪  FindEdgeIndependentPaths  (updated)   ▪  FindFundamentalCycles  (updated)   ▪  FindGraphPartition  (updated)   ▪  FindHamiltonianCycle  (updated)   ▪  FindIndependentEdgeSet  (updated)   ▪  FindIndependentVertexSet  (updated)   ▪  FindMaximumCut  (updated)   ▪  FindMinimumCut  (updated)   ▪  FindPath  (updated)   ▪  FindShortestPath  (updated)   ▪  FindVertexCover  (updated)   ▪  FindVertexCut  (updated)   ▪  FindVertexIndependentPaths  (updated)   ▪  GraphCenter  (updated)   ▪  GraphComplement  (updated)   ▪  GraphDiameter  (updated)   ▪  GraphDifference  (updated)   ▪  GraphDisjointUnion  (updated)   ▪  GraphDistance  (updated)   ▪  GraphIntersection  (updated)   ▪  GraphPeriphery  (updated)   ▪  GraphRadius  (updated)   ▪  GraphReciprocity  (updated)   ▪  GraphUnion  (updated)   ▪  HamiltonianGraphQ  (updated)   ▪  IncidenceGraph  (updated)   ▪  IncidenceList  (updated)   ▪  IncidenceMatrix  (updated)   ▪  IndependentEdgeSetQ  (updated)   ▪  IndependentVertexSetQ  (updated)   ▪  IndexGraph  (updated)   ▪  KirchhoffGraph  (updated)   ▪  LoopFreeGraphQ  (updated)   ▪  MixedGraphQ  (updated)   ▪  MultigraphQ  (updated)   ▪  NearestNeighborGraph  (updated)   ▪  NeighborhoodGraph  (updated)   ▪  PathGraph  (updated)   ▪  PathGraphQ  (updated)   ▪  PlanarGraphQ  (updated)   ▪  ReverseGraph  (updated)   ▪  SimpleGraph  (updated)   ▪  SimpleGraphQ  (updated)   ▪  Subgraph  (updated)   ▪  TopologicalSort  (updated)   ▪  TreeGraph  (updated)   ▪  TreeGraphQ  (updated)   ▪  TreePlot  (updated)   ▪  UndirectedGraph  (updated)   ▪  UndirectedGraphQ  (updated)   ▪  VertexAdd  (updated)   ▪  VertexComponent  (updated)   ▪  VertexConnectivity  (updated)   ▪  VertexContract  (updated)   ▪  VertexCount  (updated)   ▪  VertexCoverQ  (updated)   ▪  VertexDegree  (updated)   ▪  VertexDelete  (updated)   ▪  VertexInComponent  (updated)   ▪  VertexInComponentGraph  (updated)   ▪  VertexInDegree  (updated)   ▪  VertexIndex  (updated)   ▪  VertexList  (updated)   ▪  VertexOutComponent  (updated)   ▪  VertexOutComponentGraph  (updated)   ▪  VertexOutDegree  (updated)   ▪  VertexReplace  (updated)   ▪  WeaklyConnectedComponents  (updated)   ▪  WeaklyConnectedGraphComponents  (updated)   ▪  WeaklyConnectedGraphQ  (updated) 

Importing & Exporting »

Import (updated) support for the "Summary" element for all formats

Document Formats »

"PDF" (updated) now can import positioned text, improved importing as vector graphics

"DOCX" Microsoft Word format import

"MOBI" Mobipocket ebook format import

Raster Formats »

"BioImageFormat" importing data and metadata of bio formats

"GIF" (updated) create smaller animated GIFs using global color maps and removing duplicate frames

"PNG"  (updated)   ▪  "HEIF"  (updated)   ▪  "OpenEXR"  (updated) 

Video Formats »

Support for subtitle import and export.

"MP4"  ▪  "QuickTime"  ▪  "Matroska"

Numerical & Scientific Formats »

"RData", "RDS" R data format family import

"SAV" (updated), "POR" (updated) now can specify missing values in export

"NetCDF" (updated) significant improvement in export

2D Graphics »

"SVG" (updated) new support for importing as an image or vector graphics and importing metadata

3D Graphics »

"USD" 3D graphics scene description format

"GLTF" 3D content transmission format

JSON-Related Formats »

"JSON" (updated) support to directly import as a Dataset

Geospatial Formats »

"GXF", "OSM" support for new formats of geographical data

External Services & Operations

ExternalEvaluate (updated) create and manage virtual environments for Python

ServiceDeploy (updated) deploy code or content to a hosted server



Window Toolbar add a new default toolbar

Graphics Convert To/From Canvas add a canvas over existing cells

Edit Preferences visual refresh of the preferences dialog

File New Package/Script display line numbers when editing packages and scripts

Edit Indent Selected Lines indent and outdent selected lines in a code block

() cleaner copy/paste to external applications

OutputSizeLimit (updated) the interface now provides buttons for storing the result in the notebook

AbsoluteOptions (updated) can resolve more 2D and 3D graphics options

Struckthrough represents a font with a strike-through line

Beep (updated) add the ability to provide a custom Why the Beep message

Input Assistance

Fuzzy autocompletion of symbols.

Typing & now flashes the scope of the pure function.

Package editor toolbar has been updated with new functionality.

Formatting & Typesetting

Elegant and Elegant Printout environments for elegant code formatting.

Squiggled add a wavy underline to text

Highlighted (updated) new option to control whether the head is removed when used as input

Bra, Ket, BraKet Dirac notation

DefaultFontProperties (updated) allows explicit specification of Wolfram font

Notebook Programming »

NotebookObject (updated), CellObject (updated) objects now use a second "instance" UUID to distinguish between objects with identical ExpressionUUID values

ActionMenu (updated) action menus now allow submenus

NotebookLocate (updated) support for locating line numbers in package files

NotebookWrite (updated) new syntax to allow writing before or after a BoxObject or CellObject


Cells (updated) extended to filter for cells with given counter settings or increments

CellFrame (updated) modify cell frame from the toolbar

Cell Divide Cell now divides selected cell brackets at hard line breaks

CellDingbatMargin control the placement of the cell dingbat

Question & Answer Interfaces

QuestionGenerator generates a random QuestionObject in a quiz

QuestionSelector serves a randomly selected QuestionObject in a quiz

Code Compilation & Data Structures


TypeDeclaration declare types for use in compiled code

CompiledExpressionDeclaration efficiently represent structured expressions

LibraryFunctionDeclaration directly call functions from dynamic libraries

FunctionDeclaration (updated) declare functions with declarations attached to a symbol

TypeSpecifier (updated) new compact type specification syntax

CompilerCallback define custom callback functions for user-defined types

Type Representation

ForAllType representation of a parameterized type

LiteralType representation of a literal value for use in types

TypeEvaluate representation of an evaluation to be performed while inferring types

SequenceType representation of a sequence of types

Compiled Functions

CreateTypeInstance create an instance of a type

Cast convert between types

TypeOf compute the type of an expression without evaluating it

InertExpression create an inert representation of an expression

InertEvaluate call the evaluator from compiled code

UnmanageObject manually manage memory of raw objects

ToRawPointer create a pointer for interacting with external libraries

FromRawPointer dereference a pointer for interacting with external libraries

KernelEvaluate evaluate expressions in a Wolfram Language kernel

Compiled Components

CompiledComponent a named group of compiler declarations and shared libraries built from the compiler

DeclareCompiledComponent add declarations to a compiled component

BuildCompiledComponent build a shared library for a compiled component

LoadCompiledComponent load and install components, such as a shared library, from a compiled component

Function Specification

DownValuesFunction use definitions attached to a symbol when compiling code

FunctionCompile (updated) simplified specification of a function named in the compiler environment

Migration from Evaluated to Compiled Code

TypeHint specify a type inside the body of a function

IfCompiled specify different code for evaluated and compiled processing

Compiled Types

"ByteArray" one-dimensional array of bytes

Data Structures

"ExprStruct" a representation of an expression that can be modified without evaluation

"CuckooFilter" test whether elements are definitely not members

"SortedKeyStore" store of sorted keys and values

"BitVector" enhanced with new operations and faster deserialization

"BloomFilter" enhanced with new operations and faster deserialization

"RedBlackTree" balanced binary search tree for fast storage and retrieval

"StringVector" highly optimized store for a vector of strings

Enhancements in Compiler Operations

Improved compilation speed of the compiler by compiling more of the compiler

Improved performance of compiled code by optimizing memory management operations

Improved performance of compiled code by optimizing code to iterate through data structures

Improved performance of compiled code by improving inlining of nested functions

Improved compilation speed of the compiler by compiling more of the compiler.

Improved performance of compiled code by optimizing memory management operations.

Enhanced compilation of DownValues that avoids compiling values that do not match a type.

Functions Enhanced by the Compiler

Until  ▪  NumericArray  ▪  SparseArray  ▪  KroneckerDelta  ▪  Ceiling  ▪  Floor  ▪  Round  ▪  GCD  ▪  LCM  ▪  Depth  ▪  RankedMin  ▪  RankedMax  ▪  FactorInteger  ▪  IntegerDigits  ▪  Subsets  ▪  Tuples  ▪  Union

ByteArray  ▪  ByteArrayQ  ▪  ByteArrayToString  ▪  StringDrop  ▪  StringJoin  ▪  StringTake  ▪  StringToByteArray

MapThread  ▪  StringTake  ▪  DownValuesFunction

Foreign Function Interface »

Foreign Functions

ForeignFunctionLoad load a function from a dynamic library

ForeignPointerLookup get the pointer to a function in a dynamic library

ForeignFunction a function that calls into a dynamic library

CreateForeignCallback  ▪  ForeignCallback

Raw Memory Operations

RawMemoryAllocate allocate raw memory of a given type

RawMemoryFree free raw memory

RawMemoryRead read values from raw memory

RawMemoryWrite  ▪  RawMemoryImport  ▪  RawMemoryExport

Managed Objects

CreateManagedObject create a memory managed object

ManagedObject  ▪  UnmanageObject

Raw Pointers

RawPointer a raw pointer to a typed memory address

OpaqueRawPointer  ▪  NullRawPointerQ