- 18 Nov, 2021 3 commits
-
-
-
-
David Frank authored
Backtraces have sadly been broken from some time, and it was a major pain to find the source (still searching). This commit removes all the self rolled code with the backward-cpp library (https://github.com/bombela/backward-cpp) This library features a much more comprehensive set of options, pretty printing and deals with dependencies for us.
-
- 16 Nov, 2021 5 commits
-
-
David Frank authored
* Pass a default config to DataContainer.format, such that it can be passed in from the outside * Move `format_config` into separate file to not create dependency cyles * Add functionality to suppress or round small numbers to 0, such that instead of -1.49012e-08, only 0 is printed
-
David Frank authored
-
David Frank authored
-
David Frank authored
-
David Frank authored
-
- 15 Nov, 2021 2 commits
-
-
David Frank authored
In case of an error, print a version of the clang-format command that will actually fix the error and not only print to standard out
-
David Frank authored
-
- 11 Nov, 2021 1 commit
-
-
For further details check for example the numpy docs in: https://numpy.org/doc/stable/reference/generated/numpy.fft.fftshift.html
-
- 10 Nov, 2021 1 commit
-
-
David Frank authored
The Makefile is just a convenience to more easily build elsa. To build all of elsa, just call `make build` from the top level directory. You can also pass any target to build, to specifically build this target, e.g. `make build test_DataContainer`. Other useful commands could `make tests`, to build and run all tests. `make test <test-name>` to build a specific test case and run it. And `make watch <test-name>` to build and run a test continuously on code changes in elsa. Note that a sub-folder structure will be created of the form `build/$BUILD_TYPE/$COMPILER`. This enables quick iteration for different build types and compilers, via passing the options `BUILD_TYPE` and `CXX`.
-
- 03 Nov, 2021 6 commits
-
-
Jonas Jelten authored
-
-
Jonas Jelten authored
-
Jonas Jelten authored
-
Jonas Jelten authored
-
Jonas Jelten authored
-
- 27 Oct, 2021 1 commit
-
-
Tobias Lasser authored
-
- 24 Oct, 2021 1 commit
-
-
David Frank authored
To build all docker images, for some reason it's necessary to reduce the spdlog version from 1.9.0 to 1.8.5. For not known reasons, the build for the GPU only image fails with spdlog version 1.9.0, but it somehow succeeds for the current pipeline image. I don't know why that is and how to fix it, so for now reduce it, that images can still be updated with new CMake versions and so on.
-
- 23 Oct, 2021 2 commits
-
-
andibraimllari authored
-
-
- 21 Oct, 2021 2 commits
-
-
David Frank authored
With this commit, all test binaries use regular console output, and ctests generates the junit xml report used for nice visual presentation in GitLab (which was broken since I don't know when, so it should work again now). Previously, no output was generated, as it was piped to the test binaries unit report, which made finding errors unnecessary complex. Failed tests are rerun again such that the output of these tests is found at the bottom of the CI log, which should make finding errors a little easier in the future.
-
David Frank authored
This commit tells CPM to fetch a specific commit of quickvec instead of the master branch. Then new changes have to be added via a MR in elsa and therefore the whole pipeline will be run. This should prevent errors such as #146. Also tests for CG are adapted, for whatever reason they failed, now they don't anymore...
-
- 17 Oct, 2021 1 commit
-
-
minElement and maxElement return the min and max element of a DataContainer, respectivly. For complex vectors, an expection is thrown.
-
- 11 Oct, 2021 2 commits
-
-
-
For a complex DataContainer real() and imag() return the real and imaginary part of it respectively. The return type is a real valued DataContainer. Note, similar to the standard library (std::real and std::imag), non-complex DataContainers are treated as complex with zero imaginary component.
-
- 09 Oct, 2021 1 commit
-
-
The new trajectory generator creates a circular trajectory, where a certain portion of the trajectory is missing. This commit also refactors out common code from both generators and fixes a minor bug, where the trajectory would overshoot slightly (add a pose at 360.2 or similar).
-
- 06 Oct, 2021 1 commit
-
-
To shortcut scaling of operators, add a multiplication of left hand sided scalar with a right hand sided LinearOperator. Now, it's not necessary to create uniform scaling operations to scale operators.
-
- 04 Aug, 2021 2 commits
-
-
David Frank authored
-
David Frank authored
-
- 29 Jul, 2021 2 commits
-
-
This patch adds 3 changes: - Rely on spdlog::stopwatch instead of the 'raw' standard library clock - Change the output format a touch to improve readability - Rename of variables to express intent better As of version 1.8.0 of spdlog a stopwatch is provided. I thought it would be nice to justs rely on that one instead of rolling our own (even if it's not that hard). The other change is the output format. Instead of printing in the format '[Timing] [debug] Execution of <caller>: <fn> took <time>ms', I changed it to '[<caller>] [debug] <fn> took <time>s'. So instead of having a separate Timing logger, the logger for the class is used. IMO, this cleans up the log a touch, as my eyes don't have to search in different columns, but it's minor. Also I use the default output format of the spdlog::stopwatch, which is in decimal and seconds. Also I used the change to rename the variables, as it was just a little off.
-
-
- 28 Jul, 2021 1 commit
-
-
David Frank authored
Access to a portion of the DataContainer in the form of slices. Currently, only slicing in the direction of the last dimension are possible, but this should still be useful for many cases. The one suprising thing in this implementation, is that the returned DataContainer, has a descriptor which is of the same dimension as the original DataContainer but with a "thickness" of 1 in the last dimension, instead of actually being lower dimensional.
-
- 24 Jul, 2021 3 commits
-
-
Jonas Jelten authored
so warnings are swallowed
-
Jonas Jelten authored
-
Jonas Jelten authored
also install our bundled eigen headers
-
- 23 Jul, 2021 1 commit
-
-
- 21 Jul, 2021 1 commit
-
-
David Frank authored
This is actually mostly exiting because it now supports fmtlib version 8, which is great! Sadly to fully utilize fmt 8.0.0, we need C++20 support. Check the [release notes](https://github.com/fmtlib/fmt/releases/tag/8.0.0) of fmtlib 8.0.0 to see what awesome things we can do, if we switch to C++20 :^)
-
- 16 Jul, 2021 1 commit
-
-
David Frank authored
When two DataContainers are concatenated, a new one with a RandomBlocksDescriptor is created, with the two original descriptors as blocks. Currently, only concatenation of containers of equal dimension is allowed.
-