|
4 | 4 | "cell_type": "markdown",
|
5 | 5 | "metadata": {},
|
6 | 6 | "source": [
|
7 |
| - "# Eigenvalues and Eigenvectors\n" |
| 7 | + "# Eigenvalues and Eigenvectors\n", |
| 8 | + "\n", |
| 9 | + "$~$" |
8 | 10 | ]
|
9 | 11 | },
|
10 | 12 | {
|
|
369 | 371 | {
|
370 | 372 | "data": {
|
371 | 373 | "text/html": [
|
372 |
| - "<div style=\"height:40px\"></div><div class=\"flip-container\" id=\"NwVPXDktrHPg\" tabindex=\"0\" style=\"outline:none;\"></div><div style=\"height:40px\"></div><div class=\"next\" id=\"NwVPXDktrHPg-next\" onclick=\"window.checkFlip('NwVPXDktrHPg')\"> </div> <div style=\"height:40px\"></div>" |
| 374 | + "<div style=\"height:40px\"></div><div class=\"flip-container\" id=\"FairJEVINolE\" tabindex=\"0\" style=\"outline:none;\"></div><div style=\"height:40px\"></div><div class=\"next\" id=\"FairJEVINolE-next\" onclick=\"window.checkFlip('FairJEVINolE')\"> </div> <div style=\"height:40px\"></div>" |
373 | 375 | ],
|
374 | 376 | "text/plain": [
|
375 | 377 | "<IPython.core.display.HTML object>"
|
|
499 | 501 | " next.classList.add('hide');\n",
|
500 | 502 | "\n",
|
501 | 503 | " //container.classList.add(\"prepare\");\n",
|
502 |
| - " \n", |
| 504 | + "\n", |
503 | 505 | " container.className=\"flip-container slide\";\n",
|
| 506 | + "\n", |
504 | 507 | " backcard.parentElement.removeChild(frontcard);\n",
|
505 | 508 | " backcard.parentElement.appendChild(frontcard);\n",
|
| 509 | + "\n", |
506 | 510 | " setTimeout(slideback, 600, container, frontcard, backcard, next);\n",
|
507 |
| - " \n", |
| 511 | + "\n", |
508 | 512 | "}\n",
|
509 | 513 | "\n",
|
510 | 514 | "\n",
|
|
536 | 540 | "\n",
|
537 | 541 | " let cardOrder = JSON.parse(container.dataset.cardOrder);\n",
|
538 | 542 | "\n",
|
539 |
| - " var cards=eval('cards'+container.id);\n", |
| 543 | + " //var cards=eval('cards'+container.id);\n", |
| 544 | + " var cards=JSON.parse(container.dataset.cards);\n", |
540 | 545 | "\n",
|
541 | 546 | " var flipper=createOneCard(container, false, cards, cardOrder[cardnum], cardnum);\n",
|
542 | 547 | " container.append(flipper);\n",
|
543 | 548 | " cardnum= (cardnum+1) % parseInt(container.dataset.numCards);\n",
|
544 |
| - " if ((cardnum == 0) && (container.dataset.shuffleCards == \"True\")) {\n", |
| 549 | + " if ((cardnum == 0) && (container.dataset.shuffleCards == \"true\")) {\n", |
545 | 550 | " cardOrder = randomOrderArray(parseInt(container.dataset.numCards));\n",
|
546 | 551 | " container.dataset.cardOrder = JSON.stringify(cardOrder);\n",
|
547 |
| - " console.log(cardOrder);\n", |
| 552 | + " //console.log(cardOrder);\n", |
548 | 553 | " }\n",
|
549 | 554 | "\n",
|
550 | 555 | " container.dataset.cardnum=cardnum;\n",
|
|
599 | 604 | "\n",
|
600 | 605 | "\n",
|
601 | 606 | "function createOneCard (mydiv, frontCard, cards, cardnum, seq) {\n",
|
| 607 | + " /*\n", |
602 | 608 | " var colors=eval('frontColors'+mydiv.id);\n",
|
603 | 609 | " var backColors=eval('backColors'+mydiv.id);\n",
|
604 | 610 | " var textColors=eval('textColors'+mydiv.id);\n",
|
| 611 | + " */\n", |
| 612 | + " var colors = JSON.parse(mydiv.dataset.frontColors);\n", |
| 613 | + " var backColors = JSON.parse(mydiv.dataset.backColors);\n", |
| 614 | + " var textColors = JSON.parse(mydiv.dataset.textColors);\n", |
| 615 | + "\n", |
605 | 616 | " //console.log(backColors)\n",
|
606 | 617 | "\n",
|
607 | 618 | " var flipper = document.createElement('div');\n",
|
|
701 | 712 | "\n",
|
702 | 713 | "\n",
|
703 | 714 | "\n",
|
704 |
| - "function createCards(id, keyControl, grabFocus, shuffleCards, title, subject) {\n", |
| 715 | + "function createCards(id, cards, keyControl, grabFocus, shuffleCards, title, subject,\n", |
| 716 | + " frontColors, backColors, textColors) {\n", |
705 | 717 | " console.log(id);\n",
|
706 | 718 | "\n",
|
707 | 719 | " var mydiv=document.getElementById(id);\n",
|
708 | 720 | " /*mydiv.onclick = window.flipCard(mydiv);*/\n",
|
709 | 721 | " /*\n",
|
710 |
| - " mydiv.addEventListener('click', function(){window.flipCard(mydiv);}, false);\n", |
711 |
| - " mydiv.addEventListener('keydown', function(event){window.checkKey(mydiv,event);}, true);\n", |
| 722 | + " mydiv.addEventListener('click', function(){window.flipCard(mydiv);}, false);\n", |
| 723 | + " mydiv.addEventListener('keydown', function(event){window.checkKey(mydiv,event);}, true);\n", |
712 | 724 | " */\n",
|
713 | 725 | " mydiv.onclick = function(){window.flipCard(mydiv);};\n",
|
714 |
| - " //console.log(keyControl);\n", |
715 |
| - " if (keyControl == \"True\"){\n", |
| 726 | + " if (keyControl == true){\n", |
716 | 727 | " mydiv.onkeydown = function(event){window.checkKey(mydiv,event);};\n",
|
717 | 728 | " }\n",
|
718 | 729 | " /* mydiv.addEventListener('keydown', function(event){event.stopPropagation(); console.log(event); event.preventDefault();}, true); */\n",
|
719 | 730 | " /*mydiv.onkeypress = function(event){console.log(event); event.preventDefault();};*/\n",
|
720 | 731 | "\n",
|
721 | 732 | " //console.log(mydiv);\n",
|
722 | 733 | "\n",
|
723 |
| - " var cards=eval('cards'+id);\n", |
| 734 | + " // var cards=eval('cards'+id);\n", |
| 735 | + " // Store cards and color data in the container's dataset for later access in cleanup()\n", |
| 736 | + " mydiv.dataset.cards = JSON.stringify(cards);\n", |
| 737 | + " mydiv.dataset.frontColors = JSON.stringify(frontColors);\n", |
| 738 | + " mydiv.dataset.backColors = JSON.stringify(backColors);\n", |
| 739 | + " mydiv.dataset.textColors = JSON.stringify(textColors);\n", |
| 740 | + "\n", |
724 | 741 | " mydiv.dataset.cardnum=0;\n",
|
725 | 742 | " mydiv.dataset.numCards=cards.length;\n",
|
726 | 743 | "\n",
|
727 | 744 | " mydiv.dataset.shuffleCards = shuffleCards;\n",
|
728 | 745 | " var cardOrder;\n",
|
729 |
| - " if (shuffleCards == \"True\"){\n", |
| 746 | + " if (shuffleCards == true){\n", |
730 | 747 | " cardOrder = randomOrderArray(cards.length);\n",
|
731 | 748 | " } else {\n",
|
732 | 749 | " cardOrder = Array.from({ length: cards.length }, (_, index) => index);\n",
|
733 | 750 | " }\n",
|
734 | 751 | " mydiv.dataset.cardOrder = JSON.stringify(cardOrder);\n",
|
735 |
| - " console.log(mydiv.dataset.cardOrder);\n", |
| 752 | + " //console.log(mydiv.dataset.cardOrder);\n", |
736 | 753 | "\n",
|
737 | 754 | "\n",
|
738 | 755 | " mydiv.addEventListener('swiped-left', function(e) {\n",
|
|
844 | 861 | " next.innerHTML=\"Next >\";\n",
|
845 | 862 | " }\n",
|
846 | 863 | "\n",
|
847 |
| - " if (grabFocus == \"True\" )\n", |
| 864 | + " if (grabFocus == true )\n", |
848 | 865 | " mydiv.focus();\n",
|
849 | 866 | "\n",
|
850 | 867 | " return flipper;\n",
|
|
853 | 870 | "\n",
|
854 | 871 | "\n",
|
855 | 872 | "\n",
|
856 |
| - "\n", |
857 |
| - " function try_create() {\n", |
858 |
| - " if(document.getElementById(\"NwVPXDktrHPg\")) {\n", |
859 |
| - " createCards(\"NwVPXDktrHPg\", \"True\", \"False\", \"False\", \"\", \"\");\n", |
860 |
| - " } else {\n", |
861 |
| - " setTimeout(try_create, 200);\n", |
862 |
| - " }\n", |
863 |
| - " };\n", |
864 |
| - " \n", |
865 |
| - "var cardsNwVPXDktrHPg=[{\"front\": \"eigenvector\", \"back\": \"Given a square $n \\\\times n$ matrix $\\\\mathbf{M}$, a non-zero $n$-vector $\\\\mathbf{u}$ is an <I>eigenvector</I> of $\\\\mathbf{M}$ if there exists a constant $\\\\lambda$ such that \\\\begin{equation} \\\\mathbf{Mu} = \\\\lambda \\\\mathbf{u}. \\\\end{equation}\"}, {\"front\": \"eigenvalue\", \"back\": \"Given a square $n \\\\times n$ matrix $\\\\mathbf{M}$, a constant $\\\\lambda$ is an <I>eigenvalue</I> of $\\\\mathbf{M}$ if there exists a non-zero vector $\\\\mathbf{u}$ such that \\\\[ \\\\mathbf{Mu} = \\\\lambda \\\\mathbf{u}. \\\\]\"}, {\"front\": \"modal matrix\", \"back\": \"For a square matrix \\\\(\\\\mathbf{M}\\\\), the modal matrix is a matrix whose columns are the unit eigenvectors of \\\\(\\\\mathbf{M}\\\\).\"}];\n", |
866 |
| - "var frontColorsNwVPXDktrHPg= [\"var(--asparagus)\", \"var(--terra-cotta)\", \"var(--cyan-process)\" ];\n", |
867 |
| - "var backColorsNwVPXDktrHPg= [\"var(--dark-blue-gray)\" ];\n", |
868 |
| - "var textColorsNwVPXDktrHPg= [\"var(--snow)\" ];\n", |
869 |
| - "try_create(); " |
| 873 | + "var cardsFairJEVINolE = [{\"front\": \"eigenvector\", \"back\": \"Given a square $n \\\\times n$ matrix $\\\\mathbf{M}$, a non-zero $n$-vector $\\\\mathbf{u}$ is an <I>eigenvector</I> of $\\\\mathbf{M}$ if there exists a constant $\\\\lambda$ such that \\\\begin{equation} \\\\mathbf{Mu} = \\\\lambda \\\\mathbf{u}. \\\\end{equation}\"}, {\"front\": \"eigenvalue\", \"back\": \"Given a square $n \\\\times n$ matrix $\\\\mathbf{M}$, a constant $\\\\lambda$ is an <I>eigenvalue</I> of $\\\\mathbf{M}$ if there exists a non-zero vector $\\\\mathbf{u}$ such that \\\\[ \\\\mathbf{Mu} = \\\\lambda \\\\mathbf{u}. \\\\]\"}, {\"front\": \"modal matrix\", \"back\": \"For a square matrix \\\\(\\\\mathbf{M}\\\\), the modal matrix is a matrix whose columns are the unit eigenvectors of \\\\(\\\\mathbf{M}\\\\).\"}];\n", |
| 874 | + "var frontColorsFairJEVINolE = [\"var(--asparagus)\", \"var(--terra-cotta)\", \"var(--cyan-process)\"];\n", |
| 875 | + "var backColorsFairJEVINolE = [\"var(--dark-blue-gray)\"];\n", |
| 876 | + "var textColorsFairJEVINolE = [\"var(--snow)\"];\n", |
| 877 | + "(function() {\n", |
| 878 | + " var observer = new MutationObserver(function(mutations, obs) {\n", |
| 879 | + " var el = document.getElementById(\"FairJEVINolE\");\n", |
| 880 | + " if (el) {\n", |
| 881 | + " createCards(\"FairJEVINolE\", cardsFairJEVINolE, true, false, false, \"\", \"\", frontColorsFairJEVINolE, backColorsFairJEVINolE, textColorsFairJEVINolE);\n", |
| 882 | + " obs.disconnect();\n", |
| 883 | + " }\n", |
| 884 | + " });\n", |
| 885 | + " observer.observe(document.body, { childList: true, subtree: true });\n", |
| 886 | + " })();" |
870 | 887 | ],
|
871 | 888 | "text/plain": [
|
872 | 889 | "<IPython.core.display.Javascript object>"
|
|
1172 | 1189 | {
|
1173 | 1190 | "data": {
|
1174 | 1191 | "text/html": [
|
1175 |
| - "<div style=\"height:40px\"></div><div class=\"flip-container\" id=\"GdkuSvByJKyr\" tabindex=\"0\" style=\"outline:none;\"></div><div style=\"height:40px\"></div><div class=\"next\" id=\"GdkuSvByJKyr-next\" onclick=\"window.checkFlip('GdkuSvByJKyr')\"> </div> <div style=\"height:40px\"></div>" |
| 1192 | + "<div style=\"height:40px\"></div><div class=\"flip-container\" id=\"tIRlIqMiYAZw\" tabindex=\"0\" style=\"outline:none;\"></div><div style=\"height:40px\"></div><div class=\"next\" id=\"tIRlIqMiYAZw-next\" onclick=\"window.checkFlip('tIRlIqMiYAZw')\"> </div> <div style=\"height:40px\"></div>" |
1176 | 1193 | ],
|
1177 | 1194 | "text/plain": [
|
1178 | 1195 | "<IPython.core.display.HTML object>"
|
|
1302 | 1319 | " next.classList.add('hide');\n",
|
1303 | 1320 | "\n",
|
1304 | 1321 | " //container.classList.add(\"prepare\");\n",
|
1305 |
| - " \n", |
| 1322 | + "\n", |
1306 | 1323 | " container.className=\"flip-container slide\";\n",
|
| 1324 | + "\n", |
1307 | 1325 | " backcard.parentElement.removeChild(frontcard);\n",
|
1308 | 1326 | " backcard.parentElement.appendChild(frontcard);\n",
|
| 1327 | + "\n", |
1309 | 1328 | " setTimeout(slideback, 600, container, frontcard, backcard, next);\n",
|
1310 |
| - " \n", |
| 1329 | + "\n", |
1311 | 1330 | "}\n",
|
1312 | 1331 | "\n",
|
1313 | 1332 | "\n",
|
|
1339 | 1358 | "\n",
|
1340 | 1359 | " let cardOrder = JSON.parse(container.dataset.cardOrder);\n",
|
1341 | 1360 | "\n",
|
1342 |
| - " var cards=eval('cards'+container.id);\n", |
| 1361 | + " //var cards=eval('cards'+container.id);\n", |
| 1362 | + " var cards=JSON.parse(container.dataset.cards);\n", |
1343 | 1363 | "\n",
|
1344 | 1364 | " var flipper=createOneCard(container, false, cards, cardOrder[cardnum], cardnum);\n",
|
1345 | 1365 | " container.append(flipper);\n",
|
1346 | 1366 | " cardnum= (cardnum+1) % parseInt(container.dataset.numCards);\n",
|
1347 |
| - " if ((cardnum == 0) && (container.dataset.shuffleCards == \"True\")) {\n", |
| 1367 | + " if ((cardnum == 0) && (container.dataset.shuffleCards == \"true\")) {\n", |
1348 | 1368 | " cardOrder = randomOrderArray(parseInt(container.dataset.numCards));\n",
|
1349 | 1369 | " container.dataset.cardOrder = JSON.stringify(cardOrder);\n",
|
1350 |
| - " console.log(cardOrder);\n", |
| 1370 | + " //console.log(cardOrder);\n", |
1351 | 1371 | " }\n",
|
1352 | 1372 | "\n",
|
1353 | 1373 | " container.dataset.cardnum=cardnum;\n",
|
|
1402 | 1422 | "\n",
|
1403 | 1423 | "\n",
|
1404 | 1424 | "function createOneCard (mydiv, frontCard, cards, cardnum, seq) {\n",
|
| 1425 | + " /*\n", |
1405 | 1426 | " var colors=eval('frontColors'+mydiv.id);\n",
|
1406 | 1427 | " var backColors=eval('backColors'+mydiv.id);\n",
|
1407 | 1428 | " var textColors=eval('textColors'+mydiv.id);\n",
|
| 1429 | + " */\n", |
| 1430 | + " var colors = JSON.parse(mydiv.dataset.frontColors);\n", |
| 1431 | + " var backColors = JSON.parse(mydiv.dataset.backColors);\n", |
| 1432 | + " var textColors = JSON.parse(mydiv.dataset.textColors);\n", |
| 1433 | + "\n", |
1408 | 1434 | " //console.log(backColors)\n",
|
1409 | 1435 | "\n",
|
1410 | 1436 | " var flipper = document.createElement('div');\n",
|
|
1504 | 1530 | "\n",
|
1505 | 1531 | "\n",
|
1506 | 1532 | "\n",
|
1507 |
| - "function createCards(id, keyControl, grabFocus, shuffleCards, title, subject) {\n", |
| 1533 | + "function createCards(id, cards, keyControl, grabFocus, shuffleCards, title, subject,\n", |
| 1534 | + " frontColors, backColors, textColors) {\n", |
1508 | 1535 | " console.log(id);\n",
|
1509 | 1536 | "\n",
|
1510 | 1537 | " var mydiv=document.getElementById(id);\n",
|
1511 | 1538 | " /*mydiv.onclick = window.flipCard(mydiv);*/\n",
|
1512 | 1539 | " /*\n",
|
1513 |
| - " mydiv.addEventListener('click', function(){window.flipCard(mydiv);}, false);\n", |
1514 |
| - " mydiv.addEventListener('keydown', function(event){window.checkKey(mydiv,event);}, true);\n", |
| 1540 | + " mydiv.addEventListener('click', function(){window.flipCard(mydiv);}, false);\n", |
| 1541 | + " mydiv.addEventListener('keydown', function(event){window.checkKey(mydiv,event);}, true);\n", |
1515 | 1542 | " */\n",
|
1516 | 1543 | " mydiv.onclick = function(){window.flipCard(mydiv);};\n",
|
1517 |
| - " //console.log(keyControl);\n", |
1518 |
| - " if (keyControl == \"True\"){\n", |
| 1544 | + " if (keyControl == true){\n", |
1519 | 1545 | " mydiv.onkeydown = function(event){window.checkKey(mydiv,event);};\n",
|
1520 | 1546 | " }\n",
|
1521 | 1547 | " /* mydiv.addEventListener('keydown', function(event){event.stopPropagation(); console.log(event); event.preventDefault();}, true); */\n",
|
1522 | 1548 | " /*mydiv.onkeypress = function(event){console.log(event); event.preventDefault();};*/\n",
|
1523 | 1549 | "\n",
|
1524 | 1550 | " //console.log(mydiv);\n",
|
1525 | 1551 | "\n",
|
1526 |
| - " var cards=eval('cards'+id);\n", |
| 1552 | + " // var cards=eval('cards'+id);\n", |
| 1553 | + " // Store cards and color data in the container's dataset for later access in cleanup()\n", |
| 1554 | + " mydiv.dataset.cards = JSON.stringify(cards);\n", |
| 1555 | + " mydiv.dataset.frontColors = JSON.stringify(frontColors);\n", |
| 1556 | + " mydiv.dataset.backColors = JSON.stringify(backColors);\n", |
| 1557 | + " mydiv.dataset.textColors = JSON.stringify(textColors);\n", |
| 1558 | + "\n", |
1527 | 1559 | " mydiv.dataset.cardnum=0;\n",
|
1528 | 1560 | " mydiv.dataset.numCards=cards.length;\n",
|
1529 | 1561 | "\n",
|
1530 | 1562 | " mydiv.dataset.shuffleCards = shuffleCards;\n",
|
1531 | 1563 | " var cardOrder;\n",
|
1532 |
| - " if (shuffleCards == \"True\"){\n", |
| 1564 | + " if (shuffleCards == true){\n", |
1533 | 1565 | " cardOrder = randomOrderArray(cards.length);\n",
|
1534 | 1566 | " } else {\n",
|
1535 | 1567 | " cardOrder = Array.from({ length: cards.length }, (_, index) => index);\n",
|
1536 | 1568 | " }\n",
|
1537 | 1569 | " mydiv.dataset.cardOrder = JSON.stringify(cardOrder);\n",
|
1538 |
| - " console.log(mydiv.dataset.cardOrder);\n", |
| 1570 | + " //console.log(mydiv.dataset.cardOrder);\n", |
1539 | 1571 | "\n",
|
1540 | 1572 | "\n",
|
1541 | 1573 | " mydiv.addEventListener('swiped-left', function(e) {\n",
|
|
1647 | 1679 | " next.innerHTML=\"Next >\";\n",
|
1648 | 1680 | " }\n",
|
1649 | 1681 | "\n",
|
1650 |
| - " if (grabFocus == \"True\" )\n", |
| 1682 | + " if (grabFocus == true )\n", |
1651 | 1683 | " mydiv.focus();\n",
|
1652 | 1684 | "\n",
|
1653 | 1685 | " return flipper;\n",
|
|
1656 | 1688 | "\n",
|
1657 | 1689 | "\n",
|
1658 | 1690 | "\n",
|
1659 |
| - "\n", |
1660 |
| - " function try_create() {\n", |
1661 |
| - " if(document.getElementById(\"GdkuSvByJKyr\")) {\n", |
1662 |
| - " createCards(\"GdkuSvByJKyr\", \"True\", \"False\", \"False\", \"\", \"\");\n", |
1663 |
| - " } else {\n", |
1664 |
| - " setTimeout(try_create, 200);\n", |
1665 |
| - " }\n", |
1666 |
| - " };\n", |
1667 |
| - " \n", |
1668 |
| - "var cardsGdkuSvByJKyr=[{\"front\": \"eigenvector\", \"back\": \"Given a square $n \\\\times n$ matrix $\\\\mathbf{M}$, a non-zero $n$-vector $\\\\mathbf{u}$ is an <I>eigenvector</I> of $\\\\mathbf{M}$ if there exists a constant $\\\\lambda$ such that \\\\begin{equation} \\\\mathbf{Mu} = \\\\lambda \\\\mathbf{u}. \\\\end{equation}\"}, {\"front\": \"eigenvalue\", \"back\": \"Given a square $n \\\\times n$ matrix $\\\\mathbf{M}$, a constant $\\\\lambda$ is an <I>eigenvalue</I> of $\\\\mathbf{M}$ if there exists a non-zero vector $\\\\mathbf{u}$ such that \\\\[ \\\\mathbf{Mu} = \\\\lambda \\\\mathbf{u}. \\\\]\"}, {\"front\": \"modal matrix\", \"back\": \"For a square matrix \\\\(\\\\mathbf{M}\\\\), the modal matrix is a matrix whose columns are the unit eigenvectors of \\\\(\\\\mathbf{M}\\\\).\"}];\n", |
1669 |
| - "var frontColorsGdkuSvByJKyr= [\"var(--asparagus)\", \"var(--terra-cotta)\", \"var(--cyan-process)\" ];\n", |
1670 |
| - "var backColorsGdkuSvByJKyr= [\"var(--dark-blue-gray)\" ];\n", |
1671 |
| - "var textColorsGdkuSvByJKyr= [\"var(--snow)\" ];\n", |
1672 |
| - "\n", |
1673 |
| - "\n", |
1674 |
| - " {\n", |
1675 |
| - " const jmscontroller = new AbortController();\n", |
1676 |
| - " const signal = jmscontroller.signal;\n", |
1677 |
| - "\n", |
1678 |
| - " setTimeout(() => jmscontroller.abort(), 5000);\n", |
1679 |
| - "\n", |
1680 |
| - " fetch(\"https://raw.githubusercontent.com/jmshea/Linear-Algebra-for-Data-Science-with-Python/main/03-matrices/flashcards/6-eigen.json\", {signal})\n", |
1681 |
| - " .then(response => response.json())\n", |
1682 |
| - " .then(json => createCards(\"GdkuSvByJKyr\", \"True\", \"False\", \"False\", \"\", \"\"))\n", |
1683 |
| - " .catch(err => {\n", |
1684 |
| - " console.log(\"Fetch error or timeout\");\n", |
1685 |
| - " try_create(); \n", |
1686 |
| - " });\n", |
1687 |
| - " }\n", |
1688 |
| - " " |
| 1691 | + "var cardstIRlIqMiYAZw = [{\"front\": \"eigenvector\", \"back\": \"Given a square $n \\\\times n$ matrix $\\\\mathbf{M}$, a non-zero $n$-vector $\\\\mathbf{u}$ is an <I>eigenvector</I> of $\\\\mathbf{M}$ if there exists a constant $\\\\lambda$ such that \\\\begin{equation} \\\\mathbf{Mu} = \\\\lambda \\\\mathbf{u}. \\\\end{equation}\"}, {\"front\": \"eigenvalue\", \"back\": \"Given a square $n \\\\times n$ matrix $\\\\mathbf{M}$, a constant $\\\\lambda$ is an <I>eigenvalue</I> of $\\\\mathbf{M}$ if there exists a non-zero vector $\\\\mathbf{u}$ such that \\\\[ \\\\mathbf{Mu} = \\\\lambda \\\\mathbf{u}. \\\\]\"}, {\"front\": \"modal matrix\", \"back\": \"For a square matrix \\\\(\\\\mathbf{M}\\\\), the modal matrix is a matrix whose columns are the unit eigenvectors of \\\\(\\\\mathbf{M}\\\\).\"}];\n", |
| 1692 | + "var frontColorstIRlIqMiYAZw = [\"var(--asparagus)\", \"var(--terra-cotta)\", \"var(--cyan-process)\"];\n", |
| 1693 | + "var backColorstIRlIqMiYAZw = [\"var(--dark-blue-gray)\"];\n", |
| 1694 | + "var textColorstIRlIqMiYAZw = [\"var(--snow)\"];\n", |
| 1695 | + "(function() {\n", |
| 1696 | + " var observer = new MutationObserver(function(mutations, obs) {\n", |
| 1697 | + " var el = document.getElementById(\"tIRlIqMiYAZw\");\n", |
| 1698 | + " if (el) {\n", |
| 1699 | + " createCards(\"tIRlIqMiYAZw\", cardstIRlIqMiYAZw, true, false, false, \"\", \"\", frontColorstIRlIqMiYAZw, backColorstIRlIqMiYAZw, textColorstIRlIqMiYAZw);\n", |
| 1700 | + " obs.disconnect();\n", |
| 1701 | + " }\n", |
| 1702 | + " });\n", |
| 1703 | + " observer.observe(document.body, { childList: true, subtree: true });\n", |
| 1704 | + " })();" |
1689 | 1705 | ],
|
1690 | 1706 | "text/plain": [
|
1691 | 1707 | "<IPython.core.display.Javascript object>"
|
|
1701 | 1717 | "display_flashcards(git_url + git_dir + file)"
|
1702 | 1718 | ]
|
1703 | 1719 | },
|
| 1720 | + { |
| 1721 | + "cell_type": "code", |
| 1722 | + "execution_count": null, |
| 1723 | + "metadata": {}, |
| 1724 | + "outputs": [], |
| 1725 | + "source": [] |
| 1726 | + }, |
1704 | 1727 | {
|
1705 | 1728 | "cell_type": "code",
|
1706 | 1729 | "execution_count": null,
|
|
0 commit comments