comparison TODO.md @ 1858:4a9be96f2569 feature/documenter_logo

Merge default
author Jonatan Werpers <jonatan@werpers.com>
date Sun, 12 Jan 2025 21:18:44 +0100
parents fe058a0ebd97
children
comparison
equal deleted inserted replaced
1857:ffde7dad9da5 1858:4a9be96f2569
1 # TODO 1 # TODO
2 2
3 ## Skämskudde 3 ## Organization
4 - [ ] Ändra namn på variabler och funktioner så att det följer style-guide 4 - [ ] Split up Notes.md in several files
5 - [ ] Skriv tester
6 5
7 ## Coding 6 ## Coding
8 - [ ] Add new Laplace operator to DiffOps, probably named WaveEqOp(?!!?)
9 - [ ] 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.
10 - [ ] Add a quick and simple way of running all tests for all subpackages.
11 - [ ] Replace getindex hack for flattening tuples with flatten_tuple. (eg. `getindex.(range_size.(L.D2),1)`)
12 - [ ] Use `@inferred` in a lot of tests.
13 - [ ] 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
14 - [ ] Add check for correct domain sizes to lazy tensor operations using SizeMismatch
15 - [ ] 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
16 - [ ] Add boundschecking in TensorMappingApplication
17 - [ ] Start renaming things in LazyTensors
18 - [ ] Clean up RegionIndices 10 - [ ] Clean up RegionIndices
19 1. [ ] Write tests for how things should work 11 1. [ ] Write tests for how things should work
20 2. [ ] Update RegionIndices accordingly 12 2. [ ] Update RegionIndices accordingly
21 3. [ ] Fix the rest of the library 13 3. [ ] Fix the rest of the library
22 Should getregion also work for getregion(::Colon,...) 14 Should getregion also work for getregion(::Colon,...)
23 - [ ] Add possibility to create tensor mapping application with `()`, e.g `D1(v) <=> D1*v`?
24 - [ ] 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.
25 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)
17 - [ ] Samla noggrannhets- och SBP-ness-tester för alla operatorer på ett ställe
18 - [ ] Move export statements to top of each module
19 - [ ] Implement apply_transpose for
20 - [ ] ElementwiseTensorOperation
21 - [ ] VolumeOperator
22 - [ ] Laplace
26 23
27 ## Repo
28 - [ ] Rename repo to Sbplib.jl
29 24
30 # Wrap up tasks 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?
31 - [ ] 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
32 - [ ] 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
33 - [ ] Kolla att vi har @inline på rätt ställen 28 - [ ] Kolla att vi har @inline på rätt ställen
34 - [ ] 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)