Understanding the Differences Between Using the Simcode Component and Using Separate Components

You can use the Simcode component to read and modify the input, to issue the operating system command, and to read the output. Alternatively, you can use an OS Command component surrounded by two Data Exchanger components.

See Also
About the Data Exchanger Component
OS Command Component

Using the Simcode component to issue the operating system command is identical to using the OS Command component. However, there are slight differences between using the Simcode component to define the input and output and using Data Exchanger components.

The advantage of using the Simcode component over separate Data Exchanger and OS Command components is that the three phases—input, command, and output—all run in the same working directory. This is convenient when you are running on a SIMULIA Execution Engine because you do not need to copy input and output files between computers—the files are created, used, and (unless saved) discarded in one step.

Other differences between using the Simcode component and using separate Data Exchanger components are as follows:

  • When you are defining the input of the Simcode component, you are limited to writing files; similarly, when you are defining the output, you are limited to reading files. In contrast, a separate Data Exchanger component can read or write files and can open multiple files in different modes.

  • When you are defining the input of the Simcode component, you can select only one input file parameter for the file to be written. This local file is effectively updated in-place. A Data Exchanger component would have two file parameters: an input parameter for the template file and an output file parameter for the file that is written by the application. The Simcode component includes an option to save the updated input file as an output file parameter.

  • When you are defining the output of the Simcode component, you can define only one output file parameter for the file written by the application. The file is read by the Data Exchanger after the application writes it and before it is optionally mapped to a subsequent component. A Data Exchanger component uses an input file parameter for the file to read.