Data Visualization Tools for Materials Properties Research

In work presented the results of research the algorithms of experimental data visualization, which obtain in the simulation of materials. The algorithms study was carried out on the example of the complete cycle for calculating the properties of an ideal diamond crystal. The calculation of crystal lattice properties was carried out using a software package for materials simulation. The obtained experimental data were analyzed using program REM_Viewer in which have been realized the algorithms of data visualization.


Introduction
Modern graphic systems ensure satisfactory performance when designing complex dynamically animated images [1]. Computer graphics allows demonstrating physical processes and this contributes to their better understanding [2]. It is a well-known fact that represented information (animation, graphics) can be perceived more effectively [3,4]. Conversely, the crystalline structure and different spatial physical distribution values obtained via computer simulation methods are more understandable in a 3D interpretation [5].
Presently, computer simulation of materials provides a high predictive capacity and significant potential in developing new materials with predefined properties and characteristics. [6,7]. Computer simulation is based on valid multilevel physical models of material structure and properties and multi-scale computing approach by applying quantum chemistry methods and classical methods of molecular dynamics. [8].
In recent years it activated interest of researchers in the modeling and prediction of crystal structures properties. This interest is due to a number of fundamental and applied problems in the solution which can be used prediction algorithms. For example, when studying phenomena such as crystalline polymorphism [9], the change of solid materials' phase state under various conditions [10]. To applied problems can be attributed the search of new drug compounds with polymorphous phase [11], high-density energy materials [12], the new nonlinear optical materials [13].
Functions of materials structure visualization on atomic-level are particularly important when comparing the results of numerical experiments obtained by software package for materials simulation with the results of experimental studies, and for verification of mathematical models and methods used in the software package [14,15]. Besides, the graphic image of material's atomic-molecular structure allows identify the most significant zones of materials restructuring during the physical and chemical processes.
The results of quantum chemistry calculation are the data files of extensive numerical information. To operate data bulk contained in output file used special programinterpreters for quantum chemistry calculation results. These programs with 3D graphics provide access to calculation results and their preliminary analysis [16].
From the existing solutions for data visualization in the area of materials modeling should note Diamond, Topos, SHELXL97, CRYSTALS and PLATON [17]. Although each program exhibits individualization, in some cases, they exhibit either an extended functionality or even narrow specificity, which, in its turn, excludes their application in 3D visualization of crystalline structure and different spatial physical distribution values.
Accepting the abovementioned into consideration, the aim of the work was to create algorithms and data visualization tools for materials properties research which provides 3D dynamical visualization of crystalline structure and spatial distribution of materials physical parameters. Research of functions and characteristics of data visualization algorithms and a program were carried out on the example of numerical calculation the properties of an ideal diamond crystal.

Data visualisation algorithms
REM_Viewer is based on algorithmic programming language С++ and is implemented into computing REMbased material modeling software package, functioning on grid computing basis. This program could be used in free-running mode.
REM_Viewer software package includes 3D visualization of material structure, configurable graphic development with visualization domain customization.
Intercommunicating with process directory project REM_Viewer forms source data for the experiment, forms and reads transport UTF-file data, reads and processes arrays containing information on material structure and properties. The module complex includes other intercommunicating components.
To operate the front end application the following components are included: ECM with x86, х64 architecture and processor Intel Core i3-4130 2x3.2 GHz or better; RAM capacity-not less than 2 gilbert; ROM capacity-not less than 20 gilbert; video display adapter with supporting display image resolution of not less than 1280×1024 pixel and supportive OpenGL 2.0 or better; installed OS Linux with core version not less than 2.6.20 and/or ОС -MS Windows XP/Vista/7 (32 bit, 64 bit); installed Driver OpenGL 2.0 and more; as well as display-video display adapter compatible. Figure 1 illustrates the program module diagram within REM_Viewer.  REM_Viewer start-up involves creating experiment process directory path and project file fault-based testing. This file is applied to cast to the user interface program at the moment of its close-down.
Forming a new experiment starts by inputting basic parameters. This launches the formation of a new UTFfile and its progressive filling. Basic parameters include work directory path, experiment description and date; researcher name, surname and e-mail; and institution name.
Each experimental parameter has its own identifier and level. All experiment parameters are displayed on main program window (Fig.2), in the list "Materials' parameters". All parameters are divided into two groups: initial and calculated. Calculated parameters are automatically updated and added throughout the experiment. On the left-side of the window all files of current experiment and relevant files (algorithm calculation executables, baseline data set files, visualization files, LOG-files, etc.) are output. All initial, calculated and other experimental parameters as well as process directory structure are recorded in UTF-file on demand.
At the bottom REM_Viewer main window event output area is located. In the course of program operation the following event output appears describing the user response. All messages in occurrence of events are divided into informational and warning error messages and fatal error messages In this case, error message coloring is applied and then stored in archive log as LOG-file.

