Skip to content

Commit d525ac1

Browse files
restructure macro choices
1 parent ec4cd21 commit d525ac1

File tree

4 files changed

+10
-41
lines changed

4 files changed

+10
-41
lines changed

README.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -109,9 +109,8 @@ to be more specific about what to not calculate. In increasing order of calculat
109109

110110
```julia
111111
@ode_def_bare
112-
@ode_def_noinvjac
113-
@ode_def_noinvhes
114-
@ode_def_nohes
112+
@ode_def
113+
@ode_def_all
115114
```
116115

117116
### Extra Functions

src/ParameterizedFunctions.jl

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,7 @@ module ParameterizedFunctions
3333
include("macros.jl")
3434
include("utils.jl")
3535

36-
export @ode_def, @fem_def, ode_def_opts,@ode_def_bare, @ode_def_nohes,
37-
@ode_def_noinvjac, @ode_def_noinvhes,@ode_def_noinvjac
38-
36+
export @ode_def,ode_def_opts,@ode_def_bare, @ode_def_all
3937
end # module
4038

4139

src/macros.jl

Lines changed: 2 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ macro ode_def(name,ex,params...)
44
:build_jac => true,
55
:build_expjac => false,
66
:build_invjac => false,
7-
:build_invW => true,
7+
:build_invW => false,
88
:build_hes => false,
99
:build_invhes => false,
1010
:build_dpfuncs => true)
@@ -26,21 +26,7 @@ macro ode_def_bare(name,ex,params...)
2626
ode_def_opts(name,opts,ex,params...)
2727
end
2828

29-
macro ode_def_nohes(name,ex,params...)
30-
opts = Dict{Symbol,Bool}(
31-
:build_tgrad => true,
32-
:build_jac => true,
33-
:build_expjac => false,
34-
:build_invjac => false,
35-
:build_invW => true,
36-
:build_hes => false,
37-
:build_invhes => false,
38-
:build_dpfuncs => true)
39-
name isa Expr ? ode_def_opts(gensym(),opts,name,ex,params...) :
40-
ode_def_opts(name,opts,ex,params...)
41-
end
42-
43-
macro ode_def_noinvhes(name,ex,params...)
29+
macro ode_def_all(name,ex,params...)
4430
opts = Dict{Symbol,Bool}(
4531
:build_tgrad => true,
4632
:build_jac => true,
@@ -53,17 +39,3 @@ macro ode_def_noinvhes(name,ex,params...)
5339
name isa Expr ? ode_def_opts(gensym(),opts,name,ex,params...) :
5440
ode_def_opts(name,opts,ex,params...)
5541
end
56-
57-
macro ode_def_noinvjac(name,ex,params...)
58-
opts = Dict{Symbol,Bool}(
59-
:build_tgrad => true,
60-
:build_jac => true,
61-
:build_expjac => false,
62-
:build_invjac => false,
63-
:build_invW => false,
64-
:build_hes => false,
65-
:build_invhes => false,
66-
:build_dpfuncs => true)
67-
name isa Expr ? ode_def_opts(gensym(),opts,name,ex,params...) :
68-
ode_def_opts(name,opts,ex,params...)
69-
end

test/runtests.jl

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,22 +13,22 @@ end a b c d
1313

1414
@test DiffEqBase.__has_syms(f_t)
1515

16-
f_t2 = @ode_def_noinvjac SymCheck2 begin # Checks for error due to symbol on 1
16+
f_t2 = @ode_def SymCheck2 begin # Checks for error due to symbol on 1
1717
dx = 1
1818
dy = -c*y + d*x*y*t^2
1919
end a b c d
2020

21-
f_t3 = @ode_def_noinvjac ExprCheck begin # Checks for error due to symbol on 1
21+
f_t3 = @ode_def ExprCheck begin # Checks for error due to symbol on 1
2222
dx = a*x - b*x*y
2323
dy = -c*y + d*x*y
2424
end a b c d # Change to π after unicode fix
2525

26-
f = @ode_def LotkaVolterra begin
26+
f = @ode_def_all LotkaVolterra begin
2727
dx = a*x - b*x*y
2828
dy = -c*y + d*x*y
2929
end a b c d
3030

31-
f_2 = @ode_def_nohes LotkaVolterra3 begin
31+
f_2 = @ode_def LotkaVolterra3 begin
3232
dx = a*x - b^2*x*y
3333
dy = -c*y + d*x*y
3434
end a b c d
@@ -84,7 +84,7 @@ println("Test booleans")
8484
@code_llvm DiffEqBase.has_paramjac(f)
8585

8686
println("Test difficult differentiable")
87-
NJ = @ode_def_nohes DiffDiff begin
87+
NJ = @ode_def DiffDiff begin
8888
dx = a*x - b*x*y
8989
dy = -c*y + erf(x*y/d)
9090
end a b c d

0 commit comments

Comments
 (0)