Math.NET aims to provide a self contained clean framework for symbolic mathematical (Computer Algebra System) and numerical/scientific computations, including a parser and support for linear algebra, complex differential analysis, system solving and more
Grab it here: http://community.opensourcedotnet.info/files/folders/mathnet/entry56036.aspx
See also:
http://mathnet.opensourcedotnet.info/doc/Releases.ashx
New releases have not been published here on SourceForge, but on our new home instead:
http://mathnet.opensourcedotnet.info/
There you'll find e.g. release 8 from march 2007, and also our new subversion source code repository.
See you there!
Chris
The last news entry was posted years ago. What's going on?
A LOT. Although there are no releases yet, Yttrium is progressing well and we'll probably see the first release this year. Yttrium? Ah yes, I didn't introduce it here yet. Check out the reorganized Math.NET project website for details:
http://www.cdrnet.net/projects/nmath/
or my personal Math.NET project blog (sorry, still german only - I may add an english version on request):... read more
I'm about to drastically improve the usability of the Math.NET API. For example, I'll add some new methods to the the operator base classes:
For example, z1 and z2 are two complex numbers. We need to store the negative product of those numbers into z3.
old solution:
IComplexExpression z3 = new ComplexNegative(context,new ComplexMultiplication(context,z1,z2));
new solution:
IComplexExpression z3 = z1.Multiply(z2).Negate();... read more
The Math.NET library (starting from the coming release 0.18) is compatible to the Compact Framework and runs at least on new devices coming with PocketPC 2003 aka Windows Mobile 2003. There'll be small PocketPC GUI symbolic calculator in combination with a Graphing Tool available in release 0.18.
There have been some important bugs in the last release 0.17. To avoid this in future and to improve the quality in general, I started to write unit test for the Math.NET library using the great NUnit framework.
At least each second line of code has changed in this release if not more: Math.NET got a completely new and much cleaner inheritance structure. As a side effect of this upgrade there are a lot new features:
- Improved variable behaviour of structure types
- much cleaner expression simplification
- new expression expand and safeexpand method
- expression substitution support
- derive and integrate to complex variables (for holomorph functions)
- all operators are now bound to a mathematical context
- variable managers are now context bound -> no more static stuff, allowing isolated parallel 'sessions'
- NDoc generated Reference
- ...
what's new:
- Basic Integration support
- Literal Support
- Simplification improved
- fixes and small upgrades...
The current cvs version (and coming release 0.15) now supports an experimental basic implementation of some basic integration algorithms.
beside of lots of small improvements and fixes as usual, this time there are also some more interesting changes:
- Functional Operators:
map(a*ln(a),a,[0,1,x,exp(x)])
=> [0,0,x*ln(x),exp(x)*x]
reduce(a+2*b,a,b,[x1,x2,x3,x3])
=> x1+2*(x2+2*(x3+2*x4))
sum((x+y)^2,x,0,2)
=> y^2+(1+y)^2+(2+y)^2
- Derive Operator and Taylor Approximation (Jet)
d(sin(x),x,2)
=> -sin(x)
jet(exp(a),a,0,x,5)
=> 1+x+x^2/2+x^3/6+x^4/24+x^5/5!
jet(sin(a),a,0,x,5)
=> x-x^3/6+x^5/5!
jet(sin(a),a,0,x,n)
=> sum((x^k*d(sin(a),a,k))/k!,k,0,n)... read more
- Parser Subsystem Redesign
-> Priority Parser Bug (submitted in 09.2002) finally FIXED!
-> No more known bugs at the moment.
- Some new Trigonometry Simplification Maps
btw: release 1.0 (final) is comming soon...
variable subsystem drastically improved. now able to store any expression (even matrices) in variables. -> new: assignment operator ":".
Now supporting complex linear algebra (Vectors and Matrices), additional to the existing scalar linear algebra implementation. Additionally there are lots of small improvements and some new operators like LogicImplication. And, yes, this is the first release based on the new namespace and folder/file structure I mentioned in the previous news post...
As Math.NET became bigger and bigger, it really was time for a file and namespace structure cleanup. All the stuff that is needed by custom types and operators now is in the new CORE namespace. All about scalars is now in a new scalar subdirectory; the same with the parsing stuff. Beside of that, some big files like the parsing ones are now splitted.
update your cvs checkout or download the (coming) release 0.10 to get the new bits...
I switched to the FreeBSD license for this and all future releases istead of the too restrictive GPL license. Math.NET is now also open for proprietary software projects.
New:
- linear algebra package: solving regular and nonregular linear systems
- advanced term simplification
Using the new conversion map system, the library is now able to simplify even more complex expressions. Beside of this, the new system is also a framework for other tasks like the conversion from trigonometric to exponential expressions.
(available in CVS or release 0.9)
The LinearAlgebra package now also supports:
- MatrixDeterminant
- GaussianElimination
- ForwardSubstitution
- BackwardSubstitution
- LR Split
- Solve regular (square) linear systems
- Solve irregular linear systems (introducing new parameters if needed)
- Norms
- etc.
(available in cvs or release 0.9)
what's new?
- New Vector/Matrix/Tensor Architecture supporting clean Vector and Matrix Algebra.
- Logic Algebra: and, or, not, nand, nor, xor, xnor
- Improved Basic Simplification
- general code cleanup and lots of minor changes...
I just implemented basic logic algebra supporting:
and, or, not, nand, nor, xor, xnor
check out the CVS subfolder "Logic" ...
I plan to have the following fixes/upgrades/features implemented into the final 1.0 wich will be release soon:
- Priority Classes (instead of discreet unique priorities)
- domain/image/range based operator/function definitions (supporting derivation)
- Identity Maps (for term manipulation, enhanced simplification, etc.)
- Full Linear Matrix Algebra (maybe vector room based system, replacing current vector/matrix implementation)
- Logic Algebra
- general code cleanup... read more
major changes:
*** New: Differential Math ***
Differential Math is now supported by Math.NET. It's able to differentiate any given scalar expression to a given variable (usually x). For example, if you request the following expression (containing Sekans, Trigonometry) differentiated to x:
sec(x^(x+2)-y)
it returns the following:
(sec((x^(x+2))-y)*tan((x^(x+2))-y))*((x^(x+2))*(ln(x)+((x+2)/x)))... read more
major changes:
*** Full Complex Support ***
Math.NET now supports complex numbers using the I notation. For example, you can work with expressions like:
- 2+I*3
- (2+I)/(I*4)
- sin(2*I)
- exp(I)
- |1+I*2| (| = Absolute)
*** New: INFIX Parser ***
Now you can parse/evaluate string expressions just as given above directly using the new Infix Parsing Provider. It also supports parsing Matrices, Lists, etc.... read more