@@ -60,14 +60,16 @@ function is_variable(x)
60
60
end
61
61
62
62
"""
63
- new_derived_named_parameter(variable, value, extra::String, prefix = true )
63
+ new_derived_named_parameter(variable, value, extra::String; kw... )
64
64
65
65
If `value isa Num` return `value`.
66
66
If `value isa LiteralParameter`, replace it with its literal value.
67
67
Otherwise, create a new MTK `@parameter`
68
68
whose name is created from `variable` (which could also be just a `Symbol`) by adding the `extra` string.
69
- If `prefix == false` the `extra` is added at the end after a `_`. Otherwise
69
+ If the keyword `prefix == false` the `extra` is added at the end after a `_`. Otherwise
70
70
it is added at the start, then a `_` and then the variable name.
71
+ The keyword `connector = "_"` is what connects the `extra` with the name.
72
+
71
73
72
74
For example,
73
75
@@ -77,14 +79,14 @@ p = new_derived_named_parameter(x, 0.5, "τ")
77
79
```
78
80
Now `p` will be a parameter with name `:τ_x` and default value `0.5`.
79
81
"""
80
- new_derived_named_parameter (v, value:: Num , args ... ) = value
81
- new_derived_named_parameter (v, value:: LiteralParameter , args ... ) = value. p
82
- function new_derived_named_parameter (v, value:: Real , extra, prefix = true )
82
+ new_derived_named_parameter (v, value:: Num , extra :: String ; kw ... ) = value
83
+ new_derived_named_parameter (v, value:: LiteralParameter , extra :: String ; kw ... ) = value. p
84
+ function new_derived_named_parameter (v, value:: Real , extra; connector = " _ " , prefix = true )
83
85
n = string (ModelingToolkit. getname (v))
84
86
newstring = if ! (prefix)
85
- n* " _ " * extra
87
+ n* connector * extra
86
88
else
87
- extra* " _ " * n
89
+ extra* connector * n
88
90
end
89
91
new_derived_named_parameter (newstring, value)
90
92
end
0 commit comments