Noteworthy changes are documented in this file.
v3.0.0 - 2023-11-11
-
Java 11 required
-
Maven modules matheclipse-parser, matheclipse-logging, matheclipse-core are LGPL licensed
-
Maven modules matheclipse-gpl and dependents are GPL licensed
-
function documentation: symja_android_library/doc/function
-
new function
DedekindNumber
for first 0..9 Dedekind numbers -
Renamed ISignedNumber (Symja 2.x) interface to IReal (Symja 3.x) interface
-
Renamed methods
evalComplex->evalfc
andevalDouble->evalf
-
improved NIntegrate with
GaussKronrod
method (Maven dependencyde.labathome
AdaptiveQuadrature
-
Hypergeometric2F1
uses apfloat algorithm fordouble
andComplex
values -
EvalEngine#evalDouble()
returnsPOSITIVE_INFINITY, NEGATIVE_INFINITY
forInfinity, -Infinity
-
use eclipse-temurin:21_35-jre in JIB Docker script
-
improve
PolynomialHomogenization
with a Cos/Sin transform to find more solutions -
implement SawtoothWave (#783)
-
improved
Arg, ApplySides, Association, Assumptions, Bessel..., Binomial, BooleanFunction, Cancel, Carlson..., Catalan, CatalanNumber, CholeskyDecomposition, Chop, Complement, ComplexExpand, Count, CorrelationDistance, CosineDistance, D, Derivative, Drop, EigenValues, Eigenvectors, EllipticF, EllipticPi, FactorTerms, FindLinearRecurrence, Function, FunctionExpand, FullSimplify, GCD, Glaisher,Grad, HankelH1, HankelH2, HarmonicNumber, HermiteMatrix, HurwitzZeta, Hypergeometric..., Identity, IdentityMatrix, Import, ImportString, IntegerDigits, Intersection, Interval..., Khinchin, Limit, LinearRecurrence, ListConvolve, ListCorrelate, LogisticSigmoid, MantissaExponent, MapIndexed, MathMLForm, Max, Min, Minors, NMinimize, NestList, NestWhile, NestWhileList, NMaximize, NSolve, OrderedQ, Orthogonalize, PiecewiseExpand, PolyGamma, PowerExpand, PossibleZeroQ, Product, Projection, Quantity, RandomVariate, Range, ReleaseHold, Round, SatisfiabilityInstances, Simplify, Sign, Solve, SphericalHankelH1, SphericalHankelH2, StieltjesGamma, StringSplit, Subfactorial, Sum, Surd, TagSet, TagSetDelayed, Take, TakeLargestBy, TakeSmallestBy, TeXForm, TimeConstrained, Together, Unitize, Union, Zeta
function -
new functions:
Adjugate, DeleteMissing, Eigensystem, FromSphericalCoordinates, HermiteH, JacobiP, NumericalOrder, NumericalSort, PrincipalComponents, RealValuedNumericQ, ReIm, SawtoothWave, StringForm, ToSphericalCoordinates
with statusPARTIAL
support -
new functions:
ClebschGordan, ThreeJSymbol
with statusEXPERIMENTAL
support -
use hipparchus
PowellOptimizer
for non-linear functions inNMinimize,NMaximize
-
new function
PearsonCorrelationTest
for two vectors -
icu4j library moved from Maven module
matheclipse-io
to new modulematheclipse-nlp
-
implemented
CompleteBipartiteGraphGenerator
in functionCompleteGraph
-
improved
N
function forRule, RuleDelayed
andAssociation
arguments (#824) -
define parser input
\[ExponentialE]
asE
-
improved
TeXForm
forEulerE
-
decoupled rules creation from symbol creation in
RulePreprocessor
implementation -
improved
LinearModelFit
for vector inputs -
improved performance for
Nest, NestWhileList
-
built-in functions can have an
ImplementationStatus
-
fix bug in
Refine
forSin, Csc
-
improved
LaplaceTransform
andInverseLaplaceTransform
with numerical calculations -
define new
TeXParser
class based on SnuggleTeX implementation -
use choco solver for solving
Integers
domain equations inSolve
-
added
GenerateConditions->True
option to Solve (especially for trigonometric functions) -
new class MD2Symja - render Markdown to HTML
-
implemented PrecedenceForm, Infix, Prefix, Postfix
-
new opened/closed ends interval data object
IntervalData({min-value, Less/LessEqual, Less/LessEqual, max-value})
-
implemented
NormalMatrixQ, FourierDCTMAtrix, FourierDSTMatrix
-
implemented
AASTriangle, ASATriangle, SASTriangle,SSSTriangle
-
new
ArcLength, Area, Perimeter, Volume
functions -
use github.com/jsxgraph/json2D_JSXGrap for 2D
Graphics, DiscretePlot, ListLinePlot, ListPlot, LogPlot, LogLogPlot, LogLinearPlot, ListLogPlot, ListLogLinearPlot, ListLogLogPlot
objects -
new
TrigSimplifyFu
function (#498) -
new
TransformationFunction, RotationTransform, ScalingTranform, ShearingTransform, TranslationTransform
(#583) -
new
SequenceCases, SequenceReplace, SequenceSplit
-
SymjaBot - Discord bot
-
new
KroneckerProduct, Hyperfactorial, LowerTriangularMatrixQ, UnitaryMatrixQ, UpperTriangularMatrixQ
-
new
CoordinateBounds, ArrayFlatten, HessenbergDecomposition, SchurDecomposition
-
implemented multivariate Newton’s method in the
FindRoot
function (#566) -
new
ModularInverse, CompositeQ, ConvexHullMesh, CoordinateBoundingBox, QuantityUnit, PadeApproximant, FactorTermsList
-
new
BooleanFunction
(#527) -
jbang enablement (#515)
-
new
FactorialPower, LerchPhi, HurwitzLerchPhi, Hypergeometric1F1, HypergeometricPFQ
-
implemented Kryo serializer and deserializer (#514)
-
new
InverseJacobi...
functions (#501)
v2.0.0 - 2022-03-12
- Java 11 required
- first Maven Central release (contributed by @HannesWell)
- Maven modules matheclipse-parser, matheclipse-logging, matheclipse-core are LGPL licensed
- Maven modules matheclipse-gpl and dependents are GPL licensed
- Symja script engine moved to Maven module matheclipse-script
- unified/refactored logging - moved basics into new matheclipse-logging Maven module (contributed by @HannesWell)
- new matheclipse-jar Maven module to create docker container: https://hub.docker.com/r/symja/symja-2.0
- new matheclipse-discord Maven module for a discord bot based on
Discord4J
- improved graphical output in browser apps: https://github.com/axkr/symja_android_library/wiki/Browser-apps
- browser app Javascript graphics now contains a
jsfiddle
button to analyze the generatedjsxgraph
,mathcell
andplotly
iframe sources. - improved JSON API: https://github.com/axkr/symja_android_library/wiki/API
- pattern-matching made more compatible with Mathematica pattern-matching
- improved rationalization of Java
double
numbers inRationalize
- improved
FindMinimum, FindMaximum, FindRoot
- new
IAST
interface implementationASTRRBTree
uses "structural sharing" similar like collections in Scala or Clojure for example for improvedExpand
performance for very large expressions. - new functions:
BioSequence, BioSequenceQ
- new functions:
ApplySides, AddSides, DivideSides, MultiplySides, SubtractSides
- improvements for expressions objects:
Association, Dataset, Graph, Quantity, SparseArray
- improvements in
PiecewiseExpand, PossibleZeroQ, Solve, Eliminate, FunctionExpand, FullSimplify
functions - new
CarlsonRD, CarlsonRF, CarlsonRG, CarlsonRJ,...
functions - uses mathics-threejs-backend for
Graphics3D, ListLinePlot3D, ListPointPlot3D, ListPlot3D
functions: https://github.com/Mathics3/mathics-threejs-backend (contributed by @TiagoCavalcante) - improved JSON for
ImportString, ExportString
- improved String Regex functions for example in
StringSplit, StringReplace
functions - uses Janino compiler for
Compile
function: https://github.com/janino-compiler/janino; improvedCompilePrint
function