summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* Add forgotten header.Anton Khirnov2019-02-05
|
* meson.build: link-depend on the symbol visibility linker scriptAnton Khirnov2019-02-05
|
* residual_calc.asm: use the correct coefficients for y derivativesAnton Khirnov2019-02-02
|
* mg2d_test: reduce the symmetry of the test problemAnton Khirnov2019-02-02
| | | | Should make for a more robust test.
* mg2d: relax the condition on residual convergenceAnton Khirnov2019-02-02
| | | | | Apparently in certain cases the residual can briefly grow, even though the process converges after.
* Add forgotten boundary.c file.Anton Khirnov2019-02-02
|
* mg2d: print stats properly for exact solvesAnton Khirnov2019-02-02
|
* ell_grid_solve: split residual computation into its own fileAnton Khirnov2019-01-30
|
* mg2d_test: add a test for fixed-derivative boundary conditionAnton Khirnov2019-01-29
| | | | Also test more terms in the equation.
* mg2d: account for effect of the ~u term on the relaxation factorAnton Khirnov2019-01-29
| | | | | The maximum allowed time step in the presence of a -K * u term goes like 2 (dx ** 2) / (4 + K (dx ** 2))
* relax_test: allow running just one iterationAnton Khirnov2019-01-29
|
* Fix callback type mismatchAnton Khirnov2019-01-29
|
* ell_grid_solve: remove unused variablesAnton Khirnov2019-01-29
|
* ell_grid_solve: add missing headerAnton Khirnov2019-01-29
|
* mg2d: fail when a full multigrid iteration does not reduce the residualAnton Khirnov2019-01-29
|
* Solve the discretized system exactly on the coarsest level.Anton Khirnov2019-01-26
|
* ell_relax -> ell_grid_solveAnton Khirnov2019-01-26
| | | | | Generalize the API to allow for multiple solver types. This is done in preparation for the exact linear system inversion solver.
* mg2d: factor out the boundary condition-related APIAnton Khirnov2019-01-25
|
* Stop duplicating some constants between ell_relax and mg2d.Anton Khirnov2019-01-25
|
* mg2d: split the constant definitions into their own headerAnton Khirnov2019-01-25
| | | | This will allow sharing them with ell_relax.
* ell_relax: implement correct handling of the boundary cornersAnton Khirnov2019-01-25
|
* mg2d: log the convergence factors after relax/correctAnton Khirnov2019-01-22
|
* mg2d: fix typoAnton Khirnov2019-01-21
| | | | | Do nb_relax_post steps in the post-correct relaxation phase, not nb_relax_pre.
* mg2d: failer earlier when relaxation does not convergeAnton Khirnov2019-01-21
|
* mg2d: check and propagate the error from mg_solve_subgrid()Anton Khirnov2019-01-21
|
* mg2d: factor out the relaxation step callAnton Khirnov2019-01-16
|
* mg2d: add a context variable to control the log levelAnton Khirnov2019-01-16
| | | | | | Simpler to use than overriding the log callback. API bump.
* log: allow specifying a NULL callback to disable loggingAnton Khirnov2019-01-16
|
* mg2d: add a function for getting maximum supported fd_stencilAnton Khirnov2019-01-16
| | | | | | | This is needed for the caller to know the number of boundary zones that can be filled. API bump.
* ell_relax: compute the residual norm in residual_calc()Anton Khirnov2019-01-13
| | | | It is cheap and avoids an extra step in mg2d.
* ell_relax: do not calculate the residual at the fixed-val boundariesAnton Khirnov2019-01-13
| | | | | Keep it at zero there to begin with, rather than enforce this later. This will be useful in the following commits.
* residual_calc.asm: fix partial storesAnton Khirnov2019-01-13
| | | | .store1 and .store3 were switched
* residual_calc.asm: calculate x*=16 by x*=8; x+=xAnton Khirnov2019-01-13
| | | | Frees up one mm register for future use.
* mg2d: make the cfl factor runtime-configurableAnton Khirnov2019-01-13
|
* residual_calc.asm: implement writing partial blocksAnton Khirnov2019-01-10
| | | | Avoid overwriting anything over the specified line size.
* residual_calc.asm: templatize the entire residual computationAnton Khirnov2019-01-10
|
* residual_calc.asm: templatize computing the mixed derivativeAnton Khirnov2019-01-10
|
* residual_calc.asm: templatize computing non-mixed derivativesAnton Khirnov2019-01-10
|
* residual_calc.asm: make mm register use more consistent between s1 and s2Anton Khirnov2019-01-10
|
* residual_calc.asm: make register use in s1 more similar to s2Anton Khirnov2019-01-10
|
* residual_calc.asm: reduce the use of magic constantsAnton Khirnov2019-01-10
|
* residual_calc.asm: reduce register use in the s1 variantAnton Khirnov2019-01-10
| | | | | Make it similar to the s2 version, which should make it easier to templatize the code in the future.
* mg2d: ignore padding values in findmax()Anton Khirnov2019-01-09
|
* mg2d: remove a mistakenly committed hunk.Anton Khirnov2018-12-28
|
* Add a licence file.Anton Khirnov2018-12-28
|
* Add test programs for relaxation and full multigrid.Anton Khirnov2018-12-28
|
* mg2d: factor out restriction/prolongation callsAnton Khirnov2018-12-28
| | | | | Also generalize the check for full interpolation vs special-cased restrict/prolong functions.
* mg2d: print the overhead time in statsAnton Khirnov2018-12-28
|
* mg2d: do not select the first coarser level too close to the finest oneAnton Khirnov2018-12-28
|
* mg2d: simplify and speed up prolongationAnton Khirnov2018-12-27
|