xerus issueshttps://git.hemio.de/xerus/xerus/-/issues2019-06-17T14:22:02+02:00https://git.hemio.de/xerus/xerus/-/issues/191allow pickling tensors, tensor networks etc.2019-06-17T14:22:02+02:00Fuchsi*allow pickling tensors, tensor networks etc.- [x] add tests for tensors
- [x] add tests for tttensor
- [x] add tests for httensor
- [x] add tests for tensor networks- [x] add tests for tensors
- [x] add tests for tttensor
- [x] add tests for httensor
- [x] add tests for tensor networksVersion 4.0Philipp TrunschkePhilipp Trunschkehttps://git.hemio.de/xerus/xerus/-/issues/173automatic comparison to numpy results2019-04-03T18:51:07+02:00Fuchsi*automatic comparison to numpy resultsrandomly create equations in einstein summation for xerus and numpy.
blocked by #92 randomly create equations in einstein summation for xerus and numpy.
blocked by #92 https://git.hemio.de/xerus/xerus/-/issues/131automatic testing of algorithms2019-04-03T18:36:09+02:00Fuchsi*automatic testing of algorithms- if they are of the default syntax, automatically generate speed histograms for all example systems and store them in a given path.
- Use thit to generate speed plots of all our algorithms on all test examples- if they are of the default syntax, automatically generate speed histograms for all example systems and store them in a given path.
- Use thit to generate speed plots of all our algorithms on all test examplesFuchsi*Fuchsi*https://git.hemio.de/xerus/xerus/-/issues/122GMRES2019-04-03T18:50:38+02:00Fuchsi*GMREScan be imported from the old librarycan be imported from the old libraryFuchsi*Fuchsi*https://git.hemio.de/xerus/xerus/-/issues/89Use some kind of auto-tools, bjam,... to automatically find and include the n...2019-04-03T18:52:49+02:00Sebastian WolfUse some kind of auto-tools, bjam,... to automatically find and include the needed libraries and header files.https://git.hemio.de/xerus/xerus/-/issues/81Include version history automatically in doxygen documentation2019-04-03T18:52:37+02:00Sebastian WolfInclude version history automatically in doxygen documentationhttps://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/39quadmath or other higher-precision arithmetic2019-04-03T18:34:55+02:00Fuchsi*quadmath or other higher-precision arithmeticdepends on #42 depends on #42 https://git.hemio.de/xerus/xerus/-/issues/38flop counts of all operations to better be able to compare algorithms2018-04-01T13:07:03+02:00Fuchsi*flop counts of all operations to better be able to compare algorithmsruntimes are ok, but heavily dependent on optimization efforts. FLOP counts are much more robust across architectures and independent of the writing effort put into the algorithms.runtimes are ok, but heavily dependent on optimization efforts. FLOP counts are much more robust across architectures and independent of the writing effort put into the algorithms.Version Xhttps://git.hemio.de/xerus/xerus/-/issues/90Replace the blasAnalysis by a general performance measument system placed in ...2018-04-01T13:07:03+02:00Sebastian WolfReplace the blasAnalysis by a general performance measument system placed in misc.Sebastian WolfSebastian Wolfhttps://git.hemio.de/xerus/xerus/-/issues/37block-dmrg to solve eigenvalue problems2019-04-03T18:52:21+02:00Fuchsi*block-dmrg to solve eigenvalue problemssingle and multi-sitesingle and multi-sitehttps://git.hemio.de/xerus/xerus/-/issues/82implement +=, -= for indexed tensors2018-04-01T13:07:03+02:00Fuchsi*implement +=, -= for indexed tensorsand use those in operators +/-and use those in operators +/-Version 1.3Sebastian WolfSebastian Wolfhttps://git.hemio.de/xerus/xerus/-/issues/53Use GCCs (and Clangs) automatic dependency detection in our Makefile2018-04-01T13:07:03+02:00Sebastian WolfUse GCCs (and Clangs) automatic dependency detection in our MakefileThis should significantly improve the compile time if only few headers are changed.This should significantly improve the compile time if only few headers are changed.Version 1.0Sebastian WolfSebastian Wolfhttps://git.hemio.de/xerus/xerus/-/issues/52Allow output of TensorNetworks into graph plotting format, to visualize the n...2018-04-01T13:07:03+02:00Sebastian WolfAllow output of TensorNetworks into graph plotting format, to visualize the network.For example using http://www.graphviz.org or some other graph tool.For example using http://www.graphviz.org or some other graph tool.Version 1.2Sebastian WolfSebastian Wolfhttps://git.hemio.de/xerus/xerus/-/issues/51Include parallelisation where usefull2018-04-01T13:07:03+02:00Sebastian WolfInclude parallelisation where usefullUntil now parallelisation was no issue in xerus because more instances proved to be the better way to achieve statistic results. However for single large problems it might prove useful to have a parallel version of xerus. In particular t...Until now parallelisation was no issue in xerus because more instances proved to be the better way to achieve statistic results. However for single large problems it might prove useful to have a parallel version of xerus. In particular the random creation of tensors, the evaluation and the self implemented sparse routines come to mind.Version 3.0https://git.hemio.de/xerus/xerus/-/issues/13Convert the bool flag in Index to an uint flag variable to allow up to 32 flags2018-04-01T13:07:04+02:00Sebastian WolfConvert the bool flag in Index to an uint flag variable to allow up to 32 flagsthis would allow the use of index/2 to denote half the indices etc. (useful e.g. for TTtensors). Might also consider `i/2-1` ? e.g. for quantum state contractions `A(i/2-1,j,k/2-1,j)`.this would allow the use of index/2 to denote half the indices etc. (useful e.g. for TTtensors). Might also consider `i/2-1` ? e.g. for quantum state contractions `A(i/2-1,j,k/2-1,j)`.Version 1.0Sebastian WolfSebastian Wolfhttps://git.hemio.de/xerus/xerus/-/issues/48doxygen modern layout2018-04-23T03:03:35+02:00Fuchsi*doxygen modern layoutVersion XFuchsi*Fuchsi*https://git.hemio.de/xerus/xerus/-/issues/120Completely remove support for stored IndexedTensors2018-04-23T03:03:37+02:00Sebastian WolfCompletely remove support for stored IndexedTensorsAt the moment there is kind of support for stored IndexedTensors, which significantly complicates a lot of functions and requires several extra constructors. So unless there is a good reason to keep this half-support, I would like to rem...At the moment there is kind of support for stored IndexedTensors, which significantly complicates a lot of functions and requires several extra constructors. So unless there is a good reason to keep this half-support, I would like to remove it completely and simplify the corresponding files.Version 2.0Sebastian WolfSebastian Wolfhttps://git.hemio.de/xerus/xerus/-/issues/93language support: D2018-04-23T03:03:37+02:00Fuchsi*language support: DD wrapper... no idea howD wrapper... no idea howhttps://git.hemio.de/xerus/xerus/-/issues/92language support: python2018-04-23T03:03:37+02:00Fuchsi*language support: python- [x] write boost python converter from python::list to std::vector<size_t>
- [x] export of our basic functionality
- [x] export measurement sets and completion algorithms
- [x] export factorizations
- [x] export streamWriter
- [x] tran...- [x] write boost python converter from python::list to std::vector<size_t>
- [x] export of our basic functionality
- [x] export measurement sets and completion algorithms
- [x] export factorizations
- [x] export streamWriter
- [x] translate exceptions to python?
- [x] pack arguments for variadic argument lists, see http://stackoverflow.com/questions/11904015/calling-a-python-function-with-variable-number-of-input-arguments-from-boost-pyt (part two of answer, .py file can be replaced by `boost::python::exec(str)`)
- [ ] ~~allow import of ttToolbox like tt-tensors~~
- [ ] allow modification of TensorNetworks
- [x] allow conversion of numpy arrays to tensor etc.
- [ ] allow named arguments, replace overloads with default arguments `(arg("x")=1.0, arg("y")=0.0)`
- [ ] check for dangling pointers or objects
- [ ] add pydoc strings to all classes and functions
- [ ] create python documentation and include it on libxerus.org
- [ ] allow pickling tensors and tensor networks etc.Version 3.0Fuchsi*Fuchsi*https://git.hemio.de/xerus/xerus/-/issues/88standard-conformity: no names starting with '__'2018-04-23T03:03:37+02:00Fuchsi*standard-conformity: no names starting with '__'from the standard:
~~~
17.4.3.2.1 Global names [lib.global.names]
Certain sets of names and function signatures are always reserved to the implementation:
Each name that contains a double underscore (_ _) or begins with an ...from the standard:
~~~
17.4.3.2.1 Global names [lib.global.names]
Certain sets of names and function signatures are always reserved to the implementation:
Each name that contains a double underscore (_ _) or begins with an underscore followed by an uppercase letter (2.11) is reserved to the implementation for any use.
[...]
~~~version 1.1Fuchsi*Fuchsi*https://git.hemio.de/xerus/xerus/-/issues/83useless-casts in TensorNetwork?2018-04-23T03:03:38+02:00Fuchsi*useless-casts in TensorNetwork?g++ 5.1.1 shows following warnings (errors in default configuration)
~~~
src/xerus/tensorNetwork.cpp: In member function ‘xerus::TensorNetwork::operator xerus::FullTensor() const’:
src/xerus/tensorNetwork.cpp:134:100: warning: useless...g++ 5.1.1 shows following warnings (errors in default configuration)
~~~
src/xerus/tensorNetwork.cpp: In member function ‘xerus::TensorNetwork::operator xerus::FullTensor() const’:
src/xerus/tensorNetwork.cpp:134:100: warning: useless cast to type ‘xerus::FullTensor’ [-Wuseless-cast]
return FullTensor(std::move(*static_cast<FullTensor*>(fully_contracted_tensor().get())));
^
src/xerus/tensorNetwork.cpp: In member function ‘xerus::TensorNetwork::operator xerus::SparseTensor() const’:
src/xerus/tensorNetwork.cpp:142:104: warning: useless cast to type ‘xerus::SparseTensor’ [-Wuseless-cast]
return SparseTensor(std::move(*static_cast<SparseTensor*>(fully_contracted_tensor().get())));
^
```version 1.1https://git.hemio.de/xerus/xerus/-/issues/80create xerus::epsilon to be used for all near-zero values2018-04-23T03:03:38+02:00Fuchsi*create xerus::epsilon to be used for all near-zero valuesand replace all occurences of 1e-15, 1e-14 and similar magic values by this epsilon...and replace all occurences of 1e-15, 1e-14 and similar magic values by this epsilon...Version 1.2Sebastian WolfSebastian Wolfhttps://git.hemio.de/xerus/xerus/-/issues/71new format for TTTensors2018-04-23T03:03:38+02:00Fuchsi*new format for TTTensorsinternally they should be represented with two additional size-1 tensors such that all component tensors can be of the same degreeinternally they should be represented with two additional size-1 tensors such that all component tensors can be of the same degreeversion 1.1Fuchsi*Fuchsi*https://git.hemio.de/xerus/xerus/-/issues/65fix clang support2018-04-23T03:03:38+02:00Fuchsi*fix clang supportat the moment we cannot compile with the clangat the moment we cannot compile with the clanghttps://git.hemio.de/xerus/xerus/-/issues/62TTStacks should not inherit from TTNetwork2018-04-23T03:03:38+02:00Fuchsi*TTStacks should not inherit from TTNetworkJust to reduce errors with functions that accept TTNetworks (ie TTTensor / TTOperator) and then assume that they have an TTNetwork at hand...Just to reduce errors with functions that accept TTNetworks (ie TTTensor / TTOperator) and then assume that they have an TTNetwork at hand...version 1.1Fuchsi*Fuchsi*https://git.hemio.de/xerus/xerus/-/issues/45make binutils dependency optional2018-04-23T03:03:39+02:00Fuchsi*make binutils dependency optionalwithout the callstack has to be replaced by a simpler versionwithout the callstack has to be replaced by a simpler versionVersion 1.0Fuchsi*Fuchsi*https://git.hemio.de/xerus/xerus/-/issues/4Change direction of the ALS2018-04-23T03:03:40+02:00Sebastian WolfChange direction of the ALSAt the moment the ALS starts on the left most node, while the standard normalization has the core at the right most node.
this results in unneccesary renormalizationsAt the moment the ALS starts on the left most node, while the standard normalization has the core at the right most node.
this results in unneccesary renormalizationsVersion 1.2https://git.hemio.de/xerus/xerus/-/issues/255misc functions for string_views2019-05-15T21:07:59+02:00Fuchsi*misc functions for string_views- `from_string`
- `explode`- `from_string`
- `explode`