I'm trying to implement the finite difference method for solving differential equations.
- You can read the documentation by Doxygen (work in progress).
- The mathematics is developed here as I'm learning it.
The official aim of this program is to implement the finite difference method for solving differential equations.
Non-official purposes include
- A first experiment of implementing numerical methods.
- I (believe to) know that the finite difference method requires solving system of equations with sparse matrices. However I'm implementing the PLU decomposition for solving the system while I (believe to) know that there are more efficient ways to solve for sparse matrices.
- Learning the cppunit framework for my unit tests.
- Programming in C++ with no raw pointers.
- The PLU decomposition is done.
- Next step : solving linear systems. See the branch
deploy.sh does the following things :
- make clean
- make all
- launch the unit tests
The test are covering more or less everything, but the most interesting ones are in
plu_unit_tests.cpp. There are many matrices for which the PLU decomposition are tested against the one provided by sage.