Skip to content

Commit facd4c4

Browse files
committed
Propagate u0 function for BVPs
1 parent 3a27916 commit facd4c4

File tree

2 files changed

+23
-1
lines changed

2 files changed

+23
-1
lines changed

Project.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name = "DiffEqBase"
22
uuid = "2b5f629d-d688-5b77-993f-72d75c75574e"
33
authors = ["Chris Rackauckas <[email protected]>"]
4-
version = "6.137.1"
4+
version = "6.138.0"
55

66
[deps]
77
ArrayInterface = "4fba245c-0d91-5ea0-9b3e-6abc04ee57a9"

src/solve.jl

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1251,6 +1251,28 @@ function get_concrete_u0(prob, isadapt, t0, kwargs)
12511251
_u0
12521252
end
12531253

1254+
function get_concrete_u0(prob::BVProblem, isadapt, t0, kwargs)
1255+
if haskey(kwargs, :u0)
1256+
u0 = kwargs[:u0]
1257+
else
1258+
u0 = prob.u0
1259+
end
1260+
1261+
isadapt && eltype(u0) <: Integer && (u0 = float.(u0))
1262+
1263+
_u0 = handle_distribution_u0(u0)
1264+
1265+
if isinplace(prob) && (_u0 isa Number || _u0 isa SArray)
1266+
throw(IncompatibleInitialConditionError())
1267+
end
1268+
1269+
if _u0 isa Tuple
1270+
throw(TupleStateError())
1271+
end
1272+
1273+
return _u0
1274+
end
1275+
12541276
function get_concrete_du0(prob, isadapt, t0, kwargs)
12551277
if eval_u0(prob.du0)
12561278
du0 = prob.du0(prob.p, t0)

0 commit comments

Comments
 (0)