Mercurial > repos > public > sbplib_julia
comparison TODO.md @ 2057:8a2a0d678d6f feature/lazy_tensors/pretty_printing
Merge default
| author | Jonatan Werpers <jonatan@werpers.com> |
|---|---|
| date | Tue, 10 Feb 2026 22:41:19 +0100 |
| parents | fe058a0ebd97 |
| children |
comparison
equal
deleted
inserted
replaced
| 1110:c0bff9f6e0fb | 2057:8a2a0d678d6f |
|---|---|
| 1 # TODO | 1 # TODO |
| 2 | 2 |
| 3 ## Organization | |
| 4 - [ ] Split up Notes.md in several files | |
| 3 | 5 |
| 4 ## Coding | 6 ## Coding |
| 5 - [ ] Ändra namn på variabler och funktioner så att det följer style-guide | |
| 6 - [ ] Add new Laplace operator to DiffOps, probably named WaveEqOp(?!!?) | |
| 7 - [ ] Create a struct that bundles the necessary Tensor operators for solving the wave equation. | 7 - [ ] Create a struct that bundles the necessary Tensor operators for solving the wave equation. |
| 8 - [ ] Replace getindex hack for flattening tuples with flatten_tuple. (eg. `getindex.(range_size.(L.D2),1)`) | |
| 9 - [ ] Use `@inferred` in a lot of tests. | |
| 10 - [ ] Replace `@inferred` tests with a benchmark suite that automatically tests for regressions. | |
| 11 - [ ] Make sure we are setting tolerances in tests in a consistent way | 8 - [ ] Make sure we are setting tolerances in tests in a consistent way |
| 12 - [ ] Write down some coding guideline or checklist for code conventions. For example i,j,... for indices and I for multi-index | 9 - [ ] Write down some coding guideline or checklist for code conventions. For example i,j,... for indices and I for multi-index |
| 13 - [ ] Clean up RegionIndices | 10 - [ ] Clean up RegionIndices |
| 14 1. [ ] Write tests for how things should work | 11 1. [ ] Write tests for how things should work |
| 15 2. [ ] Update RegionIndices accordingly | 12 2. [ ] Update RegionIndices accordingly |
| 16 3. [ ] Fix the rest of the library | 13 3. [ ] Fix the rest of the library |
| 17 Should getregion also work for getregion(::Colon,...) | 14 Should getregion also work for getregion(::Colon,...) |
| 18 - [ ] Add possibility to create tensor mapping application with `()`, e.g `D1(v) <=> D1*v`? | |
| 19 - [ ] Add custom pretty printing to LazyTensors/SbpOperators to enhance readability of e.g error messages. | 15 - [ ] Add custom pretty printing to LazyTensors/SbpOperators to enhance readability of e.g error messages. |
| 20 See (https://docs.julialang.org/en/v1/manual/types/#man-custom-pretty-printing) | 16 See (https://docs.julialang.org/en/v1/manual/types/#man-custom-pretty-printing) |
| 21 - [ ] Samla noggrannhets- och SBP-ness-tester för alla operatorer på ett ställe | 17 - [ ] Samla noggrannhets- och SBP-ness-tester för alla operatorer på ett ställe |
| 22 - [ ] Move export statements to top of each module | 18 - [ ] Move export statements to top of each module |
| 19 - [ ] Implement apply_transpose for | |
| 20 - [ ] ElementwiseTensorOperation | |
| 21 - [ ] VolumeOperator | |
| 22 - [ ] Laplace | |
| 23 | 23 |
| 24 | 24 |
| 25 - [ ] Gå igenom alla typ parametrar och kolla om de är motiverade. Både i signaturer och typer, tex D i VariableSecondDerivative. Kan vi använda promote istället? | 25 - [ ] Gå igenom alla typ parametrar och kolla om de är motiverade. Både i signaturer och typer, tex D i VariableSecondDerivative. Kan vi använda promote istället? |
| 26 - [ ] Kolla att vi har @inbounds och @propagate_inbounds på rätt ställen | 26 - [ ] Kolla att vi har @inbounds och @propagate_inbounds på rätt ställen |
| 27 - [ ] Kolla att vi gör boundschecks överallt och att de är markerade med @boundscheck | 27 - [ ] Kolla att vi gör boundschecks överallt och att de är markerade med @boundscheck |
| 28 - [ ] Kolla att vi har @inline på rätt ställen | 28 - [ ] Kolla att vi har @inline på rätt ställen |
| 29 - [ ] Profilera | 29 - [ ] Profilera |
| 30 | |
| 31 - [ ] Keep a lookout for allowing dependencies of package extensions (https://github.com/JuliaLang/Pkg.jl/issues/3641) This should be used to simplify the matrix extensions so that you don't have to load Tokens which is only used internally to the extension | |
| 32 | |
| 33 ### Grids | |
| 34 | |
| 35 - [ ] Multiblock grids | |
| 36 - [ ] Periodic grids | |
| 37 - [ ] Grids with modified boundary closures | |
| 38 - [ ] Support indexing with `:`. | |
| 39 | |
| 40 | |
| 41 ### Benchmarks | |
| 42 - [ ] Benchmarks for all grid indexing (focused on allocation) | |
| 43 - [ ] Benchmarks for indexing of lazy grid functions | |
| 44 - [ ] Add benchmarks for range type in EquidistantGrid. (LinRange vs StepRange) |
