## 3 Proposed SysML4 GDPSim Profile
### Metamodel Description
#### 3.1.2 The Manufacturing System in the Simulation System  
As mentioned, the _MS_sim_ identifies the central component of the simulation system that emulates the behavior of the manufacturing system, transforming the input materials to obtain the output products with different geometrical properties. As represented in Figure 2, the _MS_sim_ is a complex transformer resource (_TransformResource_sim_) because material units (a) flow through the resource (_ProcessingResource_sim_ specialization) and (b) are transformed (i.e., there are changes in their physical characteristics).  
A manufacturing system (and its simulation system) involves different types of resources; so, the metamodel includes different concepts as represented in Figure 2 and briefly described below:  
* _ManufResource_sim_ (abstract) represents any resource of the simulated manufacturing system, i.e., both processor and control resources, _ProcessingResource_sim_ and _ControlResource_sim_, respectively.
* _ProcessingResource_sim_ is a specialization of the _ManufResource_sim_ to emulate a resource through which batches of products flow, executing processes that modify some properties of the batches (e.g., location, flow times, etc.) or the contained products (e.g., its state or its geometric characteristics). A _ProcessingResource_sim_ can be composed of  
Figure 1: Abstract syntax of simulation systems. The notations “1” and “1...” are multiplicities (“only one” and “one or more” respectively).  
other _ManufResource_sim_ (i.e., both processing and control resources) and must have at least two _FUL_Ports_ to send and receive _FlowUnits_.
* _TransformResource_sim_ is a specialization of the _ProcessingResource_sim_ that emulates a transformer resource that modifies the properties of the _FlowUnits_; so, incoming _FlowUnit_ type (input product) is different from the outgoing _FlowUnit_ type (processed product).
* _LogisticResource_sim_ is a specialization of the _ProcessingResource_sim_ that emulates a logistical resource, participating in the materials flow without modifying _FlowUnit_ properties so the type of incoming and outgoing _FlowUnits_ is the same.
* _ControlResource_sim_ is a specialization of the _ManufResource_sim_ that emulates a control resource. _ControlResource_sim_ does not participate in the logistics flow but exchanges data to support monitoring and decision making.
* _FlowUnit_ represents a flowing unit, that is, a batch of products. Therefore, it will be composed of one or more _Product_sim_, which represents each material or product unit.
* _DataPort_ represents a generic port as an interaction point to exchange data through connections that specify relationships between components of the simulation system.
* _FUL_Port_ is a specialization of the _DataPort_ that supports the transfer of data on the simulated _FlowUnits_ (product batches), supporting the logistics flow. As represented via a dependency relationship in Figure 2, this type of port must be typed by a _FlowUnit_.
* C_Port_ is a specialization of the _DataPort_ that supports data transfer in the form of communication between resources to synchronize tasks and behaviors.
* _Product_sim_ represents a simulated product unit characterized by properties that include the deviations for its key geometric characteristics. As a part of the _FlowUnit_, it supports geometric deviation propagation through the simulated manufacturing stages.