Master's Thesis - Computer Graphics and Visualization - TU Delft
Master's Thesis - Computer Graphics and Visualization - TU Delft
Master's Thesis - Computer Graphics and Visualization - TU Delft
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
3.3 The Concept Editor<br />
3.3.1 Description<br />
The Concept Editor will guide the users in “concept” level to do programming. “Concept” here refers<br />
to the architecture of a program. In general, architecture of a program means the components of this<br />
program <strong>and</strong> the interaction among these components. The concept editor will show the predefined<br />
architecture of a program to users <strong>and</strong> guide the user to fill some necessary components in a proper<br />
position.<br />
This<br />
model is not suited to a general purpose programming environment. Because the system can not<br />
predict the architecture of a program a user wants to build. But the Culgi GPE is designed for the users<br />
to make simulation program with the Culgi Library. As we mentioned in Chapter 2, the Culgi<br />
simulation program in general contains three steps: 1) create molecules, 2) create windows to show the<br />
molecules, 3) set the properties of molecules <strong>and</strong> start the simulation. And for each step, there are<br />
several modules which appear in almost all the simulation programs (we call these modules as the<br />
“necessary modules” in this step). So it is possible to integrate the architectures of the Culgi simulation<br />
programs into the system. Because the three components in this architecture are linear sequence, we<br />
will call it the pipeline of a program.<br />
3.3.2 Application to the Culgi Library<br />
Simulation programs which are composed of Culgi Comm<strong>and</strong>s can be divided into several types, such<br />
as “DPD Simulation”, “MesoDyn Simulation”, “MD Simulation” <strong>and</strong> “Hybrid Simulation”. Although<br />
the simulation programs of Culgi have common architectures, differences still exist among various<br />
kinds of simulation programs. For example, the architecture of “DPD simulation” programs is different<br />
from the one “Mesodyn simulation” programs. The difference is that in each step of those three, the<br />
“necessary modules” are different. So to integrate a general architecture is not a good solution.<br />
Instead,<br />
we can make the special structure to each kind of simulation programs as a template. Take<br />
“DPD Simulation” as an example, the program doing DPD simulation includes three parts; they are 1)<br />
‘Build Box’ (Create a cube space for simulation, <strong>and</strong> add molecules into this box), 2) ‘Set Viewer’ (set<br />
the properties of the graphics window, <strong>and</strong> add the modules the users want to see in the window), <strong>and</strong> 3)<br />
‘DPD simulation’(set the simulation properties including the properties of molecules <strong>and</strong> the properties<br />
of the simulation process ). In each of these three parts, there must be some modules which are needed<br />
in every DPD simulation program. So the template of “DPD Simulation” programs will show the three<br />
parts to the users <strong>and</strong> integrate the necessary modules in these three parts by default.<br />
To<br />
show the template <strong>and</strong> to integrate the necessary modules in each component of the template are two<br />
- 17 -