@@ -14,13 +14,13 @@ function finite_difference!(df::AbstractArray{<:Number}, f, x::AbstractArray{<:N
14
14
fdtype:: DataType = Val{:central }, funtype:: DataType = Val{:Real }, wrappertype:: DataType = Val{:Default },
15
15
fx:: Union{Void,AbstractArray{<:Number}} = nothing , epsilon:: Union{Void,AbstractArray{<:Real}} = nothing , return_type:: DataType = eltype (x))
16
16
17
- finite_difference ! (df, f, x, fdtype, funtype, wrappertype, fx, return_type)
17
+ _finite_difference ! (df, f, x, fdtype, funtype, wrappertype, fx, epsilon , return_type)
18
18
end
19
19
20
20
# Fallbacks for real-valued callables start here.
21
- function finite_difference ! (df:: AbstractArray{<:Real} , f, x:: AbstractArray{<:Real} ,
21
+ function _finite_difference ! (df:: AbstractArray{<:Real} , f, x:: AbstractArray{<:Real} ,
22
22
fdtype:: DataType , :: Type{Val{:Real}} , :: Type{Val{:Default}} ,
23
- fx:: Union{Void,AbstractArray{<:Real}} = nothing , epsilon:: Union{Void,AbstractArray{<:Real}} = nothing , return_type:: DataType = eltype (x) )
23
+ fx, epsilon, return_type)
24
24
25
25
epsilon_elemtype = compute_epsilon_elemtype (epsilon, x)
26
26
if typeof (epsilon) == Void
49
49
# Fallbacks for real-valued callables end here.
50
50
51
51
# Fallbacks for complex-valued callables start here.
52
- function finite_difference ! (df:: AbstractArray{<:Number} , f, x:: AbstractArray{<:Number} ,
52
+ function _finite_difference ! (df:: AbstractArray{<:Number} , f, x:: AbstractArray{<:Number} ,
53
53
fdtype:: DataType , :: Type{Val{:Complex}} , :: Type{Val{:Default}} ,
54
- fx:: Union{Void,AbstractArray{<:Number}} = nothing , epsilon:: Union{Void,AbstractArray{<:Real}} = nothing , return_type:: DataType = eltype (x) )
54
+ fx, epsilon, return_type)
55
55
56
56
if (fdtype == Val{:forward } || fdtype == Val{:central }) && typeof (epsilon) == Void
57
57
if eltype (x) <: Real
82
82
Optimized implementations for StridedArrays.
83
83
=#
84
84
# for R -> R^n
85
- function finite_difference ! (df:: StridedArray{<:Real} , f, x:: Real ,
85
+ function _finite_difference ! (df:: StridedArray{<:Real} , f, x:: Real ,
86
86
fdtype:: DataType , :: Type{Val{:Real}} , :: Type{Val{:Default}} ,
87
- fx:: Union{Void,StridedArray{<:Real}} = nothing , epsilon:: Union{Void,StridedArray{<:Real}} = nothing , return_type:: DataType = eltype (x) )
87
+ fx, epsilon, return_type)
88
88
89
89
epsilon_elemtype = compute_epsilon_elemtype (epsilon, x)
90
90
if fdtype == Val{:forward }
@@ -107,9 +107,9 @@ function finite_difference!(df::StridedArray{<:Real}, f, x::Real,
107
107
end
108
108
109
109
# for R^n -> R^n
110
- function finite_difference ! (df:: StridedArray{<:Real} , f, x:: StridedArray{<:Real} ,
110
+ function _finite_difference ! (df:: StridedArray{<:Real} , f, x:: StridedArray{<:Real} ,
111
111
fdtype:: DataType , :: Type{Val{:Real}} , :: Type{Val{:Default}} ,
112
- fx:: Union{Void,StridedArray{<:Real}} = nothing , epsilon:: Union{Void,StridedArray{<:Real}} = nothing , return_type:: DataType = eltype (x) )
112
+ fx, epsilon, return_type)
113
113
114
114
epsilon_elemtype = compute_epsilon_elemtype (epsilon, x)
115
115
if fdtype == Val{:forward }
@@ -143,9 +143,9 @@ function finite_difference!(df::StridedArray{<:Real}, f, x::StridedArray{<:Real}
143
143
end
144
144
145
145
# C -> C^n
146
- function finite_difference ! (df:: StridedArray{<:Number} , f, x:: Number ,
146
+ function _finite_difference ! (df:: StridedArray{<:Number} , f, x:: Number ,
147
147
fdtype:: DataType , :: Type{Val{:Complex}} , :: Type{Val{:Default}} ,
148
- fx:: Union{Void,StridedArray{<:Number}} = nothing , epsilon:: Union{Void,StridedArray{<:Real}} = nothing , return_type:: DataType = eltype (x) )
148
+ fx, epsilon, return_type)
149
149
150
150
epsilon_elemtype = compute_epsilon_elemtype (epsilon, x)
151
151
if fdtype == Val{:forward }
@@ -165,9 +165,9 @@ function finite_difference!(df::StridedArray{<:Number}, f, x::Number,
165
165
end
166
166
167
167
# C^n -> C^n
168
- function finite_difference ! (df:: StridedArray{<:Number} , f, x:: StridedArray{<:Number} ,
168
+ function _finite_difference ! (df:: StridedArray{<:Number} , f, x:: StridedArray{<:Number} ,
169
169
fdtype:: DataType , :: Type{Val{:Complex}} , :: Type{Val{:Default}} ,
170
- fx:: Union{Void,StridedArray{<:Number}} = nothing , epsilon:: Union{Void,StridedArray{<:Real}} = nothing , return_type:: DataType = eltype (x) )
170
+ fx, epsilon, return_type)
171
171
172
172
epsilon_elemtype = compute_epsilon_elemtype (epsilon, x)
173
173
if fdtype == Val{:forward }
0 commit comments