Releases: lionmage/tungsten-types
Tungsten Types 2025 New Year Edition
Many more bug fixes and optimizations are on deck, of course. The biggest new feature is the addition of simple continued fractions implementing the RealType
interface. Simple continued fractions (SCFs) can represent irrational values exactly, and have the virtue of performing calculations on a term-by-term basis. Most basic arithmetic operations are implemented using Gosper's algorithm.
Other new features include:
- Jordan matrix support
- ANSI text effects for basic highlighting of text output (e.g., bold, italic, colored background)
- Refinements to
MegaConstant
(obtaining factors of a given N) - An adapter iterator,
RationalCFTermAdapter
, which converts anyRationalType
into a sequence of continued fraction terms - More Javadoc (and more descriptive, too!)
Full Changelog: R0.4...R0.5
Tungsten Types 0.4 No Longer Wearing White Edition
There are several refinements and new features since the last release.
- Trig functions for matrices: sine, cosine, arcsine, arccosine
- Improved complex number handling for matrices
- Aggregate or "mega" constants
- Improved natural log and exponential for 2×2 matrices
- Fixes to existing functions, making them less reliant on hackery to discover a type parameter
- New functions: sinc, Gamma
- The log-Gamma function, implemented using Stirling's method
Tungsten Types 0.3 Yuletide Edition
There are several noteworthy improvements in this release:
- Substantial Javadoc enhancements, including package-level documentation.
- The ability to read a matrix from a text file. See this site to generate matrices as an example.
- Fixes and behavioral enhancements for AngularDegrees.
- Added a new PrimeNumbers Set, and enhanced FibonacciNumbers.
- Fixed the Strassen/Winograd algorithm implementation for multiplying very large matrices.
- Added a new SteppedRange, an iterable Range for real values. It sports a custom Spliterator implementation and fully supports parallelism.
Happy Yule!
Release 0.2
Release 0.2 — Now with more features and stability!
In addition to copious bug fixes and tweaks to how type mismatches are resolved, the following were added or improved:
- An efficient generator for Bernoulli numbers! It outputs exact rational values, not decimal approximations.
- An accurate implementation of the Riemann zeta function.
- A refined approximation of the Gamma function near zero.
- Efficient LU decomposition of square matrices.
- LDU decomposition of block matrices.
- A convenient way to generate block diagonal matrices.
- There's now a method to compute the nth root of a matrix (currently only implemented for diagonal and upper-triangular matrices)
- New methods to trim row and column vectors to a given length.
- Now handling binomial coefficients for negative n values.
- Threading improvements in key methods, specifically
trimTo()
andcopy()
on list-based row and column vectors.
... and as always, no external dependencies. Be sure to snag the doc JAR and marvel at how complete my method and class documentation really is.
Tungsten Types 0.1
This is the initial release of library JARs for tungsten-types. It is very incomplete still, but many components are tested and very much usable.