Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use abstract types for projection #391

Merged
merged 71 commits into from
Jul 20, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
71 commits
Select commit Hold shift + click to select a range
ac64328
abstract types for projection
mcabbott Jul 6, 2021
70a1707
additions
mcabbott Jul 6, 2021
8a5c58e
Bool etc.
mcabbott Jul 6, 2021
7163eb3
generic?
mcabbott Jul 7, 2021
af78d48
3 suggestions
mcabbott Jul 7, 2021
006cd18
bugs
mcabbott Jul 7, 2021
cc7c685
rm eltype
mcabbott Jul 7, 2021
a87301e
add method for preserving Diagonal \subspace Symmetric
mcabbott Jul 7, 2021
215419d
rm proj_rrule
mcabbott Jul 7, 2021
9dec2b9
add MultiProject
mcabbott Jul 7, 2021
90ffbe6
tidy up
mcabbott Jul 7, 2021
9c860ad
sparsevector
mcabbott Jul 7, 2021
8e1ad0a
sparse matrices
mcabbott Jul 7, 2021
6c5484b
style, headings
mcabbott Jul 7, 2021
3cc9204
un-tuple
mcabbott Jul 7, 2021
c72dbb1
arrays of arrays, etc
mcabbott Jul 7, 2021
7e627b0
Tridiagonal
mcabbott Jul 7, 2021
33d965f
zero-arrays and Ref
mcabbott Jul 8, 2021
9be368e
fixup + add tests
mcabbott Jul 8, 2021
8d91bca
more tests
mcabbott Jul 8, 2021
674fef7
fix 1.0
mcabbott Jul 8, 2021
52a2f8c
always include projector in at_scalar_rule
mcabbott Jul 9, 2021
f2900bb
allow rationals, float only integers & irrationals
mcabbott Jul 9, 2021
f2b96e5
fix tests
mcabbott Jul 9, 2021
2a7ed37
rm tuple -> array
mcabbott Jul 9, 2021
475703a
tests
mcabbott Jul 9, 2021
570edfe
send more number types to Real
mcabbott Jul 9, 2021
77253ae
fix tests
mcabbott Jul 10, 2021
ec7d0e7
nicer errors
mcabbott Jul 10, 2021
d1a8dab
trivial ProjectTo, etc
mcabbott Jul 10, 2021
bc05519
fixup
mcabbott Jul 10, 2021
7470d1a
more tests
mcabbott Jul 10, 2021
18fad09
Apply 3 suggestions
mcabbott Jul 13, 2021
330fe06
doc + comment tweaks
mcabbott Jul 13, 2021
ee834a0
add one Tangent method, and several examples
mcabbott Jul 13, 2021
024e96e
add SymTridiagonal and methods using Tangent
mcabbott Jul 13, 2021
6f936ab
Revert "add one Tangent method, and several examples"
mcabbott Jul 13, 2021
89c3dc3
replace Tangent with another path
mcabbott Jul 13, 2021
95d4049
reduce generic thunk methods to 1, with a big red warning
mcabbott Jul 13, 2021
e021057
change details of Zero handling
mcabbott Jul 13, 2021
822cee1
comments, style
mcabbott Jul 13, 2021
aec9334
Revert "always include projector in at_scalar_rule" and its tests
mcabbott Jul 13, 2021
8faaf1f
doc tweaks and a test
mcabbott Jul 13, 2021
edd8a0d
better Ref{Any}, plus
mcabbott Jul 13, 2021
7579f0e
test on OffsetArrays, why not
mcabbott Jul 14, 2021
868c4bd
allocation tests
mcabbott Jul 14, 2021
c92d4ff
fixes
mcabbott Jul 14, 2021
d73a533
skip on 1.0
mcabbott Jul 14, 2021
f070675
0 alloc diag
mcabbott Jul 14, 2021
e25cb6e
pass-through for non-diff parents
mcabbott Jul 14, 2021
8a14f83
fix 1.0
mcabbott Jul 14, 2021
008f4ef
unify array handling
mcabbott Jul 14, 2021
997a84d
tidy up using _maybe_projector, _always_projector
mcabbott Jul 14, 2021
e125797
rm InplaceableThunk
mcabbott Jul 14, 2021
db51820
sparse improvements
mcabbott Jul 15, 2021
32cab7e
diagonal etc
mcabbott Jul 16, 2021
cb02943
row-array weirdness, evil case
mcabbott Jul 16, 2021
134c9be
more
mcabbott Jul 16, 2021
1ead5e2
fixes
mcabbott Jul 16, 2021
067ad5c
fixes
mcabbott Jul 16, 2021
797b626
skip
mcabbott Jul 16, 2021
c03f25f
skip
mcabbott Jul 16, 2021
ca247b3
Apply 3 suggestions
mcabbott Jul 16, 2021
869e2a5
disallow arrays of symbols etc
mcabbott Jul 16, 2021
cb36a52
rm ProjectTo{Any} completely
mcabbott Jul 16, 2021
1cfb04f
comments
mcabbott Jul 16, 2021
961f775
skip one alloc test
mcabbott Jul 16, 2021
8e2666b
hasproperty
mcabbott Jul 16, 2021
a915233
alloc tests
mcabbott Jul 16, 2021
2e06e54
Revert "hasproperty" -- doesn't exist on 1.0
mcabbott Jul 16, 2021
0dedf92
code style
oxinabox Jul 20, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,16 @@ SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
BenchmarkTools = "0.5"
Compat = "2, 3"
FiniteDifferences = "0.10"
OffsetArrays = "1"
StaticArrays = "0.11, 0.12, 1"
julia = "1"

[extras]
BenchmarkTools = "6e4b80f9-dd63-53aa-95a3-0cdb28fa8baf"
FiniteDifferences = "26cc04aa-876d-5657-8c51-4c34ba976000"
OffsetArrays = "6fe1bfb0-de20-5000-8ca7-80f57d26f881"
StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"

[targets]
test = ["Test", "BenchmarkTools", "FiniteDifferences", "StaticArrays"]
test = ["Test", "BenchmarkTools", "FiniteDifferences", "OffsetArrays", "StaticArrays"]
2 changes: 1 addition & 1 deletion docs/make.jl
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ DocMeta.setdocmeta!(
using Random
Random.seed!(0) # frule doctest shows output

using ChainRulesCore
using ChainRulesCore, LinearAlgebra
# These rules are all actually defined in ChainRules.jl, but we redefine them here to
# avoid the dependency.
@scalar_rule(sin(x), cos(x)) # frule and rrule doctest
Expand Down
Loading