Skip to content

Commit d924b4a

Browse files
committed
Allow TimeDerivative(p::Process).
1 parent 9fd1af5 commit d924b4a

File tree

3 files changed

+12
-1
lines changed

3 files changed

+12
-1
lines changed

CHANGELOG.md

+4
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,10 @@
33
ProcessBasedModelling.jl follows semver 2.0.
44
Changelog is kept with respect to v1 release.
55

6+
## 1.4
7+
8+
- Allow `TimeDerivative(p::Process)`.
9+
610
## 1.3
711

812
- Better error messages for duplicate processes given to `process_to_mtkmodel`.

Project.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name = "ProcessBasedModelling"
22
uuid = "ca969041-2cf3-4b10-bc21-86f4417093eb"
33
authors = ["Datseris <[email protected]>"]
4-
version = "1.3.1"
4+
version = "1.4.0"
55

66
[deps]
77
ModelingToolkit = "961ee093-0014-501f-94e3-6117800e7a78"

src/processes_basic.jl

+7
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,13 @@ TimeDerivative(a, b) = TimeDerivative(a, b, nothing)
4848
timescale(e::TimeDerivative) = e.timescale
4949
rhs(e::TimeDerivative) = e.expression
5050

51+
"""
52+
TimeDerivative(p::Process [, τ])
53+
54+
Turn an existing process into a time derivative by creating
55+
`τ * Differential(t)(LHS(p)) ~ RHS(p)`.
56+
"""
57+
TimeDerivative(p::Process, t = nothing) = TimeDerivative(lhs(p), rhs(p), τ)
5158

5259
"""
5360
ExpRelaxation(variable, expression [, τ]) <: Process

0 commit comments

Comments
 (0)