Skip to content

Commit 7e5da57

Browse files
Merge pull request #72 from JuliaDiffEq/myb/unit
Ensure that the returned values have correct units
2 parents c8d6553 + 8849fee commit 7e5da57

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

src/systems/diffeqs/diffeqsystem.jl

+5-1
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,11 @@ function generate_ode_function(sys::DiffEqSystem;version = ArrayFunction)
4747
:((du,u,p,t)->$(toexpr(block)))
4848
elseif version == SArrayFunction
4949
dvar_exprs = [:($(Symbol("$(sys.dvs[i].name)_$(sys.ivs[1].name)"))) for i in 1:length(sys.dvs)]
50-
svector_expr = :(typeof(u)($(dvar_exprs...)))
50+
svector_expr = quote
51+
E = eltype(tuple($(dvar_exprs...)))
52+
T = StaticArrays.similar_type(typeof(u), E)
53+
T($(dvar_exprs...))
54+
end
5155
exprs = vcat(var_exprs,param_exprs,sys_exprs,svector_expr)
5256
block = expr_arr_to_block(exprs)
5357
:((u,p,t)->$(toexpr(block)))

0 commit comments

Comments
 (0)