"object": "<script>\nvar beaker = bkHelper.getBeakerObject().beakerObj;\n</script>\n<style type=\"text/css\">\n/*!\n * Nomad Beaker Notebook Template\n *\n * @copyright Copyright 2017 Fritz Haber Institute of the Max Planck Society,\n * Benjamin Regler - Apache 2.0 License\n * @license http://www.apache.org/licenses/LICENSE-2.0\n * @author Benjamin Regler\n * @version 1.0.0\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\np{margin-bottom:1.3em}h1,h2,h3,h4{margin:1.414em 0 .5em;font-weight:inherit;line-height:1.2}h1{margin-top:0;font-size:3.998em}h2{font-size:2.827em}h3{font-size:1.999em}h4{font-size:1.414em}.font_small,small{font-size:.707em}.notebook-container{font-size:16px}.notebook-container .bkr{font-size:100%;font-weight:400;line-height:1.45;color:#333}.nomad--header h2{color:#20335d;font-weight:700;margin:0 0 .2em}.nomad--header h3{color:#20335d;font-weight:700;margin-top:0;text-indent:-1em;padding-left:1em}.nomad--header h3:before{content:\"\\2014\";padding-right:.25em}.nomad--header .nomad--description{margin:-1em 0 0 2em}.atomic-data--block,.nomad--last-updated{display:inline-block;margin-top:1em}.nomad--last-updated{color:grey;float:right;position:relative;z-index:1}.nomad--last-updated::before{bottom:-75%;content:attr(data-version);font-size:4em;font-weight:700;opacity:.2;position:absolute;right:0}.atomic-data label{display:block;font-size:medium;font-weight:700}.atomic-data--select,.chosen-container{width:100%!important}.atomic-data--select:disabled{color:#d3d3d3}.atomic-data--reset-buton{display:inline-block;margin-top:1.6em;width:100%}.modal-dialog{max-width:1000px;width:80%}.modal-header h1{font-size:2em;line-height:1.2}.modal-dialog h2{font-size:1.414em}.modal-dialog h2:first-child{margin-top:0}.modal-dialog h3{font-size:1.2em}.modal-dialog dt{font-size:larger;margin-top:1.414em}.modal-dialog img{width:100%}.modal-dialog .authors{text-transform:uppercase}\n</style>"
"object": "<script>\nvar beaker = bkHelper.getBeakerObject().beakerObj;\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 Introduction and motivation\n</button>\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\">Introduction and motivation</h4>\n </div>\n <div class=\"modal-body lasso_instructions\">\n <p> In this tutorial, we present a tool that produces two-dimensional structure maps for octet binary compounds, by starting from a high-dimensional set of <i>features</i> (coordinates) that identify each data point (material), based on free-atom data of the atomic species constituting the binary material. </p>\n \n <p> The low-dimensional embedding methods (here, two-dimensional for the sake of visualization) are <i>unsupervised</i> machine-learning algorithms; so, in our example, the algorithm processes only the spatial arrangement of the points in the high-dimensional representation that is determined by the user. </p>\n \n <p> In the linear method, <b>principal component analysis (<a href=\"https://en.wikipedia.org/wiki/Feature_scaling\" target=\"_blank\">PCA</a>)</b>, the direction (linear combination of the input coordinates) with the maximum variance is identified as the first principal component (PC). The direction perpendicular to the first PC with the largest variance is the second PC.\n The process can be iterated up to as many dimensions as the initial dimensionality of the data, but here we stop at the second dimension and give the amount of total variance recovered by the first two principal components. </p>\n <p> In the two popular non-linear method we chose, <b>multidimensional scaling (<a href=\"https://en.wikipedia.org/wiki/Multidimensional_scaling\" target=\"_blank\">MDS</a>) </b> tries to preserve the distances from the given high-dimensional to the two-dimensional representation, \n and the <b>t-Distributed Stochastic Neighbor Embedding (<a href=\"https://en.wikipedia.org/wiki/T-distributed_stochastic_neighbor_embedding\" target=\"_blank\">t-SNE</a>) </b> tries to preserve the local shape of groups of neighboring points. Both methods use a notion of distance that in our example is the Euclidean norm, even if in principle it could be any proper norm. </p>\n\n <p> In the results, we show the data points colored according to the difference in energy between the Rocksalt (RS) and Zincblende (ZB) crystal structures (both relaxed to their local minima) of the material they represent. The labeling and consequent coloring are independent of the embedding method used, therefore the labeling is an <i>a posteriori</i>\n check that the high-dimensional representation could contain information about the labeling itself. In practice, if the coloring identifies clearly distinct areas, then the two dimensional representation is a map for the prediction of the labels, so that a new data point of unknown labeling, that lands in the 2D map in a area of points with known labeling, is expected to belong to that same labeling. </p>\n \n<p>The merit of the embedding methods is to provide relatively inexpensive tools to visually test whether a given set of features contains information about an investigated property (label). For this reason, they are widely used as preliminary tools for discovering structures in the data. </p>\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. </p>\n\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>"
"object": "<script>\nvar beaker = bkHelper.getBeakerObject().beakerObj;\n</script>\n<!-- Button trigger modal -->\n<button type=\"button\" class=\"btn btn-default\" data-toggle=\"modal\" data-target=\"#lasso-motivation-modal\">\n Introduction and motivation\n</button>\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\">Introduction and motivation</h4>\n </div>\n <div class=\"modal-body lasso_instructions\">\n <p> In this tutorial, we present a tool that produces two-dimensional structure maps for octet binary compounds, by starting from a high-dimensional set of <i>features</i> (coordinates) that identify each data point (material), based on free-atom data of the atomic species constituting the binary material. </p>\n \n <p> The low-dimensional embedding methods (here, two-dimensional for the sake of visualization) are <i>unsupervised</i> machine-learning algorithms; so, in our example, the algorithm processes only the spatial arrangement of the points in the high-dimensional representation that is determined by the user. </p>\n \n <p> In the linear method, <b>principal component analysis (<a href=\"https://en.wikipedia.org/wiki/Feature_scaling\" target=\"_blank\">PCA</a>)</b>, the direction (linear combination of the input coordinates) with the maximum variance is identified as the first principal component (PC). The direction perpendicular to the first PC with the largest variance is the second PC.\n The process can be iterated up to as many dimensions as the initial dimensionality of the data, but here we stop at the second dimension and give the amount of total variance recovered by the first two principal components. </p>\n <p> In the two popular non-linear method we chose, <b>multidimensional scaling (<a href=\"https://en.wikipedia.org/wiki/Multidimensional_scaling\" target=\"_blank\">MDS</a>) </b> tries to preserve the distances from the given high-dimensional to the two-dimensional representation, \n and the <b>t-Distributed Stochastic Neighbor Embedding (<a href=\"https://en.wikipedia.org/wiki/T-distributed_stochastic_neighbor_embedding\" target=\"_blank\">t-SNE</a>) </b> tries to preserve the local shape of groups of neighboring points. Both methods use a notion of distance that in our example is the Euclidean norm, even if in principle it could be any proper norm. </p>\n\n <p> In the results, we show the data points colored according to the difference in energy between the Rocksalt (RS) and Zincblende (ZB) crystal structures (both relaxed to their local minima) of the material they represent. The labeling and consequent coloring are independent of the embedding method used, therefore the labeling is an <i>a posteriori</i>\n check that the high-dimensional representation could contain information about the labeling itself. In practice, if the coloring identifies clearly distinct areas, then the two dimensional representation is a map for the prediction of the labels, so that a new data point of unknown labeling, that lands in the 2D map in a area of points with known labeling, is expected to belong to that same labeling. </p>\n \n<p>The merit of the embedding methods is to provide relatively inexpensive tools to visually test whether a given set of features contains information about an investigated property (label). For this reason, they are widely used as preliminary tools for discovering structures in the data. </p>\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. </p>\n\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>"
},
"selectedType": "BeakerDisplay",
"elapsedTime": 0,
"height": 72
},
"evaluatorReader": true,
"lineCount": 52
"lineCount": 47
},
{
"id": "markdowntnAHej",
...
...
@@ -373,14 +441,14 @@
"output": {
"selectedType": "BeakerDisplay",
"outputArrived": true,
"elapsedTime": 1,
"elapsedTime": 0,
"state": {},
"result": {
"type": "BeakerDisplay",
"innertype": "Html",
"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 getEmbedMethod();\n getStandardize();\n getUnits();\n beaker.evaluate(\"lasso_cell\"); // evaluate cells with tag \"lasso_cell\"\n // view_result()\n};\nvar reset_lasso = function(){\n beaker.evaluate(\"lasso_gui\");\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};\n \nvar getUnits = function() {\n beaker.units = $(\"#units_select\").val();\n};\n \nvar getEmbedMethod = function() {\n beaker.embed_method = \"pca\";\n $('#embed_method_selector input:radio').each(function () {\n if(this.checked )\n beaker.embed_method = this.value;\n });\n};\n \nvar getStandardize = function() {\n beaker.standardize = \"yes\";\n $('#standardize input:radio').each(function () {\n if(this.checked )\n beaker.standardize = this.value;\n });\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 label {\n font-size: 18px;\n }\n .lasso_control{\n font-size: 18px;\n } \n.lasso_form_group input {\n width: 15px;\n height: 15px;\n padding: 0;\n margin:0;\n padding-right:5px; \n vertical-align: bottom;\n top: -1px;\n} \n .lasso_selection_description{\n padding: 10px 15px;\n }\n</style>\n<div class=\"lasso_control\">\n <div class=\"row\">\n <p class=\"lasso_selection_description\"><b>Primary features </b>\n (hover the mouse pointer 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\" 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-2\"> <input value=\"atomic_lumo\" 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 \n<!--- <label class =\"col-xs-4 col-md-4 col-lg-3\"> <input type=\"checkbox\" value=\"Es/sqrt(Zval)\" > \n <span title=\"Energy of the valence s orbital(s) divided by the square root of the number of valence electrons. [Phys. Rev. B 85, 104104 (2012)]\"> <i>E</i><sub>s</sub>/sqrt(<i>Z</i> <sub>val</sub>) </span> </label>\n <label class =\"col-xs-4 col-md-4 col-lg-3\"> <input type=\"checkbox\" value=\"Ep/sqrt(Zval)\" > \n <span title=\"Energy of the valence p orbital(s) divided by the square root of the number of valence electrons. [Phys. Rev. B 85, 104104 (2012)]\"> <i>E</i><sub>p</sub>/sqrt(<i>Z</i> <sub>val</sub>) </span> </label>\n--> \n </div>\n </form>\n </div> <!-- End of row-->\n \n <br>\n <div class=\"row\"> <!-- Start of row-->\n <p class=\"lasso_selection_description\"><b>Units of measurement: </b> \n <select id=\"units_select\">\n <option value=\"eV_angstrom\"> [energy]=eV; [length]=angstrom</option>\n <option value=\"J_m\"> [energy]=J; [length]=m</option>\n <option value=\"kcal/mol_angstrom\"> [energy]=kcal/mol; [length]=angstrom</option>\n </select> </p>\n </div><!-- End of row-->\n \n <br>\n <div class=\"row\"> <!-- Start of second row-->\n <div class=\"lasso_form_group\">\n <p class=\"lasso_selection_description\"><b>Embedding methods:</b> </p>\n <div id=\"embed_method_selector\">\n <label class=\"col-xs-4 col-md-4 col-lg-4\"><input name=\"inlineRadioOptions\" id=\"inlineRadio1\" value=\"pca\" checked=\"\" type=\"radio\"> Principal Compenent Analysis (PCA) [<a href=\"https://en.wikipedia.org/wiki/Principal_component_analysis\" target=\"_blank\">more info</a>]</label>\n <label class=\"col-xs-4 col-md-4 col-lg-4\"><input name=\"inlineRadioOptions\" id=\"inlineRadio2\" value=\"mds\" type=\"radio\"> Multidimensional scaling (MDS) [<a href=\"https://en.wikipedia.org/wiki/Multidimensional_scaling\" target=\"_blank\">more info</a>]</label>\n <label class=\"col-xs-4 col-md-4 col-lg-4\"><input name=\"inlineRadioOptions\" id=\"inlineRadio3\" value=\"tsne_pca\" type=\"radio\"> t-Distributed Stochastic Neighbor Embedding (t-SNE) [<a href=\"https://en.wikipedia.org/wiki/T-distributed_stochastic_neighbor_embedding\" target=\"_blank\">more info</a>]</label>\n </div> \n </div>\n </div><!-- End of row--> \n <div class=\"row\"> <!-- Start of second row-->\n <div class=\"lasso_form_group\">\n <p class=\"lasso_selection_description\"><b>Scale data to unit-variance:</b>\n (data are centered around the mean in any case) [<a href=\"https://en.wikipedia.org/wiki/Feature_scaling\" target=\"_blank\">more info</a>]</p>\n <div id=\"standardize\">\n <label class=\"col-xs-4 col-md-4 col-lg-4\"><input name=\"inlineRadioOptionsStandardize\" id=\"inlineRadio4\" value=\"True\" checked=\"\" type=\"radio\"> yes </label>\n <label class=\"col-xs-4 col-md-4 col-lg-4\"><input name=\"inlineRadioOptionsStandardize\" id=\"inlineRadio5\" value=\"False\" type=\"radio\"> no </label>\n </div> \n </div>\n </div><!-- End of row--> \n <br>\n\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 TWO-DIMENSIONAL EMBEDDING</button>\n <button class=\"btn btn-default\" onclick=\"reset_lasso()\">RESET</button>\n <label title=\"This button becomes active when the run is finished. By clicking it, an interactive structural-similarity plot will be opened\"> <a href=\"#\" target=\"_blank\" class=\"btn btn-primary disabled\" id=\"lasso_result_button\">View interactive 2D scatter plot</a> </label>\n</div> <!-- End of lasso_control -->\n"