Model Engineer - Software Product Description
Version B1.7 - Release Date January 15, 2000
Model Engineer is a PC-based modeling toolkit (as opposed to an application) that facilitates the building, running and analysis of custom process and system models. It consists of two distinct parts, the modeling tools (or infrastructure), and the application libraries, with each library aimed at a different technical discipline. Currently there is one library for thermal systems analysis, but Model Engineer’s ability to create user-defined components makes building your own library quick and easy. So you don’t have to wait on Modelogics to provide components to meet your needs… if you have the subject matter expertise, you can build your own library in no time. In fact, you’ll spend more time gathering the technical information and designing your components than you’ll spend actually creating them, which is as it should be!
Because of the graphical nature of the toolkit and the adherence to the Windows user approach, building complex system models is much faster than ever before attainable. Modelogics’ key objective with Model Engineer is to allow users to focus on their area of expertise (instead of software development) by standardizing the approach to process and systems modeling on the desktop. The toolkit consists of various tools that help you:
· Design and build custom COM* components representing your individual processes or objects to use in your models.
· Use those components in Microsoftâ COM compliant applications such as Excel, Word, PowerPointâ, etc.
· Graphically build (drag-and-drop) and run complex models with automatic data flow, user-defined feedback loops for control and graphical or text output.
· Incorporate “shell” components that link to existing legacy systems such as Excel spreadsheets or old Fortran codes, but operate as just another piece of your own model.
* COM or Component Object Model is Microsoft’s object definition standard formerly known as OLE and is the technology that enables “drag-and-drop” from one application to another.
Modeling tools come in three varieties: 1) model building and control, 2) data viewing and management, and 3) system component services.
The first group contains tools that are used to build system components, put a group of library or user-built components together into a system and to run and control that system. Examples include Object Engineer, the Connector and the Controller.
The second group contains tools such as ME Analyzer, the Graph and the Case Manager that are used to monitor and manage data generated by the model.
And the third group provides services to user-built components such as the Map Tool for interpolating data from an X-Y-Z map (data file) and the Curve Fit which takes X-Y data and returns curve fit coefficients.
Library components come in two varieties: 1) physical components and 2) component services.
The first type are models of some type of actual component or system such as a compressor or heat exchanger. The second type provide application specific services to physical components. An example of that is the Refrigerants components which provide refrigerant properties for specific gases based on user selection.
Again, the key here is the separation of modeling tools and application libraries. That separation is what allows you to add any type of component you want, whether it represents some physical object or a business process. And that separation is also what makes it possible to build models that encompass various disciplines with model components coming from various groups.
( * Indicates item is included in Model Engineer Pro version only. )
Model Building and Control
Object Engineer *
Object Engineer is a graphical application that allows users to create their own custom model components that fit into the Model Engineer framework. The components one can create are limited only by the user’s design expertise. The components built by Object Engineer are ActiveX/COM objects, which is the technology that allows Windows users to do things such as embed Excel spreadsheets into PowerPoint presentations, e-mail Word documents and even view them through Internet Explorer. Thus any custom component built by Object Engineer inherits all those same attributes for use in the Windows environment.
Object Engineer makes building complex COM objects as simple as filling in a form, inputting the equations or relationships and compiling. Object Engineer handles all the complexities of the underlying object technology by generating the thousands of lines of code required while allowing the engineer to focus on design issues. In addition, it creates the components GUI input/output forms (Property Page) and even a documentation file for inclusion in the Help system and manuals.
Drag and Drop Tools
Combiner2X used for taking the output of two properties from two different physical components, performing some math operation with the values such as adding the two and then flowing that result into a property on a third physical component.
Connector used to connect one physical component to another, providing the channels for data to be passed from one to another, i.e., makes data flow.
Controller can be thought of as a feedback loop. It contains the convergence algorithms, case initialization and range information to bring about a solution.
Data Generator creates a series of solutions by inputting a range of conditions and collecting the answers. These answers can be saved into an Excel spreadsheet and/or plotted on the Graph or GraphForm objects and printed.
Excel Mapper is embedded in custom developed components and used to facilitate communication between that object and Excel cells. In general, when one “drops” an object into Excel, the only way to communicate with it is to write VBA code inside Excel. Excel Mapper negates that requirement and let’s the user map object input and output properties to cell ranges.
Remote Model Object The Remote Model Object is essentially a “hollow” component that is used to connect to remote, legacy models. On the desktop, it is a component with properties and methods, but “behind the scenes” it accesses other applications on remote systems for its calculations. Currently there is support to communicate with Excel spreadsheets and I/O based applications, i.e., applications which read an input file, execute and then output results to a file.
The Remote Messenger is an application that “serves” remote models to Model Engineer. It runs on the system on which the remote application resides and acts as a message queue between that application and the Model Engineer model.
The Distributed File (DF) Editor is a graphical editor for creating files that contain meta data about a remote model that uses I/O files as it’s input/output mechanism. An example of such a remote model would be a “dusty deck” Fortran code that reads its input data from some file, executes and then writes its output data to a file or files.
Data Viewing and Management
One of the many attributes of the Model Engineer architecture is logging. When users build complex models it is not uncommon for them to create error situations, e.g., overflow or divide by zero. All Model Engineer components “trap” those errors and rather than stopping or crashing the application, the component will write a description of the problem to a log file. Log Watch is a small application that monitors the log file, alerts the user when one of the components or models writes something to the log and then facilitates viewing and clearing of the log file.
Drag and Drop Tools
Case Manager used to save and read run-time data for components or complete systems models.
Graph / GraphForm components allow the user to plot x-y data from the models in order to gain insight into model dynamics and interpret results graphically. The GraphForm differs from the Graph in that it is a “button” initially that opens up to a Graph when “clicked” on by the user.
Log Manager allows the setup and viewing of Error logs and Information logs to help the user understand what happened during model execution.
Page Viewer is a general purpose graphics viewer that provides the capability for model users to pop-up a window to view graphics files.
Quick Plot provides a “short cut” user interface for setup of a Data Generator tool and a Graph or GraphForm tool together.
Viewer is a graphical “window” that allows the user to dynamically view selected data fields from the model while the model is running.
ME Analyzer *
ME Analyzer is a graphical application that allows users to analyze the performance of models. All library components and components built by Object Engineer have the ability to write “trace” information to a file so that data regarding the time spent doing specific tasks and the order of execution of tasks is captured. ME Analyzer reads those files and displays the summary information of them graphically.
System Component Services
Drag and Drop Tools
Case Generator provides the infrastructure to allow a component or application to use the Case Manager tool for handling run-time data input/output.
Curve Fit a tool to provide an equation representing a curve fit of a set of data input by the user.
Embedded Controller a version of the Controller tool for embedding inside components. As with the Controller it can be thought of as a feedback loop. It contains the convergence algorithms, case initialization and range information to bring about a solution.
File Management a tool to facilitate file I/O. There are various commonly needed functions such as checking for the existence of a file, getting directory contents, parsing full-path file names, etc.
Log Generator provides the infrastructure to allow a component or application to use the Log Manager tool for handling logs.
Map Tool provides a set of capabilities that allow the user to incorporate custom data maps or tables (such as pressure versus temperature) from Excel into their components and perform various operations with the included maps such as interpolation and graphing.
Parser facilitates parsing of strings. For example, given a string (or list of characters) such as “2, 4, 6, 8” the Parser would deliver that information back to the user in the form of an array with four elements representing each of the items separated by the comma.
Table Tool provides “table lookup” capability for custom tables developed in Excel or a simple comma delimited file.
Validator facilitates validating data to specific types, typically from user input. Allows validation that an input is an integer, numeric or alphabetic.
Currently there is one application library for Model Engineer, the Thermal Systems Library, and it will be undergoing some major expansions over the upcoming months. But because of Object Engineer, users can build their own application library for any application area desired, be it telecomm, medical, pharmaceutical etc.! If the user can describe a set of components in terms of inputs and outputs and can define the equations used to calculate the outputs, then Object Engineer will write the code to create that library.
As with the Tools described earlier, application libraries contain two types of components, objects that fit directly into a model, e.g., the Controller or a compressor, and objects that provide certain capabilities and assistance in programming, e.g., the Map Tool or Refrigerants, with the latter being referred to as a Programming Library.
Compressor - Sanden
Fin Tube Condenser
Physical Component System Services
Liquid / Gas
Compressor Maps - Sanden
Compressor Vendor Maps
Fin Tube Vendor Data
Model Engineer works under the following Microsoft operating systems:
Windows 98, and
Windows NT 4.0
Windows 2000 (planned upon release by Microsoft)
Models are developed from within Visual Basic 5.0 or 6.0 (purchased separately). Compiled models simply need one of the above versions of Windows to run. Microsoft Office 97 or any later release of Microsoft Office is required to run models in Microsoft Office products, such as Excel.
While Model Engineer and associated components will run on any hardware that runs the above operation systems, for best performance it is recommended that systems consist of at least a P200 CPU and 32 MB of memory. Twenty MB of disk space is required.
There are several key features of Model Engineer that are not found in any other product. First is the approach of bringing everything into the Microsoft COM environment which allows easy interaction with any Microsoft or third party application that is COM compliant. Microsoft has created an elegant and powerful system for integration of office tools. Modelogics is simply extending that to the engineering tools world.
Next is its ability to create complex system models simply by dragging and dropping components. If someone is familiar with the manner in which Windows applications work in general, they will be familiar with Model Engineer… just as if one were creating a graphics presentation.
The third major differentiator for Model Engineer is the ease with which users can create their own complex objects. This is in large part because of our proprietary application Object Engineer. No other company has a comparable system to make such a complicated task so easy!