{"id":8749,"date":"2025-07-31T10:59:17","date_gmt":"2025-07-31T08:59:17","guid":{"rendered":"https:\/\/spgoo.org\/?page_id=8749"},"modified":"2025-08-06T16:56:03","modified_gmt":"2025-08-06T14:56:03","slug":"similarite-cavite-v3","status":"publish","type":"page","link":"https:\/\/spgoo.org\/?page_id=8749","title":{"rendered":"Similarite cavit\u00e9 v3"},"content":{"rendered":"<script type='text\/javascript'>\nvar id = \"8793\";<\/script>\n<script type='text\/javascript' src='https:\/\/spgoo.org\/wp-content\/uploads\/winp-css-js\/8793.js?ver=1753966799'><\/script>\n\n\n<script type='text\/javascript'>\nvar id = \"9597\";<\/script>\n<script type='text\/javascript' src='https:\/\/spgoo.org\/wp-content\/uploads\/winp-css-js\/9597.js?ver=1754556803'><\/script>\n\n\n\n<link rel='stylesheet' id='4485-css'  href='https:\/\/spgoo.org\/wp-content\/uploads\/winp-css-js\/4485.css?ver=1747039442' type='text\/css' media='all' \/>\n\n\n<!--<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/katex\/dist\/katex.min.js\"><\/script>\r\n<link href=\"https:\/\/cdn.jsdelivr.net\/npm\/katex\/dist\/katex.min.css\" rel=\"stylesheet\">-->\r\n  <script src=\"https:\/\/cdn.jsdelivr.net\/npm\/jsxgraph@1.11.1\/distrib\/jsxgraphcore.js\"><\/script>\r\n<!-- <script src=\"https:\/\/cdn.jsdelivr.net\/npm\/jsxgraph\/distrib\/jsxgraphcore.min.js\"><\/script>    -->\r\n <script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/numeric\/1.2.6\/numeric.min.js\"><\/script>\r\n\r\n\r\n<script>\r\nwindow.MathJax = {\r\n  tex: {\r\n    inlineMath: [ ['$','$'], [\"\\\\(\",\"\\\\)\"] ],\r\n    displayMath: [ ['$$','$$'], [\"\\\\[\",\"\\\\]\"] ],\r\n    packages: ['base', 'ams']\r\n  },\r\n  options: {\r\n    ignoreHtmlClass: 'tex2jax_ignore',\r\n    processHtmlClass: 'tex2jax_process'\r\n  }\r\n};\r\n<\/script> \r\n\r\n<style>\r\n\t.entete {\r\n\t\tcolor:white;\r\n\t\tbackground:#101010;\r\n\t\tcursor:pointer;\r\n\t\tmargin:10px 0px 0px 10px;\r\n\t\tpadding:15px;\r\n\t}\r\n<\/style>\r\n\r\n<script type=\"text\/javascript\" id=\"MathJax-script\"   src=\"https:\/\/cdn.jsdelivr.net\/npm\/mathjax@3\/es5\/tex-mml-chtml.js\"> <\/script>\r\n<h4 class=\"has-text-align-center\">\\(\\textrm{Recherche de correspondances entre 2 nuages bipartites v3}\\)<\/h4>\r\n<h5 class=\"has-text-align-center\">\\(\\textrm{En cours de d\u00e9veloppement}\\)<\/h5>\r\n<div class=\"row\">\r\n\t<div style=\"display:flex;\">\r\n\t\t<div id=\"board2statistiques\" style=\"margin:0px 0px 0px 2px;height:620px;display:none;\">\r\n\t\t\t<div style=\"display:flex;justify-content:space-around;background:#101010;align-vertical:center;\">\r\n\t\t\t\t<p class=\"entete\" onclick=\"affiche_donnees('board2','Matrice');\" >$\\textrm{Matrice des distantes}$<\/p>\r\n\t\t\t\t<p class=\"entete\"  onclick=\"affiche_donnees('board2','Data');\">$Donn\u00e9es$ <\/p>\r\n\t\t\t<\/div>\t\t\t\r\n\t\t\t<div id=\"board2Matrice\" style=\"width:550px; height:530px;background:#C5ADC5;overflow:auto\">\r\n\t\t\t<\/div>\r\n\t\t\t<div id=\"board2Data\" style=\"width:550px; height:530px;background:#C5ADC5;overflow:auto;display:none\">\r\n\t\t\t\t<h2>Donn\u00e9es<\/h2>\r\n\t\t\t<\/div>\r\n\t\t<\/div>\r\n\t\t<div  id=\"board1\" style=\"height:620px;\">\r\n\t\t\t<div id=\"box1\" class=\"jxgbox\" style=\"margin:0px 0px 0px 2px;width:550px; height:600px;\"><\/div>\r\n\t\t<\/div>\r\n\t\t<div style=\"position:absolute;left:50px;top:100px;\">\r\n\t\t\t<div id=\"statis1\" title=\"Matrice adjacente\" class=\"jxgbox\" style=\"background:grey;width:50px;height:25px;\" onclick=\"ouvre_statistiques('board1');\")>\r\n\t\t\t\t<p style=\"cursor:pointer;margin:20px 0px 0px 20px\" >$S$<\/p>\r\n\t\t\t<\/div>\t\t\r\n\t\t<\/div>\r\n\t\t<div id=\"board1statistiques\" style=\"margin:0px 0px 0px 10px;height:620px;display:none;\">\r\n\t\t\t<div style=\"display:flex;justify-content:space-around;;background:#101010\">\r\n\t\t\t\t<p class=\"entete\" onclick=\"affiche_donnees('board1','Matrice');\">$\\textrm{Matrice des distantes}$ <\/p>\r\n\t\t\t\t<p class=\"entete\" onclick=\"affiche_donnees('board1','Data');\">$Donn\u00e9es$ <\/p>\r\n\t\t\t<\/div>\r\n\t\t\t<div  id=\"board1Matrice\"  style=\"width:550px; height:530px;background:#C5ADC5;overflow:auto\">\r\n\t\t\t<\/div>\r\n\t\t\t<div id=\"board1Data\" style=\"width:550px; height:530px;background:#C5ADC5;overflow:auto;display:none\">\r\n\t\t\t\t<h2>Donn\u00e9es<\/h2>\r\n\t\t\t<\/div>\r\n\t\t<\/div>\t\t\t\r\n\t\t<div id=\"board2\"  style=\"height:620px;\">\r\n\t\t\t<div id=\"box2\" class=\"jxgbox\" style=\"margin:0px 0px 0px 10px;width:550px; height:600px;\"><\/div>\r\n\t\t<\/div>\r\n\t\t<div style=\"position:absolute;right:50px;top:100px;\">\r\n\t\t\t<div id=\"statis2\" class=\"jxgbox\" title=\"Matrice adjacente\" style=\"background:grey;width:50px; height:25px;\" onclick=\"ouvre_statistiques('board2');\">\r\n\t\t\t\t<p style=\"cursor:pointer;margin:20px 0px 0px 20px\" >$S$<\/p> \r\n\t\t\t<\/div>\t\t\r\n\t\t<\/div>\r\n\t<\/div>\r\n<\/div>\r\n<div class=\"row\">\r\n\t<div style=\"display:flex;\">\r\n\t\t<div  style=\"height:200px;\">\r\n\t\t\t<div id=\"box1_command\" class=\"jxgbox\" style=\"margin:0px 0px 0px 2px;width:550px; height:200px;\"><\/div>\r\n\t\t<\/div>\r\n\t\t<div  style=\"height:200px;\">\r\n\t\t\t<div id=\"box2_command\" class=\"jxgbox\" style=\"margin:0px 0px 0px 10px;width:550px; height:200px;\"><\/div>\r\n\t\t<\/div>\r\n\t<\/div>\r\n<\/div>\r\n\r\n<script>\r\n\tlet affiche_stat1=false;\r\n\tlet affiche_stat2=false;\r\n\tconst ouvre_statistiques=function(Nboard) {\r\n\t\tif (Nboard==\"board1\" && !affiche_stat1) {\r\n\t\t\tdocument.getElementById(\"board1statistiques\").style.display=\"block\";\t\r\n\t\t\tdocument.getElementById(\"board2\").style.display=\"none\";\t\r\n\t\t\t\/\/document.getElementById(\"board2statistiques\").style.display=\"none\";\t\r\n\t\t\t\/\/document.getElementById(\"board1\").style.display=\"inline\";\t\r\n\t\t\taffiche_stat1=true;\r\n\t\t} else if (Nboard==\"board1\" && affiche_stat1) {\r\n\t\t\tdocument.getElementById(\"board1statistiques\").style.display=\"none\";\t\r\n\t\t\t\/\/document.getElementById(\"board2\").style.display=\"inline\";\t\r\n\t\t\t\/\/document.getElementById(\"board2statistiques\").style.display=\"none\";\t\r\n\t\t\tdocument.getElementById(\"board2\").style.display=\"block\";\t\r\n\t\t\taffiche_stat1=false;\r\n\t\t} else if (Nboard==\"board2\" && !affiche_stat2) {\r\n\t\t\tdocument.getElementById(\"board2statistiques\").style.display=\"block\";\t\r\n\t\t\tdocument.getElementById(\"board1\").style.display=\"none\";\t\r\n\t\t\t\/\/document.getElementById(\"board1statistiques\").style.display=\"none\";\t\r\n\t\t\t\/\/document.getElementById(\"board2\").style.display=\"inline\";\t\t\t\t\r\n\t\t\taffiche_stat2=true;\r\n\t\t} else {\r\n\t\t\tdocument.getElementById(\"board2statistiques\").style.display=\"none\";\t\r\n\t\t\tdocument.getElementById(\"board1\").style.display=\"block\";\t\r\n\t\t\t\/\/document.getElementById(\"board1statistiques\").style.display=\"none\";\t\r\n\t\t\t\/\/document.getElementById(\"board2\").style.display=\"inline\";\t\t\t\t\r\n\t\t\taffiche_stat2=false;\r\n\t\t}\r\n\t}\r\n\t\r\n\tconst affiche_donnees=function (Nboard, Data) {\r\n\t\tswitch (Nboard) {\r\n\t\t\t\tcase 'board1':\r\n\t\t\t\t\tdocument.getElementById(\"board1Matrice\").style.display='none';\r\n\t\t\t\t\tdocument.getElementById(\"board1Data\").style.display='none';\r\n\t\t\t\t\tdocument.getElementById(Nboard+Data).style=\"display:block;width:550px; height:530px;background:#C5ADC5;overflow:auto;\"\r\n\t\t\t\t\t\r\n\t\t\t\tbreak;\r\n\t\t\t\tcase 'board2':\r\n\t\t\t\t\tdocument.getElementById(\"board2Matrice\").style.display='none';\r\n\t\t\t\t\tdocument.getElementById(\"board2Data\").style.display='none';\r\n\t\t\t\t\tdocument.getElementById(Nboard+Data).style=\"display:block;text-align:center;width:550px; height:530px;background:#C5ADC5;overflow:auto;\"\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t\t\r\n\t}\r\n\tdocument.querySelectorAll(\".entete\").forEach( item=> {\r\n\t\titem.addEventListener(\"mouseover\",function() {\r\n\t\t\tthis.style.background=\"#00c2a9\";\r\n\t\t});\r\n\t\titem.addEventListener(\"mouseleave\",function() {\r\n\t\t\tthis.style.background=\"#101010\";\r\n\t\t});\r\n\t\titem.addEventListener(\"click\",function() {});\r\n\t\t\t\t\t\t\t  \r\n\t})\r\n\t\/\/#00c2a9;\r\n\t\r\n<\/script>\r\n\r\n\r\n\r\n\n\n<script type='text\/javascript'>\nvar id = \"8745\";<\/script>\n<script type='text\/javascript' src='https:\/\/spgoo.org\/wp-content\/uploads\/winp-css-js\/8745.js?ver=1754552513'><\/script>\n\n\n\n<details class=\"wp-block-details is-layout-flow wp-block-details-is-layout-flow\"><summary>D\u00e9tail de la mise en oeuvre<\/summary>\n<p>R\u00e9f : <\/p>\n\n\n\n<p>SVD : <a href=\"https:\/\/github.com\/danilosalvati\/svd-js\">https:\/\/github.com\/danilosalvati\/svd-js<\/a> <\/p>\n\n\n\n<p>Algo de Kabsch (python) : <a href=\"https:\/\/hunterheidenreich.com\/posts\/kabsch_algorithm\/\">https:\/\/hunterheidenreich.com\/posts\/kabsch_algorithm\/<\/a> <\/p>\n\n\n\n<p>Algo en javascript : <a href=\"https:\/\/towardsdatascience.com\/the-definitive-procedure-for-aligning-two-sets-of-3d-points-with-the-kabsch-algorithm-a7ec2126c87e\/\">https:\/\/towardsdatascience.com\/the-definitive-procedure-for-aligning-two-sets-of-3d-points-with-the-kabsch-algorithm-a7ec2126c87e\/<\/a><\/p>\n\n\n\n<p>Objectif de cette d\u00e9monstration : mettre en oeuvre l\u2019algorithme de Kabsch pour le r\u00e9alignement d&#8217;atomes en 3D. Cette interface se pr\u00e9sente en deux parties : une premi\u00e8re partie permet \u00e0 l&#8217;utilisateur de fixer son environnement en nombre d&#8217;atomes, en nombre de couches, etc. Une fois ces param\u00e8tres d\u00e9finis, il peut cliquer sur G\u00e9n\u00e9rer pour fabriquer son contexte dans un espace donn\u00e9. A partir de cette visualisation, iol peut s\u00e9lectionner \u00e0 partir de la liste d\u00e9roulante un atome et visualiser les couches autour de l&#8217;atome s\u00e9lectionn\u00e9 et de d\u00e9nombrer le nombre d&#8217;atomes pas couche. <\/p>\n<\/details>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-8749","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/spgoo.org\/index.php?rest_route=\/wp\/v2\/pages\/8749","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/spgoo.org\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/spgoo.org\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/spgoo.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/spgoo.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=8749"}],"version-history":[{"count":11,"href":"https:\/\/spgoo.org\/index.php?rest_route=\/wp\/v2\/pages\/8749\/revisions"}],"predecessor-version":[{"id":9599,"href":"https:\/\/spgoo.org\/index.php?rest_route=\/wp\/v2\/pages\/8749\/revisions\/9599"}],"wp:attachment":[{"href":"https:\/\/spgoo.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=8749"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}