Fig. 2. Program REM_Viewer main window
The key aspect of this research is the analysis of electron density distribution under the following given conditions: nucleus pattern, atom coordinates in a lattice and their interaction. This information is in the output files available from quantum-chemical calculations and represents an unstructured block of given data format. Visualization results and all configuration tools are found in the window as shown in the Fig. 3. Conducting experiments in materials simulation specific output parameters are formed, such as: material property as independent numerical values, dependence as value series, static allocation, time-dependent allocation, 3Dforms, describing molecule structure and/or crystal cell. REM_Viewer is used for visualization of all abovementioned parameters. To provide easily available reviewing information one can select displayed parameter list in front end application.
Graphic data visualization in REM_Viewer carried out across interacting with function library OpenGL.
Compatibility of data format and protocols poses a problem in visualizing and distributing system design [19]. Depending on presented input data REM_Viewer allows to build two graph types: static and dynamic. Data for static graphing is one-dimensional array. This graphic type shows the single one-dimensional array related to another. Plotting static graphics is possible by two-or three-axes, which could have different scales. If the second variant is chosen, then specified parameters would embrace common axis X. Several data can be chosen for array axes Y1 and Y2.
The second graph type is dynamic. In this case graph data includes two-dimension array, each column of which corresponds to one-dimension array value. This graphic is applied if it is necessary to reflect the process dynamics. For example, the experiment showing temperature distribution on work surface, i.e. temperature value is measured several times within specified time intervals. Then each temperature array value depending on distance will correspond to a specific time interval. Thus, moving the thumb time in the window to visualization result, re-plotting will correspond to the data relevant to this time interval. Any number of graphs with different parameters and display settings can be developed in REM_Viewer. The user can change the graph scale in respect to any parameter, location and calculation module, represented coordinate axis and grid, types of graph lines, grids and axes, captions and legends, etc. All configurations are applied to current live graph, consequently, it is possible to chose different configurations and image parameters for various graphs. When switching from one graph to another visual setting up field updates in accordance to selected graph.
Besides, plotting graphs REM_Viewer embraces 3D visualization of the material structure. In this case text data is converted into interactive 3D image. Data for this visualization includes atomic coordinates set, determining their position in space, as well as information on atom bonds.
All atoms and their bonds could be divided into classes. One class includes atoms and bonds having similar properties. REM_Viewer reflects possible property changes of the atoms and bonds, as well as mode changes of these atoms and bonds, their size and color within any class. As a result the user could set up the visualization if necessary. Alternatively, possible changes of the output area mode could be planned. The user can also set up background color, coordinate axes and grids, as well as typeface and output position of material property parameters at one's own discretion. By analogy with graphs, it is possible to create several windows of visualized material structure and apply different configurations and visualization parameters within REM_Viewer.
Visualization algorithms of heat transfer and deformation processes (for example, temperature distribution for modeling materials) were implemented into REM_Viewer. Based on this visualization type one can analyze material impact resistance at any given point. In terms of data format visualization could be either static or dynamic.
To start visualization it is necessary to predetermine the following calculation parameters: exterior mold dimensions, initial molding temperature, grid simulation, experiment time, melting mold material temperature, specific thermal capacity and thermal conductivity of material, heater type and temperature, given point of material impact resistance and impact resistance time throughout the experiment. Results of quantum chemical calculation and reference data could be used as input parameters of the material. Corresponding to the predetermined parameters, the mold is divided into single cells forming the grid. The less the predetermined cell size, the more precise the visualization results and longer the calculation time of the whole mold. Determined input data is stored in a file and is passed to the software package for materials simulation. Based on this, the calculation for the dynamic pattern of heat transfer processes is performed. After calculating the data are stored for further visualization. Received total file includes the coordinates of all mold cells, corresponding to temperature values of material cells.
Color-coded method is used to reflect the temperature of each cell, i.e. cell temperature values are recorded as a palette, where, red corresponds to maximum temperature; blue -minimum temperature. After cell layout, each cell is assigned a color with respect to the coordinates. Every color is appropriate to the current palette. Interpolation of temperature values is implemented at cell interfaces for easy perception of visualization results.
Visualization in REM_Viewer could be either static or dynamic.
Static visualization is used before the complete of the experiment calculation time interval. Receiving data from external calculation module could be either ondemand or after calculation completion. The time frame of numerical experiment and time-interval of data load must be specified before start visualization. This visually reflects the dynamic pattern of temperature distribution in the mold even before final calculations. Thus, this excludes the necessity to wait for the complete calculation of the time interval. This method should be used only if there is no confidence in the precision of given experiment parameters. Dynamic visualization enables to observe the complete process of temperature distribution and/or material deformation throughout the experiment. The calculated module files include the data set for each experiment time step. In this case, visualization is implemented only after retrieving the result file. This is a drawback for this type of visualization as the calculation module of experimental data processing could be timeconsuming. If moving the time slider, the temperature distribution pattern in the visualization window will be updated according to selected time-stamp.

