misc/dotdraw.py

This example looks at the dot graph drawing functionality, only available in python.

View output (PDF) | source (python)

1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
20 
21 
22 
23 
24 from casadi import *
25 from casadi.tools import *
26 
27 
28 
29 a = SX.sym("a")
30 b = SX.sym("b")
31 
32 c = sin(a**5 + b)
33 
34 c = c - b/ sqrt(fabs(c))
35 print(c)
36 
37 dotdraw(c)
38 
39 
40 
41 dotdraw(SX.sym("x",Sparsity.lower(3)))
42 
43 dotdraw(SX.sym("x",Sparsity.lower(3))**2)
44 
45 
46 
47 x = MX.sym("x",Sparsity.lower(2))
48 y = MX.sym("y",Sparsity.lower(2))
49 
50 z = MX.sym("z",4,2)
51 
52 zz = x+y+6
53 
54 dotdraw(zz)
55 
56 f = Function("magic", [z,y],[z+x[0,0],x-y],{"allow_free":True})
57 
58 z,z2 = f(vertcat(x,y),zz.T)
59 
60 z = z[:2,:] +x + cos(x) - sin(x) / tan(z2)
61 
62 dotdraw(z)