DOME (Distributed Object-based Modeling Environment) - User Guide Table of Contents 1 Introduction o 1.1 DOME Project o 1.2 What is DOME? o 1.3 Traditional System Design o 1.4 Distributed, Declarative, Emergent System Design o 1.5 Protecting Proprietary Models o 1.6 A Product Development Service Marketplace o 1.7 Funding 2 DOME Installation 3 Building Models o 3.1 Starting a new model and building mathematical relations 3.1.1 Introduction 3.1.2 Create a new model 3.1.3 Add parameters to the relation 3.1.4 Change parameter names and units 3.1.5 Add a mathematical relation 3.1.6 Edit the causality 3.1.7 Test the model o 3.2 Building interfaces for the model 3.2.1 Create a new interface 3.2.2 Add context items to organize the interface 3.2.3 Add parameters to the interface o 3.3 Deploying a model 3.3.1 Start a local DOME Server 3.3.2 Check model files into a server o 3.3.3 3.3.4 Figure 69 3.3.5 Select available interfaces and assign permissions 3.4 Running the model Introduction DOME Project The DOME (Distributed Object-based Modeling Environment) project, initiated at the MIT CADlab in early 1996, is focused on creating usable design tools for exploring large-scale, systems-oriented design problems while accommodating the physics, heterogeneity, exceptions, uncertainties, context-dependencies, and rapid change associated with real-world problems. DOME provides a common Internet-based computational infrastructure that makes the exchange and coordination of related parameters between different simulations a transparent process. DOME enables a new distributed, declarative, emergent system definition process that does not require an explicit master integration model. DOME allows design teams to rapidly create integrated design models in a spontaneous, ad-hoc manner, allowing them to focus on developing and analyzing design scenarios rather than being constrained by a rigidly defined integrated design environment. DOME's implications for changing how products and services are designed may rival how the World-Wide Web (WWW) transformed the process of disseminating information. In contrast to the web, which allows users to both navigate and contribute to a network of static documents, DOME allows users to utilize, and contribute to, networks of collaborating dynamic computational processes or simulations. In simple terms, one can imagine DOME as a simulation-web that allows users to join models and create distributed spreadsheet-like simulations that can span the globe. For example, an industrial designer might publish into the DOME environment key parameters of a geometric CAD model, much like one can publish a web page in the WWW. Then an engineer, working in another location, might subscribe to parameters offered by the CAD model and link them to parameters in their own cost analysis spreadsheet. Consequently, if either the industrial designer makes changes in the CAD model or the engineer makes parameter changes in the cost model, appropriate changes are automatically triggered in the respective software applications. DOME automatically solves relationships between distributed simulations and synchronizes the execution of parametric models, regardless of what software application they are implemented in. System designers need only focus on defining integrative relationships between simulation parameters without worrying about the order in which relationships must be executed to correctly coordinate the underlying simulations. Further, the tacit system knowledge embodied in relationships defined by integrators is not revealed to the disciplinary applications to which they subscribe. In practice, large-scale integrated simulation is often deemed implausible and many researchers have noted that difficulties arise because of the large scale, complexity, rate-of-change, heterogeneity, and proprietary barriers associated with comprehensive product design simulation. Since integrated analytical models are difficult to change, some researchers believe that integrated systems can actually have negative effects by prematurely freezing the system level architecture of a product. While there are many issues to address, we believe that a root-cause of these difficulties is that the method for defining and building integrated systems does not suit the product design and product evolution process. Integrated simulation environments apply explicit procedural system definition techniques, while design synthesis can be viewed as a distributed, emergent, system building process. The DOME project has developed a new World-Wide-Simulation-Web concept for synthesizing emergent computational simulations. DOME is a technological innovation that enables an emergent model integration process in a WWW-like simulation environment. This new integration process overcomes the difficulties long associated with traditional efforts to create large integrated product simulations. A federated solving architecture allows individuals to declare local relationships between sub-system parameters without knowledge of the overall system structure. A publication describing the DOME project received the 1998 ASME International Design Engineering Division, Design for Manufacturing Committee IBM Best Paper Award and there is an industry driven working group that meets quarterly to share their DOME experiences. The information provided in the DOME Project section draws upon ideas from a number of published academic papers (available through CADlab publications). Some key references are cited below. Pahng, Francis; Nicola Senin, and David R. Wallace, "Distributed object-based modeling and evaluation of design problems", Computer-aided Design 30, pp. 411-423, 1998. Abrahamson, Shaun; David R. Wallace, Nicola Senin, and Peter Sferro, "Integrated Design in a Service Marketplace", Computer-aided Design 32, pp. 97-107, 2000. Borland, Nicholas; and David R. Wallace, "Environmentally-conscious Product Design: A Collaborative Internet-based Modeling Approach", Journal of Industrial Ecology 3, 2000. Senin, Nicola; David R. Wallace, and Nicolas Borland, "Distributed Object-based Modeling in Design Simulation Marketplace", accepted for publication, ASME Journal of Mechanical Design, 2000. Wallace, David R; Elaine Yang, and Nicola Senin, "Integrated Simulation and Design Synthesis", accepted for publication, Journal of Concurrent Engineering, 2002. Xia, Hao-Xiang, "Toward Emergent Problem Solving on the World-Wide-Simulation Web", MIT CADlab Report, 2002. What is DOME? There are three key aspects of the DOME concept and DOME3 implementation. A new philosophy of how to build integrated networks: Just as the hypertext concept underlies the WWW's model for building information networks, the concept of distributed, declarative, emergent system synthesis anchors DOME as our vision for a World-WideSimulation-Web (WWSW). An architectural representation that supports the integration philosophy: In order to realize the hypertext concept in the WWW, a number of enabling protocols and standards were needed, such as http, html, xml, etc. Likewise, DOME3 exploits many of these same protocols and standards, but also includes an object representation necessary to support the WWSW and system simulation. A software implementation to allow the use of the integration philosophy: In order to use the hypertext concept/WWW several applications are required: authoring tools to generate content (e.g., DreamWeaver, FrontPage); tools to move html files to web accessible computers (e.g., FTP applications), tools that serve html to remote users in the WWW (e.g., Apache, iis), and tools to view/browse the content of the WWW (e.g., Safari, Netscape, Internet Explorer). DOME3 provides a precisely analogous set of software applications: build; deploy; server; and run. Traditional System Design There have been many efforts to develop integrated modeling environments in both academia and industry. However, it does not appear that the process for defining integrated systems has been questioned. Available integration tools employ a wide variety of architectures, data models and communication technologies, but all appear to rely on some form of a consolidated explicit description for the complete integrated system model. However, we believe that the significant difficulties associated with scale, complexity, rate-of-change, heterogeneity, and proprietary barriers arise because explicit system definitions are required. We propose that large integrated simulation efforts have had limited success because the methods used for structuring and building integrated simulations do not support the nature of design activities and the product evolution process. There is a mismatch between the nature of large-scale design synthesis activities and integrated simulation model building techniques. The 'V' system engineering approach and other similar methods patterned after IDEF (Integration DEFinition for Function Modeling) are widely used in industry for structuring integrated design simulation environments. Starting from the top left of the V, the system is first fully defined or scoped through a top-down, cascading decomposition of subsystem requirements. Then, individual subsystems are constructed, individually tested, and integrated by working back up the V. When one reaches the top right of the V, the system is complete and ready for deployment or use. This is an explicit, procedural process for defining and building systems. The method assumes that the definition of the overall system and control of its execution is consolidated. The system is usable when it is deployed in a complete form and as a result the architecture of the system is fixed. Designers can set the values of parameters but not change the 'plumbing' of the integrated system simulation. It is often very difficult and expensive to change the underlying system architecture. Although explicit procedural system definition methods can be readily applied to design or simulation synthesis problems that are addressed by a single individual or small number of individuals, when addressing larger products (even ones that are quite stable and mature) organizations struggle to explicitly define and order their functional system model. Distributed, Declarative, Emergent System Design In contrast to traditional system definition techniques, design practice involves rapid synthesize/test/evaluate cycles. This may occur in a bottom up, top down, or middle out fashion. During these cycles many discoveries are made and the design or system undergoes many fluid transformations. Many participants interact and make local decisions during the process, and the collective result defines a complex whole. These characteristics of design synthesis are all consistent with the properties of emergent systems. In fact, most complex systems occurring in nature or involving human behavior are emergent in nature. The economy is often cited as an example of an emergent system. Managing the development of emergent systems using the almost universally-adopted, strict, explicit, consolidated approaches is very inefficient. In contrast, effective organizations can arise through an emergent process within appropriate environments where individuals can understand the implications of their actions on overarching goals. Therefore, the goal of DOME is to provide a new integrated simulation building technology that allows system simulations to emerge throughout the design activity. The traditional difficulties associated with scale, complexity, rate of change, heterogeneity, and proprietary information can be resolved through a distributed, declarative, emergent simulation synthesis process that, without consolidated control, can maintain parametric consistency between the distributed simulation models. Distributed: control and execution of models and resources are in many locations. Declarative: one can define local interactions with a larger system without requiring detailed knowledge of the entire system or the system-level causal implications of the local connections that are being made Emergent: a system of models maintain parametric consistency without an overall system-level controller model or meta model. Protecting Proprietary Models Much of the integrated modeling community has focused on data model integration. The goal is to achieve a data model that allows everyone to interpret and reconstruct a complete representation of the problem in different environments. In other words, integration is achieved by exchanging models or having shared access to a common data model. While standardization is necessary at some level, it is very difficult to achieve this at a modeling level. As such, the most frequent strategy is to standardize on specific proprietary tools so individuals can exchange files, often leading to problems with unnecessary rework, the inability to choose suppliers with flexibility, and the need to share detailed proprietary models. DOME focuses on parameter or data-type level integration by creating an infrastructure so it is easy for people to make connections and maintain consistent states between different simulations, regardless of the type of software tool, simulation or data model that resides behind the services. Individuals can provide Internet accessible service interfaces to simulations while maintaining full ownership of the underlying models. When necessary, entire files or data models can also be bundled as DOME parameters. A Product Development Service Marketplace DOME is a modeling infrastructure intended to create a global community, or marketplace, of individuals offering access to simulation services related to their own specialties, much as the WWW has enabled world-wide access to information. Within the envisioned simulation marketplace, it will be possible to quickly create and holistically assess technology systems from many viewpoints, allowing individuals to design and understand complex technology systems. Participants and product development organizations are empowered to publish their geometric design, CAE, manufacturing, or marketing capabilities as live services that are operable over the Internet. Product developers, small or large, can subscribe to and flexibly inter-relate these services to embody a distributed product development organization, while simultaneously creating system models that allow the prediction and analysis of integrated product performance. We believe that product development services will become commodities, much like many component-level products are today. It will be possible to rapidly interchange equivalent design service providers so that the development of the product and the definition of the product development organization become part of the same process. Computer-aided design tools will evolve to facilitate the publishing of live design services. Funding The DOME project is grateful for the research funding provided by its sponsors. The initial seeds funds for the project were provided in 1996 by the Alliance for Global Sustainability (AGS) and the Leaders for Manufacturing Program. Ford Motor Company and the Center for Innovation in Product Development have been very strong supporters since 1998. Additional support has been received from LG Electronics, and Bose. DOME Installation Follow the below instructions or refer to the following flowchart Open a Terminal window (Mac/Linux) or a Command Prompt or PowerShell window (Windows). The kernel will run on any platform supporting Java Virtual Machine (JVM) version 1.6.0.45 or higher. You can test the version of Java with the command: $ java -version (Mac/Linux) > java --version (Windows) If the version number is lower than 1.6.0.45, Windows & Mac users, please download a new Java (TM) SE Runtime Environment from https://java.com/en/download/. Linux users can install the openjdk with a command such as "sudo apt-get install openjdk-7-jdk" (tailored to your distribution). Mac Issue: Does not run from the directory. Mac runs from the home directory. The .sh path assumes you start in BIN directory. <Not sure what to say here – we need to fix the script> For Windows OS users, if you upgrade the Java version, change the java_home and CLASSPATH in the System Environment variables to point to the updated java folder, logout, and log back in. To change the system environment variables, follow the below steps. From the desktop, right-click My Computer and click Properties. In the Advanced section, click the Environment Variables button. Once you are sure about having java 1.6.0.45 or higher do the following: 1. Download the latest file from Amazon simple store service (Amazon S3) by copying the following link and pasting it in your browser: http://dmc-domedistribution.s3.amazonaws.com/index.html 2. Save the zip file on your machine. This step might take several minutes. 3. Unzip/extract the file in Windows. Mac will download and extract the files automatically. In Linux, execute the following commands: cd ~/Downloads mkdir ~/dome # this directory placement is convenient, but not necessary unzip domeInstall-[date].zip -d ~/dome # if unzip is not already installed: $ sudo apt-get install unzip 4. Open the folder in a graphical environment, or navigate to it in a terminal ($ cd ~/dome). You will see four directories: bin, client, dome3, and server. 5. Go into the bin directory ($ cd bin). 6. Launch the appropriate file: 1. 1. 2. 3. 4. 5. Windows: DOMEClient.bat Mac: DOMEClient.sh (permissions/path might be wrong) Linux: $ sudo sh DomeClient.sh Click Run. When the DOME3 Copyright pop up opens, accept the Terms and Conditions. At this point, the DOME Client will open. Do not close the Terminal, Command Prompt, or PowerShell window. The DOME Client is the thin toolbar shown in Figure 1. At the right of the bar you see Build to indicate the mode. The four modes are Build, Deploy, Run, and Server. The rest of the tool bar changes automatically to reflect the mode. Figure 1. DOME Window Build is used to build a model, enter variables, and build the interface. Deploy is used to deploy a model interface to the server so that other users can access it. Run is used to run a model interface found on the server. Server is used to manage the server. Building Models Starting a new model and building mathematical relations You will learn how to: Create a new model; Add parameters to the relation; Change parameter names and units; Add a mathematical relation; Edit the causality; Test the model. Introduction We will build a simple DOME model to compute velocity given initial velocity, acceleration, and time using the equation v = v0 + a*t. The following client will appear when you start DOME (Figure 2). We call it the DOME Window. Figure 2 DOME Window As mentioned before, the DOME toolbar tabs will change according to the active mode. There are four options. Click on the mode dropdown menu at the top right and the four modes will appear (Figure 3). Figure 3 Build is used to build a model, enter variables, and build the interface. Deploy is used to deploy a model interface to the server so that other users can access it. Run is used to run a model interface found on the server. Server is used to manage the server. Create a new model To build a new model, you must be in build mode. Click on Build > New Model on the left side (Figure 4). Figure 4 You can choose from many different types of models. For this example, click on Dome Model (Figure 5). A Dome Model allows you to execute a Python script. In this tutorial we will build a Dome Model. Figure 5 The DOME window will change to show more options and a model window appears with the default name Dome Model (Figure 6). Figure 6. Model Window While the DOME window is a fixed menu bar, the Model Window size can be changed. Change the name to the model name you want, we chose “Velocity Dome Model”. Hit Enter/Return to update the name (Figure 7). The name field will change from yellow to white to show the change has been accepted. Save the model to save the new name. Figure 7 Now we will add a relation to the model. Click Add in the DOME window (Figure 8). Figure 8 Click on Procedural Relation (Figure 9). Figure 9 A Procedural Relation will appear inside the model window (Figure 10). Figure 10 Double click on the name and change the name of the relation to something that reflects the model you are building. We chose “Velocity Relation” (Figure 11). The name will be updated when you press enter or click elsewhere in the window, again changing color from yellow to white. Save the model to save the new name. Figure 11 Note that changing names will update them but not save them. You can save the model at any time. From the DOME window, click on DOME Model > Save (Figure 12), and follow the instructions. A .dml file and a folder will be created. Figure 12 Add parameters to the relation From the model window add four Real parameters (data with the “real” type). These will represent velocity, initial velocity, acceleration and time in the model. To do this, click on the yellow triangle to the left of "Velocity Relation" to expand the relation (if you just created it, it's already expanded), and then expand the Inputs and Outputs folders as well (they will be empty). Your window should look like Figure 13 when all are expanded. From the DOME window choose Add > Real four times to add four Reals to the relation (Figure 13). The parameters will be added under Inputs. In a later step you will tell the model which are outputs by defining the relation’s causality; right now, with no causality defined, the model considers them all to be inputs. Figure 13 The model with the four Real parameters is shown in Figure 14. Figure 14 Change parameter names and units Double click on the name of the parameters to change them to something meaningful for the model you are building. In this case use v for velocity, v0 for initial velocity, a for acceleration and t for time. Click on “no unit” and then “change unit” to choose the correct units for each parameter. A unit chooser window opens (Figure 15). Figure 15 Choose a dimension in the left column and then a unit in the right column (Figure 16). For more information on how to use the unit chooser window see the special topic section on Units. For this example, select “meter per second” for the velocities, “second” for the time, and “meter per second square” for acceleration. Note the "All" on the bottom right. It is used to switch from all units to just metric units. Figure 16 You can use units from different standards in one model as long as they have the same base dimensions (such as choosing “meter per second” and “foot per minute” for two velocities); DOME will convert internally when the model is run. Once the Units are chosen they are updated (Figure 17). Remember to save frequently. Figure 17 Add a mathematical relation Double click on the red and yellow cube icon to the left of “Velocity Relation” that represents your procedural relation ( ) (Figure 18). Figure 18 The relation icon will open ( ) and a relation window will appear (Figure 19). Figure 19 In the body editor write v = v0 + a*t as shown in Figure 20. The variables will turn blue to indicate that a matching input or output parameter exists. The body editor follows Python (need to specify which version) syntax. For more detail, see the special topic section on Relation Body Editor, or reference the syntax in the Python documentation at https://docs.python.org/2/library/index.html. Figure 20 Edit the causality Click on the causality tab inside the relation window (Figure 21). Figure 21 The view will switch to show the causality (Figure 22). Figure 22 Click “Edit causality information” at the bottom right (Figure 23). Figure 23 The Edit Causality Information window will open (Figure 24). Figure 24 In the Edit Causality Window, check boxes where the parameter listed in the row is dependent on the parameter in the column. In this case, v depends on v0, a and t, so check only the three squares in the first row (Figure 25). Figure 25 Click ok to accept (Figure 26). Figure 26 The causality Information Window closes, and the selected causality relations are shown in the relation window (Figure 27). Figure 27 The causality is how you define your parameters to DOME. Based on your causality matrix, DOME will determine which parameters are the inputs and which are the outputs of your system. Close the Causality Information Window clicking on the X. The velocity relation will show that v0, a and t are input parameters and v has moved to the Outputs folder (Figure 28). Figure 28 Test the model If you have closed the Velocity Relation window, reopen it by double-clicking on the icon left of Velocity Relation in the Model window. Go to the interface parameters tab in the relation window (Figure 29). You can move the divider bar up and down to increase the viewing size. Figure 29 Change the values of the inputs in the velocity relation window. This example set v0=1, a=2, and t=3 (Figure 30). To do this click on the value (default 0.0) and enter a new number. Figure 30 In the DOME Window, click Edit procedural relation> Test (Figure 31). Figure 31 If the model is set up properly, the model will execute the Python script with the variables equal to the value column. The value of the output parameter(s) will then display the values returned by the script. If you used the values suggested earlier, the model will return v=7 (Figure 32). Testing the model also confirms that you have chosen units with the correct dimensions; if not, the model will give a unit error. Figure 32 You may wish to close the procedural relation window before continuing. Building interfaces for the model Interfaces are the exposed views of a model made available through the server to users in Run mode. You will learn how to: Create a new interface; Add context items to organize the interface; Add parameters to the interface. Create a new interface First, close the velocity relation window and click somewhere in the velocity model window to bring it into the foreground. The menu options in the DOME window will change. Click on Tools (Figure 33). Figure 33 Choose Interfaces (Figure 34). Figure 34 The Interfaces window will appear. It has been pre-populated with a Default interface (Figure 35). Figure 35 From the DOME window click Interfaces > New (Figure 36). Figure 36 A new DOME Model Interface appears (Figure 37). Figure 37. Interface Window Double click on the name to change it to something meaningful, such as Velocity Model Interface (Figure 38). Figure 38 Add context items to organize the interface Click to the arrow next to the name ( ) to expand the interface (Figure 39). Figure 39 Double click the book icon ( ) next to the name of the interface (Figure 40). Figure 40 The velocity model interface window appears (Figure 41). Figure 41 Click Add > Context to add a context item to the interface (Figure 42). A context organizes your interfaces, analogous to a folder in a file system. Figure 42 A new context item appears in the interface window (Figure 43). Figure 43 Double click on the context item to change its name to Input Dimensions (Figure 44). Figure 44 Collapse the Input Dimensions item (the triangle icon should point right), and add a second context item named Output Dimensions. Collapsing the first ensures that the new context won't be added inside it instead of at the highest level. Click Add > Context (Figure 39) and a second context item will appear (Figure 45). Figure 45 Double click on the name to rename the second item Output Dimensions (Figure 46). Figure 46 Add parameters to the interface Next, the interface needs to be linked to the model parameters. With the model window in the foreground, select the three input parameters, holding Ctrl to multi-select (Figure 47). Figure 47 In the DOME window select Edit Definition > Copy (Figure 48). Figure 48 Bring the interface window to the foreground (Figure 49). Figure 49 Click the yellow arrow to expand Input Dimensions, and then select the name Input Dimensions (Figure 50). Figure 50 From the DOME window click Add > Add and Map > Last selection (Figure 51), which will add the parameters to the Input Dimensions context item (Figure 52). Figure 51 Figure 52 Repeat these steps for the output parameter. With the model window in the foreground select the output parameter, v (Figure 53). Figure 53 In the DOME window select Edit Definition > Copy (Figure 48). Bring the interface window in the foreground (Figure 49). Expand the Output Dimensions context item (Figure 54). And click on Output Dimensions Figure 54 From the DOME window Click Add > Add and Map > Last selection (Figure 51) to add the parameter. Click Dome Model > Save to save the model. The interface window may be closed. At this point you have built a model and you have created an interface for it. Deploying a model When working in build mode, DOME models reside in one's local file space—not on a DOME server—and thus they are not available for use by others. The model needs to be deployed to a server to be used by others. The tutorial is written assuming that you will be logging into a server running locally on the same machine as your client application. Here you will move the model and interface files that you saved to a server where they can be executed by remote users. You will learn how to: Check model files into a server using a deploy mode wizard; Select which interfaces will be available to users; Assign permissions. Before starting this process make sure that the DOME Server is running. Start a local DOME Server If you do not have a remote DOME server available to log in to, you can set up a local server for testing purposes. Open a new terminal window (if using a command line interface) or explorer window, and navigate to the dome/bin directory where DomeClient.sh and DomeClient.bat were located. Windows: launch DomeServer.bat Mac/Linux: launch DomeServer.sh in a graphical interface, or "$ sudo sh DomeServer.sh". If you launch the file from a terminal, you will see various output appear; one of the last lines will be "DomeServer started on port [number] at [timestamp]". Note the port number to log in with later. Check model files into a server In the DOME window select Deploy in the mode menu at right (Figure 55). Figure 55. DOME Window Choose Deploy > Model (Figure 56). Figure 56 A Deploy Model window will open (Figure 57). Figure 57. Deploy Model Window Click on login (Figure 58). Figure 58 A login to DOME Server window will open (Figure 59). Figure 59 In the Login to DOME Server window, enter your username, password and server name and then click login (Figure 60). If you started a local server earlier, your credentials will be: user name: ceed password: ceed server: localhost:[port number] After you connect for the first time, your credentials will be stored. Figure 60 After logging in, the Login to DOME Server window disappears and information about the server is shown in the Deploy model window (Figure 61). Click next on the bottom right. Figure 61 The window will change to Figure 62. Leave the default option, “deploy as new model,” selected. Click on browse on the right. Figure 62 Now a window will open and you will navigate to find the model you want to deploy (Figure 63). Figure 63 Once you find the model you want to deploy, select it and click Open (Figure 64). Figure 64 Now the name and location of the model appears in the Deploy model window (Figure 65). Click next. Figure 65 At this point you will choose where on the server to store your model (Figure 66). Figure 66 To create a new folder, click on the name of the parent folder and then click on the “+” sign in the bottom right corner (Figure 67). Figure 67 At this point the new folder windows appear and you chose the name of the folder. In this example the name of the folder is ForTutorial (figure 68). Figure 68 Navigate to that folder and click next. Figure 69 Select available interfaces and assign permissions The next screen in the wizard allows you to set permissions (Figure 69). For more details about permissions, see the special topic section on permissions. Figure 69 Choose the permissions you want for this model and click next (Figure 70). Figure 70 In the “available” column, select which interface(s) you want to make available.This example selected the Velocity Model Interface (Figure 71). Click next. Figure 72 The next screen allows you to set permissions specific to each interface (Figure 73). For more information on setting permissions, read the related special topic. Figure 73 Now a summary window will appear (Figure 74). Click deploy. Figure 74 DOME will confirm the deployment was successful (Figure 75). Figure 75 Now that the model has been deployed to the server, its selected interface(s) are available to others. Running the model Now you will learn how to Connect to a model; Run a model. From the DOME window choose Run mode in the right menu (Figure 76). Figure 76 Click on Run > New Window, upper left, Figure 77. Figure 77 A Browser window opens. Click login at the top right (Figure 78). Figure 78 A Login to DOME Server window opens (Figure 79). Either select a stored set of credentials or enter new credentials and then click “login.” Figure 79 The server folders appear in the Browser window (Figure 80). Browse to the model you want to run. Figure 80 Click on the yellow rectangle to the left of the model name to expand it (Figure 81). Figure 81 Double click on the book icon next to the interface you want to open (Figure 82). Figure 82 A new interface window opens, showing the Input Dimensions and Output Dimensions context items. Expand these using the yellow triangles (Figure 83). Figure 83 Parameters with a green background are consistent between the server and the model, but the model has not been run yet. Fields that will update when the model runs have a red background. Fields displayed with a yellow background have been updated locally, but not yet submitted to the server. The fields will become white when the model has run (Figure 84). Figure 84 For example, enter v0=6, a=1, t=3 (Figure 85). Click submit. Figure 85 When the model has finished running, the value of v changes to reflect the calculated value, v=9 (Figure 86). The values and background colors will update as the model runs, so in more complex models, changes may appear over time. Figure 86 Continue with the next article in the DOME User Guide series: How to build Dome Integrated Models. Articles in this series: DOME (Distributed Object-based Modeling Environment) - User Guide How to build Dome Integrated Models