From 04e19bfbfc9ccdc79ee80ef7bcadd8c29f593da8 Mon Sep 17 00:00:00 2001 From: "Giammarco, Kristin M" <kmgiamma@nps.edu> Date: Wed, 16 Jun 2021 22:57:03 +0000 Subject: [PATCH] Upload New File --- Example59_Cycle_Pattern.mp | 57 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 Example59_Cycle_Pattern.mp diff --git a/Example59_Cycle_Pattern.mp b/Example59_Cycle_Pattern.mp new file mode 100644 index 0000000..8d75d0f --- /dev/null +++ b/Example59_Cycle_Pattern.mp @@ -0,0 +1,57 @@ +/*************************************** + Cycle_ISP Model for Systems Journal Article + Available at https://www.mdpi.com/2079-8954/6/2/18 + created 2018-03-10 by K.Giammarco + +The model below describes a cycle in terms of a +series of one or more steps, each step either +moving the system "forward" or "backward" as the +process unfolds. "Forward" and "backward" are +generic terms that may be substituted with synonyms +such as "up" and "down," "in" and "out", "over" +and "under", "increase" and "decrease", etc., or +discinyms (discipline-specific synonyms) as they +may appear in the preferred domain taxonomy. + +Run the model for scopes 2, and 3 and inspect +the different possible patterns for Cycle. +Running at scope 1 will generate zero traces because +of the ENSURE constraint on line 29. + +****************************************/ + +SCHEMA Cycle_ISP_v2 + +ROOT Cycle: (+ Initial_condition + (+ ( Step_forward | Step_backward ) +) + End_condition +); + +ENSURE #( Step_forward | Step_backward ) > 1; + + + +/*Check for Positive Reinforcement Template */ +IF EXISTS DISJ $a: Step_forward, $b: Step_forward + $a PRECEDES $b THEN + SAY("Positive Reinforcement Detected"); FI; + +/*Check for Negative Reinforcement Template */ +IF EXISTS DISJ $a: Step_backward, $b: Step_backward + $a PRECEDES $b THEN + SAY("Negative Reinforcement Detected"); FI; + +/*Check for Oscillation Template */ +IF EXISTS $a: Step_forward, $b: Step_backward + $a PRECEDES $b OR + $b PRECEDES $a THEN + SAY("Oscillation Detected"); FI; + +/*Note Lifecycle Completion */ +COORDINATE $a: End_condition + DO ADD SAY("Lifecycle Complete") PRECEDES $a; OD; + +/*Check for Recycle Template */ +IF #Initial_condition > 1 THEN + SAY("Recycle Detected"); FI; + + -- GitLab