Releases: penguian/glucat
glucat-0.13.0
2025-03-02: 0.13.0
GluCat 0.13.0 has improved configuration and testing.
-
Unused local typedefs have been removed from the C++ code.
-
The deprecated configuration option
./configure --with-eig=bindings
has been removed. -
The ability to build PyClical without Cython has been deprecated and will be removed in future versions.
-
The configuration option
./configure --with-qd
has improved configuration tests. -
The ./configure script adds g++ compiler options to ensure that FMA is used consistently on hardware that implements AVX512 instructions.
-
The
pyclical/setup_ext.py
andpyclical/setup_nocython.py
scripts have been refactored. -
The Python demo code has been brought up to date.
-
The installation script
pyclical/demos/kubuntu-24-conda-install-mayavi.sh
and the environment scriptpyclical/demos/kubuntu-24-mayavi-env.sh
have been added to simplify the installation and running of the Mayavi-based plotting demos on Kubuntu 24.10.
For details of changes, see either the ChangeLog
file or the git log in https://github.com/penguian/glucat and its clones.
release_0_12_1
What's Changed
- Add .devcontainer for GitHub Codespaces by @penguian in #50
- Bring the repository up to date with respect to toolchains, Cython, Python by @penguian in #51
Full Changelog: release_0_12_0...release_0_12_1
glucat-0.11.0
What's Changed
Full Changelog: release_0_10_1...release_0_11_0
glucat-0.12.0
What's Changed
- Add blaze as an option for finding eigenvalues by @penguian in #47
- Overhaul sqrt and log functions by @penguian in #48
Full Changelog: release_0_11_0...release_0_12_0
glucat-0.10.1
2022-02-19: 0.10.1
Some GluCat configuration options have been deprecated.
The following configuration options are deprecated as of GluCat 0.10.1
and will be removed in future releases. See INSTALL
for details.
--enable-check-isnan check for NaN values at various places in the code
--with-stdlib[=ARG] C++ standard library to use (libcxx|libstdcxx)
--with-map[=ARG] type of map to use (map|stdunordered)
--with-dense-mat use dense matrices
--with-random[=ARG] type of random number generator to use (std|gsl)
--with-pool-alloc use Boost Pool allocator
glucat-0.10.0
GluCat 0.10.0 introduces a change in the way that the headers are to be used. Instead of
#include "glucat/glucat.h"
#include "my_tuning.h"
#include "glucat/glucat_imp.h"
with my_tuning.h
containing a definition of Tune_P
, the tuning policy class, you are expected to use
#include "glucat/glucat.h"
#include "glucat/glucat_imp.h"
#include "my_tuning.h"
with my_tuning.h
containing a definition of the tuning policy class that you are using as a template parameter.
See README
for details.
Also:
- The
./configure
script has been refactored. - Successfully running
./configure --with-eig=binding
requires a Fortran compiler. - The Python scripts used to build the PyClical extension module now use
setuptools
rather thandistutils
.
glucat-0.9.0
GluCat has revised promotion, truncation and printing
GluCat 0.9.0 introduces some changes that improve usability of the results, but produce bit-for-bit different output when compared to previous versions.
- Promotion of
Scalar_T
now increases the number of floating point mantissa bits on all tested architectures, including ARM v8. Demotion is the reverse. - The default limit for the
truncated()
member function is nowstd::numeric_limits<Scalar_T>::epsilon()
. - The constructor from
framed_multi<>
tomatrix_multi<>
now uses the default truncation before the transform, and the constructor frommatrix_multi<>
toframed_multi<>
uses the default truncation after the transform. - The truncation of output via
operator<<()
now depends onostream
precision()
. Seetest17
for examples.
Some GluCat classes now have new member functions.
clifford_algebra<>
, framed_multi<>,
matrix_multi<>:
isinf(),
operator-=()`.index_set<>
reference
:operator==()
.
The function isinf()
has also been added to matrix.h
and matrix_imp.h
.
GluCat header code is now modernized. Compilation now requires C++11.
What's Changed
- Modernize C++ header code by @penguian in #19
- Make headers more self-contained by @penguian in #21
- Make promotion monotonic: add glucat/promotion.h by @penguian in #23
- Fix clang-tidy bugprone issues by @penguian in #25
- Add multivector isinf to match isnan by @penguian in #27
- Add multivector isinf to match isnan -- final 3 commits by @penguian in #29
- Update branch to match updated master by @penguian in #30
- Make default truncation depend on scalar type by @penguian in #31
- Issue 32 use truncation in transforms and printing by @penguian in #33
- Issue 34 use range based for loops by @penguian in #35
- Update test results and documentation for version 0.9.0 by @penguian in #37
Full Changelog: https://github.com/penguian/glucat/commits/release_0_9_0