Commit Graph

17 Commits

Author SHA1 Message Date
François Coppens
84fffdb7fa Prepared the example matrix of Example 8 of the paper and its
decomposition in the Fortran code and made a basic call to the
subroutine MYSUBROUTINE, which is bound to the C++ void function
'Sherman-Morrison();. For now compilation fails with lots of undefined
references.'
2021-02-04 13:12:47 +01:00
François Coppens
090847247d Prepared the main Fortran infrastructure for the C++ calls. Updated the makefile. 2021-02-04 11:39:00 +01:00
François Coppens
5531d9eb12
Merge pull request #2 from fmgjcoppens/fix/upd-inverse
Fix/upd inverse
2021-02-03 15:05:01 +01:00
François Coppens
d03c9c665b Update of A0_inv fixed. matMul(...) breaks link between A0_inv and Slater_inv. Fixed by creating a new pointer that points to where Slater_inv points to before it gets reassigned by matMul(...) and then copy the updated elements back to the passed array pointed to by the new pointer. 2021-02-03 14:49:42 +01:00
François Coppens
aa6895a4aa Put helper functions in separate header file from the Sherman-Morrison algo. 2021-02-03 12:13:09 +01:00
François Coppens
1d9bb30abc
Merge pull request #1 from fmgjcoppens/fix/compile
Problem fixed.
2021-02-03 11:09:51 +01:00
François Coppens
68d27b6df6 Problem fixed: template function definitions (implementations) need to be fully known in the header file (.hpp) and not in the implementation file (.cpp). 2021-02-03 11:02:15 +01:00
François Coppens
7d55d7db77 Split the program in a header file and an implementation file and included them in main. Does not compile. Get the following error: ld: /tmp/icpcnmVxvw.o: in function void showMatrix<int>(int**, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)' 2021-02-02 17:06:32 +01:00
François Coppens
9d47bf9bb3 Extracted the SM algorithm and wrote it as a void function that updates the passed old inverse. Does not work yet. For some reason the changes in the inverse do not persist when the function is finished. Also the inverse is not correct. 2021-02-02 15:08:41 +01:00
François Coppens
7d3ffe1d2a Added random matrix initialisation of arbitrary size. Added function to calculate determinant to test matrix invertability of A and A0. 2021-01-29 12:53:20 +01:00
François Coppens
8f54ca1124 Removed .vscode preferences dir from git index and added to .gitignore. 2021-01-29 10:23:22 +01:00
François Coppens
4c1b7f3098 Converted overloaded functions into templates. Removed second size argument from the showMatrix function since we are only interested in square matrices. 2021-01-29 10:03:07 +01:00
François Coppens
d45df44e5e C++ implementation of algo 3 is working. Not optimised yet. 2021-01-27 17:19:41 +01:00
François Coppens
e509f28ba6 That's it for today! 2021-01-26 16:27:57 +01:00
François Coppens
daadf44eee Maponi algorithm 4 works for the modified Example 18 in the paper but not for general non-singlual NxN matrices yet. 2021-01-26 11:32:17 +01:00
François Coppens
d286e0d45e Added some initial data likle Makefiles and .gitignore. 2021-01-26 07:26:54 +01:00
François Coppens
3704856b10 Initial commit. 2021-01-25 15:25:23 +01:00