@@ -54,13 +54,17 @@ struct DiscreteSystem <: AbstractTimeDependentSystem
54
54
in `DiscreteSystem`.
55
55
"""
56
56
default_p:: Dict
57
- function DiscreteSystem (discreteEqs, iv, dvs, ps, var_to_name, ctrls, observed, name, systems, default_u0, default_p; checks:: Bool = true )
57
+ """
58
+ type: type of the system
59
+ """
60
+ connection_type:: Any
61
+ function DiscreteSystem (discreteEqs, iv, dvs, ps, var_to_name, ctrls, observed, name, systems, default_u0, default_p, connection_type; checks:: Bool = true )
58
62
if checks
59
63
check_variables (dvs, iv)
60
64
check_parameters (ps, iv)
61
65
all_dimensionless ([dvs;ps;iv;ctrls]) || check_units (discreteEqs)
62
66
end
63
- new (discreteEqs, iv, dvs, ps, var_to_name, ctrls, observed, name, systems, default_u0, default_p)
67
+ new (discreteEqs, iv, dvs, ps, var_to_name, ctrls, observed, name, systems, default_u0, default_p, connection_type )
64
68
end
65
69
end
66
70
@@ -78,6 +82,7 @@ function DiscreteSystem(
78
82
default_u0= Dict (),
79
83
default_p= Dict (),
80
84
defaults= _merge (Dict (default_u0), Dict (default_p)),
85
+ connection_type= nothing ,
81
86
kwargs... ,
82
87
)
83
88
name === nothing && throw (ArgumentError (" The `name` keyword must be provided. Please consider using the `@named` macro" ))
@@ -101,7 +106,7 @@ function DiscreteSystem(
101
106
if length (unique (sysnames)) != length (sysnames)
102
107
throw (ArgumentError (" System names must be unique." ))
103
108
end
104
- DiscreteSystem (eqs, iv′, dvs′, ps′, var_to_name, ctrl′, observed, name, systems, default_u0, default_p, kwargs... )
109
+ DiscreteSystem (eqs, iv′, dvs′, ps′, var_to_name, ctrl′, observed, name, systems, default_u0, default_p, connection_type, kwargs... )
105
110
end
106
111
107
112
"""
0 commit comments