Experiment
Experiment process was conducted via REV_Viewer by algorithm illustrated in the Fig.4.

Fi. 4. Experiment algorithm
To test the functions of designed algorithms and a program was conducted the experiment on imaging data, obtained during simulating an ideal diamond crystal. software package for materials simulation. Calculation of crystal properties and characteristics of the material as a whole was carried out using a computational module which is along with the REM_Viewer included in the software package for materials simulation [20]. This module involved calculating the ideal diamond crystal coordinates by molecular dynamics method (MDM) at given temperature 295K and zero pressure. Further, calculations of energy band structure by Hartree-Fock [21,22] method in an approximation to CO LCAO (crystal orbitals as linear combination of atomic orbitals) by applying cyclic cluster model were conducted to obtain the coordinates.
The experiment target was to obtain the geometrical characteristics of diamond crystal and the calculation of its energy band structure [23]. Based on all obtained calculation results the visualization of these experimental results was set up in REM_Viewer.

Results and Discussion
After the optimization of the crystalline lattice by computational module, the calculation of diamond crystal via Hartree-Fock method in an approximation to CO LCAO was conducted. Further the visualization of obtained crystalline lattice atom coordinate values was conducted. It was established that diamond crystalline lattice is face-centered cubic (space group -Fd3m) [24]. Visualization result is illustrated in the Fig. 5.
To calculate energy band structure the CO LCAO (crystal orbitals as linear combination of atomic orbitals by applying cyclic -cluster model) was applied. The graph was plotted based on these results and illustrated in the Fig. 6. Calculation results showed good agreement with the experimental data (ratio error is 3.78 %), which testify that the method parameters were correct. Quantum-chemical calculation results are depicted below. Calculation method applied in this paper is denoted as CO LCAO CM (crystal orbitals as linear combination of atomic orbitals via cyclic-cluster method).
As a result, the following values were obtained: 0.76 eV (∆ minimum); 5.48 eV (Г 25 -∆ 1 ); 7.3 eV (Г 25 -Г 15 ); 16 eV (Г 25 -Г 12 ). Coordinate calculations were implemented using optimized molecular dynamic method which introduced an error in the calculations. However, the results are in agreement with the experimental results but not including maximum valence band which is within the experimental data range.
It should also be noted that in this case the calculation involves ideal diamond crystal, consequently, no natural crystalline lattice defect is available. However, the calculation results are in good agreement with the experimental data.

Conclusion
As a result the algorithms of data visualisation and program REM_Viewer were designed. They provides graphic user interface of the software package for materials simulation. This allows to form initial data for experiments in calculating materials properties and to provide visualization file-stored experiment data.
The results of experiments on the calculation the properties of an ideal diamond crystal were confirmed by REM_Viewer, efficiency of which allows using it in further experiments in materials simulation. Further it is planned to implement into REM_Viewer algorithms which will provide visualisation the 3D distribution of physical values in space.