+++ /dev/null
-%import "layer0.graph" L0\r
-%import "diagram2.graph" DIA\r
-%import "g2d.graph" G2D\r
-%import "structural2.graph" ST\r
-%import "modeling.graph" MOD\r
-%import "project.graph" PROJ\r
-%import "simulation.graph" SIMU\r
-%import "workbench.graph" WORKBENCH\r
-\r
-%deflib L0.Type Sysdyn\r
-%deflib L0.Relation Sysdyn\r
-%deflib DIA.ElementClass Symbols\r
-\r
-%define assert($pred,$obj)\r
- $subject\r
- L0.Asserts _ : L0.Assertion\r
- L0.HasPredicate $pred\r
- L0.HasObject $obj\r
- \r
-%define tag($pred)\r
- $subject\r
- $pred $subject\r
-\r
-%define symmetric()\r
- $subject\r
- $layer0.InverseOf $subject\r
-\r
-%define defSymbol($label, $componentType)\r
- $subject <T DIA.Element\r
- L0.PartOf Sysdyn\r
- MOD.SymbolToComponentType $componentType \r
- L0.HasLabel $label : L0.String\r
-\r
-%define terminal($parent, $relation)\r
- $subject\r
- DIA.HasConnectionVariable _ : ST.ConnectionVariable\r
- ST.Binds $relation \r
- ST.IsParameterOf $parent\r
-\r
-######################################################################\r
-# Defines ontology and attaches it to SimanticsDomain\r
-######################################################################\r
-\r
-Sysdyn @ "Sysdyn-1.0" : L0.Ontology\r
- L0.PartOf L0.SimanticsDomain\r
- L0.HasVersion "1.0" : L0.Version\r
- L0.HasResourceClass "org.simantics.sysdyn.SysdynResource" : L0.String\r
- L0.HasPackageName "sysdyn" : L0.String \r
- L0.ConsistsOf\r
- Symbols : L0.Library\r
-\r
-SysdynProject : PROJ.Feature\r
- tag(PROJ.LifecycleFeature)\r
- L0.HasLabel "System Dynamics Project" : L0.String\r
- L0.HasDescription """System dynamics modelling project. Create system dynamics models and simulate them with OpenModelica.""" : L0.String\r
- L0.PartOf Sysdyn\r
- L0.PartOf PROJ.PublishedProjectFeatures\r
- PROJ.RequiresFeature\r
- ImportedOntologies : PROJ.OntologyRequirementValidationFeature\r
- L0.HasDescription "Specifies the ontologies required by a Sysdyn project." : L0.String\r
- PROJ.RequiresNamespace\r
- "http://www.simantics.org/Sysdyn-1.0" : L0.URI\r
- WORKBENCH.SymbolManager\r
- PROJ.ExperimentControl\r
- SysdynModelManager : PROJ.Feature\r
- L0.PartOf Sysdyn\r
- L0.HasLabel "Sysdyn Model Manager" : L0.String\r
- L0.HasDescription "Sysdyn Model Manager." : L0.String\r
- PROJ.RequiresFeature PROJ.ExperimentControl\r
-\r
-\r
-SysdynModuleTestProject : PROJ.Project\r
- PROJ.HasFeature SysdynProject\r
- L0.PartOf L0.Projects\r
-\r
-######################################################################\r
-# Model\r
-###################################################################### \r
-\r
-SysdynModel <T SIMU.Model\r
- L0.PartOf Sysdyn\r
- [SIMU.HasConfiguration all Configuration]\r
- [HasStartTime card "1"]\r
- [HasStopTime card "1"]\r
- [HasTolerance card "0..1"]\r
-\r
-######################################################################\r
-# Configuration\r
-######################################################################\r
-\r
-Sysdyn \r
- L0.ConsistsOf\r
- Symbols : L0.Library\r
- SysdynConnectionType : ST.ConnectionType\r
-\r
-DiagramToCompositeMapping <T L0.Trigger\r
- L0.PartOf Sysdyn\r
- \r
-ConfigurationDiagram <T DIA.Diagram\r
- L0.PartOf Sysdyn\r
- assert(ST.HasModelingRules, SysdynDiagramModelingRules) \r
- DIA.HasSymbolContribution _ : DIA.BasicSymbolContribution\r
- DIA.BasicSymbolContributionHasSymbolLibrary\r
- BasicSymbolLibrary\r
-\r
-SysdynDiagramModelingRules : MOD.MappedModelingRules\r
- MOD.HasBaseRules ST.StandardModelingRules\r
- \r
-SymbolReferences : DIA.SymbolReferenceLibrary\r
- L0.PartOf Sysdyn\r
- L0.ConsistsOf\r
- BasicSymbolLibrary @ "Basic Symbols" : DIA.SymbolReferenceLibrary\r
-\r
-Configuration <T ST.Composite\r
- [L0.ConsistsOf all (Variable or Dependency or Module)]\r
- \r
-HasStartTime <R L0.HasProperty\r
- L0.HasRange L0.Double \r
-\r
-HasStopTime <R L0.HasProperty\r
- L0.HasRange L0.Double\r
- \r
-HasTolerance <R L0.HasProperty\r
- L0.HasRange L0.Double \r
-\r
-HistoryRealization <T L0.Realization\r
-DefaultRealization <T L0.Realization\r
-\r
-######################################################################\r
-# Variables\r
-######################################################################\r
-\r
-Variable <T ST.Component \r
- [L0.HasType card "1"]\r
- [HasX card "1"]\r
- [HasY card "1"]\r
- \r
-HasX <R L0.HasProperty : L0.FunctionalRelation\r
- L0.HasRange L0.Double\r
-HasY <R L0.HasProperty : L0.FunctionalRelation\r
- L0.HasRange L0.Double\r
-HasExpression <R L0.IsRelatedTo : L0.FunctionalRelation\r
- L0.HasRange Expression\r
-\r
-\r
-HasUnit <R L0.HasProperty\r
- L0.HasRange L0.String\r
- \r
-HasRangeStart <R L0.HasProperty\r
- L0.HasRange L0.Double \r
- \r
-HasRangeEnd <R L0.HasProperty\r
- L0.HasRange L0.Double \r
- \r
-HasRangeStep <R L0.HasProperty\r
- L0.HasRange L0.Double \r
-\r
-IndependentVariable <T Variable\r
- [HasUnit card "0..1"]\r
- [HasExpression card "0..1"] \r
- [HasRangeStart card "0..1"]\r
- [HasRangeEnd card "0..1"]\r
- [HasRangeStep card "0..1"]\r
- [L0.HasDescription card "0..1"]\r
-\r
-Auxiliary <T IndependentVariable\r
- L0.Asserts _ : L0.Assertion\r
- L0.HasPredicate L0.HasType\r
- L0.HasObject "Real" : L0.String\r
-\r
-Valve <T IndependentVariable\r
- L0.Asserts _ : L0.Assertion\r
- L0.HasPredicate L0.HasType\r
- L0.HasObject "Real" : L0.String\r
- \r
-Stock <T IndependentVariable\r
- L0.Asserts _ : L0.Assertion\r
- L0.HasPredicate L0.HasType\r
- L0.HasObject "Real" : L0.String\r
-\r
-Cloud <T Variable\r
-\r
-Input <T Variable\r
- [HasDefaultInputValue card "0..1"]\r
- [L0.HasDescription card "0..1"]\r
- [HasUnit card "0..1"] \r
- L0.Asserts _ : L0.Assertion\r
- L0.HasPredicate HasDefaultInputValue\r
- L0.HasObject "0" : L0.Double\r
- L0.Asserts _ : L0.Assertion\r
- L0.HasPredicate L0.HasType\r
- L0.HasObject "Real" : L0.String\r
-\r
-######################################################################\r
-# Modules\r
-######################################################################\r
-\r
-Module <T ST.Component\r
- [ST.IsDefinedBy all Configuration]\r
- [L0.HasLabel card "1"]\r
- \r
-ModuleSymbol <T DIA.FontProvider <T DIA.ColorProvider\r
- defSymbol("ModuleSymbol", Module)\r
- ST.IsDefinedBy %list : DIA.Composite <R L0.HasNext\r
- _ : SysdynTerminal\r
- terminal(ModuleSymbol, IsHeadOfTerminal)\r
- _ : SysdynTerminal\r
- terminal(ModuleSymbol, IsTailOfTerminal)\r
-\r
-IsOutput <R L0.IsRelatedTo : L0.Tag\r
- symmetric()\r
-\r
-######################################################################\r
-# Connections and Relations\r
-######################################################################\r
-\r
-IsTailOf <R ST.IsConnectedTo\r
- L0.HasDomain Variable\r
- L0.HasRange Dependency\r
- L0.InverseOf HasTail \r
- ST.AllowsConnectionType SysdynConnectionType\r
- ST.HasAttachmentRelation DIA.HasPlainConnector\r
-IsHeadOf <R ST.IsConnectedTo\r
- L0.HasDomain Variable\r
- L0.HasRange Dependency\r
- L0.InverseOf HasHead\r
- ST.AllowsConnectionType SysdynConnectionType\r
- ST.HasAttachmentRelation DIA.HasArrowConnector\r
-\r
-Dependency <T ST.Connection\r
- [angle card "1"]\r
- [HasHead card "1"]\r
- [HasTail card "1"]\r
- [RefersTo card "0..1"]\r
- \r
-Flow <T ST.Connection\r
- [HasHead card "1"]\r
- [HasTail card "1"]\r
-\r
-RefersTo <R L0.IsRelatedTo : L0.FunctionalRelation\r
- L0.HasDomain [Variable]\r
- L0.HasRange [Variable]\r
-\r
-\r
-######################################################################\r
-# Expression\r
-######################################################################\r
-\r
-HasEquation <R L0.HasProperty\r
- L0.HasRange L0.String \r
-\r
-HasInitialEquation <R L0.HasProperty\r
- L0.HasRange L0.String\r
-\r
-HasLookup <R L0.HasProperty\r
- L0.HasRange L0.String \r
-\r
-HasMinX <R L0.HasProperty\r
- L0.HasRange L0.Double\r
-\r
-HasMaxX <R L0.HasProperty\r
- L0.HasRange L0.Double\r
-\r
-HasMinY <R L0.HasProperty\r
- L0.HasRange L0.Double\r
-\r
-HasMaxY <R L0.HasProperty\r
- L0.HasRange L0.Double\r
-\r
-Expression <T L0.Entity\r
-\r
-NormalExpression <T Expression\r
- [HasEquation card "1"] \r
-\r
-ParameterExpression <T Expression\r
- [HasEquation card "1"] \r
- \r
-ConstantExpression <T Expression\r
- [HasEquation card "1"] \r
-\r
-DelayExpression <T Expression\r
- [HasEquation card "1"] \r
-\r
-StockExpression <T Expression\r
- [HasInitialEquation card "1"]\r
-\r
-LookupExpression <T Expression\r
- [HasLookup card "1"] \r
-\r
-WithLookupExpression <T Expression\r
- [HasLookup card "1"] \r
- [HasEquation card "1"] \r
- [HasMinX card "1"]\r
- [HasMaxX card "1"]\r
- [HasMinY card "1"]\r
- [HasMaxY card "1"]\r
-\r
-HasDefaultInputValue <R L0.HasProperty : L0.FunctionalRelation\r
- L0.HasRange L0.Double\r
-\r
-######################################################################\r
-# Experiments\r
-######################################################################\r
-\r
-Experiment <T SIMU.Experiment\r
- [HasResult]\r
-\r
-\r
-BasicExperiment <T Experiment\r
-\r
-GameExperiment <T Experiment\r
-\r
-SimulateOnChangeExperiment <T Experiment\r
-\r
-HasResult <R L0.IsRelatedTo\r
- L0.HasRange [Result]\r
-\r
-######################################################################\r
-# Results\r
-######################################################################\r
-\r
-Result <T L0.Entity\r
- SIMU.IsActive\r
- [L0.HasName card "1"]\r
- [HasParameterFile card "0..1"]\r
- [HasResultFile card "0..1"]\r
-\r
-HasParameterFile <R L0.HasProperty\r
- L0.HasRange L0.String \r
-\r
-HasResultFile <R L0.HasProperty\r
- L0.HasRange L0.String\r
-\r
-######################################################################\r
-# Macros for component types\r
-######################################################################\r
-\r
-%define def()\r
- $subject <T ST.Component\r
- L0.PartOf Sysdyn\r
-\r
-%define connection($relation)\r
- $subject\r
- ST.HasParameter _ : ST.ConnectionVariable\r
- ST.Binds $relation\r
-\r
-%define defConnectionPoint($connectionType, $attachmentRelation)\r
- $subject <R ST.IsConnectedTo \r
- ST.AllowsConnectionType $connectionType\r
- ST.HasAttachmentRelation $attachmentRelation\r
-\r
-%define terminalRelation($target)\r
- $subject <R ST.IsConnectedTo\r
- MOD.DiagramConnectionRelationToConnectionRelation $target\r
-\r
-######################################################################\r
-# Component types\r
-######################################################################\r
-\r
-IsHeadOfTerminal\r
- L0.InverseOf HasHeadTerminal\r
- terminalRelation(IsHeadOf)\r
-IsTailOfTerminal\r
- L0.InverseOf HasTailTerminal\r
- terminalRelation(IsTailOf)\r
-\r
-SysdynTerminal <T DIA.Terminal\r
-\r
-######################################################################\r
-Stock\r
- def()\r
- connection(IsTailOf)\r
- connection(IsHeadOf)\r
-\r
-StockSymbol <T DIA.FontProvider <T DIA.ColorProvider\r
- defSymbol("Stock", Stock)\r
- L0.IsDependencyOf BasicSymbolLibrary\r
- ST.IsDefinedBy %list : DIA.Composite <R L0.HasNext\r
- _ : SysdynTerminal\r
- terminal(StockSymbol, IsHeadOfTerminal)\r
- _ : SysdynTerminal\r
- terminal(StockSymbol, IsTailOfTerminal)\r
-\r
-######################################################################\r
-Valve\r
- def()\r
- connection(IsTailOf)\r
- connection(IsHeadOf)\r
-\r
-ValveSymbol <T DIA.FontProvider <T DIA.ColorProvider\r
- defSymbol("Valve", Valve)\r
- L0.IsDependencyOf BasicSymbolLibrary\r
- ST.IsDefinedBy %list : DIA.Composite <R L0.HasNext\r
- _ : SysdynTerminal\r
- terminal(ValveSymbol, IsHeadOfTerminal)\r
- _ : SysdynTerminal\r
- terminal(ValveSymbol, IsTailOfTerminal)\r
-\r
-######################################################################\r
-Auxiliary\r
- def()\r
- connection(IsTailOf)\r
- connection(IsHeadOf)\r
-\r
-AuxiliarySymbol <T DIA.FontProvider <T DIA.ColorProvider\r
- defSymbol("Auxiliary", Auxiliary)\r
- L0.IsDependencyOf BasicSymbolLibrary\r
- ST.IsDefinedBy %list : DIA.Composite <R L0.HasNext\r
- _ : SysdynTerminal\r
- terminal(AuxiliarySymbol, IsHeadOfTerminal)\r
- _ : SysdynTerminal\r
- terminal(AuxiliarySymbol, IsTailOfTerminal)\r
-\r
-######################################################################\r
-Cloud\r
- def()\r
- connection(IsTailOf)\r
- connection(IsHeadOf)\r
-\r
-CloudSymbol <T DIA.FontProvider <T DIA.ColorProvider\r
- defSymbol("Cloud", Cloud)\r
- L0.IsDependencyOf BasicSymbolLibrary\r
- ST.IsDefinedBy %list : DIA.Composite <R L0.HasNext\r
- _ : SysdynTerminal\r
- terminal(CloudSymbol, IsHeadOfTerminal)\r
- _ : SysdynTerminal\r
- terminal(CloudSymbol, IsTailOfTerminal)\r
- \r
-######################################################################\r
-Input\r
- def()\r
- connection(IsTailOf)\r
- connection(IsHeadOf)\r
-\r
-InputSymbol <T DIA.FontProvider <T DIA.ColorProvider\r
- defSymbol("Input", Input)\r
- L0.IsDependencyOf BasicSymbolLibrary\r
- ST.IsDefinedBy %list : DIA.Composite <R L0.HasNext\r
- _ : SysdynTerminal\r
- terminal(InputSymbol, IsHeadOfTerminal)\r
- _ : SysdynTerminal\r
- terminal(InputSymbol, IsTailOfTerminal) \r
-\r
-######################################################################\r
-# Diagram connection types\r
-######################################################################\r
-\r
-angle <R L0.HasProperty : L0.FunctionalRelation\r
- L0.HasRange L0.Double\r
-\r
-FlowConnection <T DIA.Connection\r
- MOD.DiagramConnectionTypeToConnectionType\r
- Flow \r
- \r
-DependencyConnection <T DIA.Connection\r
- [angle card "1"]\r
- assert(angle, "0.1" : L0.Double) \r
- MOD.DiagramConnectionTypeToConnectionType\r
- Dependency\r
-\r
-######################################################################\r
-# Work model with two modules\r
-######################################################################\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 $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
- WorkModuleConfiguration\r
- WorkforceModuleConfiguration\r
- WorkModelConfiguration \r
-\r
-\r
-WorkModelConfiguration @ "WorkModelConfiguration" : Configuration\r
- L0.HasLabel "WorkModelConfiguration" : L0.String\r
- HasStartTime "0.0" : L0.Double\r
- HasStopTime "24.0" : L0.Double\r
- \r
- L0.ConsistsOf\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 "15" : L0.String \r
- Work2CompletionTime @ "Work2CompletionTime" : Auxiliary\r
- tag(MOD.Mapped) \r
- HasExpression _ : ParameterExpression\r
- HasEquation "11" : L0.String \r
- Work2Amount @ "Work2Amount" : Auxiliary\r
- tag(MOD.Mapped) \r
- HasExpression _ : ParameterExpression\r
- HasEquation "700" : 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
- Work1WorkDone @ "Work1WorkDone" : Input\r
- tag(MOD.Mapped) \r
- Work2WorkDone @ "Work2WorkDone" : Input\r
- tag(MOD.Mapped) \r
- \r
- ## Auxiliaries \r
- RequiredWorkingSpeedTotal @ "RequiredWorkingSpeedTotal" : Auxiliary\r
- tag(MOD.Mapped)\r
- HasExpression _ : NormalExpression\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, RequiredWorkingSpeedTotal, RequiredWorkingSpeedTotalInput) \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, RequiredWorkingSpeedTotal, RequiredWorkingSpeedTotalInput) \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
- d13 : Dependency\r
- conf_dep_ref(Work1WorkDone, Work1, WorkDone)\r
- d14 : Dependency\r
- conf_dep_ref(Work2WorkDone, Work2, WorkDone) \r
- d15 : Dependency\r
- conf_dep_ref(Work2, Work2Amount, ProjectWorkAmount) \r
- \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
- Work2AmountElement : AuxiliarySymbol\r
- MOD.ElementToComponent Work2Amount\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 75.0, 160.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
- Work1WorkDoneElement : InputSymbol\r
- MOD.ElementToComponent Work1WorkDone\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 155.0, 110.0" : G2D.Transform\r
- Work2WorkDoneElement : InputSymbol\r
- MOD.ElementToComponent Work2WorkDone\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 155.0, 130.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 , RequiredWorkingSpeedTotalElement, "-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 , RequiredWorkingSpeedTotalElement, "-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
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection d13\r
- dep(Work1WorkDoneElement, Work1Element , "-0.1") \r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection d14\r
- dep(Work2WorkDoneElement, Work2Element , "-0.1") \r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection d15\r
- dep(Work2Element, Work2AmountElement , "-0.1") \r
- \r
-WorkModule @ "WorkModule" <T Module\r
- ST.IsDefinedBy WorkModuleConfiguration\r
-\r
-WorkModuleConfiguration @ "WorkModuleConfiguration" : Configuration\r
- L0.ConsistsOf \r
- \r
- ## Parameters\r
- MaximumWorkingSpeed @ "MaximumWorkingSpeed" : Auxiliary\r
- tag(MOD.Mapped)\r
- HasExpression _ : ParameterExpression\r
- HasEquation "500" : 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 "if ProjectIsReady < 1 then WorkAllocation else 0" : 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 "Errors/ErrorsFoundTime" : L0.String \r
- ProjectReadyness @ "ProjectReadyness" : Valve\r
- tag(MOD.Mapped)\r
- HasExpression _ : NormalExpression\r
- HasEquation "(xidz(first=WorkDone, second=ProjectWorkAmount, x=0.0) - ProjectIsReady) / 0.08" : L0.String \r
- \r
-\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
- tag(IsOutput)\r
- Errors @ "Errors" : Stock\r
- tag(MOD.Mapped)\r
- HasExpression _ : StockExpression\r
- HasInitialEquation "0" : L0.String \r
- ProjectIsReady @ "ProjectIsReady" : 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 "max(0, WorkCompletionTimeInput-time)" : L0.String \r
- RequiredWorkingSpeed @ "RequiredWorkingSpeed" : Auxiliary\r
- tag(MOD.Mapped)\r
- tag(IsOutput)\r
- HasExpression _ : NormalExpression\r
- HasEquation "if ProjectIsReady < 1 then xidz(first=WorkToDo, second=TimeToDeadline, x=MaximumWorkingSpeed) else 0" : L0.String \r
- WorkAllocation @ "WorkAllocation" : Auxiliary\r
- tag(MOD.Mapped)\r
- HasExpression _ : NormalExpression\r
- HasEquation "xidz(first = RequiredWorkingSpeed, second = RequiredWorkingSpeedTotalInput, x = 0.0) * PossibleWorkingSpeedInput" : L0.String \r
- ErrorsFoundTime @ "ErrorsFoundTime" : Auxiliary\r
- tag(MOD.Mapped)\r
- HasExpression _ : WithLookupExpression\r
- HasEquation "xidz(first=WorkDone, second=ProjectWorkAmount, x=0.0)" : 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
- RequiredWorkingSpeedTotalInput @ "RequiredWorkingSpeedTotalInput" : Input\r
- tag(MOD.Mapped) \r
- ProjectWorkAmount @ "ProjectWorkAmount" : Input\r
- tag(MOD.Mapped)\r
- HasDefaultInputValue "1000.0" : L0.Double \r
- \r
- c31 : Cloud\r
- c33 : 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, RequiredWorkingSpeedTotalInput) \r
- d37 : Dependency\r
- conf_dep(WorkAllocation, PossibleWorkingSpeedInput) \r
- d38 : Dependency\r
- conf_dep(WorkAllocation, RequiredWorkingSpeed) \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, ProjectWorkAmount) \r
- d49 : Dependency\r
- conf_dep(ErrorsFoundTime, WorkDone) \r
- \r
- \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
- f40 : Flow\r
- conf_dep(ProjectIsReady, ProjectReadyness) \r
- f41 : Flow\r
- conf_dep(ProjectReadyness, c33) \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, 60.0, 55.0" : G2D.Transform \r
- PossibleWorkingSpeedInputElement : InputSymbol\r
- MOD.ElementToComponent PossibleWorkingSpeedInput\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 190.0, 60.0" : G2D.Transform \r
- RequiredWorkingSpeedTotalInputElement : InputSymbol\r
- MOD.ElementToComponent RequiredWorkingSpeedTotalInput\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 165.0, 45.0" : G2D.Transform \r
- ProjectWorkAmountElement : InputSymbol\r
- MOD.ElementToComponent ProjectWorkAmount\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 210.0, 120.0" : G2D.Transform \r
- \r
- WorkingSpeedElement : ValveSymbol\r
- MOD.ElementToComponent WorkingSpeed\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 125.0, 100.0" : G2D.Transform \r
- ErrorsGeneratedElement : ValveSymbol\r
- MOD.ElementToComponent ErrorsGenerated\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 135.0, 110.0" : G2D.Transform \r
- ErrorsFoundRateElement : ValveSymbol\r
- MOD.ElementToComponent ErrorsFoundRate\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 140.0, 140.0" : G2D.Transform \r
- ProjectReadynessElement : ValveSymbol\r
- MOD.ElementToComponent ProjectReadyness\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 215.0, 85.0" : G2D.Transform \r
- \r
- WorkToDoElement : StockSymbol\r
- MOD.ElementToComponent WorkToDo\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 85.0, 100.0" : G2D.Transform \r
- WorkDoneElement : StockSymbol\r
- MOD.ElementToComponent WorkDone\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 160.0, 100.0" : G2D.Transform \r
- ErrorsElement : StockSymbol\r
- MOD.ElementToComponent Errors\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 153.0, 110.0" : G2D.Transform \r
- ProjectIsReadyElement : StockSymbol\r
- MOD.ElementToComponent ProjectIsReady\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 180.0, 85.0" : G2D.Transform \r
- \r
- MaximumWorkingSpeedElement : AuxiliarySymbol\r
- MOD.ElementToComponent MaximumWorkingSpeed\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 45.0, 70.0" : G2D.Transform \r
- WorkQualityElement : AuxiliarySymbol\r
- MOD.ElementToComponent WorkQuality\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 120.0, 130.0" : G2D.Transform \r
- TimeToDeadlineElement : AuxiliarySymbol\r
- MOD.ElementToComponent TimeToDeadline\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 80.0, 75.0" : G2D.Transform \r
- RequiredWorkingSpeedElement : AuxiliarySymbol\r
- MOD.ElementToComponent RequiredWorkingSpeed\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 90.0, 90.0" : G2D.Transform \r
- WorkAllocationElement : AuxiliarySymbol\r
- MOD.ElementToComponent WorkAllocation\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 140.0, 75.0" : G2D.Transform \r
- ErrorsFoundTimeElement : AuxiliarySymbol\r
- MOD.ElementToComponent ErrorsFoundTime\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 180.0, 140.0" : G2D.Transform \r
-\r
- c31Element : CloudSymbol\r
- MOD.ElementToComponent c31\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 110.0, 110.0" : G2D.Transform \r
- c33Element : CloudSymbol\r
- MOD.ElementToComponent c33\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 230.0, 85.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, RequiredWorkingSpeedTotalInputElement , "-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 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, ProjectWorkAmountElement , "-0.1") \r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection d49\r
- dep(ErrorsFoundTimeElement, WorkDoneElement , "-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
- _ : FlowConnection\r
- MOD.DiagramConnectionToConnection f40\r
- flow(ProjectIsReadyElement, ProjectReadynessElement ) \r
- _ : FlowConnection\r
- MOD.DiagramConnectionToConnection f41\r
- flow(ProjectReadynessElement, c33Element ) \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
- \r
- ## Auxiliaries \r
- WorkForceRequired @ "WorkForceRequired" : Auxiliary\r
- tag(MOD.Mapped)\r
- HasExpression _ : NormalExpression\r
- HasEquation "RequiredWorkingSpeedInput/Productivity" : L0.String \r
- PossibleWorkingSpeed @ "PossibleWorkingSpeed" : Auxiliary\r
- tag(MOD.Mapped)\r
- tag(IsOutput)\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
-######################################################################\r
-\r
-CustomersSymbol <T ModuleSymbol\r
- MOD.SymbolToComponentType CustomerModule\r
- ST.IsDefinedBy %list : DIA.Composite <R L0.HasNext\r
- _ : SysdynTerminal\r
- terminal(ModuleSymbol, IsHeadOfTerminal)\r
- _ : SysdynTerminal\r
- terminal(ModuleSymbol, IsTailOfTerminal)\r
-\r
-CapacitySymbol <T ModuleSymbol\r
- MOD.SymbolToComponentType CapacityModule\r
- ST.IsDefinedBy %list : DIA.Composite <R L0.HasNext\r
- _ : SysdynTerminal\r
- terminal(ModuleSymbol, IsHeadOfTerminal)\r
- _ : SysdynTerminal\r
- terminal(ModuleSymbol, IsTailOfTerminal)\r
-\r
-_ @ "CustomerModel" : SysdynModel\r
- L0.HasLabel "Asiakasmalli" : L0.String\r
- L0.PartOf SysdynModuleTestProject\r
- SIMU.HasConfiguration RootConfiguration\r
- L0.ConsistsOf \r
- _ @ "Experiment" : Experiment\r
- L0.HasLabel "Experiment" : L0.String\r
- CustomerModule\r
- CustomerModuleConfiguration\r
- CapacityModule \r
- CapacityModuleConfiguration\r
- RootConfiguration \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 AdminIsFocusableCM @ "Admin1CM" <R DIA.IsFocusable\r
- symmetric()\r
- DIA.HasVisibleTag AdminIsVisibleCM @ "Admin2CM" <R DIA.IsVisible\r
- symmetric()\r
- L0.HasTrigger _ : DiagramToCompositeMapping\r
- #DIA.NavigationEnabled "false" : L0.Boolean\r
- %list_elements\r
- CustomersElement : CustomersSymbol\r
- MOD.ElementToComponent Customers\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 89.0, 133.0" : G2D.Transform\r
- CapacityElement : CapacitySymbol\r
- MOD.ElementToComponent Capacity\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 87.0, 65.0" : G2D.Transform\r
- SalesRevenueElement : ValveSymbol\r
- MOD.ElementToComponent SalesRevenue\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 100.0, 90.0" : G2D.Transform\r
- CumulativeRevenueElement : StockSymbol\r
- MOD.ElementToComponent CumulativeRevenue\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 115.0, 90.0" : G2D.Transform\r
- DummyCloudElement : CloudSymbol\r
- MOD.ElementToComponent DummyCloud\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 85.0, 90.0" : G2D.Transform\r
- PriceElement : AuxiliarySymbol\r
- MOD.ElementToComponent Price\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 99.0, 80.0" : G2D.Transform\r
- SalesElement : AuxiliarySymbol\r
- MOD.ElementToComponent Sales\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 92.0, 102.0" : G2D.Transform\r
- WidgetsPerPersonInputElement : InputSymbol\r
- MOD.ElementToComponent WidgetsPerPersonInput\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 61.0, 90.0" : G2D.Transform\r
- NewCustomersInputElement : InputSymbol\r
- MOD.ElementToComponent NewCustomersInput\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 91.0, 113.0" : G2D.Transform\r
- WordOfMouthDemandInputElement : InputSymbol\r
- MOD.ElementToComponent WordOfMouthDemandInput\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 49.0, 98.0" : G2D.Transform\r
- CapacityInputElement : InputSymbol\r
- MOD.ElementToComponent CapacityInput\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(SalesRevenueElement, DummyCloudElement)\r
- _ : FlowConnection\r
- MOD.DiagramConnectionToConnection Flow2\r
- flow(CumulativeRevenueElement ,SalesRevenueElement)\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency1 \r
- dep(SalesRevenueElement, PriceElement, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency2 \r
- dep(SalesRevenueElement, SalesElement, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency3 \r
- dep(SalesElement, NewCustomersInputElement, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency4 \r
- dep(SalesElement, WidgetsPerPersonInputElement, "0.12")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency5 \r
- dep(CustomersElement, CapacityInputElement, "-0.28")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency6\r
- dep(CustomersElement, WidgetsPerPersonInputElement, "0.27")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency7\r
- dep(WordOfMouthDemandInputElement, CustomersElement, "-0.2")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency8\r
- dep(CapacityElement, WordOfMouthDemandInputElement, "-0.98")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency9\r
- dep(NewCustomersInputElement, CustomersElement, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency10\r
- dep(WidgetsPerPersonInputElement, CapacityElement, "0.88")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency11\r
- dep(CapacityInputElement, CapacityElement, "-0.31")\r
- \r
-RootConfiguration @ "RootConfiguration" : Configuration\r
- L0.HasLabel "Konfiguraatio" : L0.String\r
- HasStartTime "0.0" : L0.Double\r
- HasStopTime "100.0" : L0.Double\r
- L0.ConsistsOf\r
- ### Modules\r
- Customers @ "Asiakkaat" : CustomerModule\r
- tag(MOD.Mapped)\r
- L0.HasLabel "Asiakkaat" : L0.String\r
- Capacity @ "Kapasiteetti" : CapacityModule\r
- tag(MOD.Mapped)\r
- L0.HasLabel "Kapasiteetti" : L0.String \r
- ### Variables\r
- Price @ "Hinta" : Auxiliary\r
- tag(MOD.Mapped)\r
- HasExpression _ : ParameterExpression\r
- HasEquation "50" : L0.String\r
- Sales @ "Myynti" : Auxiliary\r
- tag(MOD.Mapped)\r
- HasExpression _ : NormalExpression\r
- HasEquation "UusiaAsiakkaita * WidgettejaHenkilolle" : L0.String \r
- CumulativeRevenue @ "KumulatiivisetTulot" : Stock\r
- tag(MOD.Mapped)\r
- HasExpression _ : StockExpression\r
- HasInitialEquation "0" : L0.String \r
- SalesRevenue @ "Myyntitulot" : Valve\r
- tag(MOD.Mapped)\r
- HasExpression _ : NormalExpression\r
- HasEquation "Myynti * Hinta" : L0.String \r
- DummyCloud : Cloud\r
- tag(MOD.Mapped)\r
- ### Input variables\r
- WidgetsPerPersonInput @ "WidgettejaHenkilolle" : Input\r
- tag(MOD.Mapped)\r
- NewCustomersInput @ "UusiaAsiakkaita" : Input\r
- tag(MOD.Mapped)\r
- WordOfMouthDemandInput @ "PuskaradioKysynta" : Input\r
- tag(MOD.Mapped)\r
- CapacityInput @ "KapasiteettiInput" : Input\r
- tag(MOD.Mapped) \r
- Flow1 : Flow\r
- tag(MOD.Mapped)\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
-\r
-CapacityModuleConfiguration @ "Kapasiteettimoduulikonfiguraatio" : Configuration\r
- L0.ConsistsOf \r
- CapacityAdjustment @ "Kapasiteettisaato" : Auxiliary\r
- HasExpression _ : NormalExpression\r
- HasEquation "(Tavoitekapasiteetti - Kapasiteetti)/Kapasiteetinsaatoaika" : L0.String\r
- TargetCapacity @ "Tavoitekapasiteetti" : Auxiliary\r
- HasExpression _ : NormalExpression\r
- HasEquation "PuskaradioKysynta * WidgettejaHenkilolle" : L0.String\r
- DesiredProduction @ "Tavoitetuotanto" : Auxiliary\r
- HasExpression _ : NormalExpression\r
- HasEquation "Tavoitekapasiteetti" : L0.String\r
- PotentialProduction @ "PotentiaalinenTuotanto" : Auxiliary\r
- HasExpression _ : NormalExpression\r
- HasEquation "Kapasiteetti" : L0.String\r
- Production @ "Tuotanto" : Auxiliary\r
- HasExpression _ : NormalExpression\r
- HasEquation "min(Tavoitetuotanto, PotentiaalinenTuotanto)" : L0.String\r
- CapacityLife @ "Kapasiteettielama" : Auxiliary\r
- HasExpression _ : ParameterExpression\r
- HasEquation "20" : L0.String \r
- TimeToAdjustCapacity @ "Kapasiteetinsaatoaika" : Auxiliary\r
- HasExpression _ : ParameterExpression\r
- HasEquation "12" : L0.String \r
- WidgetsPerPersonOutput @ "WidgettejaHenkilolle" : Auxiliary\r
- HasExpression _ : ParameterExpression\r
- HasEquation "1" : L0.String \r
- tag(IsOutput)\r
- \r
- DummyCloud2 : Cloud\r
- DummyCloud3 : Cloud \r
- CapacityStock @ "Kapasiteetti" : Stock\r
- HasExpression _ : StockExpression\r
- HasInitialEquation "Tavoitekapasiteetti" : L0.String\r
- tag(IsOutput) \r
- Investment @ "Sijoitus" : Valve\r
- HasExpression _ : NormalExpression\r
- HasEquation "Kapasiteettisaato" : L0.String \r
- Reductions @ "Vahennys" : Valve\r
- HasExpression _ : NormalExpression\r
- HasEquation "Kapasiteetti/Kapasiteettielama" : L0.String \r
- \r
- ### Input variables\r
- WordOfMouthDemandInput2 @ "PuskaradioKysynta" : Input\r
-\r
- ### Dependencies \r
- Flow3 : Flow\r
- HasHead Investment\r
- HasTail DummyCloud2 \r
- tag(MOD.Mapped)\r
- Flow4 : Flow\r
- HasHead CapacityStock\r
- HasTail Investment \r
- tag(MOD.Mapped)\r
- Flow5 : Flow\r
- HasHead Reductions\r
- HasTail CapacityStock\r
- tag(MOD.Mapped)\r
- Flow6 : Flow\r
- HasHead DummyCloud3\r
- HasTail Reductions \r
- tag(MOD.Mapped) \r
- Dependency12 : Dependency\r
- HasHead Reductions\r
- HasTail CapacityStock\r
- tag(MOD.Mapped)\r
- Dependency13 : Dependency\r
- HasHead PotentialProduction\r
- HasTail CapacityStock\r
- tag(MOD.Mapped)\r
- Dependency14 : Dependency\r
- HasHead CapacityAdjustment\r
- HasTail CapacityStock\r
- tag(MOD.Mapped)\r
- Dependency15 : Dependency\r
- HasHead Reductions\r
- HasTail CapacityLife\r
- tag(MOD.Mapped)\r
- Dependency16 : Dependency\r
- HasHead Production\r
- HasTail PotentialProduction\r
- tag(MOD.Mapped)\r
- Dependency17 : Dependency\r
- HasHead Production\r
- HasTail DesiredProduction \r
- tag(MOD.Mapped)\r
- Dependency18 : Dependency\r
- HasHead DesiredProduction\r
- HasTail TargetCapacity\r
- tag(MOD.Mapped)\r
- Dependency19 : Dependency\r
- HasHead CapacityAdjustment\r
- HasTail TargetCapacity\r
- tag(MOD.Mapped)\r
- Dependency20 : Dependency\r
- HasHead TargetCapacity\r
- HasTail WidgetsPerPersonOutput\r
- tag(MOD.Mapped)\r
- Dependency21 : Dependency\r
- HasHead TargetCapacity\r
- HasTail WordOfMouthDemandInput2\r
- tag(MOD.Mapped)\r
- Dependency22 : Dependency\r
- HasHead CapacityAdjustment\r
- HasTail TimeToAdjustCapacity\r
- tag(MOD.Mapped)\r
- Dependency23 : Dependency\r
- HasHead Investment\r
- HasTail CapacityAdjustment \r
- tag(MOD.Mapped) \r
- \r
-CapacityModuleConfigurationDiagram : ConfigurationDiagram <R L0.HasNext\r
- MOD.DiagramToComposite CapacityModuleConfiguration\r
- DIA.HasLayer _ @ "Admin" : DIA.Layer\r
- DIA.IsActive "true" : L0.Boolean\r
- DIA.HasFocusableTag AdminIsFocusableCM\r
- DIA.HasVisibleTag AdminIsVisibleCM\r
- L0.HasTrigger _ : DiagramToCompositeMapping\r
- %list_elements\r
- DummyCloud2Element : CloudSymbol\r
- MOD.ElementToComponent DummyCloud2\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 85.0, 90.0" : G2D.Transform\r
- InvestmentElement : ValveSymbol\r
- MOD.ElementToComponent Investment\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 100.0, 90.0" : G2D.Transform\r
- CapacityStockElement : StockSymbol\r
- MOD.ElementToComponent CapacityStock\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 115.0, 90.0" : G2D.Transform\r
- ReductionsElement : ValveSymbol\r
- MOD.ElementToComponent Reductions\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 150.0, 90.0" : G2D.Transform\r
- DummyCloud3Element : CloudSymbol\r
- MOD.ElementToComponent DummyCloud3\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(InvestmentElement, DummyCloud2Element)\r
- _ : FlowConnection\r
- MOD.DiagramConnectionToConnection Flow4\r
- flow(CapacityStockElement, InvestmentElement)\r
- _ : FlowConnection\r
- MOD.DiagramConnectionToConnection Flow5\r
- flow(ReductionsElement, CapacityStockElement)\r
- _ : FlowConnection\r
- MOD.DiagramConnectionToConnection Flow6\r
- flow(DummyCloud3Element, ReductionsElement)\r
- \r
- CapacityAdjustmentElement : AuxiliarySymbol\r
- MOD.ElementToComponent CapacityAdjustment\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 80.0, 105.0" : G2D.Transform\r
- TargetCapacityElement : AuxiliarySymbol\r
- MOD.ElementToComponent TargetCapacity\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 110.0, 120.0" : G2D.Transform\r
- DesiredProductionElement : AuxiliarySymbol\r
- MOD.ElementToComponent DesiredProduction\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 140.0, 120.0" : G2D.Transform\r
- PotentialProductionElement : AuxiliarySymbol\r
- MOD.ElementToComponent PotentialProduction\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 120.0, 105.0" : G2D.Transform\r
- ProductionElement : AuxiliarySymbol\r
- MOD.ElementToComponent Production\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 145.0, 110.0" : G2D.Transform\r
- CapacityLifeElement : AuxiliarySymbol\r
- MOD.ElementToComponent CapacityLife\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 150, 100.0" : G2D.Transform\r
- TimeToAdjustCapacityElement : AuxiliarySymbol\r
- MOD.ElementToComponent TimeToAdjustCapacity\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 70.0, 120.0" : G2D.Transform\r
- WidgetsPerPersonOutputElement : AuxiliarySymbol\r
- MOD.ElementToComponent WidgetsPerPersonOutput\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 130.0, 150.0" : G2D.Transform \r
- WordOfMouthDemandInput2Element : InputSymbol\r
- MOD.ElementToComponent WordOfMouthDemandInput2\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 100.0, 150.0" : G2D.Transform\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency12\r
- dep(ReductionsElement, CapacityStockElement, "-1.0")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency13\r
- dep(PotentialProductionElement, CapacityStockElement, "-0.1") \r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency14\r
- dep(CapacityAdjustmentElement, CapacityStockElement, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency15\r
- dep(ReductionsElement, CapacityLifeElement, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency16\r
- dep(ProductionElement, PotentialProductionElement, "1.04")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency17\r
- dep(ProductionElement, DesiredProductionElement, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency18\r
- dep(DesiredProductionElement, TargetCapacityElement, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency19\r
- dep(CapacityAdjustmentElement, TargetCapacityElement, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency20\r
- dep(TargetCapacityElement, WidgetsPerPersonOutputElement, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency21\r
- dep(TargetCapacityElement, WordOfMouthDemandInput2Element, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency22\r
- dep(CapacityAdjustmentElement, TimeToAdjustCapacityElement, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency23\r
- dep(InvestmentElement, CapacityAdjustmentElement, "-0.1") \r
-\r
-\r
-CustomerModule @ "Asiakasmoduuli" <T Module\r
- ST.IsDefinedBy CustomerModuleConfiguration\r
-\r
-\r
-CustomerModuleConfiguration @ "Asiakasmoduulikonfiguraatio" : Configuration\r
- L0.ConsistsOf \r
- ContactsOfNoncustomersWithCustomers @ "EiAsiakkaidenJaAsiakkaidenKohtaamiset" : Auxiliary\r
- HasExpression _ : NormalExpression\r
- HasEquation "AsiakkaidenKohtaamiset * PotentiaalisetAsiakaskeskittymat" : L0.String\r
- ContactsWithCustomers @ "AsiakkaidenKohtaamiset" : Auxiliary\r
- HasExpression _ : NormalExpression\r
- HasEquation "Asiakkaat * Sosiaalisuus" : L0.String\r
- PotentialCustomerConcentration @ "PotentiaalisetAsiakaskeskittymat" : Auxiliary\r
- HasExpression _ : NormalExpression\r
- HasEquation "MahdollisetAsiakkaat / MarkkinoidenKoko" : L0.String\r
-# WordOfMouthDemandOutput @ "Puskaradiokysynta_Per_MarkkinoidenKoko" : Auxiliary\r
- WordOfMouthDemandOutput @ "Puskaradiokysynta" : Auxiliary\r
- HasExpression _ : NormalExpression\r
- HasEquation "EiAsiakkaidenJaAsiakkaidenKohtaamiset * Hedelmallisyys" : L0.String\r
- tag(IsOutput)\r
- TotalMarket @ "MarkkinoidenKoko" : Auxiliary\r
- HasExpression _ : NormalExpression\r
- HasEquation "Asiakkaat + MahdollisetAsiakkaat" : L0.String \r
- Fruitfulness @ "Hedelmallisyys" : Auxiliary\r
- HasExpression _ : ParameterExpression\r
- HasEquation "0.01" : L0.String \r
- Sociability @ "Sosiaalisuus" : Auxiliary\r
- HasExpression _ : ParameterExpression\r
- HasEquation "20" : L0.String \r
- PotentialCustomersStock @ "MahdollisetAsiakkaat" : Stock\r
- HasExpression _ : StockExpression\r
- HasInitialEquation "1e+006" : L0.String \r
- CustomersStock @ "Asiakkaat" : Stock\r
- HasExpression _ : StockExpression\r
- HasInitialEquation "1000" : L0.String \r
- NewCustomers @ "UudetAsiakkaat" : Valve\r
- HasExpression _ : NormalExpression\r
- HasEquation " min(Puskaradiokysynta, Kapasiteetti/WidgettejaHenkilolle)" : L0.String \r
- tag(IsOutput)\r
- ### Input variables\r
- CapacityInput2 @ "Kapasiteetti" : Input\r
- WidgetsPerPersonInput2 @ "WidgettejaHenkilolle" : Input\r
- \r
- ### Dependencies \r
- Flow7 : Flow\r
- HasHead NewCustomers\r
- HasTail PotentialCustomersStock \r
- tag(MOD.Mapped) \r
- Flow8 : Flow\r
- HasHead CustomersStock\r
- HasTail NewCustomers \r
- tag(MOD.Mapped) \r
- Dependency24 : Dependency\r
- HasHead PotentialCustomerConcentration\r
- HasTail TotalMarket\r
- tag(MOD.Mapped) \r
- Dependency25 : Dependency\r
- HasHead ContactsOfNoncustomersWithCustomers\r
- HasTail PotentialCustomerConcentration\r
- tag(MOD.Mapped) \r
- Dependency26 : Dependency\r
- HasHead WordOfMouthDemandOutput\r
- HasTail ContactsOfNoncustomersWithCustomers\r
- tag(MOD.Mapped) \r
- Dependency27 : Dependency\r
- HasHead NewCustomers\r
- HasTail WordOfMouthDemandOutput\r
- tag(MOD.Mapped) \r
- Dependency28 : Dependency\r
- HasHead ContactsOfNoncustomersWithCustomers\r
- HasTail ContactsWithCustomers\r
- tag(MOD.Mapped) \r
- Dependency29 : Dependency\r
- HasHead ContactsWithCustomers\r
- HasTail Sociability\r
- tag(MOD.Mapped) \r
- Dependency30 : Dependency\r
- HasHead ContactsWithCustomers\r
- HasTail CustomersStock\r
- tag(MOD.Mapped) \r
- Dependency31 : Dependency\r
- HasHead TotalMarket\r
- HasTail CustomersStock\r
- tag(MOD.Mapped) \r
- Dependency32 : Dependency\r
- HasHead TotalMarket\r
- HasTail PotentialCustomersStock\r
- tag(MOD.Mapped) \r
- Dependency33 : Dependency\r
- HasHead NewCustomers\r
- HasTail CapacityInput2\r
- tag(MOD.Mapped) \r
- Dependency34 : Dependency\r
- HasHead NewCustomers\r
- HasTail WidgetsPerPersonInput2\r
- tag(MOD.Mapped) \r
- Dependency35 : Dependency\r
- HasHead WordOfMouthDemandOutput\r
- HasTail Fruitfulness\r
- tag(MOD.Mapped) \r
- Dependency36 : Dependency\r
- HasHead PotentialCustomerConcentration\r
- HasTail PotentialCustomersStock\r
- tag(MOD.Mapped) \r
- \r
-CustomerModuleConfigurationDiagram : ConfigurationDiagram <R L0.HasNext\r
- MOD.DiagramToComposite CustomerModuleConfiguration\r
- DIA.HasLayer _ @ "Admin" : DIA.Layer\r
- DIA.IsActive "true" : L0.Boolean\r
- DIA.HasFocusableTag AdminIsFocusableCM\r
- DIA.HasVisibleTag AdminIsVisibleCM\r
- L0.HasTrigger _ : DiagramToCompositeMapping\r
- %list_elements \r
- ContactsOfNoncustomersWithCustomersElement : AuxiliarySymbol\r
- MOD.ElementToComponent ContactsOfNoncustomersWithCustomers\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 64.0, 45.0" : G2D.Transform\r
- ContactsWithCustomersElement : AuxiliarySymbol\r
- MOD.ElementToComponent ContactsWithCustomers\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 130.0, 60.0" : G2D.Transform\r
- PotentialCustomerConcentrationElement : AuxiliarySymbol\r
- MOD.ElementToComponent PotentialCustomerConcentration\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 58.0, 60.0" : G2D.Transform\r
- WordOfMouthDemandOutputElement : AuxiliarySymbol\r
- MOD.ElementToComponent WordOfMouthDemandOutput\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 100.0, 75.0" : G2D.Transform\r
- TotalMarketElement : AuxiliarySymbol\r
- MOD.ElementToComponent TotalMarket\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 80.0, 120.0" : G2D.Transform \r
- FruitfulnessElement : AuxiliarySymbol\r
- MOD.ElementToComponent Fruitfulness\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 105.0, 60.0" : G2D.Transform\r
- SociabilityElement : AuxiliarySymbol\r
- MOD.ElementToComponent Sociability\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 125.0, 45.0" : G2D.Transform\r
- PotentialCustomersStockElement : StockSymbol\r
- MOD.ElementToComponent PotentialCustomersStock\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 60.0, 90.0" : G2D.Transform \r
- CustomersStockElement : StockSymbol\r
- MOD.ElementToComponent CustomersStock\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 120.0, 90.0" : G2D.Transform \r
- NewCustomersElement : ValveSymbol\r
- MOD.ElementToComponent NewCustomers\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 100.0, 90.0" : G2D.Transform\r
- CapacityInput2Element : InputSymbol\r
- MOD.ElementToComponent CapacityInput2\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 90.0, 105.0" : G2D.Transform\r
- WidgetsPerPersonInput2Element : InputSymbol\r
- MOD.ElementToComponent WidgetsPerPersonInput2\r
- DIA.HasTransform "1.0, 0.0, 0.0, 1.0, 130.0, 110.0" : G2D.Transform\r
- \r
- \r
- ### Dependencies \r
- _ : FlowConnection\r
- MOD.DiagramConnectionToConnection Flow7\r
- flow(NewCustomersElement, PotentialCustomersStockElement) \r
- _ : FlowConnection\r
- MOD.DiagramConnectionToConnection Flow8\r
- flow(CustomersStockElement, NewCustomersElement)\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency24\r
- dep(PotentialCustomerConcentrationElement, TotalMarketElement, "-1.7")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency25\r
- dep(ContactsOfNoncustomersWithCustomersElement, PotentialCustomerConcentrationElement, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency26\r
- dep(WordOfMouthDemandOutputElement, ContactsOfNoncustomersWithCustomersElement, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency27\r
- dep(NewCustomersElement, WordOfMouthDemandOutputElement, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency28\r
- dep(ContactsOfNoncustomersWithCustomersElement, ContactsWithCustomersElement, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency29\r
- dep(ContactsWithCustomersElement, SociabilityElement, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency30\r
- dep(ContactsWithCustomersElement, CustomersStockElement, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency31\r
- dep(TotalMarketElement, CustomersStockElement, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency32\r
- dep(TotalMarketElement, PotentialCustomersStockElement, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency33\r
- dep(NewCustomersElement, CapacityInput2Element, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency34\r
- dep(NewCustomersElement, WidgetsPerPersonInput2Element, "-0.6")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency35\r
- dep(WordOfMouthDemandOutputElement, FruitfulnessElement, "-0.1")\r
- _ : DependencyConnection\r
- MOD.DiagramConnectionToConnection Dependency36\r
- dep(PotentialCustomerConcentrationElement, PotentialCustomersStockElement, "-0.1") \r
-
\ No newline at end of file