- Split SM2 into SM2 and SM2star so that keeps all updates for later when used in combination with the Woodbury kernels to improve the numerical accuracy to the same level as that of SM2.
Since vfc_ci has been merged wih the main verificarlo repository and is
now available in Verificarlo's Docker, the source code of vfc_ci can
now be removed.
Also, vfc_test_h5.cpp has been modified so that every algorithm is
called directly. This results in a much shorter vfc_tests_config.json
since we don't need to vall vfc_test_h5 with all algorithms as
arguments.
* Written Unified Sherman-Morrison-Woodbury kernel that partitions
the updates in blocks of 3 and tries them with Woodbury 3x3.
The remainder of 2 or one are attempted with Woodbury 2x2 and SM2.
For now the unified kernel gives fails where pure SM2 does not.
I suspect there is something going wrong in how the updates are partitioned.
Besides the new variable addition, vfc_test_h5 has also be made simpler
by executing directly all the possible lagorithms (instead of requiring
argument). This results in a much more concise vfc_tests_config.json,
since only one executable invocation is required.
- Slagel-splitting in Maponi A3 is now working. A thourough analysis on the QMC=Chem datasets still has te be done.
- Acceptance tollerance in 'test_h5' on the residuals can be set at runtime now.
Since the dataset must be accessible from the CI runner, the best
solution is probably to commit a small dataset containing only the
required cycles. It's included in this commit, and can be generated by
extract-from-h5.py using the same cycles list as the one used by
vfc_test_h5.cpp.
Moreover, the probes exported by vfc_test_h5.cpp are now 0-padded, which
will result in a better sorting in the results.
With the current setup, the CI should be able to be deployed correcly.
However, we still ned to find the best solution to pull the dataset on
the runner so the tests can be executed on it.
The vfc_ci tool has been directly added to the repository, since it's
not integrated into Verificarlo yet. The vfc_test_h5.cpp file defines a
test inspired by test_h5.cpp that reads a list of cycles and dump the
vfc_probes for these cycles.
- Added a Verificarlo option to smvars.sh that sets the Verificarlo backend and uses LLVM for compilation.
- Fixed residual_max() to give the Max-norm.
- Updated gitignore
- Added python script to compute basic statistical observables from testruns
- Added test bash script to automate test_h5: the cycles in the dataset are not continues and test_h5 crashes if a cycle number is not present in the dataset.
- Added common threshold for all 3 standard SM algos.
- SM2: Slagel splitting implementation
(http://hdl.handle.net/10919/52966)
- SM3: Keep close to zero denominators for later
- Update tests to show the squared residual
- It can serve as a baseline reference
- It can serve as a starting point for including the pivot
and splitting techniques from Maponi and Slaggel without the full
complexity of the MaponiA3 algorithm
* Started debugging reading from HDF5 formatted datasets. Slater_inv needs to be transposed before sent to Maponi. Algo fails at the last step. Correct Slater and Inverse fail to produce the identity matrix. Suspect that the matMul function is not working correctly eventhough it looks like it does.
Made small corrections to compensate for changes made after branching-off from test_dataset.
Everything compilers
Everything works except for the HDF5 dataset test program that gives an I/O error.