- 29 Jan, 2023 1 commit
-
-
Artur Palha Da Silva Clérigo authored
- All implementations here are shell implementations, i.e., they just implement the interface for backwards compatibility to allow interchanging this implementation with the old implementation; - Adds opendarts::linear_solvers::linsolv_bos_fs_cpr.
-
- 28 Jan, 2023 3 commits
-
-
Artur Palha Da Silva Clérigo authored
- All implementations here are shell implementations, i.e., they just implement the interface for backwards compatibility to allow interchanging this implementation with the old implementation; - Adds opendarts::linear_solvers::linsolv_bos_gmres.
-
Artur Palha Da Silva Clérigo authored
- All implementations here are shell implementations, i.e., they just implement the interface for backwards compatibility to allow interchanging this implementation with the old implementation; - Adds opendarts::linear_solvers::linsolv_bos_cpr.
-
Artur Palha Da Silva Clérigo authored
- All implementations here are shell implementations, i.e., they just implement the interface for backwards compatibility to allow interchanging this new library with the old one, without having to change (for now) the engines component of the code. - Adds opendarts::linear_solvers::linsolv_bos_amg - Adds opendarts::linear_solvers::linsolv_bos_bilu0
-
- 24 Jan, 2023 1 commit
-
-
Ilshat Saifullin authored
-
- 23 Jan, 2023 1 commit
-
-
Artur Palha Da Silva Clérigo authored
-
- 20 Jan, 2023 1 commit
-
-
Artur Palha Da Silva Clérigo authored
This is done to adhere to full compatibility with old interface. This contains many issues that need to be solved due to improper implementation in the old code. For now this is kept for backwards compatibility, but will need to be fully changed.
-
- 18 Jan, 2023 4 commits
-
-
Artur Palha Da Silva Clérigo authored
csr_matrix::row_thread_starts implemented for compatibility with old interface. Since no multithreading is implemented, results for single thread case are hardcoded.
-
Artur Palha Da Silva Clérigo authored
Adds getters to csr_matrix_base and overrides in csr_matrix. This was done for compatibility with original implementation.
-
Artur Palha Da Silva Clérigo authored
The previous version took as input a string and the export type. The old interface used *char and the column sort flag. For compatibility, the newly implemented csr_matrix::write_matrix_to_file was renamed csr_matrix::export_matrix_to_file and a new csr_matrix::write_matrix_to_file was implemented that takes the same inputs as the old interface, this was done for compatibility.
-
Artur Palha Da Silva Clérigo authored
This is the first step towards making the interface of this csr matrix implementation fully identical to the one in the old csr matrix code.
-
- 03 Jan, 2023 3 commits
-
-
Artur Palha Da Silva Clérigo authored
Import library generation for SuperLU and cblas was not working on Windows. cmake was complaining that the imported libraries did not specify the IMPORTED_LOCATION. In fact only IMPORTED_IMPLIB was specified. From cmake's documentation is seemed like for static libs in windows IMPORTED_IMPLIB should be used. Just changed to IMPORTED_LOCATION and works fine.
-
Artur Palha Da Silva Clérigo authored
- Adds .clang-format file with formatting style. - Updates all file to comply with the format.
-
Artur Palha Da Silva Clérigo authored
- timer_node for SuperLU needs to be initialised, otherwise segmentation fault occurs. The SuperLU test now initialises the timer_node and checks the time. - timer_node test was corrected. It was checking the time measured by system_clock and not by timer. Now it correctly uses timer_node elapsed time and compares it to the target time.
-
- 26 Dec, 2022 2 commits
-
-
Artur Palha Da Silva Clérigo authored
-
Artur Palha Da Silva Clérigo authored
-
- 25 Dec, 2022 1 commit
-
-
Artur Palha Da Silva Clérigo authored
-
- 23 Dec, 2022 2 commits
-
-
Artur Palha Da Silva Clérigo authored
-
Artur Palha Da Silva Clérigo authored
- Adds linsolv_superlu solver to linear_solvers; - Adds tests to linsolv_superlu solver; - Updated csr_matrix to allow converting to block size 1 using pointers; - Updates README.md to reflect the latest changes of the build and functionality.
-
- 22 Dec, 2022 2 commits
-
-
Artur Palha Da Silva Clérigo authored
-
Artur Palha Da Silva Clérigo authored
- Adds feedback to user while importanting thirdparty libraries; - Adds check on finding thirdparty libraries; - Uses object libraries instead of static libraries for intermediate builds. This reduces the ampount of generated static libraries that need to be manually merged together to bundle linear_solvers as a single static library.
-
- 21 Dec, 2022 4 commits
-
-
Artur Palha Da Silva Clérigo authored
Tests are given per component, currently, aux, linear_solvers. There was no clear distinction between them in the name and the numbering was common. To overcome this ambiguity, a prefix (aux or linear_solvers) was added to each test, to clearly indicate to which part of the code the test refers to.
-
Artur Palha Da Silva Clérigo authored
-
Artur Palha Da Silva Clérigo authored
- Adds opendarts::aux::timer_node to measure time; - Adds unit test for opendarts::aux::timer_node; - Adds SuperLU to linear solvers, so that it is available; - Adds unit test to check the functionality of SuperLU as linked to linear_solvers; - Organizes tests to be more general so that aux and linear_solvers tests can exist and share common auxiliary code if needed.
-
Artur Palha Da Silva Clérigo authored
- Adds opendarts::aux::timer_node to measure time; - Adds unit test for opendarts::aux::timer_node; - Organizes tests to be more general so that aux and linear_solvers tests can exist and share common auxiliary code if needed.
-
- 20 Dec, 2022 1 commit
-
-
Artur Palha Da Silva Clérigo authored
- Adds cmake_externals for importing external libraries into cmake to use in the project - Adds externals folder to store external libraries required by the project. Start with SuperLU. - Adds example with SuperLU use.
-
- 14 Dec, 2022 1 commit
-
-
Artur Palha Da Silva Clérigo authored
- Adds csr_matrix::transpose member function to compute the transpose of matrices; - Updates opendarts::linear_solvers::testing::generate_tridiagonal_matrix to enable a debug mode where the blocks are populated with values that vary with inner row and column of the block. This simplifies checking the correctness of transpose; - Adds test for transpose.
-
- 08 Dec, 2022 2 commits
-
-
Artur Palha Da Silva Clérigo authored
Now matrices with any block size can be saved in human readable format. An intermediate conversion to block size 1 is done.
-
Artur Palha Da Silva Clérigo authored
-
- 07 Dec, 2022 2 commits
-
-
Artur Palha Da Silva Clérigo authored
Moves common auxiliary functions used in tests to a library to be imported by the tests, to avoid repeating code and/or recompiling.
-
Artur Palha Da Silva Clérigo authored
- csr_matrix class block size is now a template parameter, this was done for compatibility with original implementation. - n_block_size is now a static constant and no changes to block size can be made to the object (this is in contrast to original implementation), this option was followed to make the use clearer. If an object is a csr matrix of block size n then is should always be so. - added cosmetic changes to source code.
-
- 06 Dec, 2022 1 commit
-
-
Artur Palha Da Silva Clérigo authored
-
- 30 Nov, 2022 5 commits
-
-
Artur Palha Da Silva Clérigo authored
-
Artur Palha authored
-
Artur Palha authored
- Structure of cmake now prepare for extension to openDARTS and not just to account for linear_solvers - Adds config library with general configuration information for tests, versioning, git, etc - Adds (placeholder for) tests and integrates with ctest - Places examples in their own folder - Clean up and organises structure of files for IDEs
-
Artur Palha authored
-
Artur Palha authored
Tests are made available in the build. Activation of tests is done by an option ENABLES_TESTING. Options and option reporting has also been enabled to enable easier tracking of what is set.
-
- 29 Nov, 2022 2 commits
-
-
Artur Palha authored
-
Artur Palha authored
-
- 22 Nov, 2022 1 commit
-
-
Artur Palha authored
-