LASSO_L0.bkr 71.3 KB
Newer Older
ankit kariryaa's avatar
ankit kariryaa committed
1
2
3
4
5
6
7
8
9
10
11
12
13
{
    "beaker": "2",
    "evaluators": [
        {
            "name": "HTML",
            "plugin": "HTML",
            "view": {
                "cm": {
                    "mode": "htmlmixed"
                }
            }
        },
        {
14
15
            "name": "JavaScript",
            "plugin": "JavaScript",
ankit kariryaa's avatar
ankit kariryaa committed
16
17
            "view": {
                "cm": {
18
19
                    "mode": "javascript",
                    "background": "#FFE0F0"
ankit kariryaa's avatar
ankit kariryaa committed
20
                }
21
22
            },
            "languageVersion": "ES2015"
ankit kariryaa's avatar
ankit kariryaa committed
23
24
25
26
        },
        {
            "name": "IPython",
            "plugin": "IPython",
27
            "setup": "%matplotlib inline\nimport numpy\nimport matplotlib\nfrom matplotlib import pylab, mlab, pyplot\nnp = numpy\nplt = pyplot\nfrom IPython.display import display\nfrom IPython.core.pylabtools import figsize, getfigs\nfrom pylab import *\nfrom numpy import *\n",
ankit kariryaa's avatar
ankit kariryaa committed
28
29
30
31
            "view": {
                "cm": {
                    "mode": "python"
                }
32
            }
ankit kariryaa's avatar
ankit kariryaa committed
33
34
35
        }
    ],
    "cells": [
36
        {
37
38
39
40
41
42
43
44
            "id": "code61yhp1",
            "type": "code",
            "evaluator": "HTML",
            "input": {
                "body": [
                    "<label style=\"text-align: left; color: #20335d; font-weight: 900; font-size: 18pt; padding-top: 2em;\">",
                    "  Predicting energy differences between crystal structures I (large feature space):</label><br/><label style=\"color: #20335d;font-weight: 900; font-size: 15pt;\"> Octet-binary zincblende vs. rocksalt semiconductors</label>",
                    " </p>",
45
                    " <p style=\"font-size: 15px;\">Angelo Ziletti, Ankit Kariryaa, Emre Ahmetcik, Fawzi Mohamed, Luca Ghiringhelli, and Matthias Scheffler <span style=\"font-size: smaller;\">[version 2017-02-03]</span></p>",
46
47
48
49
50
51
52
53
54
55
                    " ",
                    "<div style=\"padding-top: 1em;\">",
                    "This tutorial shows how to find descriptive parameters (short formulas) that predict crystal structure, using the example of octet binary compounds that have either rocksalt (RS) or zincblende (ZB) structure. It is based on</div>",
                    "<div style=\"padding: 1ex; margin-top: 1ex; margin-bottom: 1ex; border-style: dotted; border-width: 1pt; border-color: blue; border-radius: 3px;\">",
                    "L. M. Ghiringhelli, J. Vybiral, S. V. Levchenko, C. Draxl, M. Scheffler: <span style=\"font-style: italic;\">Big Data of Materials Science: Critical Role of the Descriptor</span>,  Phys. Rev. Lett. 114, 105503 (2015) <a href=\"http://journals.aps.org/prl/abstract/10.1103/PhysRevLett.114.105503\">[PDF]</a>",
                    "</div>",
                    "<div>",
                    "Click on \"Run\" below to reproduce results from this publication; click \"Background\" for an explanation of the approach; or, modify \"Settings\" to produce your own results.",
                    "</div>",
                    "<div style=\"padding-top: 2ex;\">",
56
                    "<span style=\"font-weight: bold;\">Idea: </span> Starting from simple physical quantities (\"building blocks\", here properties of the constituent free atoms such as orbital radii), thousands of candidate formulas are generated by applying arithmetic operations combining building blocks, for example forming sums and products of them. These candidate formulas constitute the so-called \"feature space\". Then, a sparse regression method is used to select only a few of these formulas that explain the data.",
57
58
59
60
61
62
63
64
65
                    "</div>"
                ],
                "hidden": true
            },
            "output": {
                "state": {},
                "result": {
                    "type": "BeakerDisplay",
                    "innertype": "Html",
66
                    "object": "<script>\nvar beaker = bkHelper.getBeakerObject().beakerObj;\n</script>\n<label style=\"text-align: left; color: #20335d; font-weight: 900; font-size: 18pt; padding-top: 2em;\">\n  Predicting energy differences between crystal structures I (large feature space):</label><br><label style=\"color: #20335d;font-weight: 900; font-size: 15pt;\"> Octet-binary zincblende vs. rocksalt semiconductors</label>\n <p></p>\n <p style=\"font-size: 15px;\">Angelo Ziletti, Ankit Kariryaa, Emre Ahmetcik, Fawzi Mohamed, Luca Ghiringhelli, and Matthias Scheffler <span style=\"font-size: smaller;\">[version 2017-02-03]</span></p>\n \n<div style=\"padding-top: 1em;\">\nThis tutorial shows how to find descriptive parameters (short formulas) that predict crystal structure, using the example of octet binary compounds that have either rocksalt (RS) or zincblende (ZB) structure. It is based on</div>\n<div style=\"padding: 1ex; margin-top: 1ex; margin-bottom: 1ex; border-style: dotted; border-width: 1pt; border-color: blue; border-radius: 3px;\">\nL. M. Ghiringhelli, J. Vybiral, S. V. Levchenko, C. Draxl, M. Scheffler: <span style=\"font-style: italic;\">Big Data of Materials Science: Critical Role of the Descriptor</span>,  Phys. Rev. Lett. 114, 105503 (2015) <a href=\"http://journals.aps.org/prl/abstract/10.1103/PhysRevLett.114.105503\">[PDF]</a>\n</div>\n<div>\nClick on \"Run\" below to reproduce results from this publication; click \"Background\" for an explanation of the approach; or, modify \"Settings\" to produce your own results.\n</div>\n<div style=\"padding-top: 2ex;\">\n<span style=\"font-weight: bold;\">Idea: </span> Starting from simple physical quantities (\"building blocks\", here properties of the constituent free atoms such as orbital radii), thousands of candidate formulas are generated by applying arithmetic operations combining building blocks, for example forming sums and products of them. These candidate formulas constitute the so-called \"feature space\". Then, a sparse regression method is used to select only a few of these formulas that explain the data.\n</div>"
67
68
69
                },
                "selectedType": "BeakerDisplay",
                "elapsedTime": 0,
70
                "height": 352
71
72
73
            },
            "evaluatorReader": true,
            "lineCount": 16
ankit kariryaa's avatar
ankit kariryaa committed
74
75
        },
        {
76
            "id": "code83Tpsb",
ankit kariryaa's avatar
ankit kariryaa committed
77
78
79
80
            "type": "code",
            "evaluator": "HTML",
            "input": {
                "body": [
81
82
83
84
85
86
                    "<script>",
                    "var run_lasso = function() {",
                    "  $(\"#lasso_result_button\").removeClass(\"active\").addClass(\"disabled\");",
                    "  getFeatures();",
                    "  getOperators();",
                    "  getMaxDim();",
87
88
                    "  getUnits();",
                    "  beaker.evaluate(\"calc_cell\"); // evaluate cells with tag \"calc_cell\"",
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
                    " // view_result()",
                    "};",
                    "var reset_lasso = function(){",
                    "  beaker.evaluate(\"lasso-settings-cell\");",
                    "  var e = document.getElementById('lasso-hidden-settings-div');",
                    "  var b = document.getElementById('lasso-hidden-settings-button');",
                    "  e.style.display = 'block';",
                    "  b.style.display = 'inline';",
                    "};",
                    "var getFeatures = function() {",
                    "    beaker.selected_feature_list = [];",
                    "    $('#lasso_features_select input:checkbox').each(function () {",
                    "        if(this.checked )",
                    "          beaker.selected_feature_list.push(this.value);",
                    "    });",
                    "};",
                    "var getOperators = function() {",
                    "    beaker.allowed_operations = [];",
                    "    $('#lasso_operators_select input:checkbox').each(function () {",
                    "        if(this.checked )",
                    "          beaker.allowed_operations.push(this.value);",
                    "    });",
                    "};  ",
                    "var getMaxDim = function() {",
                    "   beaker.max_dim = $(\"#lasso_max_dim_selector\").val();",
                    "};",
115
116
117
118
                    "  ",
                    "var getUnits = function() {",
                    "   beaker.units = $(\"#units_select\").val();",
                    "};",
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
                    "var toggle_settings = function(){",
                    "  var e = document.getElementById('lasso-hidden-settings-div');",
                    "  var b = document.getElementById('lasso-hidden-settings-button');",
                    "  if(e.style.display == 'block'){",
                    "    e.style.display = 'none';",
                    "    b.style.display = 'none';",
                    "  }",
                    "  else{",
                    "    e.style.display = 'block';",
                    "    b.style.display = 'inline';",
                    "  }",
                    "};",
                    "beaker.view_result = function(result_link) {",
                    "//   beaker.evaluate(\"lasso_viewer_result\").then(function(x) {",
                    "    $(\"#lasso_result_button\").attr(\"href\", result_link);",
                    "//   }); ",
                    "  $(\"#lasso_result_button\").removeClass(\"disabled\").addClass(\"active\");",
                    "}",
                    "</script>",
ankit kariryaa's avatar
ankit kariryaa committed
138
139
140
141
142
143
144
                    "<style type=\"text/css\">",
                    " .lasso_instructions{",
                    "    font-size: 15px;",
                    "  } ",
                    "</style>",
                    "<!-- Button trigger modal -->",
                    "<button type=\"button\" class=\"btn btn-default\" data-toggle=\"modal\" data-target=\"#lasso-motivation-modal\">",
145
146
                    " Background",
                    "</button>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;",
ankit kariryaa's avatar
ankit kariryaa committed
147
148
149
150
151
152
153
                    "",
                    "<!-- Modal -->",
                    "<div class=\"modal fade\" id=\"lasso-motivation-modal\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"lasso-motivation-modal-label\">",
                    "  <div class=\"modal-dialog modal-lg\" role=\"document\">",
                    "    <div class=\"modal-content\">",
                    "      <div class=\"modal-header\">",
                    "        <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\"><span aria-hidden=\"true\">×</span></button>",
154
                    "        <h4 class=\"modal-title\" id=\"lasso-motivation-modal-label\">Background</h4>",
ankit kariryaa's avatar
ankit kariryaa committed
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
                    "      </div>",
                    "      <div class=\"modal-body lasso_instructions\">",
                    "        <p> In this tutorial we present a tool for predicting the crystal structure of octet binary compounds, by using a set of descriptive parameters (a descriptor) based on free-atom data of the atomic species constituting the binary material.</p>",
                    "",
                    "        <p>In this example, we address only Rocksalt (RS) and Zincblende (ZB) crystal structures, that are the most common for the material class of octet binaries. Specifically, the tool predicts the difference in total energy between RS and ZB equilibrated structures (i.e., each structure is relaxed to its local minimum).</p>",
                    "",
                    "        <p>The prediction of RS vs ZB structure from a simple descriptor has a notable history in materials science [1-7], where descriptors were designed by chemically/physically-inspired intuition. The tool presented here allows for the machine-learning-aided automatic discovery of a descriptor and a model for the prediction of the difference in energy between RS and ZB for 82 octet binary materials.</p>",
                    "",
                    "        <p>The tool is based on Compressed-sensing (LASSO performed on a tailor-made feature space, followed by L0-regularized minimization, click <a href=\"https://gitlab.rzg.mpg.de/nomad-lab/public-wiki/wikis/analytics/LASSO_L0\" target=\"_blank\">here</a> for more info on the LASSO+L0 method), as introduced in:  </p>",
                    "",
                    "        <p> \"Big Data of Materials Science: Critical Role of the Descriptor\". L. M. Ghiringhelli, J. Vybiral, S. V. Levchenko, C. Draxl, and M. Scheffler Phys. Rev. Lett. 114, 105503 (2015) <a href=\"http://journals.aps.org/prl/abstract/10.1103/PhysRevLett.114.105503\" target=\"_blank\"> (Click here for the free access pdf) </a></p>",
                    "",
                    "        <p> By running the tutorial with the default setting, the results of the <a href=\"http://journals.aps.org/prl/abstract/10.1103/PhysRevLett.114.105503\" target=\"_blank\">PRL 2015</a> can be recovered. In particular, by clicking on “View interactive 2D plot”, an interactive structure-map (a chart where different structures are located in different regions of a low-dimensional representation, here two dimensional) will be opened in a new tab, similar to the following (an extended version of Fig. 2 in <a href=\"http://journals.aps.org/prl/abstract/10.1103/PhysRevLett.114.105503\" target=\"_blank\">PRL 2015</a>): </p>",
                    "        ",
                    "        <img style=\"width:67%;height:67%\"  src=\"https://gitlab.mpcdf.mpg.de/nomad-lab/public-wiki/uploads/eb33f1415db1b6d489cbbc3e6a899942/2016-08-02_ZB_RS3-2.png\">",
                    "        <br/>",
                    "        <br/>",
172
                    "        <p> In this map the octet binaries are located via the descriptor found by our LASSO+L0 approach. The descriptor is based purely on free-atom data, namely radii of the <i>s</i> and <i>p</i> valence orbitals (rs and rp) of the atomic species and their Ionizaiton Potential and Electron Affinity (IP and EA). Materials in the red (blue) region crystallize preferably in the zincblende (rocksalt) structure. The distance to the green line is proportional to the difference in energy between the two structures. In the interactive plot accessible at the end of the learning performed by the present tool, one can obtain information on the materials by hovering and clicking on the data points. </p>",
ankit kariryaa's avatar
ankit kariryaa committed
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
                    "        <p>References:</p>",
                    "        <ol>",
                    "          <li>J. A. van Vechten, Phys. Rev. 182, 891 (1969).</li>",
                    "          <li>J. C. Phillips, Rev. Mod. Phys. 42, 317 (1970).</li>",
                    "          <li>J. St. John and A.N. Bloch, Phys. Rev. Lett. 33, 1095 (1974).</li>",
                    "          <li>J. R. Chelikowsky and J. C. Phillips, Phys. Rev. B 17, 2453 (1978).</li>",
                    "          <li>A. Zunger, Phys. Rev. B 22, 5839 (1980).</li>",
                    "          <li>D. G. Pettifor, Solid State Commun. 51, 31 (1984).</li>",
                    "          <li>Y. Saad, D. Gao, T. Ngo, S. Bobbitt, J. R. Chelikowsky, and W. Andreoni, Phys. Rev. B 85, 104104 (2012).</li>",
                    "        </ol>",
                    "      </div>",
                    "      <div class=\"modal-footer\">",
                    "        <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\">Close</button>",
                    "<!--         <button type=\"button\" class=\"btn btn-primary\">Save changes</button> -->",
                    "      </div>",
                    "    </div>",
                    "  </div>",
190
191
                    "</div>",
                    "",
ankit kariryaa's avatar
ankit kariryaa committed
192
193
194
                    "<!-- Button trigger modal -->",
                    "<button type=\"button\" class=\"btn btn-default\" data-toggle=\"modal\" data-target=\"#lasso-instructions-modal\">",
                    " Instructions",
195
                    "</button>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;",
ankit kariryaa's avatar
ankit kariryaa committed
196
197
198
199
200
201
202
203
204
205
                    "",
                    "<!-- Modal -->",
                    "<div class=\"modal fade\" id=\"lasso-instructions-modal\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"lasso-instructions-modal-label\">",
                    "  <div class=\"modal-dialog\" role=\"document\">",
                    "    <div class=\"modal-content\">",
                    "      <div class=\"modal-header\">",
                    "        <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\"><span aria-hidden=\"true\">×</span></button>",
                    "        <h4 class=\"modal-title\" id=\"lasso-instructions-modal-label\">Instructions</h4>",
                    "      </div>",
                    "      <div class=\"modal-body lasso_instructions\">",
206
                    "<p>In this example, you can run a compressed-sensing based algorithm for finding the optimal descriptor (and model) that predicts the difference in energy between crystal structures (here, rocksalt vs. zincblende). </p>",
ankit kariryaa's avatar
ankit kariryaa committed
207
208
209
210
                    "",
                    "<p>The descriptor is selected out of a large number of candidates constructed as functions of basic input features, the primary features. </p>",
                    "",
                    "<p>You can select the primary features as well as which kind of unary and binary operations are allowed from the checklist below. You can also select the maximum dimensionality of the descriptor. </p>",
211
                    "<p>        After the wished features have been selected, click <b>RUN</b> to perform the calculations (loading the values of the primary features, creation of the feature space, and optimization via LASSO+L0). </p>",
ankit kariryaa's avatar
ankit kariryaa committed
212
                    "",
213
                    "During the run, a brief summary is printed out below the <b>RUN</b> button. At the end of the run: ",
ankit kariryaa's avatar
ankit kariryaa committed
214
215
216
217
218
219
220
221
222
223
224
225
                    "  <ul>",
                    "  <li> the solution (machine-learned descriptor, model, and its performance in terms of training error) is printed out underneath starting from the one-dimensional solution to the selected maximum dimensionality and</li>",
                    "<li> the “View interactive 2D scatter plot” button unlocks; by clicking, the scatter plot with the two-dimensional descriptor appears in a separate tab. In case a dimensionality higher than 2 was selected for the descriptor, the plot displays the first two dimensions.</li>",
                    "</ul>",
                    "<p>Note: the plot stays active also after another run is performed, so that the output of several sets of input parameters can be compared in the viewer tabs.</p>",
                    "      </div>",
                    "      <div class=\"modal-footer\">",
                    "        <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\">Close</button>",
                    "<!--         <button type=\"button\" class=\"btn btn-primary\">Save changes</button> -->",
                    "      </div>",
                    "    </div>",
                    "  </div>",
226
227
228
229
230
231
232
233
                    "</div>",
                    "",
                    "<!-- Button trigger modal -->",
                    "<button type=\"button\" class=\"btn btn-default\" onclick='toggle_settings()'>",
                    " Settings",
                    "</button>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;",
                    "",
                    "",
Ankit Kariryaa's avatar
Ankit Kariryaa committed
234
                    "<a target=\"_blank\" href=\"https://nomad-forum.rz-berlin.mpg.de//\" class=\"btn btn-primary\"> Tell us what you think</a>"
ankit kariryaa's avatar
ankit kariryaa committed
235
236
237
238
239
240
241
242
                ],
                "hidden": true
            },
            "output": {
                "state": {},
                "result": {
                    "type": "BeakerDisplay",
                    "innertype": "Html",
Ankit Kariryaa's avatar
Ankit Kariryaa committed
243
                    "object": "<script>\nvar beaker = bkHelper.getBeakerObject().beakerObj;\n</script>\n<script>\nvar run_lasso = function() {\n  $(\"#lasso_result_button\").removeClass(\"active\").addClass(\"disabled\");\n  getFeatures();\n  getOperators();\n  getMaxDim();\n  getUnits();\n  beaker.evaluate(\"calc_cell\"); // evaluate cells with tag \"calc_cell\"\n // view_result()\n};\nvar reset_lasso = function(){\n  beaker.evaluate(\"lasso-settings-cell\");\n  var e = document.getElementById('lasso-hidden-settings-div');\n  var b = document.getElementById('lasso-hidden-settings-button');\n  e.style.display = 'block';\n  b.style.display = 'inline';\n};\nvar getFeatures = function() {\n    beaker.selected_feature_list = [];\n    $('#lasso_features_select input:checkbox').each(function () {\n        if(this.checked )\n          beaker.selected_feature_list.push(this.value);\n    });\n};\nvar getOperators = function() {\n    beaker.allowed_operations = [];\n    $('#lasso_operators_select input:checkbox').each(function () {\n        if(this.checked )\n          beaker.allowed_operations.push(this.value);\n    });\n};  \nvar getMaxDim = function() {\n   beaker.max_dim = $(\"#lasso_max_dim_selector\").val();\n};\n  \nvar getUnits = function() {\n   beaker.units = $(\"#units_select\").val();\n};\nvar toggle_settings = function(){\n  var e = document.getElementById('lasso-hidden-settings-div');\n  var b = document.getElementById('lasso-hidden-settings-button');\n  if(e.style.display == 'block'){\n    e.style.display = 'none';\n    b.style.display = 'none';\n  }\n  else{\n    e.style.display = 'block';\n    b.style.display = 'inline';\n  }\n};\nbeaker.view_result = function(result_link) {\n//   beaker.evaluate(\"lasso_viewer_result\").then(function(x) {\n    $(\"#lasso_result_button\").attr(\"href\", result_link);\n//   }); \n  $(\"#lasso_result_button\").removeClass(\"disabled\").addClass(\"active\");\n}\n</script>\n<style type=\"text/css\">\n .lasso_instructions{\n    font-size: 15px;\n  } \n</style>\n<!-- Button trigger modal -->\n<button type=\"button\" class=\"btn btn-default\" data-toggle=\"modal\" data-target=\"#lasso-motivation-modal\">\n Background\n</button>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n\n<!-- Modal -->\n<div style=\"display: none;\" class=\"modal fade\" id=\"lasso-motivation-modal\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"lasso-motivation-modal-label\">\n  <div class=\"modal-dialog modal-lg\" role=\"document\">\n    <div class=\"modal-content\">\n      <div class=\"modal-header\">\n        <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\"><span aria-hidden=\"true\">×</span></button>\n        <h4 class=\"modal-title\" id=\"lasso-motivation-modal-label\">Background</h4>\n      </div>\n      <div class=\"modal-body lasso_instructions\">\n        <p> In this tutorial we present a tool for predicting the crystal structure of octet binary compounds, by using a set of descriptive parameters (a descriptor) based on free-atom data of the atomic species constituting the binary material.</p>\n\n        <p>In this example, we address only Rocksalt (RS) and Zincblende (ZB) crystal structures, that are the most common for the material class of octet binaries. Specifically, the tool predicts the difference in total energy between RS and ZB equilibrated structures (i.e., each structure is relaxed to its local minimum).</p>\n\n        <p>The prediction of RS vs ZB structure from a simple descriptor has a notable history in materials science [1-7], where descriptors were designed by chemically/physically-inspired intuition. The tool presented here allows for the machine-learning-aided automatic discovery of a descriptor and a model for the prediction of the difference in energy between RS and ZB for 82 octet binary materials.</p>\n\n        <p>The tool is based on Compressed-sensing (LASSO performed on a tailor-made feature space, followed by L0-regularized minimization, click <a href=\"https://gitlab.rzg.mpg.de/nomad-lab/public-wiki/wikis/analytics/LASSO_L0\" target=\"_blank\">here</a> for more info on the LASSO+L0 method), as introduced in:  </p>\n\n        <p> \"Big Data of Materials Science: Critical Role of the Descriptor\". L. M. Ghiringhelli, J. Vybiral, S. V. Levchenko, C. Draxl, and M. Scheffler Phys. Rev. Lett. 114, 105503 (2015) <a href=\"http://journals.aps.org/prl/abstract/10.1103/PhysRevLett.114.105503\" target=\"_blank\"> (Click here for the free access pdf) </a></p>\n\n        <p> By running the tutorial with the default setting, the results of the <a href=\"http://journals.aps.org/prl/abstract/10.1103/PhysRevLett.114.105503\" target=\"_blank\">PRL 2015</a> can be recovered. In particular, by clicking on “View interactive 2D plot”, an interactive structure-map (a chart where different structures are located in different regions of a low-dimensional representation, here two dimensional) will be opened in a new tab, similar to the following (an extended version of Fig. 2 in <a href=\"http://journals.aps.org/prl/abstract/10.1103/PhysRevLett.114.105503\" target=\"_blank\">PRL 2015</a>): </p>\n        \n        <img style=\"width:67%;height:67%\" src=\"https://gitlab.mpcdf.mpg.de/nomad-lab/public-wiki/uploads/eb33f1415db1b6d489cbbc3e6a899942/2016-08-02_ZB_RS3-2.png\">\n        <br>\n        <br>\n        <p> In this map the octet binaries are located via the descriptor found by our LASSO+L0 approach. The descriptor is based purely on free-atom data, namely radii of the <i>s</i> and <i>p</i> valence orbitals (rs and rp) of the atomic species and their Ionizaiton Potential and Electron Affinity (IP and EA). Materials in the red (blue) region crystallize preferably in the zincblende (rocksalt) structure. The distance to the green line is proportional to the difference in energy between the two structures. In the interactive plot accessible at the end of the learning performed by the present tool, one can obtain information on the materials by hovering and clicking on the data points. </p>\n        <p>References:</p>\n        <ol>\n          <li>J. A. van Vechten, Phys. Rev. 182, 891 (1969).</li>\n          <li>J. C. Phillips, Rev. Mod. Phys. 42, 317 (1970).</li>\n          <li>J. St. John and A.N. Bloch, Phys. Rev. Lett. 33, 1095 (1974).</li>\n          <li>J. R. Chelikowsky and J. C. Phillips, Phys. Rev. B 17, 2453 (1978).</li>\n          <li>A. Zunger, Phys. Rev. B 22, 5839 (1980).</li>\n          <li>D. G. Pettifor, Solid State Commun. 51, 31 (1984).</li>\n          <li>Y. Saad, D. Gao, T. Ngo, S. Bobbitt, J. R. Chelikowsky, and W. Andreoni, Phys. Rev. B 85, 104104 (2012).</li>\n        </ol>\n      </div>\n      <div class=\"modal-footer\">\n        <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\">Close</button>\n<!--         <button type=\"button\" class=\"btn btn-primary\">Save changes</button> -->\n      </div>\n    </div>\n  </div>\n</div>\n\n<!-- Button trigger modal -->\n<button type=\"button\" class=\"btn btn-default\" data-toggle=\"modal\" data-target=\"#lasso-instructions-modal\">\n Instructions\n</button>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n\n<!-- Modal -->\n<div class=\"modal fade\" id=\"lasso-instructions-modal\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"lasso-instructions-modal-label\">\n  <div class=\"modal-dialog\" role=\"document\">\n    <div class=\"modal-content\">\n      <div class=\"modal-header\">\n        <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\"><span aria-hidden=\"true\">×</span></button>\n        <h4 class=\"modal-title\" id=\"lasso-instructions-modal-label\">Instructions</h4>\n      </div>\n      <div class=\"modal-body lasso_instructions\">\n<p>In this example, you can run a compressed-sensing based algorithm for finding the optimal descriptor (and model) that predicts the difference in energy between crystal structures (here, rocksalt vs. zincblende). </p>\n\n<p>The descriptor is selected out of a large number of candidates constructed as functions of basic input features, the primary features. </p>\n\n<p>You can select the primary features as well as which kind of unary and binary operations are allowed from the checklist below. You can also select the maximum dimensionality of the descriptor. </p>\n<p>        After the wished features have been selected, click <b>RUN</b> to perform the calculations (loading the values of the primary features, creation of the feature space, and optimization via LASSO+L0). </p>\n\nDuring the run, a brief summary is printed out below the <b>RUN</b> button. At the end of the run: \n  <ul>\n  <li> the solution (machine-learned descriptor, model, and its performance in terms of training error) is printed out underneath starting from the one-dimensional solution to the selected maximum dimensionality and</li>\n<li> the “View interactive 2D scatter plot” button unlocks; by clicking, the scatter plot with the two-dimensional descriptor appears in a separate tab. In case a dimensionality higher than 2 was selected for the descriptor, the plot displays the first two dimensions.</li>\n</ul>\n<p>Note: the plot stays active also after another run is performed, so that the output of several sets of input parameters can be compared in the viewer tabs.</p>\n      </div>\n      <div class=\"modal-footer\">\n        <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\">Close</button>\n<!--         <button type=\"button\" class=\"btn btn-primary\">Save changes</button> -->\n      </div>\n    </div>\n  </div>\n</div>\n\n<!-- Button trigger modal -->\n<button type=\"button\" class=\"btn btn-default\" onclick=\"toggle_settings()\">\n Settings\n</button>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n\n\n<a target=\"_blank\" href=\"https://nomad-forum.rz-berlin.mpg.de//\" class=\"btn btn-primary\"> Tell us what you think</a>"
ankit kariryaa's avatar
ankit kariryaa committed
244
245
246
                },
                "selectedType": "BeakerDisplay",
                "elapsedTime": 0,
247
                "height": 72
ankit kariryaa's avatar
ankit kariryaa committed
248
249
            },
            "evaluatorReader": true,
250
            "lineCount": 154
ankit kariryaa's avatar
ankit kariryaa committed
251
252
        },
        {
253
            "id": "lasso-settings-cell",
ankit kariryaa's avatar
ankit kariryaa committed
254
255
256
257
258
            "type": "code",
            "evaluator": "HTML",
            "input": {
                "body": [
                    "<style type=\"text/css\">",
259
260
261
262
263
                    " #lasso-hidden-settings-div{",
                    "    display:none;",
                    "  } ",
                    " #lasso-hidden-settings-button{",
                    "    display:none;",
ankit kariryaa's avatar
ankit kariryaa committed
264
265
                    "  }   ",
                    "</style>",
266
                    "<div class=\"lasso_control\" id=\"lasso-hidden-settings-div\">",
ankit kariryaa's avatar
ankit kariryaa committed
267
268
269
270
271
272
                    "  <div class=\"row\">",
                    "    <p class=\"lasso_selection_description\"><b>Primary features </b>",
                    "  (hover the mouse",
                    "pointer over the feature names to see a full description):</p>",
                    "    <form id=\"lasso_features_select\">",
                    "      <div class=\"lasso_form_group\">",
273
274
                    "         <label class =\"col-xs-4 col-md-4 col-lg-3\"> <input type=\"checkbox\" value=\"atomic_ionization_potential\" CHECKED > <span title=\"Atomic ionization potential\"><i>IP</i> </span></label>",
                    "         <label class =\"col-xs-4 col-md-4 col-lg-3\"> <input type=\"checkbox\" value=\"atomic_electron_affinity\" CHECKED > <span title=\"Atomic electron affinity\"> <i>EA</i></span></label>",
275
276
                    "         <label class =\"col-xs-4 col-md-4 col-lg-3\"> <input type=\"checkbox\" value=\"atomic_homo\" CHECKED> <span title=\"Energy of highest occupied molecular orbital\"><i>E</i> <sub>HOMO</sub></span> </label>",
                    "         <label class =\"col-xs-4 col-md-4 col-lg-3\"> <input type=\"checkbox\" value=\"atomic_lumo\" CHECKED> <span title=\"Energy of lowest unoccupied molecular orbital\"> <i>E</i> <sub>LUMO</sub>  </span> </label>",
277
278
279
280
281
282
283
284
285
286
                    "        ",
                    "         <label class =\"col-xs-4 col-md-4 col-lg-3\"> <input type=\"checkbox\" value=\"atomic_rs_max\" CHECKED > <span title=\"Radius at which the radial probability density of the valence s orbital is maximum\"> <i>r</i><sub>s</sub>  </span> </label>",
                    "         <label class =\"col-xs-4 col-md-4 col-lg-3\"> <input type=\"checkbox\" value=\"atomic_rp_max\" CHECKED > <span title=\"Radius at which the radial probability density of the valence p orbital is maximum\"> <i>r</i><sub>p</sub>  </span> </label>",
                    "         <label class =\"col-xs-4 col-md-4 col-lg-3\"> <input type=\"checkbox\" value=\"atomic_rd_max\" CHECKED > <span title=\"Radius at which the radial probability density of the valence d orbital is maximum\"> <i>r</i><sub>d</sub>  </span> </label>",
                    "         <label class =\"col-xs-4 col-md-4 col-lg-3\"> <input type=\"checkbox\" value=\"atomic_number\" > <span title=\"Atomic number\"> <i>Z</i>  </span> </label>",
                    "        <label class =\"col-xs-4 col-md-4 col-lg-3\"> <input type=\"checkbox\" value=\"atomic_number_valence_electrons\" > <span title=\"Number of valence electrons\"> <i>Z</i><sub>val</sub>  </span> </label>",
                    "         <label class =\"col-xs-4 col-md-4 col-lg-3\"> <input type=\"checkbox\" value=\"period\" > <span title=\"Period (in the periodic table)\"> <i>n</i> <sub>period</sub>  </span> </label>",
                    "         <label class =\"col-xs-4 col-md-4 col-lg-3\"> <input type=\"checkbox\" value=\"atomic_r_by_2_dimer\" > <span title=\"Bond length of the dimer\"> <i>d</i> <sub>dimer</sub> </span> </label>",
                    "         <label class =\"col-xs-4 col-md-4 col-lg-3\"> <input type=\"checkbox\" value=\"atomic_electronic_binding_energy_dimer\" > <span title=\"Binding energy of the dimer\"> <i>E</i> <sub>b</sub> </span> </label>",
                    "         <label class =\"col-xs-4 col-md-4 col-lg-3\"> <input type=\"checkbox\" value=\"atomic_homo_lumo_diff\" > <span title=\"HOMO-LUMO gap of the dimer\"> Δ<i>E</i><sub>HL</sub>  </span> </label>",
287
                    "         <label class =\"col-xs-4 col-md-4 col-lg-3\"> <input type=\"checkbox\" value=\"r_sigma\" > <span title=\"John-Bloch's indicator1: |rp(A) + rs(A) - rp(B) -rs(B)| ",
ankit kariryaa's avatar
ankit kariryaa committed
288
                    "           [Phys. Rev. Lett. 33. 1095 (1974)]\"> r<sub>σ</sub>  </span> </label>",
289
                    "         <label class =\"col-xs-4 col-md-4 col-lg-3\"> <input type=\"checkbox\" value=\"r_pi\" > <span title=\"John-Bloch's indicator2: |rp(A) - rs(A)| +| rp(B) -rs(B)| ",
ankit kariryaa's avatar
ankit kariryaa committed
290
291
292
293
294
295
296
297
298
                    "          [Phys. Rev. Lett. 33. 1095 (1974)]\">  r<sub>π</sub>  </span> </label>",
                    "      </div>",
                    "    </form>",
                    "  </div>  <!-- End of row-->",
                    "  <div class=\"row\"> <!-- Start of second row-->",
                    "    <p class=\"lasso_selection_description\"><b>Allowed operations:</b> <br>",
                    "  Given features x and y, apply these operations:</p>",
                    "    <form id=\"lasso_operators_select\">",
                    "      <div class=\"lasso_form_group\">",
299
300
301
302
303
304
                    "        <label class =\"col-xs-4 col-md-4 col-lg-1\"> <input type=\"checkbox\" value=\"+\" CHECKED > x+y  </label>",
                    "        <label class =\"col-xs-4 col-md-4 col-lg-1\"> <input type=\"checkbox\" value=\"-\" > x-y  </label>",
                    "        <label class =\"col-xs-4 col-md-4 col-lg-1\"> <input type=\"checkbox\" value=\"|-|\" CHECKED > |x-y|  </label>",
                    "        <label class =\"col-xs-4 col-md-4 col-lg-1\"> <input type=\"checkbox\" value=\"*\" > x &middot y  </label>",
                    "        <label class =\"col-xs-4 col-md-4 col-lg-1\"> <input type=\"checkbox\" value=\"/\" CHECKED > x/y  </label>",
                    "        <label class =\"col-xs-4 col-md-4 col-lg-1\"> <input type=\"checkbox\" value=\"^2\" CHECKED > x^2  </label>",
305
306
                    "        <label class =\"col-xs-4 col-md-4 col-lg-3\"> <input type=\"checkbox\" value=\"^3\" > x^3  </label>",
                    "        <label class =\"col-xs-4 col-md-4 col-lg-3\"> <input type=\"checkbox\" value=\"exp\" CHECKED > exp(x)  </label>",
ankit kariryaa's avatar
ankit kariryaa committed
307
308
309
310
                    "      </div>",
                    "    </form>",
                    "  </div>  <!-- End of row-->",
                    "  <div class=\"row\"> <!-- Start of third row-->",
311
                    "  <p class=\"lasso_selection_description\"><b>Optimal descriptor maximum dimension: </b> ",
ankit kariryaa's avatar
ankit kariryaa committed
312
313
314
315
316
317
318
                    "  <select id='lasso_max_dim_selector'>",
                    "    <option value=\"2\" > 2D</option>",
                    "    <option value=\"3\" > 3D</option>",
                    "    <option value=\"4\" > 4D</option>",
                    "    <option value=\"5\" > 5D</option>",
                    "  </select> </p>",
                    "  </div><!-- End of row-->",
319
                    "  <div class=\"row\"> <!-- Start of forth row-->",
320
                    "  <p class=\"lasso_selection_description\"><b>Units of measurement: </b> ",
321
322
323
324
325
326
                    "  <select id='units_select'>",
                    "    <option value=\"eV_angstrom\" > [energy]=eV;&nbsp;&nbsp;[length]=angstrom</option>",
                    "    <option value=\"J_m\" > [energy]=J;&nbsp;&nbsp;[length]=m</option>",
                    "    <option value=\"kcal/mol_angstrom\" > [energy]=kcal/mol;&nbsp;&nbsp;[length]=angstrom</option>",
                    "  </select> </p>",
                    "  </div><!-- End of row-->",
ankit kariryaa's avatar
ankit kariryaa committed
327
                    "<!-- <span title=''> <img src=\"http://images.clipartpanda.com/question-purzen_Icon_with_question_mark_Vector_Clipart.png\" style=\"height: 30px; width: 30px;\"> </span> -->",
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
                    "<!--   <button class=\"btn btn-default\" onclick='run_lasso()'>RUN LASSO+L0</button> -->",
                    "<!--   <button class=\"btn btn-default\" onclick='reset_lasso()'>RESET</button> -->",
                    "<!--   <label title=\"This button becomes active when the",
                    "run is finished. By clicking it, an interactive plot of the first 2",
                    "dimensions of the optimized descriptor will be opened\"> ",
                    "  <a href=\"#\" target=\"_blank\" class=\"btn btn-primary disabled\" id=\"lasso_result_button\" >View interactive 2D scatter plot</a> </label> -->",
                    "</div>"
                ],
                "hidden": true
            },
            "output": {
                "state": {},
                "result": {
                    "type": "BeakerDisplay",
                    "innertype": "Html",
343
                    "object": "<script>\nvar beaker = bkHelper.getBeakerObject().beakerObj;\n</script>\n<style type=\"text/css\">\n #lasso-hidden-settings-div{\n    display:none;\n  } \n #lasso-hidden-settings-button{\n    display:none;\n  }   \n</style>\n<div style=\"display: none;\" class=\"lasso_control\" id=\"lasso-hidden-settings-div\">\n  <div class=\"row\">\n    <p class=\"lasso_selection_description\"><b>Primary features </b>\n  (hover the mouse\npointer over the feature names to see a full description):</p>\n    <form id=\"lasso_features_select\">\n      <div class=\"lasso_form_group\">\n         <label class=\"col-xs-4 col-md-4 col-lg-3\"> <input value=\"atomic_ionization_potential\" checked=\"\" type=\"checkbox\"> <span title=\"Atomic ionization potential\"><i>IP</i> </span></label>\n         <label class=\"col-xs-4 col-md-4 col-lg-3\"> <input value=\"atomic_electron_affinity\" checked=\"\" type=\"checkbox\"> <span title=\"Atomic electron affinity\"> <i>EA</i></span></label>\n         <label class=\"col-xs-4 col-md-4 col-lg-3\"> <input value=\"atomic_homo\" checked=\"\" type=\"checkbox\"> <span title=\"Energy of highest occupied molecular orbital\"><i>E</i> <sub>HOMO</sub></span> </label>\n         <label class=\"col-xs-4 col-md-4 col-lg-3\"> <input value=\"atomic_lumo\" checked=\"\" type=\"checkbox\"> <span title=\"Energy of lowest unoccupied molecular orbital\"> <i>E</i> <sub>LUMO</sub>  </span> </label>\n        \n         <label class=\"col-xs-4 col-md-4 col-lg-3\"> <input value=\"atomic_rs_max\" checked=\"\" type=\"checkbox\"> <span title=\"Radius at which the radial probability density of the valence s orbital is maximum\"> <i>r</i><sub>s</sub>  </span> </label>\n         <label class=\"col-xs-4 col-md-4 col-lg-3\"> <input value=\"atomic_rp_max\" checked=\"\" type=\"checkbox\"> <span title=\"Radius at which the radial probability density of the valence p orbital is maximum\"> <i>r</i><sub>p</sub>  </span> </label>\n         <label class=\"col-xs-4 col-md-4 col-lg-3\"> <input value=\"atomic_rd_max\" checked=\"\" type=\"checkbox\"> <span title=\"Radius at which the radial probability density of the valence d orbital is maximum\"> <i>r</i><sub>d</sub>  </span> </label>\n         <label class=\"col-xs-4 col-md-4 col-lg-3\"> <input value=\"atomic_number\" type=\"checkbox\"> <span title=\"Atomic number\"> <i>Z</i>  </span> </label>\n        <label class=\"col-xs-4 col-md-4 col-lg-3\"> <input value=\"atomic_number_valence_electrons\" type=\"checkbox\"> <span title=\"Number of valence electrons\"> <i>Z</i><sub>val</sub>  </span> </label>\n         <label class=\"col-xs-4 col-md-4 col-lg-3\"> <input value=\"period\" type=\"checkbox\"> <span title=\"Period (in the periodic table)\"> <i>n</i> <sub>period</sub>  </span> </label>\n         <label class=\"col-xs-4 col-md-4 col-lg-3\"> <input value=\"atomic_r_by_2_dimer\" type=\"checkbox\"> <span title=\"Bond length of the dimer\"> <i>d</i> <sub>dimer</sub> </span> </label>\n         <label class=\"col-xs-4 col-md-4 col-lg-3\"> <input value=\"atomic_electronic_binding_energy_dimer\" type=\"checkbox\"> <span title=\"Binding energy of the dimer\"> <i>E</i> <sub>b</sub> </span> </label>\n         <label class=\"col-xs-4 col-md-4 col-lg-3\"> <input value=\"atomic_homo_lumo_diff\" type=\"checkbox\"> <span title=\"HOMO-LUMO gap of the dimer\"> Δ<i>E</i><sub>HL</sub>  </span> </label>\n         <label class=\"col-xs-4 col-md-4 col-lg-3\"> <input value=\"r_sigma\" type=\"checkbox\"> <span title=\"John-Bloch's indicator1: |rp(A) + rs(A) - rp(B) -rs(B)| \n           [Phys. Rev. Lett. 33. 1095 (1974)]\"> r<sub>σ</sub>  </span> </label>\n         <label class=\"col-xs-4 col-md-4 col-lg-3\"> <input value=\"r_pi\" type=\"checkbox\"> <span title=\"John-Bloch's indicator2: |rp(A) - rs(A)| +| rp(B) -rs(B)| \n          [Phys. Rev. Lett. 33. 1095 (1974)]\">  r<sub>π</sub>  </span> </label>\n      </div>\n    </form>\n  </div>  <!-- End of row-->\n  <div class=\"row\"> <!-- Start of second row-->\n    <p class=\"lasso_selection_description\"><b>Allowed operations:</b> <br>\n  Given features x and y, apply these operations:</p>\n    <form id=\"lasso_operators_select\">\n      <div class=\"lasso_form_group\">\n        <label class=\"col-xs-4 col-md-4 col-lg-1\"> <input value=\"+\" checked=\"\" type=\"checkbox\"> x+y  </label>\n        <label class=\"col-xs-4 col-md-4 col-lg-1\"> <input value=\"-\" type=\"checkbox\"> x-y  </label>\n        <label class=\"col-xs-4 col-md-4 col-lg-1\"> <input value=\"|-|\" checked=\"\" type=\"checkbox\"> |x-y|  </label>\n        <label class=\"col-xs-4 col-md-4 col-lg-1\"> <input value=\"*\" type=\"checkbox\"> x · y  </label>\n        <label class=\"col-xs-4 col-md-4 col-lg-1\"> <input value=\"/\" checked=\"\" type=\"checkbox\"> x/y  </label>\n        <label class=\"col-xs-4 col-md-4 col-lg-1\"> <input value=\"^2\" checked=\"\" type=\"checkbox\"> x^2  </label>\n        <label class=\"col-xs-4 col-md-4 col-lg-3\"> <input value=\"^3\" type=\"checkbox\"> x^3  </label>\n        <label class=\"col-xs-4 col-md-4 col-lg-3\"> <input value=\"exp\" checked=\"\" type=\"checkbox\"> exp(x)  </label>\n      </div>\n    </form>\n  </div>  <!-- End of row-->\n  <div class=\"row\"> <!-- Start of third row-->\n  <p class=\"lasso_selection_description\"><b>Optimal descriptor maximum dimension: </b> \n  <select id=\"lasso_max_dim_selector\">\n    <option value=\"2\"> 2D</option>\n    <option value=\"3\"> 3D</option>\n    <option value=\"4\"> 4D</option>\n    <option value=\"5\"> 5D</option>\n  </select> </p>\n  </div><!-- End of row-->\n  <div class=\"row\"> <!-- Start of forth row-->\n  <p class=\"lasso_selection_description\"><b>Units of measurement: </b> \n  <select id=\"units_select\">\n    <option value=\"eV_angstrom\"> [energy]=eV;&nbsp;&nbsp;[length]=angstrom</option>\n    <option value=\"J_m\"> [energy]=J;&nbsp;&nbsp;[length]=m</option>\n    <option value=\"kcal/mol_angstrom\"> [energy]=kcal/mol;&nbsp;&nbsp;[length]=angstrom</option>\n  </select> </p>\n  </div><!-- End of row-->\n<!-- <span title=''> <img src=\"http://images.clipartpanda.com/question-purzen_Icon_with_question_mark_Vector_Clipart.png\" style=\"height: 30px; width: 30px;\"> </span> -->\n<!--   <button class=\"btn btn-default\" onclick='run_lasso()'>RUN LASSO+L0</button> -->\n<!--   <button class=\"btn btn-default\" onclick='reset_lasso()'>RESET</button> -->\n<!--   <label title=\"This button becomes active when the\nrun is finished. By clicking it, an interactive plot of the first 2\ndimensions of the optimized descriptor will be opened\"> \n  <a href=\"#\" target=\"_blank\" class=\"btn btn-primary disabled\" id=\"lasso_result_button\" >View interactive 2D scatter plot</a> </label> -->\n</div>"
344
345
346
                },
                "selectedType": "BeakerDisplay",
                "elapsedTime": 0,
347
                "height": 50
348
349
            },
            "evaluatorReader": true,
350
351
            "lineCount": 77,
            "tags": "lasso-settings"
352
353
        },
        {
354
            "id": "codezrTu93",
355
356
357
358
359
360
361
362
363
            "type": "code",
            "evaluator": "HTML",
            "input": {
                "body": [
                    "<div class=\"lasso_control\">",
                    "",
                    "  <p style=\"margin-top: 1ex;\"></p>",
                    "  <button class=\"btn btn-default\" onclick='run_lasso()' style=\"font-weight: bold;\">RUN</button>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;",
                    "  <div id=\"lasso-hidden-settings-button\"><button class=\"btn btn-default\" onclick='reset_lasso()'>RESET</button>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div>",
ankit kariryaa's avatar
ankit kariryaa committed
364
365
366
367
                    "  <label title=\"This button becomes active when the",
                    "run is finished. By clicking it, an interactive plot of the first 2",
                    "dimensions of the optimized descriptor will be opened\"> ",
                    "  <a href=\"#\" target=\"_blank\" class=\"btn btn-primary disabled\" id=\"lasso_result_button\" >View interactive 2D scatter plot</a> </label>",
368
                    "</div>"
ankit kariryaa's avatar
ankit kariryaa committed
369
370
371
372
373
374
375
376
                ],
                "hidden": true
            },
            "output": {
                "state": {},
                "result": {
                    "type": "BeakerDisplay",
                    "innertype": "Html",
377
                    "object": "<script>\nvar beaker = bkHelper.getBeakerObject().beakerObj;\n</script>\n<div class=\"lasso_control\">\n\n  <p style=\"margin-top: 1ex;\"></p>\n  <button class=\"btn btn-default\" onclick=\"run_lasso()\" style=\"font-weight: bold;\">RUN</button>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\n  <div id=\"lasso-hidden-settings-button\"><button class=\"btn btn-default\" onclick=\"reset_lasso()\">RESET</button>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div>\n  <label title=\"This button becomes active when the\nrun is finished. By clicking it, an interactive plot of the first 2\ndimensions of the optimized descriptor will be opened\"> \n  <a href=\"#\" target=\"_blank\" class=\"btn btn-primary disabled\" id=\"lasso_result_button\">View interactive 2D scatter plot</a> </label>\n</div>"
ankit kariryaa's avatar
ankit kariryaa committed
378
                },
379
380
                "selectedType": "BeakerDisplay",
                "elapsedTime": 0,
381
                "height": 86
ankit kariryaa's avatar
ankit kariryaa committed
382
383
            },
            "evaluatorReader": true,
384
            "lineCount": 10
ankit kariryaa's avatar
ankit kariryaa committed
385
386
        },
        {
387
            "id": "codeGcV7G3",
ankit kariryaa's avatar
ankit kariryaa committed
388
389
390
391
            "type": "code",
            "evaluator": "IPython",
            "input": {
                "body": [
392
393
                    "from nomad_sim.wrappers import get_json_list, calc_descriptor ",
                    "from nomad_sim.wrappers import calc_model, calc_embedding, plot",
394
                    "#from nomad_sim.parsing_utils import read_gdb_7k",
395
                    "from nomad_sim.utils_crystals import create_supercell",
396
397
398
399
400
401
402
403
404
405
                    "from nomad_sim.utils_crystals import create_vacancies",
                    "from nomad_sim.utils_crystals import random_displace_atoms",
                    "from nomad_sim.utils_crystals import substitute_atoms",
                    "from nomad_sim.descriptors import XrayDiffraction",
                    "from nomad_sim.utils_crystals import create_supercell",
                    "",
                    "# hack to change to local/Beaker mode in all files in the packages",
                    "# DEPRECATED",
                    "import __builtin__",
                    "__builtin__.isBeaker = True",
406
                    "",
ankit kariryaa's avatar
ankit kariryaa committed
407
408
                    "import hashlib",
                    "",
409
410
411
412
413
414
                    "import sys, os",
                    "import pandas as pd",
                    "import numpy as np",
                    "import json",
                    "",
                    "",
ankit kariryaa's avatar
ankit kariryaa committed
415
416
417
                    "# define paths",
                    "tmp_folder = '/home/beaker/.beaker/v1/web/tmp/'",
                    "control_file = '/home/beaker/.beaker/v1/web/tmp/control.json'",
418
                    "data_folder='/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/'",
ankit kariryaa's avatar
ankit kariryaa committed
419
                    "lookup_file = '/home/beaker/.beaker/v1/web/tmp/lookup.dat'",
420
421
422
                    "collection_path = '/home/beaker/test/nomad_sim/data_zcrs/ExtendedBinaries_Dimers_Atoms_new.json'",
                    "path_to_collection = '/home/beaker/test/nomad_sim/data_zcrs/ExtendedBinaries_Dimers_Atoms_new.json'",
                    "",
ankit kariryaa's avatar
ankit kariryaa committed
423
                    "",
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
                    "# define units",
                    "if beaker.units == 'eV_angstrom':",
                    "    energy_unit = 'eV'",
                    "    length_unit = 'angstrom'",
                    "elif beaker.units == 'J_m':",
                    "    energy_unit = 'J'",
                    "    length_unit = 'm'",
                    "elif beaker.units == 'kcal/mol_angstrom':",
                    "    energy_unit = 'kcal/mol'",
                    "    length_unit = 'angstrom'"
                ],
                "hidden": true
            },
            "output": {
                "state": {},
439
                "selectedType": "Results",
440
                "pluginName": "IPython",
441
442
                "shellId": "6EF6C49F5D2D40F383601486E08EC433",
                "elapsedTime": 3516
443
444
445
446
447
448
449
450
451
452
453
            },
            "evaluatorReader": true,
            "tags": "calc_cell",
            "lineCount": 42
        },
        {
            "id": "codeLARUgI",
            "type": "code",
            "evaluator": "IPython",
            "input": {
                "body": [
454
                    "# pass only lowest energy structures to save time for demonstation purposes",
455
456
                    "# pass only lowest energy structures to save time for demonstation purposes",
                    "json_list = [",
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/P-M1B6jU_t-kPPKkoFU9kZkEbx332.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/P0e8gRRxOvcJquPDa7SeYFk2OCiFS.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/P0tj3NYHfrit7NB0ewfG-fIjRWuJD.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/P2R4Ds9DFm8USF_AgHtQnWK1TkQiR.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/P36pL30yblwhze_vHZYZ_cybqeH4V.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/P39GmzBY478BzuXrZM-0i2Z-njyb9.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/P3hSpXydSB6z3p79OEIOQK6llto1K.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/P51AKUeSNYXrRBK_-uc8y1-bCfUNg.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/P5q6OPnbkCI9OZnxRMmigkwjECTEe.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/P7JW4GQVa_xQ4YKM88F9LFzyVoXke.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/P7kHL_6prXXdx5_MzMVmwsmStNoc0.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/P81vIYtJtOEx4n865B86z-KvUb6hA.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/P9Yuhn2S6hqpJ0cf9E9uw5G5bJlzV.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/P9sheCSX6Gol5L-IsCvDlnmT_MEGG.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PA3s37bS9VLUzI5wYL_ntZ6RIM6IJ.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PAlWHa4oJtvotPEJZkbrlNC_sn0h2.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PB0yzgD_PWA0LKTKGJ8ZZuD33YEUG.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PC8N-y0PPPHeAwhkYGyYYI9H1UUHy.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PCeh79N53GyBSPmZQQJ97G0eAHaDT.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PEYkIqgUpWfoq4Tcsy8_bFVUs9mko.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PEhAEeu8aSPA_d3_dHCjTlAi1y09j.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PGRvHpDj8bRbzvIL0c9yfOmeZjfah.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PHfNgOoPEHjzs9iOh900vIUv-GVJl.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PKSpxMXqdSstTt6Es26kroYBYENnq.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PKfJHS4WQGppgde2dACUjMuVoL2sB.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PKu0vasdF5E6n3C3QydIjCtGOIla4.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PM3KjHYJjTA26va4uYXD8homH7pUm.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PME2sPwrfVW7U0veuObWai6ryPqou.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PMxYGoRCMDXQWrNytWJHc-vUgRKTT.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PN0Q_OXA7e5yO6EkDKkOpGHM6hyCj.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PNXyczNslCGZT642R9ZFYGvidFvua.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PNavIaZhgwAeZM0-QhWHe_38iUgEF.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/POIYfYCEIron9yzowfHWhVea-VEFW.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PQB49fu8BN3kua7uLKQLlT5dWdHi0.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PQESlzgesuFywpq09x-vZ0gikcjPf.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PQhb3_h4Bo9e5xjhhTUBY_8uOEtTM.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PV--hzM8rvSS8a6LZBuuW6IPbqvY6.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PVshjrYqjAg_8QtgfGW2ABnR-mlIP.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PWNXU92VwL7KkuoxItglRiuifcOnk.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PWkXOKoiw0iAE585QkElUZNCYOqYI.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PX39jEfgLeDPddrkPuTvUfVv4_thl.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PYOw5h3ttt0tMyUPOvqDPc6yArPTy.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PYeYlDJb7j4qJ9ol38GSM_eYJsiSe.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PZuBrsUzsdX__rAeKn_JQgfX-YGoo.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/P_1mfRE8eDZ7zCLQwGT_3n8YC34dE.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/P_DFu-YobOdcOb1mfdI22vrtaSQAh.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/P_rlThO8Jv0C2YIgYKLbCTM1rvfW-.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PbVMALFnpGdoEyabKhI_3DtbUX6W7.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PcYC-NeMnx_goUeYg8PmaNVo0chDc.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PcyDh6nCotXyohIHh5k1dx5L5D5X9.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/Pd5Tx2nPg7dFY-jys9XwKne6OQtKX.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PdHoVKHCES7XtBpTVk0eihbo0kqmR.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PeXgyF2iElVtNWSX9xZhroKK8nJJ4.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PfGXdJkORwLQ-aX-d9bla7obqtnkt.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PhaEAJ72mzGm65KpjGcnVVlFax_l7.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/Phw2RDlr8RJrjY8nb2PfCE6Bf--N0.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PiOIHShEKCjdganj-Sd0MkJaLglGr.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PjGykEyzLOFynTPTNDcycF0GYg1PE.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/Pkole11VWAOiu91qHeq6lOzIM2Y1Y.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/Pl7aTuAjyxpsJM7vLAOVHYwJm-QE6.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PlIiyctCzbm5lbDOxpwEi3GbORHRD.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PmILc9BsSYjJ9OKH4MkPr0D4LGYGC.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PmenrFglDQWoTWLNvVVobyI3dmkIe.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PmmsPJ6ouZjFnoIdGfis_3AHs9clP.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PoWlbXJuGJ4-22DclM15L_g44LN3P.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/Pp4wUDDucIEdS9euDT89Y6xQA_JPq.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PpikjM2BVj1atNlsbkcJzK9TkUIox.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PqmzGiDuYJ-Q8j-KfLDlQBvWb2Gjt.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/Pr6E85ezTMa4WX-GTFoms6w0Rb0hT.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PrTcNbJ50u8bqAFWGjPJKqnuuEvY7.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PsmYUa8-6qr40jG7XJhUIynL1Ue8b.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/Pst86UVhV07OfKDhwlp0PNxiMtXki.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/Pu9uI6ldU3ZVgwfmy-Um0D7IBxTCK.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PudM2fYFckG7O5R4BJqg04tK_l1bd.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PvXy3VrpadhZLQAwphJE6GVB_0OUp.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/Pws96oc5f7jIltD9Vvqc3svzL4mcW.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PxJnNtspUIcqGhneVuSJKposdVxH_.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PxrF4NRKjX9jsmVIocs7uQuLwD_cS.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PyizrsR40QyxopYKKk2jUtl7nElXJ.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PyukHM_doowQLr1Ipwa8feMxPVmI2.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/PzkPWSKWCQ14F1io7eGkOhK7h0O_Q.json', ",
                    "'/parsed/prod-022/FhiAimsParser2.0.0-2-gf9335c4/RWApItBGtGUDsfMVlHKqrjUQ4rShT/Pzl8jOEFAC45VXxnxMJ7_nf2xS6v2.json']",
                    "",
540
541
542
543
544
545
546
547
                    ""
                ],
                "hidden": true
            },
            "output": {
                "state": {},
                "selectedType": "Hidden",
                "pluginName": "IPython",
548
549
                "shellId": "6EF6C49F5D2D40F383601486E08EC433",
                "elapsedTime": 425,
550
551
552
                "height": 986
            },
            "evaluatorReader": true,
553
            "lineCount": 87,
554
555
556
557
558
559
560
561
            "tags": "calc_cell"
        },
        {
            "id": "codeO2f3dY",
            "type": "code",
            "evaluator": "IPython",
            "input": {
                "body": [
ankit kariryaa's avatar
ankit kariryaa committed
562
                    "# get the json_list",
563
564
                    "#json_list = get_json_list(method='folder', drop_duplicates=False, ",
                    "#    data_folder=data_folder, tmp_folder=tmp_folder)",
ankit kariryaa's avatar
ankit kariryaa committed
565
                    "",
566
567
568
                    "operations_on_structure = [(create_supercell, {'replicas': [3, 3, 3]})]",
                    "op_list = np.zeros(len(json_list))",
                    "",
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
                    "kwargs = {'path_to_collection': path_to_collection,",
                    "          'feature_order_by': 'atomic_mulliken_electronegativity',",
                    "          'energy_unit': energy_unit,",
                    "          'length_unit': length_unit}",
                    "",
                    "dict_delta_e = {'SeZn': 4.2159179660687287e-20, 'InSb': 1.2506570609555687e-20, 'AgCl': -6.8568799955090609e-21, 'SZn': 4.4190167090138643e-20, 'BN': 2.7430550221687302e-19, 'GaSb': 2.4773702178144287e-20, 'BrRb': -2.6246943074069208e-20, 'BaTe': -6.0143598233041078e-20, 'BeSe': 7.9298202208796193e-20, 'MgS': -1.3890792272791661e-20, 'AsB': 1.4018696180162358e-19, 'AlAs': 3.416831556361176e-20, 'BP': 1.632978757533666e-19, 'TeZn': 3.9253535511316122e-20, 'MgSe': -8.8603255975880209e-21, 'ClLi': -6.149391549293258e-21, 'FK': -2.3456843288794608e-20, 'BrLi': -5.2465217764284492e-21, 'BSb': 9.3062289002001379e-20, 'ClRb': -2.5715504707788539e-20, 'GeSn': 1.3083912918128912e-20, 'CsI': -2.6017342042091155e-20, 'CaTe': -5.6149286826500206e-20, 'ClK': -2.6349506219210773e-20, 'Sn2': 2.7179163244033424e-21, 'BrCs': -2.4972695386489382e-20, 'CsF': -1.734569615637085e-20, 'BrCu': 2.442400384019518e-20, 'CaSe': -5.7806170659176063e-20, 'AgF': -2.4634695420313482e-20, 'MgTe': -7.3560522736479063e-22, 'FLi': -9.5310792412059186e-21, 'CuF': -2.7272687327072279e-21, 'FNa': -2.3357835066436331e-20, 'C2': 4.2114873809101575e-19, 'BaO': -1.4900011177054134e-20, 'AgBr': -4.8118839046830307e-21, 'MgO': -3.721451404088126e-20, 'FRb': -2.1724838814450727e-20, 'AlN': 1.1687730189874494e-20, 'Si2': 4.4727296163305501e-20, 'SiSn': 2.1646816357014748e-20, 'OSr': -3.5297012817210187e-20, 'ClNa': -2.1307665354820141e-20, 'AsIn': 2.14767895373523e-20, 'OZn': 1.633710321777262e-20, 'CGe': 1.3000748379902827e-19, 'CdO': -1.348413629348854e-20, 'InP': 2.8709930119109753e-20, 'SSr': -5.9029656118592692e-20, 'InN': 2.4628706405675984e-20, 'BaSe': -5.5025977545738119e-20, 'BrK': -2.6624325013472597e-20, 'BeTe': 7.5075740576200973e-20, 'CdS': 1.1643465692630618e-20, 'CdTe': 1.8351256432814928e-20, 'GeSi': 4.217091895225337e-20, 'GaP': 5.5876198809236085e-20, 'CdSe': 1.3389702567051265e-20, 'INa': -1.8399111846593045e-20, 'AlP': 3.5080994271602511e-20, 'BeO': 1.1084460139894976e-19, 'AsGa': 4.3944144343852047e-20, 'Ge2': 3.218012279776111e-20, 'SeSr': -6.0003270319365202e-20, 'CSi': 1.071894196156348e-19, 'BaS': -5.1231589897332471e-20, 'AgI': 5.9161045280535275e-21, 'GaN': 6.9445584247860156e-20, 'CaS': -5.9141658617526103e-20, 'AlSb': 2.5133142314028706e-20, 'IK': -2.6762621853286689e-20, 'ILi': -3.4704646494924847e-21, 'ClCs': -2.4088110334584613e-20, 'CaO': -4.2492775596486839e-20, 'CuI': 3.2792483878850995e-20, 'CSn': 7.2664795347721018e-20, 'BeS': 8.1122637897805144e-20, 'IRb': -2.6788624696652254e-20, 'BrNa': -2.0256115610545176e-20, 'SrTe': -6.0769715445352658e-20, 'ClCu': 2.5035406212316063e-20}",
                    "",
                    "derived_features = []",
                    "selected_feature_list = beaker.selected_feature_list",
                    "",
                    "if 'r_sigma' in selected_feature_list:",
                    "    derived_features.append('r_sigma')",
                    "    selected_feature_list.remove('r_sigma')",
                    "    selected_feature_list.append('atomic_rs_max')",
                    "    selected_feature_list.append('atomic_rp_max')",
                    "    ",
                    "if 'r_pi' in selected_feature_list:",
                    "    derived_features.append('r_pi')",
                    "    selected_feature_list.remove('r_pi')",
                    "    selected_feature_list.append('atomic_rs_max')",
                    "    selected_feature_list.append('atomic_rp_max')",
                    "   ",
                    "",
                    "descriptor = calc_descriptor(",
                    "    desc_type='atomic_features',",
                    "    selected_feature_list=selected_feature_list,",
                    "    dict_delta_e=dict_delta_e,",
                    "    op_list=op_list,",
                    "    operations_on_structure=operations_on_structure,",
                    "    json_list=json_list, tmp_folder=tmp_folder,",
                    "    **kwargs)",
                    ""
ankit kariryaa's avatar
ankit kariryaa committed
601
602
603
604
605
                ],
                "hidden": true
            },
            "output": {
                "state": {},
606
                "selectedType": "Results",
ankit kariryaa's avatar
ankit kariryaa committed
607
                "pluginName": "IPython",
608
609
                "shellId": "6EF6C49F5D2D40F383601486E08EC433",
                "elapsedTime": 17191,
610
                "height": 100
ankit kariryaa's avatar
ankit kariryaa committed
611
612
            },
            "evaluatorReader": true,
613
614
            "lineCount": 39,
            "tags": "calc_cell"
ankit kariryaa's avatar
ankit kariryaa committed
615
616
        },
        {
617
            "id": "codeo2yP7p",
ankit kariryaa's avatar
ankit kariryaa committed
618
619
620
621
622
623
624
            "type": "code",
            "evaluator": "IPython",
            "input": {
                "body": [
                    "calc_model(method='ext_lasso', desc_type='atomic_features',",
                    "    max_dim=int(beaker.max_dim),",
                    "    allowed_operations=beaker.allowed_operations,",
625
626
627
628
629
630
                    "    derived_features=derived_features,",
                    "    tmp_folder=tmp_folder, ",
                    "    lookup_file=lookup_file, ",
                    "    control_file=control_file,",
                    "    energy_unit=energy_unit, length_unit=length_unit)",
                    ""
ankit kariryaa's avatar
ankit kariryaa committed
631
632
633
634
635
636
637
                ],
                "hidden": true
            },
            "output": {
                "state": {},
                "selectedType": "Results",
                "pluginName": "IPython",
638
639
                "shellId": "6EF6C49F5D2D40F383601486E08EC433",
                "elapsedTime": 12106,
640
                "height": 78
ankit kariryaa's avatar
ankit kariryaa committed
641
642
            },
            "evaluatorReader": true,
643
644
            "lineCount": 9,
            "tags": "calc_cell"
ankit kariryaa's avatar
ankit kariryaa committed
645
646
        },
        {
647
            "id": "code7NKF5Q",
ankit kariryaa's avatar
ankit kariryaa committed
648
649
650
651
652
653
654
655
656
657
658
659
660
            "type": "code",
            "evaluator": "IPython",
            "input": {
                "body": [
                    "parameter_list = beaker.selected_feature_list",
                    "parameter_list.append(beaker.allowed_operations)",
                    "name_html_page = hashlib.sha224(str(parameter_list)).hexdigest()[:16]",
                    "",
                    "",
                    "json_list, frame_list, x_list, y_list, target_list, target_pred_list = get_json_list(method='file', data_folder=data_folder,",
                    "    path_to_file=lookup_file, drop_duplicates=False, displace_duplicates=True, predicted_value=True)",
                    "beaker.viewer_result = name_html_page",
                    "",
661
                    "",
ankit kariryaa's avatar
ankit kariryaa committed
662
663
                    "plot_result = plot(name=name_html_page, json_list=json_list, frames='list', frame_list=frame_list, ",
                    "    file_format='NOMAD', clustering_x_list=x_list, clustering_y_list=y_list, target_list=target_list,",
664
665
                    "    target_unit=energy_unit, energy_unit=energy_unit,",
                    "    legend_title='Reference E(RS)-E(ZB)', target_name='E(RS)-E(ZB)',",
ankit kariryaa's avatar
ankit kariryaa committed
666
667
                    "    target_pred_list=target_pred_list,",
                    "    plot_title='LASSO+L0 structure map',",
668
669
                    "    clustering_point_size=12, tmp_folder=tmp_folder, control_file=control_file,",
                    "    op_list=op_list, operations_on_structure=operations_on_structure)"
ankit kariryaa's avatar
ankit kariryaa committed
670
671
672
673
674
675
                ],
                "hidden": true
            },
            "output": {
                "state": {},
                "selectedType": "Results",
676
                "height": 78,
ankit kariryaa's avatar
ankit kariryaa committed
677
                "pluginName": "IPython",
678
679
                "shellId": "6EF6C49F5D2D40F383601486E08EC433",
                "elapsedTime": 10695
ankit kariryaa's avatar
ankit kariryaa committed
680
681
            },
            "evaluatorReader": true,
682
683
            "lineCount": 18,
            "tags": "calc_cell"
ankit kariryaa's avatar
ankit kariryaa committed
684
685
        },
        {
686
            "id": "codeoorGVf",
ankit kariryaa's avatar
ankit kariryaa committed
687
688
689
690
691
692
693
694
695
696
            "type": "code",
            "evaluator": "JavaScript",
            "input": {
                "body": [
                    "var result_link = '/user/tmp/' + beaker.viewer_result + '.html';",
                    "beaker.view_result(result_link);"
                ],
                "hidden": true
            },
            "output": {
697
                "state": {},
ankit kariryaa's avatar
ankit kariryaa committed
698
                "selectedType": "BeakerDisplay",
699
                "height": 78,
ankit kariryaa's avatar
ankit kariryaa committed
700
                "pluginName": "JavaScript",
701
                "elapsedTime": 85
ankit kariryaa's avatar
ankit kariryaa committed
702
703
704
            },
            "evaluatorReader": true,
            "lineCount": 2,
705
            "tags": "calc_cell"
ankit kariryaa's avatar
ankit kariryaa committed
706
707
708
709
        }
    ],
    "namespace": {
        "selected_feature_list": [
710
711
            "atomic_ionization_potential",
            "atomic_electron_affinity",
712
713
            "atomic_homo",
            "atomic_lumo",
714
715
716
            "atomic_rs_max",
            "atomic_rp_max",
            "atomic_rd_max"
ankit kariryaa's avatar
ankit kariryaa committed
717
718
        ],
        "allowed_operations": [
719
            "+",
ankit kariryaa's avatar
ankit kariryaa committed
720
721
722
723
724
725
            "|-|",
            "/",
            "^2",
            "exp"
        ],
        "max_dim": "2",
726
727
728
        "ncomb": "1",
        "n_sis": "50",
        "n_comb": "1",
729
        "viewer_result": "d934cec27120a732",
730
        "units": "eV_angstrom"
731
732
    },
    "locked": true
ankit kariryaa's avatar
ankit kariryaa committed
733
}