Skip to content

Commit eb239c0

Browse files
Merge pull request #64 from SciML/latexify
Add Latexify recipe
2 parents fe4fe43 + 63dee17 commit eb239c0

File tree

4 files changed

+14
-2
lines changed

4 files changed

+14
-2
lines changed

Project.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ version = "5.0.3"
66
[deps]
77
DataStructures = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8"
88
DiffEqBase = "2b5f629d-d688-5b77-993f-72d75c75574e"
9+
Latexify = "23fbe1c1-3f47-55db-b15f-69d7ec21a316"
910
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
1011
ModelingToolkit = "961ee093-0014-501f-94e3-6117800e7a78"
1112

src/ParameterizedFunctions.jl

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ __precompile__()
22

33
module ParameterizedFunctions
44

5-
using DataStructures, DiffEqBase, ModelingToolkit
5+
using DataStructures, DiffEqBase, ModelingToolkit, Latexify
66

77
import LinearAlgebra
88

@@ -13,6 +13,7 @@ module ParameterizedFunctions
1313
include("utils.jl")
1414
include("dict_build.jl")
1515
include("macros.jl")
16+
include("latexify.jl")
1617

1718
export @ode_def,ode_def_opts,@ode_def_bare, @ode_def_all
1819
end # module

src/latexify.jl

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
@latexrecipe function f(func::DiffEqBase.AbstractParameterizedFunction)
2+
return latexify(func.sys)
3+
end

test/runtests.jl

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
using ParameterizedFunctions, DiffEqBase
2-
using Test, InteractiveUtils
2+
using Test, InteractiveUtils, Latexify
33

44
using SpecialFunctions
55

@@ -11,6 +11,13 @@ f_t = @ode_def SymCheck begin # Checks for error due to symbol on 1
1111
dy = -c*y + d*x*y*t^2
1212
end a b c d
1313

14+
@test latexify(f_t) ==
15+
raw"$\begin{align}
16+
\frac{dx(t)}{dt} =& \mathrm{x}\left( t \right) 1 \\
17+
\frac{dy(t)}{dt} =& \mathrm{y}\left( t \right) \left( - c \right) + d \mathrm{x}\left( t \right) \mathrm{y}\left( t \right) t^{2}
18+
\end{align}
19+
$"
20+
1421
@test DiffEqBase.__has_syms(f_t)
1522

1623
f_t2 = @ode_def SymCheck2 begin # Checks for error due to symbol on 1

0 commit comments

Comments
 (0)