xerus issueshttps://git.hemio.de/xerus/xerus/-/issues2019-06-17T14:21:52+02:00https://git.hemio.de/xerus/xerus/-/issues/259`HTNetwork::move core` does not work for networks of degree 12019-06-17T14:21:52+02:00Philipp Trunschke`HTNetwork::move core` does not work for networks of degree 1Version 4.0RoteKekseRoteKeksehttps://git.hemio.de/xerus/xerus/-/issues/251Bug with fenics and mkl2019-04-10T15:29:08+02:00Philipp TrunschkeBug with fenics and mkl```
OS: openSUSE Leap 42.3
MKL Info:
Major version: 2019
Minor version: 0
Update version: 1
Product status: Product
Build: 20180928
Platform: Intel(R) 64 architectur...```
OS: openSUSE Leap 42.3
MKL Info:
Major version: 2019
Minor version: 0
Update version: 1
Product status: Product
Build: 20180928
Platform: Intel(R) 64 architecture
Processor optimization: Intel(R) Advanced Vector Extensions (Intel(R) AVX) enabled processors
================================================================
```
[Working example is attached.](/uploads/657409540901107570a60a2d1a340483/xerus___dolfin___libmkl___buggy.py)Version 4.0https://git.hemio.de/xerus/xerus/-/issues/244dropping support for GCC 4.8 and below2019-03-23T18:25:11+01:00Fuchsi*dropping support for GCC 4.8 and belowanother point of discussion:
- with commit 8d55ef3e I broke compatibility with GCC 4.8.1 and below (which will once again show an internal segfault during compilation) for better readability esp. of typedefs for function pointers. (this ...another point of discussion:
- with commit 8d55ef3e I broke compatibility with GCC 4.8.1 and below (which will once again show an internal segfault during compilation) for better readability esp. of typedefs for function pointers. (this could be circumvented by reverting the two using declarations inside the Tensor class)
- the warnings about deprecated function will only work with GCC >= 4.9
- GCC 4.9 was released 5 years ago next month. even debian oldstable uses it as the default - so the need to support even older compilers seems to be rather low imho.Version 4.0https://git.hemio.de/xerus/xerus/-/issues/241indentation cleanup2019-03-24T04:17:06+01:00Fuchsi*indentation cleanupwe had consistently used tabs instead of spaces for indentation. It seems, that everyone using spaces wants them to act as tabs anyways and sets up the IDE to treat them as such. (eg. you never want to indent 3 instead of 4 spaces, so pr...we had consistently used tabs instead of spaces for indentation. It seems, that everyone using spaces wants them to act as tabs anyways and sets up the IDE to treat them as such. (eg. you never want to indent 3 instead of 4 spaces, so pressing backspace once you expect to remove all 4 spaces)
It seems this was (deliberately...) destroyed by commits like 1ce2f25a . I vote towards reverting this (and similar) commits.
If there is a good argument for spaces over tabs we can also have a vote over what should be used or similar, but i think we should have a uniform style in the code.
@trunschk @Baum @RoteKekseVersion 4.0https://git.hemio.de/xerus/xerus/-/issues/239Changelog update2019-03-20T12:24:01+01:00RoteKekseChangelog updateVersion 4.0https://git.hemio.de/xerus/xerus/-/issues/233UQADF Documentation2019-03-20T11:44:37+01:00RoteKekseUQADF DocumentationVersion 4.0Philipp TrunschkePhilipp Trunschkehttps://git.hemio.de/xerus/xerus/-/issues/229Add Arpack Installation Description2019-04-12T11:15:37+02:00RoteKekseAdd Arpack Installation Description```
./configure --prefix=<installation-path> F77=gfortran --enable-icb
``````
./configure --prefix=<installation-path> F77=gfortran --enable-icb
```Version 4.0RoteKekseRoteKeksehttps://git.hemio.de/xerus/xerus/-/issues/228Tidy up UQ ADF2019-06-16T20:37:18+02:00Sebastian WolfTidy up UQ ADFIt looks like there is quite a bit of redundancy in the functions offered for UQ. In particular, I don't think the UQMeasurementset is currently very useful. Either we should extend it and offer it for all algorithms, or get rid of it an...It looks like there is quite a bit of redundancy in the functions offered for UQ. In particular, I don't think the UQMeasurementset is currently very useful. Either we should extend it and offer it for all algorithms, or get rid of it and always use separate vectors of parameters/positions and solutions (or a `std::pair` thereof).
However, since I am not the one currently using this algorithm (and don't know what all the new functions do) I don't want to change it more than I already did. @trunschk can you have a look at it?
**Update:**
- [ ] replace `UQMeasurementset` by the two vectors of rank-1 measurements and their corresponding values
- [ ] add convenience functions that evaluate a given basis at given points and return the two vectors of rank-1 measurements and values
- [ ] remove the `dimensions` argument from `uq_ra_adf`
- [ ] define `uq_ra_adf_iv` as overloaded version of `uq_ra_adf`
- [ ] clean up the interface for `uq_ra_adf`Version 4.0Philipp TrunschkePhilipp Trunschkehttps://git.hemio.de/xerus/xerus/-/issues/223Release Version 4.0.02019-06-21T15:10:28+02:00Fuchsi*Release Version 4.0.0**Blocked by issues:**
- #225
- #222
- #221
- #220
- #219
- #215
- #212
- #11
**On the day of release:**
- [x] remove deprecated branches in repository
- [ ] ensure Changelog is up to date
- [ ] update VERSION file
- [ ] create...**Blocked by issues:**
- #225
- #222
- #221
- #220
- #219
- #215
- #212
- #11
**On the day of release:**
- [x] remove deprecated branches in repository
- [ ] ensure Changelog is up to date
- [ ] update VERSION file
- [ ] create release commit and tag it (update its description in gitlab!)Version 4.0https://git.hemio.de/xerus/xerus/-/issues/193Tutorials2019-06-17T14:23:06+02:00Fuchsi*Tutorials- [x] basic layout of the library and nomenclature
- [X] how to build xerus
- [X] quick-start
- basic usage tutorials
- [x] tensors (creation, modification etc.)
- [x] indices and equations
- [x] solve and decompositions
-...- [x] basic layout of the library and nomenclature
- [X] how to build xerus
- [X] quick-start
- basic usage tutorials
- [x] tensors (creation, modification etc.)
- [x] indices and equations
- [x] solve and decompositions
- [ ] TTTensors
- [ ] ALS and PerformanceData
- [ ] IHT and ADF
- [ ] TensorNetworks and arbitrary contractions
- [ ] TTTangentVectors and riemannian algorithms
- advanced tutorials
- [x] optimizing your program
- [X] debugging with xerus
- examples
- [x] quickstart
- [x] als
- [x] cascade
- [ ] some tensor completion (ie to integrate a low-rank approximable function)
- [ ] geodesics? (or something else with riemannian tangent vectors)Version 4.0RoteKekseRoteKeksehttps://git.hemio.de/xerus/xerus/-/issues/186tests for python-interface2019-06-13T12:57:05+02:00Fuchsi*tests for python-interfaceTo ensure that the python wrapper works as intended we should write a number of unittests in python. As any of these tests also test the library itself it might be worthwhile to replace a larger portion of the unittests with a python var...To ensure that the python wrapper works as intended we should write a number of unittests in python. As any of these tests also test the library itself it might be worthwhile to replace a larger portion of the unittests with a python variant.
One aspect should be a comparison to numpy-results.
Current errors in the pybind11-bindings:
- [x] `xe.Tensor(xe.TTTensor([2]))` raises `ValueError`
- [x] segfault in `test_pickle.py` with python2-bindingsVersion 4.0https://git.hemio.de/xerus/xerus/-/issues/40coding conventions & instructions on how to create a pull request2019-04-01T02:36:43+02:00Fuchsi*coding conventions & instructions on how to create a pull requestto allow others to contribute we should explain our coding standards, eg:
naming schemes arguments with _, function_names, variableNames, Classes, etc.etc.to allow others to contribute we should explain our coding standards, eg:
naming schemes arguments with _, function_names, variableNames, Classes, etc.etc.Version 4.0Sebastian WolfSebastian Wolfhttps://git.hemio.de/xerus/xerus/-/issues/243The runtime of unittests2019-04-05T01:21:15+02:00Sebastian WolfThe runtime of unittestsAs there were some complains about the runtime of the unit-tests by @example, we should probably discuss how to deal with those.
Personally I am fine with a runtime of ~5min, but this of course depends on hardware and style of working....As there were some complains about the runtime of the unit-tests by @example, we should probably discuss how to deal with those.
Personally I am fine with a runtime of ~5min, but this of course depends on hardware and style of working. Also using e.g. Valgrind increase the runtime to currently ~30min. Still I don't think we should remove working test-cases on which people spend time to implement just because they take time to run. So I would suggest to split the unit-tests in a "quick" and a "long" category such that people without time and/or without fast hardware can run a reduced subset of the tests (e.g. all unit test which typically require less than 0.5s)?Version Xhttps://git.hemio.de/xerus/xerus/-/issues/194improve speed of Ax=b solve operations for matrices2017-05-09T16:42:09+02:00Fuchsi*improve speed of Ax=b solve operations for matricesperform checks similar to matlab: https://de.mathworks.com/help/matlab/ref/mldivide.html
for dense matrices:
- [X] not square operator -> use QR or SVD
- [ ] implement check & solver for permuted triangular matrices
- [x] not Hermi...perform checks similar to matlab: https://de.mathworks.com/help/matlab/ref/mldivide.html
for dense matrices:
- [X] not square operator -> use QR or SVD
- [ ] implement check & solver for permuted triangular matrices
- [x] not Hermitian -> LU solver
- [x] all positive / all negative diagonal -> try cholesky
- [X] default to LDL solver otherwise
for sparse:
- [ ] check for diagonality -> scale input
- [ ] check bandwidth < threshold -> banded solver
- [ ] implement check & solver for permuted triangular matrices
- [ ] not Hermitian -> LU solver
- [ ] all positive / all negative diagonal -> try cholesky
- [X] default to LDL solver otherwiseVersion Xhttps://git.hemio.de/xerus/xerus/-/issues/190pydoc strings2019-03-12T16:25:44+01:00Fuchsi*pydoc stringsVersion Xhttps://git.hemio.de/xerus/xerus/-/issues/172Add TT-Cross Approximation2019-03-04T12:39:27+01:00Sebastian WolfAdd TT-Cross ApproximationVersion XPhilipp TrunschkePhilipp Trunschkehttps://git.hemio.de/xerus/xerus/-/issues/130more example systems2019-03-04T13:56:09+01:00Fuchsi*more example systemsWhen writing example systems, consider adding them to the library and / or homepage as examples.
possible examples include:
- Hennon-Heiles potential in schredinger eq
- masters equation
- some tensor completion / recovery
- standard ha...When writing example systems, consider adding them to the library and / or homepage as examples.
possible examples include:
- Hennon-Heiles potential in schredinger eq
- masters equation
- some tensor completion / recovery
- standard hamiltonians (spin systems)
- simple fem system (diffusion?) with qtt
- uq systemVersion Xhttps://git.hemio.de/xerus/xerus/-/issues/118new contraction heuristics2017-07-13T16:42:00+02:00Fuchsi*new contraction heuristics- [ ] implement brute force search for small number of nodes
- [ ] write more elaborate heuristics
- [ ] statistics about which heuristics were the best how often- [ ] implement brute force search for small number of nodes
- [ ] write more elaborate heuristics
- [ ] statistics about which heuristics were the best how oftenVersion Xhttps://git.hemio.de/xerus/xerus/-/issues/79Allow transformations between arbitary TensorNetworks without casting to Full...2019-03-04T14:30:32+01:00Sebastian WolfAllow transformations between arbitary TensorNetworks without casting to FullTensor.Version Xhttps://git.hemio.de/xerus/xerus/-/issues/69SparseTensor aware contraction heuristics2019-03-04T14:31:16+01:00Sebastian WolfSparseTensor aware contraction heuristicsThe complexity of sparse contractions is significantly different to the dense one and therefore requires new heuristics to detemrine the contraction order.The complexity of sparse contractions is significantly different to the dense one and therefore requires new heuristics to detemrine the contraction order.Version X