From 7c8c002dd0c49131985a3f25e1d920dece044ef6 Mon Sep 17 00:00:00 2001
From: Oscar Gustafsson <oscar.gustafsson@gmail.com>
Date: Wed, 3 May 2023 11:43:45 +0200
Subject: [PATCH] Add SFG for scheduling example in lab

---
 examples/schedulingexample.py | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)
 create mode 100644 examples/schedulingexample.py

diff --git a/examples/schedulingexample.py b/examples/schedulingexample.py
new file mode 100644
index 00000000..e3e170a3
--- /dev/null
+++ b/examples/schedulingexample.py
@@ -0,0 +1,28 @@
+"""
+Example SFG used for scheduling in the TSTE87 course.
+
+Node numbering from the original SFG used with the Matlab toolbox.::
+
+    sfg=addoperand([],'in',1,1);
+    sfg=addoperand(sfg,'constmult',1,1,2,0.25);
+    sfg=addoperand(sfg,'constmult',2,4,5,0.75);
+    sfg=addoperand(sfg,'add',1,[2 1],6);
+    sfg=addoperand(sfg,'add',2,[2 5],3);
+    sfg=addoperand(sfg,'add',3,[6 4],7);
+    sfg=addoperand(sfg,'delay',1,3,4);
+    sfg=addoperand(sfg,'out',1,7);
+"""
+from b_asic.signal_flow_graph import SFG
+from b_asic.special_operations import Delay, Input, Output
+
+node1 = Input()
+node2 = node1 * 0.25
+node6 = node2 + node1
+node4 = Delay()
+node7 = node6 + node4
+out = Output(node7)
+node5 = 0.75 * node4
+node3 = node2 + node5
+node4 << node3
+
+sfg = SFG([node1], [out], name="Scheduling example")
-- 
GitLab