@@ -4,33 +4,21 @@ mutable struct DiffEqSystem <: AbstractSystem
4
4
dvs:: Vector{Variable}
5
5
vs:: Vector{Variable}
6
6
ps:: Vector{Variable}
7
- iv_name:: Symbol
8
- dv_name:: Symbol
9
- p_name:: Symbol
10
7
jac:: Matrix{Expression}
11
8
end
12
9
13
- function DiffEqSystem (eqs, ivs, dvs, vs, ps)
14
- iv_name = ivs[1 ]. subtype
15
- dv_name = dvs[1 ]. subtype
16
- p_name = isempty (ps) ? :Parameter : ps[1 ]. subtype
17
- DiffEqSystem (eqs, ivs, dvs, vs, ps, iv_name, dv_name, p_name, Matrix {Expression} (undef,0 ,0 ))
18
- end
10
+ DiffEqSystem (eqs, ivs, dvs, vs, ps) = DiffEqSystem (eqs, ivs, dvs, vs, ps, Matrix {Expression} (undef,0 ,0 ))
19
11
20
- function DiffEqSystem (eqs; iv_name = :IndependentVariable ,
21
- dv_name = :Unknown ,
22
- p_name = :Parameter )
23
- predicates = [_is_derivative, _subtype (iv_name), _is_dependent, _subtype (dv_name), _subtype (p_name)]
12
+ function DiffEqSystem (eqs)
13
+ predicates = [_is_derivative, _subtype (:IndependentVariable ), _is_dependent, _subtype (:Unknown ), _subtype (:Parameter )]
24
14
_, ivs, dvs, vs, ps = extract_elements (eqs, predicates)
25
- DiffEqSystem (eqs, ivs, dvs, vs, ps, iv_name, dv_name, p_name, Matrix {Expression} (undef,0 ,0 ))
15
+ DiffEqSystem (eqs, ivs, dvs, vs, ps, Matrix {Expression} (undef,0 ,0 ))
26
16
end
27
17
28
- function DiffEqSystem (eqs, ivs;
29
- dv_name = :Unknown ,
30
- p_name = :Parameter )
31
- predicates = [_is_derivative, _is_dependent, _subtype (dv_name), _subtype (p_name)]
18
+ function DiffEqSystem (eqs, ivs)
19
+ predicates = [_is_derivative, _is_dependent, _subtype (:Unknown ), _subtype (:Parameter )]
32
20
_, dvs, vs, ps = extract_elements (eqs, predicates)
33
- DiffEqSystem (eqs, ivs, dvs, vs, ps, ivs[ 1 ] . subtype, dv_name, p_name, Matrix {Expression} (undef,0 ,0 ))
21
+ DiffEqSystem (eqs, ivs, dvs, vs, ps, Matrix {Expression} (undef,0 ,0 ))
34
22
end
35
23
36
24
function generate_ode_function (sys:: DiffEqSystem ;version = ArrayFunction)
0 commit comments