Commit message (Collapse) | Author | Age | ||
---|---|---|---|---|
... | ||||
* | mg2d: make the refinement depth/exact solve size configurable | Anton Khirnov | 2019-03-11 | |
| | | | | API bump | |||
* | mg2d: allocate separate data arrays for the multigrid layer | Anton Khirnov | 2019-03-11 | |
| | | | | | | | Do not use those from the topmost level directly. This introduces an additional copy, but allows us to decouple level allocation from the solver allocation. | |||
* | mg2d: remove unused variable | Anton Khirnov | 2019-03-11 | |
| | ||||
* | mg2d: refactor levels allocation | Anton Khirnov | 2019-03-04 | |
| | | | | This should simplify future improvements. | |||
* | mg2d: be less strict for converging to machine epsilon | Anton Khirnov | 2019-03-04 | |
| | ||||
* | mg2d: fail if the residual grows too much from the original one | Anton Khirnov | 2019-03-04 | |
| | ||||
* | mg2d: take into account the factor in front of ∂_xx when computing the CFL ↵ | Anton Khirnov | 2019-03-04 | |
| | | | | factor | |||
* | ell_grid_solve: initialize diff_coeffs to 0 | Anton Khirnov | 2019-03-04 | |
| | | | | Prevents the uninitialized items from affecting interpolation. | |||
* | Implement C/r falloff boundary condition. | Anton Khirnov | 2019-03-04 | |
| | | | | API bump. | |||
* | ell_grid_solve: do not read from outside of allocated boundary values | Anton Khirnov | 2019-02-24 | |
| | ||||
* | mg2d: print a more explicit error message when we reach maxiter | Anton Khirnov | 2019-02-24 | |
| | ||||
* | ell_grid_solve: do not read from possibly-uninitialized boundary layer | Anton Khirnov | 2019-02-08 | |
| | ||||
* | Rename fixdiff boundary condition to reflect. | Anton Khirnov | 2019-02-08 | |
| | | | | | | | This is what it actually does, we do not support setting arbitrary derivative values. API bump. | |||
* | ell_grid_solve: use the new boundary API to simplify code | Anton Khirnov | 2019-02-06 | |
| | ||||
* | mg2d_test: use the new boundary API to simplify code | Anton Khirnov | 2019-02-06 | |
| | ||||
* | relax_test: use the new boundary API to simplify code | Anton Khirnov | 2019-02-06 | |
| | ||||
* | boundary: add public functions for querying boundary information | Anton Khirnov | 2019-02-06 | |
| | | | | | | Should allow treating boundaries in a generic manner. API bump | |||
* | Change the meaning of boundary location to make more sense. | Anton Khirnov | 2019-02-05 | |
| | | | | API bump. | |||
* | Add forgotten header. | Anton Khirnov | 2019-02-05 | |
| | ||||
* | meson.build: link-depend on the symbol visibility linker script | Anton Khirnov | 2019-02-05 | |
| | ||||
* | residual_calc.asm: use the correct coefficients for y derivatives | Anton Khirnov | 2019-02-02 | |
| | ||||
* | mg2d_test: reduce the symmetry of the test problem | Anton Khirnov | 2019-02-02 | |
| | | | | Should make for a more robust test. | |||
* | mg2d: relax the condition on residual convergence | Anton Khirnov | 2019-02-02 | |
| | | | | | Apparently in certain cases the residual can briefly grow, even though the process converges after. | |||
* | Add forgotten boundary.c file. | Anton Khirnov | 2019-02-02 | |
| | ||||
* | mg2d: print stats properly for exact solves | Anton Khirnov | 2019-02-02 | |
| | ||||
* | ell_grid_solve: split residual computation into its own file | Anton Khirnov | 2019-01-30 | |
| | ||||
* | mg2d_test: add a test for fixed-derivative boundary condition | Anton Khirnov | 2019-01-29 | |
| | | | | Also test more terms in the equation. | |||
* | mg2d: account for effect of the ~u term on the relaxation factor | Anton Khirnov | 2019-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 iteration | Anton Khirnov | 2019-01-29 | |
| | ||||
* | Fix callback type mismatch | Anton Khirnov | 2019-01-29 | |
| | ||||
* | ell_grid_solve: remove unused variables | Anton Khirnov | 2019-01-29 | |
| | ||||
* | ell_grid_solve: add missing header | Anton Khirnov | 2019-01-29 | |
| | ||||
* | mg2d: fail when a full multigrid iteration does not reduce the residual | Anton Khirnov | 2019-01-29 | |
| | ||||
* | Solve the discretized system exactly on the coarsest level. | Anton Khirnov | 2019-01-26 | |
| | ||||
* | ell_relax -> ell_grid_solve | Anton Khirnov | 2019-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 API | Anton Khirnov | 2019-01-25 | |
| | ||||
* | Stop duplicating some constants between ell_relax and mg2d. | Anton Khirnov | 2019-01-25 | |
| | ||||
* | mg2d: split the constant definitions into their own header | Anton Khirnov | 2019-01-25 | |
| | | | | This will allow sharing them with ell_relax. | |||
* | ell_relax: implement correct handling of the boundary corners | Anton Khirnov | 2019-01-25 | |
| | ||||
* | mg2d: log the convergence factors after relax/correct | Anton Khirnov | 2019-01-22 | |
| | ||||
* | mg2d: fix typo | Anton Khirnov | 2019-01-21 | |
| | | | | | Do nb_relax_post steps in the post-correct relaxation phase, not nb_relax_pre. | |||
* | mg2d: failer earlier when relaxation does not converge | Anton Khirnov | 2019-01-21 | |
| | ||||
* | mg2d: check and propagate the error from mg_solve_subgrid() | Anton Khirnov | 2019-01-21 | |
| | ||||
* | mg2d: factor out the relaxation step call | Anton Khirnov | 2019-01-16 | |
| | ||||
* | mg2d: add a context variable to control the log level | Anton Khirnov | 2019-01-16 | |
| | | | | | | Simpler to use than overriding the log callback. API bump. | |||
* | log: allow specifying a NULL callback to disable logging | Anton Khirnov | 2019-01-16 | |
| | ||||
* | mg2d: add a function for getting maximum supported fd_stencil | Anton Khirnov | 2019-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 Khirnov | 2019-01-13 | |
| | | | | It is cheap and avoids an extra step in mg2d. | |||
* | ell_relax: do not calculate the residual at the fixed-val boundaries | Anton Khirnov | 2019-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 stores | Anton Khirnov | 2019-01-13 | |
| | | | | .store1 and .store3 were switched |