assert(angle, "0.1" : L0.Double) \r
MOD.DiagramConnectionTypeToConnectionType\r
Dependency\r
- \r
+\r
######################################################################\r
-# Example model with modules\r
+# Work model with two modules\r
######################################################################\r
\r
-ModuleModel @ "ModuleModel" : SysdynModel\r
- L0.HasLabel "Malli" : L0.String\r
-# L0.PartOf SysdynModuleTestProject\r
- SIMU.HasConfiguration ModuleConfiguration\r
- L0.ConsistsOf _ @ "Experiment" : Experiment\r
- L0.HasLabel "Experiment" : L0.String\r
- \r
- \r
-ModuleConfiguration @ "ModuleConfiguration" : Configuration\r
- L0.HasLabel "Mallikonfiguraatio" : L0.String\r
+%define dep($e1, $e2, $angle)\r
+ $subject\r
+ tag(AdminIsVisible)\r
+ tag(AdminIsFocusable)\r
+ ST.HasConnectionType SysdynConnectionType\r
+ angle $angle : L0.Double\r
+ DIA.HasArrowConnector _ : DIA.Connector\r
+ HasHeadTerminal $e1\r
+ DIA.AreConnected _ : DIA.Connector \r
+ HasTailTerminal $e2\r
+ DIA.IsPlainConnectorOf $subject\r
+\r
+%define flow($e1, $e2)\r
+ $subject\r
+ tag(AdminIsVisible)\r
+ tag(AdminIsFocusable)\r
+ ST.HasConnectionType SysdynConnectionType\r
+ DIA.HasPlainConnector _ : DIA.Connector\r
+ HasTailTerminal $e2\r
+ DIA.AreConnected _ : DIA.Connector \r
+ HasHeadTerminal $e1\r
+ DIA.IsArrowConnectorOf $subject\r
+ \r
+%define conf_dep($v1, $v2)\r
+ $subject\r
+ tag(MOD.Mapped)\r
+ HasHead $v1\r
+ HasTail $v2\r
+\r
+%define conf_dep_ref($v1, $v2, $ref)\r
+ $subject\r
+ tag(MOD.Mapped)\r
+ HasHead $v1\r
+ HasTail $v2\r
+ RefersTo $ref \r
+ \r
+WorkSymbol <T ModuleSymbol\r
+ MOD.SymbolToComponentType WorkModule\r
+ ST.IsDefinedBy %list : DIA.Composite <R L0.HasNext\r
+ _ : SysdynTerminal\r
+ terminal(ModuleSymbol, IsHeadOfTerminal)\r
+ _ : SysdynTerminal\r
+ terminal(ModuleSymbol, IsTailOfTerminal)\r
+\r
+WorkforceSymbol <T ModuleSymbol\r
+ MOD.SymbolToComponentType WorkforceModule\r
+ ST.IsDefinedBy %list : DIA.Composite <R L0.HasNext\r
+ _ : SysdynTerminal\r
+ terminal(ModuleSymbol, IsHeadOfTerminal)\r
+ _ : SysdynTerminal\r
+ terminal(ModuleSymbol, IsTailOfTerminal)\r
+\r
+_ @ "WorkModel" : SysdynModel\r
+ L0.HasLabel "Work Model" : L0.String\r
+ L0.PartOf SysdynModuleTestProject\r
+ SIMU.HasConfiguration WorkModelConfiguration\r
+ L0.ConsistsOf \r
+ _ @ "Experiment" : Experiment\r
+ L0.HasLabel "Experiment" : L0.String\r
+ WorkModule\r
+ WorkforceModule \r
+ WorkModelConfiguration \r
+\r
+\r
+WorkModelConfiguration @ "WorkModelConfiguration" : Configuration\r
+ L0.HasLabel "WorkModelConfiguration" : L0.String\r
HasStartTime "0.0" : L0.Double\r
- HasStopTime "100.0" : L0.Double\r
+ HasStopTime "20.0" : L0.Double\r
L0.ConsistsOf\r
- Moduuli1 @ "Moduuli1" : Module1\r
- L0.HasLabel "EkaModuuli" : L0.String\r
- ToinenModuuli1 @ "ToinenModuuli1" : Module1\r
- L0.HasLabel "ToinenEkaModuuli" : L0.String\r
- RootAux1 @ "Aux1" : Auxiliary\r
- HasUnit "m" : L0.String\r
- HasExpression _ : NormalExpression\r
- HasEquation "1+1" : L0.String\r
- RootAux2 @ "Aux2" : Auxiliary\r
- HasUnit "s" : L0.String\r
- HasExpression _ : NormalExpression\r
- HasEquation "Aux1" : L0.String\r
- RootInput1 @ "rootInput" : Auxiliary\r
- HasUnit "s" : L0.String\r
+ ### Modules\r
+ Workforce @ "Workforce" : WorkforceModule\r
+ tag(MOD.Mapped)\r
+ L0.HasLabel "Workforce" : L0.String\r
+ Work1 @ "Work1" : WorkModule\r
+ tag(MOD.Mapped)\r
+ L0.HasLabel "Work1" : L0.String \r
+ Work2 @ "Work2" : WorkModule\r
+ tag(MOD.Mapped)\r
+ L0.HasLabel "Work2" : L0.String \r
+ \r
+ ## Parameters\r
+ Work1CompletionTime @ "Work1CompletionTime" : Auxiliary\r
+ tag(MOD.Mapped)\r
+ HasExpression _ : ParameterExpression\r
+ HasEquation "10" : L0.String \r
+ Work2CompletionTime @ "Work2CompletionTime" : Auxiliary\r
+ tag(MOD.Mapped) \r
+ HasExpression _ : ParameterExpression\r
+ HasEquation "11" : L0.String \r
+ \r
+ ## Inputs\r
+ TotalPossibleWorkingSpeedInput @ "TotalPossibleWorkingSpeedInput" : Input\r
+ tag(MOD.Mapped)\r
+ RequiredWorkingSpeed1 @ "RequiredWorkingSpeed1" : Input\r
+ tag(MOD.Mapped)\r
+ RequiredWorkingSpeed2 @ "RequiredWorkingSpeed2" : Input\r
+ tag(MOD.Mapped) \r
+ \r
+ ## Auxiliaries \r
+ RequiredWorkingSpeedTotal @ "RequiredWorkingSpeedTotal" : Auxiliary\r
+ tag(MOD.Mapped)\r
HasExpression _ : NormalExpression\r
- HasEquation "1000" : L0.String\r
- _ : Dependency\r
- HasHead RootAux2\r
- HasTail RootAux1\r
- _ : Dependency\r
- HasHead Moduuli1\r
- HasTail RootAux2\r
- RefersTo FirstModuleInput2\r
- _ : Dependency\r
- HasHead ToinenModuuli1\r
- HasTail RootAux2\r
- RefersTo FirstModuleInput2\r
- _ : Dependency\r
- HasHead RootInput1\r
- HasTail Moduuli1\r
- RefersTo FirstModuleOutput1\r
- \r
-Module1 @ "FirstModule" <T Module\r
- ST.IsDefinedBy Module1Configuration\r
+ HasEquation "RequiredWorkingSpeed1+RequiredWorkingSpeed2" : L0.String \r
+ \r
+ d1 : Dependency\r
+ conf_dep_ref(TotalPossibleWorkingSpeedInput, Workforce, PossibleWorkingSpeed) \r
+ d2 : Dependency\r
+ conf_dep_ref(Work1, TotalPossibleWorkingSpeedInput, PossibleWorkingSpeedInput) \r
+ d3 : Dependency\r
+ conf_dep_ref(Work1, Work1CompletionTime, WorkCompletionTimeInput) \r
+ d4 : Dependency\r
+ conf_dep_ref(Work1, RequiredWorkingSpeed2, RequiredWorkingSpeedOtherProjectsInput) \r
+ d5 : Dependency\r
+ conf_dep_ref(RequiredWorkingSpeed1, Work1, RequiredWorkingSpeed) \r
+ d6 : Dependency\r
+ conf_dep_ref(Work2, TotalPossibleWorkingSpeedInput, PossibleWorkingSpeedInput) \r
+ d7 : Dependency\r
+ conf_dep_ref(Work2, Work2CompletionTime, WorkCompletionTimeInput) \r
+ d8 : Dependency\r
+ conf_dep_ref(Work2, RequiredWorkingSpeed1, RequiredWorkingSpeedOtherProjectsInput) \r
+ d9 : Dependency\r
+ conf_dep_ref(RequiredWorkingSpeed2, Work2, RequiredWorkingSpeed) \r
+ d10 : Dependency\r
+ conf_dep_ref(Workforce, RequiredWorkingSpeedTotal, RequiredWorkingSpeedInput) \r
+ d11 : Dependency\r
+ conf_dep(RequiredWorkingSpeedTotal, RequiredWorkingSpeed1) \r
+ d12 : Dependency\r
+ conf_dep(RequiredWorkingSpeedTotal, RequiredWorkingSpeed2)\r
+ \r
+WorkModelConfigurationDiagram : ConfigurationDiagram <R L0.HasNext\r
+ MOD.DiagramToComposite WorkModelConfiguration\r
+ DIA.HasLayer _ @ "Admin" : DIA.Layer\r
+ DIA.IsActive "true" : L0.Boolean\r
+ DIA.HasFocusableTag AdminIsFocusable @ "Admin1" <R DIA.IsFocusable\r
+ symmetric()\r
+ DIA.HasVisibleTag AdminIsVisible @ "Admin2" <R DIA.IsVisible\r
+ symmetric()\r
+ L0.HasTrigger _ : DiagramToCompositeMapping\r
+ #DIA.NavigationEnabled "false" : L0.Boolean\r
+ %list_elements\r
+ WorkforceElement : WorkforceSymbol\r
+ MOD.ElementToComponent Workforce\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 101.0, 50.0" : G2D.Transform\r
+ Work1Element : WorkSymbol\r
+ MOD.ElementToComponent Work1\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 114.0, 87.0" : G2D.Transform\r
+ Work2Element : WorkSymbol\r
+ MOD.ElementToComponent Work2\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 108.0, 161.0" : G2D.Transform \r
+ Work1CompletionTimeElement : AuxiliarySymbol\r
+ MOD.ElementToComponent Work1CompletionTime\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 165.0, 99.0" : G2D.Transform \r
+ Work2CompletionTimeElement : AuxiliarySymbol\r
+ MOD.ElementToComponent Work2CompletionTime\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 165.0, 153.0" : G2D.Transform \r
+ RequiredWorkingSpeedTotalElement : AuxiliarySymbol\r
+ MOD.ElementToComponent RequiredWorkingSpeedTotal\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 32.0, 76.0" : G2D.Transform \r
+ TotalPossibleWorkingSpeedInputElement : InputSymbol\r
+ MOD.ElementToComponent TotalPossibleWorkingSpeedInput\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 141.0, 60.0" : G2D.Transform\r
+ RequiredWorkingSpeed1Element : InputSymbol\r
+ MOD.ElementToComponent RequiredWorkingSpeed1\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 65.0, 125.0" : G2D.Transform\r
+ RequiredWorkingSpeed2Element : InputSymbol\r
+ MOD.ElementToComponent RequiredWorkingSpeed2\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 100.0, 122.0" : G2D.Transform\r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d1 \r
+ dep(TotalPossibleWorkingSpeedInputElement, WorkforceElement, "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d2\r
+ dep(Work1Element, TotalPossibleWorkingSpeedInputElement, "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d3 \r
+ dep(Work1Element , Work1CompletionTimeElement, "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d4 \r
+ dep(Work1Element , RequiredWorkingSpeed2Element, "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d5 \r
+ dep(RequiredWorkingSpeed1Element , Work1Element, "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d6\r
+ dep(Work2Element , TotalPossibleWorkingSpeedInputElement, "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d7 \r
+ dep(Work2Element , Work2CompletionTimeElement, "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d8 \r
+ dep(Work2Element , RequiredWorkingSpeed1Element, "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d9\r
+ dep(RequiredWorkingSpeed2Element , Work2Element, "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d10\r
+ dep(WorkforceElement, RequiredWorkingSpeedTotalElement, "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d11\r
+ dep(RequiredWorkingSpeedTotalElement, RequiredWorkingSpeed1Element, "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d12\r
+ dep(RequiredWorkingSpeedTotalElement, RequiredWorkingSpeed2Element, "-0.1") \r
+ \r
+ \r
+WorkModule @ "WorkModule" <T Module\r
+ ST.IsDefinedBy WorkModuleConfiguration\r
+\r
+WorkModuleConfiguration @ "WorkModuleConfiguration" : Configuration\r
+ L0.ConsistsOf \r
\r
-Module1Configuration @ "Mod1Conf" : Configuration\r
- L0.ConsistsOf \r
- Moduuli2 @ "Moduuli2" : Module2\r
- L0.HasLabel "TokaModuuli" : L0.String\r
- FirstModuleInput1 @ "Aux1" : Auxiliary\r
- HasUnit "s" : L0.String\r
+ ## Parameters\r
+ MaximumWorkingSpeed @ "MaximumWorkingSpeed" : Auxiliary\r
+ tag(MOD.Mapped)\r
+ HasExpression _ : ParameterExpression\r
+ HasEquation "500" : L0.String \r
+ ProjectWorkAmount @ "ProjectWorkAmount" : Auxiliary\r
+ tag(MOD.Mapped)\r
+ HasExpression _ : ParameterExpression\r
+ HasEquation "1000" : L0.String \r
+ WorkQuality @ "WorkQuality" : Auxiliary\r
+ tag(MOD.Mapped)\r
+ HasExpression _ : ParameterExpression\r
+ HasEquation "0.9" : L0.String \r
+ \r
+ ## Valves\r
+ WorkingSpeed @ "WorkingSpeed" : Valve\r
+ tag(MOD.Mapped)\r
HasExpression _ : NormalExpression\r
- HasEquation "2+2" : L0.String\r
- FirstModuleInput2 @ "Aux2" : Auxiliary\r
- HasUnit "s" : L0.String\r
+ HasEquation "if ProjectIsReady > 0 then 0 else WorkAllocation" : L0.String\r
+ ErrorsGenerated @ "ErrorsGenerated" : Valve\r
+ tag(MOD.Mapped)\r
+ HasExpression _ : NormalExpression\r
+ HasEquation "(1-WorkQuality)*WorkingSpeed" : L0.String \r
+ ErrorsFoundRate @ "ErrorsFoundRate" : Valve\r
+ tag(MOD.Mapped)\r
HasExpression _ : NormalExpression\r
- HasEquation "2+2" : L0.String\r
- FirstModuleStock @ "Stock1" : Stock\r
+ HasEquation "Errors/ErrorsFoundTime" : L0.String \r
+ \r
+ ## Stocks\r
+ WorkToDo @ "WorkToDo" : Stock\r
+ tag(MOD.Mapped)\r
+ HasExpression _ : StockExpression\r
+ HasInitialEquation "ProjectWorkAmount" : L0.String \r
+ WorkDone @ "WorkDone" : Stock\r
+ tag(MOD.Mapped)\r
HasExpression _ : StockExpression\r
- HasInitialEquation "0" : L0.String\r
- FirstModuleCloud : Cloud\r
- FirstModuleOutput1 @ "Valve" : Valve\r
- HasUnit "s" : L0.String\r
+ HasInitialEquation "0" : L0.String \r
+ Errors @ "Errors" : Stock\r
+ tag(MOD.Mapped)\r
+ HasExpression _ : StockExpression\r
+ HasInitialEquation "0" : L0.String \r
+ \r
+ ## Auxiliaries \r
+ TimeToDeadline @ "TimeToDeadline" : Auxiliary\r
+ tag(MOD.Mapped)\r
HasExpression _ : NormalExpression\r
- HasEquation "Aux1 + Aux2" : L0.String \r
- tag(IsOutput) \r
- _ : Flow\r
- HasHead FirstModuleOutput1\r
- HasTail FirstModuleCloud\r
- _ : Flow\r
- HasHead FirstModuleStock\r
- HasTail FirstModuleOutput1\r
- _ : Dependency\r
- HasHead FirstModuleOutput1\r
- HasTail FirstModuleInput1\r
- _ : Dependency\r
- HasHead FirstModuleOutput1\r
- HasTail FirstModuleInput2\r
- _ : Dependency\r
- HasHead Moduuli2\r
- HasTail FirstModuleOutput1\r
- RefersTo SecondModuleInput1\r
- \r
-Module2 @ "SecondModule" <T Module\r
- ST.IsDefinedBy Module2Configuration\r
-\r
-Module2Configuration @ "Mod2Conf" : Configuration\r
- L0.ConsistsOf \r
- SecondModuleInput1 @ "Aux1" : Auxiliary\r
- HasUnit "s" : L0.String\r
+ HasEquation "max(0, WorkCompletionTimeInput-time)" : L0.String \r
+ RequiredWorkingSpeed @ "RequiredWorkingSpeed" : Auxiliary\r
+ tag(MOD.Mapped)\r
+ tag(IsOutput)\r
+ HasExpression _ : NormalExpression\r
+ HasEquation "if ProjectIsReady > 0 then 0 else if TimeToDeadline < 0.0 or TimeToDeadline > 0.0 then WorkToDo / TimeToDeadline else MaximumWorkingSpeed" : L0.String \r
+ WorkAllocation @ "WorkAllocation" : Auxiliary\r
+ tag(MOD.Mapped)\r
HasExpression _ : NormalExpression\r
- HasEquation "2+2" : L0.String\r
- SecondModuleInput2 @ "Aux2" : Auxiliary\r
- HasUnit "s" : L0.String\r
+ HasEquation "xidz(first = RequiredWorkingSpeed, second = RequiredWorkingSpeed + RequiredWorkingSpeedOtherProjectsInput, x = 0.0) * PossibleWorkingSpeedInput" : L0.String \r
+ ProjectIsReady @ "ProjectIsReady" : Auxiliary\r
+ tag(MOD.Mapped)\r
+ HasExpression _ : NormalExpression\r
+ HasEquation "if ProjectReadyness >= 1 then 1 else 0" : L0.String \r
+ ProjectReadyness @ "ProjectReadyness" : Auxiliary\r
+ tag(MOD.Mapped)\r
HasExpression _ : NormalExpression\r
- HasEquation "2+2" : L0.String\r
- SecondModuleStock @ "Stock1" : Stock\r
+ HasEquation "WorkDone/ProjectWorkAmount" : L0.String \r
+ ErrorsFoundTime @ "ErrorsFoundTime" : Auxiliary\r
+ tag(MOD.Mapped)\r
+ HasExpression _ : WithLookupExpression\r
+ HasEquation "ProjectReadyness" : L0.String \r
+ HasLookup "{{0,5},{0.5,3},{1,0.5},{2,0.5}}" : L0.String \r
+\r
+ ## Inputs\r
+ WorkCompletionTimeInput @ "WorkCompletionTimeInput" : Input\r
+ tag(MOD.Mapped)\r
+ PossibleWorkingSpeedInput @ "PossibleWorkingSpeedInput" : Input\r
+ tag(MOD.Mapped) \r
+ RequiredWorkingSpeedOtherProjectsInput @ "RequiredWorkingSpeedOtherProjectsInput" : Input\r
+ tag(MOD.Mapped) \r
+ \r
+ c31 : Cloud\r
+ \r
+ d31 : Dependency\r
+ conf_dep(TimeToDeadline, WorkCompletionTimeInput) \r
+ d32 : Dependency\r
+ conf_dep(RequiredWorkingSpeed, MaximumWorkingSpeed) \r
+ d33 : Dependency\r
+ conf_dep(RequiredWorkingSpeed, TimeToDeadline) \r
+ d34 : Dependency\r
+ conf_dep(RequiredWorkingSpeed, ProjectIsReady) \r
+ d35 : Dependency\r
+ conf_dep(RequiredWorkingSpeed, WorkToDo) \r
+ d36 : Dependency\r
+ conf_dep(WorkAllocation, RequiredWorkingSpeedOtherProjectsInput) \r
+ d37 : Dependency\r
+ conf_dep(WorkAllocation, PossibleWorkingSpeedInput) \r
+ d38 : Dependency\r
+ conf_dep(WorkAllocation, RequiredWorkingSpeed) \r
+ d39 : Dependency\r
+ conf_dep(ProjectIsReady, ProjectReadyness) \r
+ d40 : Dependency\r
+ conf_dep(ProjectReadyness, WorkDone) \r
+ d41 : Dependency\r
+ conf_dep(ProjectReadyness, ProjectWorkAmount) \r
+ d42 : Dependency\r
+ conf_dep(WorkingSpeed, WorkAllocation) \r
+ d43 : Dependency\r
+ conf_dep(WorkingSpeed, ProjectIsReady) \r
+ d44 : Dependency\r
+ conf_dep(ErrorsGenerated, WorkingSpeed) \r
+ d45 : Dependency\r
+ conf_dep(ErrorsGenerated, WorkQuality) \r
+ d46 : Dependency\r
+ conf_dep(ErrorsFoundRate, Errors) \r
+ d47 : Dependency\r
+ conf_dep(ErrorsFoundRate, ErrorsFoundTime) \r
+ d48 : Dependency\r
+ conf_dep(ErrorsFoundTime, ProjectReadyness) \r
+ f31 : Flow\r
+ conf_dep(WorkingSpeed, WorkToDo) \r
+ f32 : Flow\r
+ conf_dep(WorkDone, WorkingSpeed) \r
+ f33 : Flow\r
+ conf_dep(ErrorsGenerated, c31) \r
+ f34 : Flow\r
+ conf_dep(Errors, ErrorsGenerated) \r
+ f35 : Flow\r
+ conf_dep(ErrorsFoundRate, Errors) \r
+ f36 : Flow\r
+ conf_dep(ErrorsFoundRate, WorkDone) \r
+ f37 : Flow\r
+ conf_dep(WorkToDo, ErrorsFoundRate) \r
+ \r
+WorkModuleConfigurationDiagram : ConfigurationDiagram <R L0.HasNext\r
+ MOD.DiagramToComposite WorkModuleConfiguration\r
+ DIA.HasLayer _ @ "Admin" : DIA.Layer\r
+ DIA.IsActive "true" : L0.Boolean\r
+ DIA.HasFocusableTag AdminIsFocusable\r
+ DIA.HasVisibleTag AdminIsVisible\r
+ L0.HasTrigger _ : DiagramToCompositeMapping\r
+ %list_elements \r
+ \r
+ WorkCompletionTimeInputElement : InputSymbol\r
+ MOD.ElementToComponent WorkCompletionTimeInput\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 30.0, 65.0" : G2D.Transform \r
+ PossibleWorkingSpeedInputElement : InputSymbol\r
+ MOD.ElementToComponent PossibleWorkingSpeedInput\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 155.0, 35.0" : G2D.Transform \r
+ RequiredWorkingSpeedOtherProjectsInputElement : InputSymbol\r
+ MOD.ElementToComponent RequiredWorkingSpeedOtherProjectsInput\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 70.0, 27.0" : G2D.Transform \r
+ \r
+ WorkingSpeedElement : ValveSymbol\r
+ MOD.ElementToComponent WorkingSpeed\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 107.0, 75.0" : G2D.Transform \r
+ ErrorsGeneratedElement : ValveSymbol\r
+ MOD.ElementToComponent ErrorsGenerated\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 120.0, 90.0" : G2D.Transform \r
+ ErrorsFoundRateElement : ValveSymbol\r
+ MOD.ElementToComponent ErrorsFoundRate\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 125.0, 125.0" : G2D.Transform \r
+ \r
+ WorkToDoElement : StockSymbol\r
+ MOD.ElementToComponent WorkToDo\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 60.0, 75.0" : G2D.Transform \r
+ WorkDoneElement : StockSymbol\r
+ MOD.ElementToComponent WorkDone\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 141.0, 75.0" : G2D.Transform \r
+ ErrorsElement : StockSymbol\r
+ MOD.ElementToComponent Errors\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 135.0, 90.0" : G2D.Transform \r
+ \r
+ MaximumWorkingSpeedElement : AuxiliarySymbol\r
+ MOD.ElementToComponent MaximumWorkingSpeed\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 65.0, 35.0" : G2D.Transform \r
+ ProjectWorkAmountElement : AuxiliarySymbol\r
+ MOD.ElementToComponent ProjectWorkAmount\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 185.0, 50.0" : G2D.Transform \r
+ WorkQualityElement : AuxiliarySymbol\r
+ MOD.ElementToComponent WorkQuality\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 105.0, 110.0" : G2D.Transform \r
+ TimeToDeadlineElement : AuxiliarySymbol\r
+ MOD.ElementToComponent TimeToDeadline\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 55.0, 50.0" : G2D.Transform \r
+ RequiredWorkingSpeedElement : AuxiliarySymbol\r
+ MOD.ElementToComponent RequiredWorkingSpeed\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 85.0, 55.0" : G2D.Transform \r
+ WorkAllocationElement : AuxiliarySymbol\r
+ MOD.ElementToComponent WorkAllocation\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 120.0, 40.0" : G2D.Transform \r
+ ProjectIsReadyElement : AuxiliarySymbol\r
+ MOD.ElementToComponent ProjectIsReady\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 145.0, 55.0" : G2D.Transform \r
+ ProjectReadynessElement : AuxiliarySymbol\r
+ MOD.ElementToComponent ProjectReadyness\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 167.0, 65.0" : G2D.Transform \r
+ ErrorsFoundTimeElement : AuxiliarySymbol\r
+ MOD.ElementToComponent ErrorsFoundTime\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 145.0, 135.0" : G2D.Transform \r
+\r
+ c31Element : CloudSymbol\r
+ MOD.ElementToComponent c31\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 80.0, 90.0" : G2D.Transform \r
+ \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d31\r
+ dep(TimeToDeadlineElement, WorkCompletionTimeInputElement , "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d32\r
+ dep(RequiredWorkingSpeedElement, MaximumWorkingSpeedElement , "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d33\r
+ dep(RequiredWorkingSpeedElement, TimeToDeadlineElement , "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d34\r
+ dep(RequiredWorkingSpeedElement, ProjectIsReadyElement , "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d35\r
+ dep(RequiredWorkingSpeedElement, WorkToDoElement , "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d36\r
+ dep(WorkAllocationElement, RequiredWorkingSpeedOtherProjectsInputElement , "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d37\r
+ dep(WorkAllocationElement, PossibleWorkingSpeedInputElement , "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d38\r
+ dep(WorkAllocationElement, RequiredWorkingSpeedElement , "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d39\r
+ dep(ProjectIsReadyElement, ProjectReadynessElement , "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d40\r
+ dep(ProjectReadynessElement, WorkDoneElement , "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d41\r
+ dep(ProjectReadynessElement, ProjectWorkAmountElement , "-0.1") \r
+ _ : DependencyConnection \r
+ MOD.DiagramConnectionToConnection d42\r
+ dep(WorkingSpeedElement, WorkAllocationElement , "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d43\r
+ dep(WorkingSpeedElement, ProjectIsReadyElement , "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d44\r
+ dep(ErrorsGeneratedElement, WorkingSpeedElement , "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d45\r
+ dep(ErrorsGeneratedElement, WorkQualityElement , "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d46\r
+ dep(ErrorsFoundRateElement, ErrorsElement , "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d47\r
+ dep(ErrorsFoundRateElement, ErrorsFoundTimeElement , "-0.1") \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d48\r
+ dep(ErrorsFoundTimeElement, ProjectReadynessElement , "-0.1") \r
+\r
+ _ : FlowConnection\r
+ MOD.DiagramConnectionToConnection f31\r
+ flow(WorkingSpeedElement, WorkToDoElement ) \r
+ _ : FlowConnection\r
+ MOD.DiagramConnectionToConnection f32\r
+ flow(WorkDoneElement, WorkingSpeedElement ) \r
+ _ : FlowConnection\r
+ MOD.DiagramConnectionToConnection f33\r
+ flow(ErrorsGeneratedElement, c31Element ) \r
+ _ : FlowConnection\r
+ MOD.DiagramConnectionToConnection f34\r
+ flow(ErrorsElement, ErrorsGeneratedElement ) \r
+ _ : FlowConnection\r
+ MOD.DiagramConnectionToConnection f35\r
+ flow(ErrorsFoundRateElement, ErrorsElement ) \r
+ _ : FlowConnection\r
+ MOD.DiagramConnectionToConnection f36\r
+ flow(ErrorsFoundRateElement, WorkDoneElement ) \r
+ _ : FlowConnection\r
+ MOD.DiagramConnectionToConnection f37\r
+ flow(WorkToDoElement, ErrorsFoundRateElement ) \r
+ \r
+ \r
+WorkforceModule @ "WorkforceModule" <T Module\r
+ ST.IsDefinedBy WorkforceModuleConfiguration\r
+\r
+WorkforceModuleConfiguration @ "WorkforceModuleConfiguration" : Configuration\r
+ L0.ConsistsOf \r
+ \r
+ ## Parameters\r
+ TimeToAllocateResources @ "TimeToAllocateResources" : Auxiliary\r
+ tag(MOD.Mapped)\r
+ HasExpression _ : ParameterExpression\r
+ HasEquation "2" : L0.String \r
+ Productivity @ "Productivity" : Auxiliary\r
+ tag(MOD.Mapped) \r
+ HasExpression _ : ParameterExpression\r
+ HasEquation "1" : L0.String \r
+ \r
+ ## Valve\r
+ NetResources @ "NetResources" : Valve\r
+ tag(MOD.Mapped)\r
+ HasExpression _ : NormalExpression\r
+ HasEquation "(WorkForceRequired-WorkforceStock)/TimeToAllocateResources" : L0.String \r
+\r
+ ## Stock\r
+ WorkforceStock @ "WorkforceStock" : Stock\r
+ tag(MOD.Mapped)\r
HasExpression _ : StockExpression\r
- HasInitialEquation "0" : L0.String\r
- SecondModuleCloud : Cloud\r
- SecondModuleOutput1 @ "Valve" : Valve\r
- HasUnit "s" : L0.String\r
+ HasInitialEquation "0" : L0.String \r
+ \r
+ ## Auxiliaries \r
+ WorkForceRequired @ "WorkForceRequired" : Auxiliary\r
+ tag(MOD.Mapped)\r
HasExpression _ : NormalExpression\r
- HasEquation "Aux1 + Aux2" : L0.String \r
+ HasEquation "RequiredWorkingSpeedInput/Productivity" : L0.String \r
+ PossibleWorkingSpeed @ "PossibleWorkingSpeed" : Auxiliary\r
+ tag(MOD.Mapped)\r
tag(IsOutput)\r
- _ : Flow\r
- HasHead SecondModuleOutput1\r
- HasTail SecondModuleCloud\r
- _ : Flow\r
- HasHead SecondModuleStock\r
- HasTail SecondModuleOutput1\r
- _ : Dependency\r
- HasHead SecondModuleOutput1\r
- HasTail SecondModuleInput1\r
- _ : Dependency\r
- HasHead SecondModuleOutput1\r
- HasTail SecondModuleInput2\r
- \r
+ HasExpression _ : NormalExpression\r
+ HasEquation "WorkforceStock*Productivity" : L0.String \r
+ \r
+ ## Inputs\r
+ RequiredWorkingSpeedInput @ "RequiredWorkingSpeedInput" : Input\r
+ tag(MOD.Mapped) \r
+ \r
+ c21 : Cloud\r
+ \r
+ d21 : Dependency\r
+ conf_dep(NetResources, TimeToAllocateResources) \r
+ d22 : Dependency\r
+ conf_dep(NetResources, WorkforceStock) \r
+ d23 : Dependency\r
+ conf_dep(NetResources, WorkForceRequired) \r
+ d24 : Dependency\r
+ conf_dep(WorkForceRequired, Productivity) \r
+ d25 : Dependency\r
+ conf_dep(WorkForceRequired, RequiredWorkingSpeedInput) \r
+ d26 : Dependency\r
+ conf_dep(PossibleWorkingSpeed, WorkforceStock) \r
+ d27 : Dependency\r
+ conf_dep(PossibleWorkingSpeed, Productivity) \r
+ f21 : Flow\r
+ conf_dep(WorkforceStock, NetResources) \r
+ f22 : Flow\r
+ conf_dep(NetResources, c21) \r
+ \r
+WorkforceModuleConfigurationDiagram : ConfigurationDiagram <R L0.HasNext\r
+ MOD.DiagramToComposite WorkforceModuleConfiguration\r
+ DIA.HasLayer _ @ "Admin" : DIA.Layer\r
+ DIA.IsActive "true" : L0.Boolean\r
+ DIA.HasFocusableTag AdminIsFocusable\r
+ DIA.HasVisibleTag AdminIsVisible\r
+ L0.HasTrigger _ : DiagramToCompositeMapping\r
+ %list_elements \r
+ TimeToAllocateResourcesElement : AuxiliarySymbol\r
+ MOD.ElementToComponent TimeToAllocateResources\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 45.0, 75.0" : G2D.Transform \r
+ ProductivityElement : AuxiliarySymbol\r
+ MOD.ElementToComponent Productivity\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 120.0, 115.0" : G2D.Transform\r
+ NetResourcesElement : ValveSymbol\r
+ MOD.ElementToComponent NetResources\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 60.0, 84.0" : G2D.Transform \r
+ WorkforceStockElement : StockSymbol\r
+ MOD.ElementToComponent WorkforceStock\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 93.0, 84.0" : G2D.Transform \r
+ WorkForceRequiredElement : AuxiliarySymbol\r
+ MOD.ElementToComponent WorkForceRequired\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 82.0, 117.0" : G2D.Transform\r
+ PossibleWorkingSpeedElement : AuxiliarySymbol\r
+ MOD.ElementToComponent PossibleWorkingSpeed\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 115.0, 102.0" : G2D.Transform \r
+ RequiredWorkingSpeedInputElement : InputSymbol\r
+ MOD.ElementToComponent RequiredWorkingSpeedInput\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 45.0, 127.0" : G2D.Transform \r
+ c21Element : CloudSymbol\r
+ MOD.ElementToComponent c21\r
+ DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 45.0, 85.0" : G2D.Transform \r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d21\r
+ dep(NetResourcesElement, TimeToAllocateResourcesElement , "-0.1")\r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d22\r
+ dep(NetResourcesElement, WorkforceStockElement , "-0.1")\r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d23\r
+ dep(NetResourcesElement, WorkForceRequiredElement , "-0.1")\r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d24\r
+ dep(WorkForceRequiredElement, ProductivityElement , "-0.1")\r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d25\r
+ dep(WorkForceRequiredElement, RequiredWorkingSpeedInputElement , "-0.1")\r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d26\r
+ dep(PossibleWorkingSpeedElement, WorkforceStockElement , "-0.1")\r
+ _ : DependencyConnection\r
+ MOD.DiagramConnectionToConnection d27\r
+ dep(PossibleWorkingSpeedElement, ProductivityElement , "-0.1") \r
+ _ : FlowConnection\r
+ MOD.DiagramConnectionToConnection f21\r
+ flow(WorkforceStockElement, NetResourcesElement ) \r
+ _ : FlowConnection\r
+ MOD.DiagramConnectionToConnection f22\r
+ flow(c21Element, NetResourcesElement ) \r
+ \r
\r
######################################################################\r
# Customer model\r
CapacityModule \r
RootConfiguration \r
\r
-# Layerit ja connectiontype!\r
-\r
-%define dep($e1, $e2, $angle)\r
- $subject\r
- tag(AdminIsVisible)\r
- tag(AdminIsFocusable)\r
- ST.HasConnectionType SysdynConnectionType\r
- angle $angle : L0.Double\r
- DIA.HasArrowConnector _ : DIA.Connector\r
- HasHeadTerminal $e1\r
- DIA.AreConnected _ : DIA.Connector \r
- HasTailTerminal $e2\r
- DIA.IsPlainConnectorOf $subject\r
-\r
-%define flow($e1, $e2)\r
- $subject\r
- tag(AdminIsVisible)\r
- tag(AdminIsFocusable)\r
- ST.HasConnectionType SysdynConnectionType\r
- DIA.HasPlainConnector _ : DIA.Connector\r
- HasTailTerminal $e1\r
- DIA.AreConnected _ : DIA.Connector \r
- HasHeadTerminal $e2\r
- DIA.IsArrowConnectorOf $subject\r
-\r
-\r
RootConfigurationDiagram : ConfigurationDiagram <R L0.HasNext\r
MOD.DiagramToComposite RootConfiguration\r
DIA.HasLayer _ @ "Admin" : DIA.Layer\r
DIA.IsActive "true" : L0.Boolean\r
- DIA.HasFocusableTag AdminIsFocusable @ "Admin1" <R DIA.IsFocusable\r
+ DIA.HasFocusableTag AdminIsFocusableCM @ "Admin1" <R DIA.IsFocusable\r
symmetric()\r
- DIA.HasVisibleTag AdminIsVisible @ "Admin2" <R DIA.IsVisible\r
+ DIA.HasVisibleTag AdminIsVisibleCM @ "Admin2" <R DIA.IsVisible\r
symmetric()\r
L0.HasTrigger _ : DiagramToCompositeMapping\r
#DIA.NavigationEnabled "false" : L0.Boolean\r
DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 136.0, 90.0" : G2D.Transform\r
_ : FlowConnection\r
MOD.DiagramConnectionToConnection Flow1 \r
- flow(DummyCloudElement, SalesRevenueElement)\r
+ flow(SalesRevenueElement, DummyCloudElement)\r
_ : FlowConnection\r
MOD.DiagramConnectionToConnection Flow2\r
- flow(SalesRevenueElement, CumulativeRevenueElement)\r
+ flow(CumulativeRevenueElement ,SalesRevenueElement)\r
_ : DependencyConnection\r
MOD.DiagramConnectionToConnection Dependency1 \r
dep(SalesRevenueElement, PriceElement, "-0.1")\r
WordOfMouthDemandInput @ "PuskaradioKysynta" : Input\r
tag(MOD.Mapped)\r
CapacityInput @ "KapasiteettiInput" : Input\r
+ tag(MOD.Mapped) \r
+ Flow1 : Flow\r
tag(MOD.Mapped)\r
-\r
-%define conf_dep($v1, $v2)\r
- $subject\r
- tag(MOD.Mapped)\r
- HasHead $v1\r
- HasTail $v2\r
- L0.PartOf RootConfiguration\r
-\r
-%define conf_dep_ref($v1, $v2, $ref)\r
- $subject\r
- tag(MOD.Mapped)\r
- HasHead $v1\r
- HasTail $v2\r
- L0.PartOf RootConfiguration\r
- RefersTo $ref\r
-\r
-## RootConfiguration Dependencies \r
-Flow1 : Flow\r
- tag(MOD.Mapped)\r
- HasHead SalesRevenue\r
- HasTail DummyCloud\r
- L0.PartOf RootConfiguration\r
-Flow2 : Flow\r
- tag(MOD.Mapped)\r
- HasHead CumulativeRevenue\r
- HasTail SalesRevenue \r
- L0.PartOf RootConfiguration\r
-Dependency1 : Dependency\r
- conf_dep(SalesRevenue, Price)\r
-Dependency2 : Dependency\r
- conf_dep(SalesRevenue, Sales)\r
-Dependency3 : Dependency\r
- conf_dep(Sales, NewCustomersInput)\r
-Dependency4 : Dependency\r
- conf_dep(Sales, WidgetsPerPersonInput)\r
-Dependency5 : Dependency\r
- conf_dep_ref(Customers, CapacityInput, CapacityInput2)\r
-Dependency6 : Dependency\r
- conf_dep_ref(Customers, WidgetsPerPersonInput, WidgetsPerPersonInput2)\r
-Dependency7 : Dependency\r
- conf_dep_ref(WordOfMouthDemandInput, Customers, WordOfMouthDemandOutput)\r
-Dependency8 : Dependency\r
- conf_dep_ref(Capacity, WordOfMouthDemandInput, WordOfMouthDemandInput2)\r
-Dependency9 : Dependency\r
- conf_dep_ref(NewCustomersInput, Customers, NewCustomers)\r
-Dependency10 : Dependency\r
- conf_dep_ref(WidgetsPerPersonInput, Capacity, WidgetsPerPersonOutput)\r
-Dependency11 : Dependency\r
- conf_dep_ref(CapacityInput, Capacity, CapacityStock)\r
+ HasHead SalesRevenue\r
+ HasTail DummyCloud\r
+ Flow2 : Flow\r
+ tag(MOD.Mapped)\r
+ HasHead CumulativeRevenue\r
+ HasTail SalesRevenue \r
+ Dependency1 : Dependency\r
+ conf_dep(SalesRevenue, Price)\r
+ Dependency2 : Dependency\r
+ conf_dep(SalesRevenue, Sales)\r
+ Dependency3 : Dependency\r
+ conf_dep(Sales, NewCustomersInput)\r
+ Dependency4 : Dependency\r
+ conf_dep(Sales, WidgetsPerPersonInput)\r
+ Dependency5 : Dependency\r
+ conf_dep_ref(Customers, CapacityInput, CapacityInput2)\r
+ Dependency6 : Dependency\r
+ conf_dep_ref(Customers, WidgetsPerPersonInput, WidgetsPerPersonInput2)\r
+ Dependency7 : Dependency\r
+ conf_dep_ref(WordOfMouthDemandInput, Customers, WordOfMouthDemandOutput)\r
+ Dependency8 : Dependency\r
+ conf_dep_ref(Capacity, WordOfMouthDemandInput, WordOfMouthDemandInput2)\r
+ Dependency9 : Dependency\r
+ conf_dep_ref(NewCustomersInput, Customers, NewCustomers)\r
+ Dependency10 : Dependency\r
+ conf_dep_ref(WidgetsPerPersonInput, Capacity, WidgetsPerPersonOutput)\r
+ Dependency11 : Dependency\r
+ conf_dep_ref(CapacityInput, Capacity, CapacityStock)\r
\r
CapacityModule @ "Kapasiteettimoduuli" <T Module\r
ST.IsDefinedBy CapacityModuleConfiguration\r
HasEquation "Kapasiteetti" : L0.String\r
Production @ "Tuotanto" : Auxiliary\r
HasExpression _ : NormalExpression\r
- HasEquation "min({Tavoitetuotanto, PotentiaalinenTuotanto})" : L0.String\r
+ HasEquation "min(Tavoitetuotanto, PotentiaalinenTuotanto)" : L0.String\r
CapacityLife @ "Kapasiteettielama" : Auxiliary\r
HasExpression _ : ParameterExpression\r
HasEquation "20" : L0.String \r
MOD.DiagramToComposite CapacityModuleConfiguration\r
DIA.HasLayer _ @ "Admin" : DIA.Layer\r
DIA.IsActive "true" : L0.Boolean\r
- DIA.HasFocusableTag AdminIsFocusable\r
- DIA.HasVisibleTag AdminIsVisible\r
+ DIA.HasFocusableTag AdminIsFocusableCM\r
+ DIA.HasVisibleTag AdminIsVisibleCM\r
L0.HasTrigger _ : DiagramToCompositeMapping\r
%list_elements\r
DummyCloud2Element : CloudSymbol\r
DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 175.0, 90.0" : G2D.Transform\r
_ : FlowConnection\r
MOD.DiagramConnectionToConnection Flow3\r
- flow(DummyCloud2Element, InvestmentElement)\r
+ flow(InvestmentElement, DummyCloud2Element)\r
_ : FlowConnection\r
MOD.DiagramConnectionToConnection Flow4\r
- flow(InvestmentElement, CapacityStockElement)\r
+ flow(CapacityStockElement, InvestmentElement)\r
_ : FlowConnection\r
MOD.DiagramConnectionToConnection Flow5\r
- flow(CapacityStockElement, ReductionsElement)\r
+ flow(ReductionsElement, CapacityStockElement)\r
_ : FlowConnection\r
MOD.DiagramConnectionToConnection Flow6\r
- flow(ReductionsElement, DummyCloud3Element)\r
+ flow(DummyCloud3Element, ReductionsElement)\r
\r
CapacityAdjustmentElement : AuxiliarySymbol\r
MOD.ElementToComponent CapacityAdjustment\r
HasInitialEquation "1000" : L0.String \r
NewCustomers @ "UudetAsiakkaat" : Valve\r
HasExpression _ : NormalExpression\r
- HasEquation " min({Puskaradiokysynta, Kapasiteetti/WidgettejaHenkilolle})" : L0.String \r
+ HasEquation " min(Puskaradiokysynta, Kapasiteetti/WidgettejaHenkilolle)" : L0.String \r
tag(IsOutput)\r
### Input variables\r
CapacityInput2 @ "Kapasiteetti" : Input\r
MOD.DiagramToComposite CustomerModuleConfiguration\r
DIA.HasLayer _ @ "Admin" : DIA.Layer\r
DIA.IsActive "true" : L0.Boolean\r
- DIA.HasFocusableTag AdminIsFocusable\r
- DIA.HasVisibleTag AdminIsVisible\r
+ DIA.HasFocusableTag AdminIsFocusableCM\r
+ DIA.HasVisibleTag AdminIsVisibleCM\r
L0.HasTrigger _ : DiagramToCompositeMapping\r
%list_elements \r
ContactsOfNoncustomersWithCustomersElement : AuxiliarySymbol\r
### Dependencies \r
_ : FlowConnection\r
MOD.DiagramConnectionToConnection Flow7\r
- flow(PotentialCustomersStockElement, NewCustomersElement) \r
+ flow(NewCustomersElement, PotentialCustomersStockElement) \r
_ : FlowConnection\r
MOD.DiagramConnectionToConnection Flow8\r
- flow(NewCustomersElement, CustomersStockElement)\r
+ flow(CustomersStockElement, NewCustomersElement)\r
_ : DependencyConnection\r
MOD.DiagramConnectionToConnection Dependency24\r
dep(PotentialCustomerConcentrationElement, TotalMarketElement, "-1.7")\r
_ : DependencyConnection\r
MOD.DiagramConnectionToConnection Dependency36\r
dep(PotentialCustomerConcentrationElement, PotentialCustomersStockElement, "-0.1") \r
+
\ No newline at end of file