From 0706247d267182aef2aa022ea68986c977f9a0f0 Mon Sep 17 00:00:00 2001 From: Allen Downey Date: Sun, 1 Feb 2026 15:01:56 -0500 Subject: [PATCH 1/5] Updating modsim.py --- .github/workflows/tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index d114f87b..e6c8423b 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -17,7 +17,7 @@ jobs: matrix: # don't run on macos-latest; it can't install pytables os: [ubuntu-latest, windows-latest] - python-version: ["3.10"] + python-version: ["3.12"] steps: - uses: actions/checkout@v2 From 2f3291e255f6ecdac44601b11948f24011e7d88c Mon Sep 17 00:00:00 2001 From: Allen Downey Date: Sun, 1 Feb 2026 15:01:59 -0500 Subject: [PATCH 2/5] Updating chapters --- chapters/chap22.ipynb | 152 +++++++++++++++++------------------------- 1 file changed, 62 insertions(+), 90 deletions(-) diff --git a/chapters/chap22.ipynb b/chapters/chap22.ipynb index 0a5f28ee..fd0badd1 100644 --- a/chapters/chap22.ipynb +++ b/chapters/chap22.ipynb @@ -32,7 +32,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 8, "id": "electoral-turkey", "metadata": { "tags": [] @@ -53,7 +53,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 9, "id": "formal-context", "metadata": { "tags": [] @@ -77,7 +77,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 10, "id": "progressive-typing", "metadata": { "tags": [] @@ -155,7 +155,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 11, "id": "handy-terrain", "metadata": {}, "outputs": [], @@ -175,7 +175,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 12, "id": "vocal-latino", "metadata": {}, "outputs": [], @@ -185,7 +185,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 13, "id": "controversial-shower", "metadata": {}, "outputs": [], @@ -193,34 +193,6 @@ "A.y" ] }, - { - "cell_type": "markdown", - "id": "earlier-contemporary", - "metadata": {}, - "source": [ - "You can also access them by index using brackets, like this:" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "id": "digital-channels", - "metadata": {}, - "outputs": [], - "source": [ - "A[0]" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "id": "automated-drove", - "metadata": {}, - "outputs": [], - "source": [ - "A[1]" - ] - }, { "cell_type": "markdown", "id": "grave-burst", @@ -232,7 +204,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 14, "id": "conditional-latitude", "metadata": {}, "outputs": [], @@ -251,7 +223,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 15, "id": "encouraging-cabinet", "metadata": {}, "outputs": [], @@ -278,7 +250,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 16, "id": "peripheral-tattoo", "metadata": {}, "outputs": [], @@ -303,7 +275,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 17, "id": "strange-cleaning", "metadata": {}, "outputs": [], @@ -324,7 +296,7 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 18, "id": "cellular-community", "metadata": {}, "outputs": [], @@ -348,7 +320,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 19, "id": "monetary-firmware", "metadata": {}, "outputs": [], @@ -371,7 +343,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 20, "id": "explicit-piano", "metadata": {}, "outputs": [], @@ -389,7 +361,7 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 21, "id": "relative-republic", "metadata": {}, "outputs": [], @@ -421,7 +393,7 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 22, "id": "narrative-latest", "metadata": { "tags": [] @@ -459,7 +431,7 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 23, "id": "bored-billy", "metadata": { "tags": [] @@ -509,7 +481,7 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 24, "id": "ethical-donna", "metadata": {}, "outputs": [], @@ -527,7 +499,7 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": 25, "id": "legitimate-gossip", "metadata": {}, "outputs": [], @@ -547,7 +519,7 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 26, "id": "legal-terminal", "metadata": { "tags": [] @@ -583,7 +555,7 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 27, "id": "frank-chick", "metadata": {}, "outputs": [], @@ -606,7 +578,7 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": 28, "id": "suitable-salem", "metadata": { "tags": [] @@ -666,7 +638,7 @@ }, { "cell_type": "code", - "execution_count": 24, + "execution_count": 29, "id": "closing-simon", "metadata": {}, "outputs": [], @@ -696,7 +668,7 @@ }, { "cell_type": "code", - "execution_count": 25, + "execution_count": 30, "id": "brief-level", "metadata": { "tags": [] @@ -720,7 +692,7 @@ }, { "cell_type": "code", - "execution_count": 26, + "execution_count": 31, "id": "threatened-alberta", "metadata": {}, "outputs": [], @@ -738,7 +710,7 @@ }, { "cell_type": "code", - "execution_count": 27, + "execution_count": 32, "id": "special-background", "metadata": {}, "outputs": [], @@ -761,7 +733,7 @@ }, { "cell_type": "code", - "execution_count": 28, + "execution_count": 33, "id": "prospective-external", "metadata": {}, "outputs": [], @@ -779,7 +751,7 @@ }, { "cell_type": "code", - "execution_count": 29, + "execution_count": 34, "id": "medieval-calvin", "metadata": {}, "outputs": [], @@ -798,7 +770,7 @@ }, { "cell_type": "code", - "execution_count": 30, + "execution_count": 35, "id": "gorgeous-survey", "metadata": {}, "outputs": [], @@ -817,7 +789,7 @@ }, { "cell_type": "code", - "execution_count": 31, + "execution_count": 36, "id": "failing-bangkok", "metadata": {}, "outputs": [], @@ -836,7 +808,7 @@ }, { "cell_type": "code", - "execution_count": 32, + "execution_count": 37, "id": "copyrighted-highway", "metadata": {}, "outputs": [], @@ -855,7 +827,7 @@ }, { "cell_type": "code", - "execution_count": 33, + "execution_count": 38, "id": "structured-adams", "metadata": {}, "outputs": [], @@ -883,7 +855,7 @@ }, { "cell_type": "code", - "execution_count": 34, + "execution_count": 39, "id": "spare-burst", "metadata": {}, "outputs": [], @@ -908,7 +880,7 @@ }, { "cell_type": "code", - "execution_count": 35, + "execution_count": 40, "id": "dated-browse", "metadata": {}, "outputs": [], @@ -941,7 +913,7 @@ }, { "cell_type": "code", - "execution_count": 36, + "execution_count": 41, "id": "resistant-vegetation", "metadata": {}, "outputs": [], @@ -964,7 +936,7 @@ }, { "cell_type": "code", - "execution_count": 37, + "execution_count": 42, "id": "starting-fabric", "metadata": {}, "outputs": [], @@ -1011,7 +983,7 @@ }, { "cell_type": "code", - "execution_count": 38, + "execution_count": 43, "id": "prescription-boutique", "metadata": { "tags": [] @@ -1060,7 +1032,7 @@ }, { "cell_type": "code", - "execution_count": 39, + "execution_count": 44, "id": "optical-weather", "metadata": {}, "outputs": [], @@ -1072,7 +1044,7 @@ }, { "cell_type": "code", - "execution_count": 40, + "execution_count": 45, "id": "acknowledged-belgium", "metadata": {}, "outputs": [], @@ -1082,7 +1054,7 @@ }, { "cell_type": "code", - "execution_count": 41, + "execution_count": 46, "id": "spatial-ensemble", "metadata": {}, "outputs": [], @@ -1092,7 +1064,7 @@ }, { "cell_type": "code", - "execution_count": 42, + "execution_count": 47, "id": "domestic-apparatus", "metadata": {}, "outputs": [], @@ -1102,7 +1074,7 @@ }, { "cell_type": "code", - "execution_count": 43, + "execution_count": 48, "id": "correct-pittsburgh", "metadata": {}, "outputs": [], @@ -1122,7 +1094,7 @@ }, { "cell_type": "code", - "execution_count": 44, + "execution_count": 49, "id": "global-referral", "metadata": {}, "outputs": [], @@ -1134,7 +1106,7 @@ }, { "cell_type": "code", - "execution_count": 45, + "execution_count": 50, "id": "appointed-sugar", "metadata": {}, "outputs": [], @@ -1144,7 +1116,7 @@ }, { "cell_type": "code", - "execution_count": 46, + "execution_count": 51, "id": "specialized-mediterranean", "metadata": {}, "outputs": [], @@ -1178,7 +1150,7 @@ }, { "cell_type": "code", - "execution_count": 47, + "execution_count": 52, "id": "directed-moisture", "metadata": { "tags": [] @@ -1201,7 +1173,7 @@ }, { "cell_type": "code", - "execution_count": 48, + "execution_count": 53, "id": "fuzzy-register", "metadata": { "tags": [] @@ -1225,7 +1197,7 @@ }, { "cell_type": "code", - "execution_count": 49, + "execution_count": 54, "id": "returning-fellowship", "metadata": { "tags": [] @@ -1247,7 +1219,7 @@ }, { "cell_type": "code", - "execution_count": 50, + "execution_count": 55, "id": "reasonable-swaziland", "metadata": { "tags": [] @@ -1270,7 +1242,7 @@ }, { "cell_type": "code", - "execution_count": 51, + "execution_count": 56, "id": "attached-shower", "metadata": { "tags": [] @@ -1290,7 +1262,7 @@ }, { "cell_type": "code", - "execution_count": 64, + "execution_count": 57, "id": "christian-camcorder", "metadata": {}, "outputs": [], @@ -1312,7 +1284,7 @@ }, { "cell_type": "code", - "execution_count": 53, + "execution_count": 58, "id": "heated-belfast", "metadata": { "tags": [] @@ -1333,7 +1305,7 @@ }, { "cell_type": "code", - "execution_count": 54, + "execution_count": 59, "id": "engaged-provision", "metadata": {}, "outputs": [], @@ -1343,7 +1315,7 @@ }, { "cell_type": "code", - "execution_count": 55, + "execution_count": 60, "id": "directed-fiber", "metadata": {}, "outputs": [], @@ -1353,7 +1325,7 @@ }, { "cell_type": "code", - "execution_count": 56, + "execution_count": 61, "id": "framed-dealer", "metadata": {}, "outputs": [], @@ -1363,7 +1335,7 @@ }, { "cell_type": "code", - "execution_count": 57, + "execution_count": 62, "id": "accomplished-elizabeth", "metadata": {}, "outputs": [], @@ -1373,7 +1345,7 @@ }, { "cell_type": "code", - "execution_count": 58, + "execution_count": 63, "id": "going-techno", "metadata": {}, "outputs": [], @@ -1383,7 +1355,7 @@ }, { "cell_type": "code", - "execution_count": 59, + "execution_count": 64, "id": "brief-saying", "metadata": {}, "outputs": [], @@ -1393,7 +1365,7 @@ }, { "cell_type": "code", - "execution_count": 60, + "execution_count": 65, "id": "spare-pregnancy", "metadata": {}, "outputs": [], @@ -1403,7 +1375,7 @@ }, { "cell_type": "code", - "execution_count": 61, + "execution_count": 66, "id": "catholic-staff", "metadata": {}, "outputs": [], @@ -1413,7 +1385,7 @@ }, { "cell_type": "code", - "execution_count": 62, + "execution_count": 67, "id": "broad-sequence", "metadata": {}, "outputs": [], @@ -1433,7 +1405,7 @@ "metadata": { "celltoolbar": "Tags", "kernelspec": { - "display_name": "Python 3 (ipykernel)", + "display_name": "ModSimPy", "language": "python", "name": "python3" }, @@ -1447,7 +1419,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.13" + "version": "3.13.11" } }, "nbformat": 4, From 6272977040fad4164865e63163e4d07149c973c1 Mon Sep 17 00:00:00 2001 From: Allen Downey Date: Sun, 1 Feb 2026 15:01:59 -0500 Subject: [PATCH 3/5] Updating the notebook zip file --- ModSimPyNotebooks.zip | Bin 246318 -> 245956 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/ModSimPyNotebooks.zip b/ModSimPyNotebooks.zip index 2d5f007dc7f0a7b5771409298ffb4dc927f8eb84..f68df00e3ad5463573123a13951d2c53d0016741 100644 GIT binary patch delta 17515 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 Date: Sun, 1 Feb 2026 15:15:54 -0500 Subject: [PATCH 4/5] Updating the notebook zip file --- ModSimPyNotebooks.zip | Bin 245956 -> 245956 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/ModSimPyNotebooks.zip b/ModSimPyNotebooks.zip index f68df00e3ad5463573123a13951d2c53d0016741..6f62baed1754fcd91b073c4d91ba1803d928d404 100644 GIT binary patch delta 1861 zcmZ9JYeLHl3GhT0&7)NN#qUrLL@`tM#EM78Q0i4T7k&z;1RSA;su~ zQYn%_H=UckmfIX5l~j~qCDjMX2n4CVbW>q<-mCBV`2Ris=l?wCIbEkrU8hXZ1*^ee zMF>Trk<#kudE?7`<@?Kgo|PA8#*CD@+~)^+?`NkXA z5ecmKnMdjMl2&^nL-V^;bf{YpU9qsv9VQSo~ z!Ti0%mcrnk3Jo??kRq$-tkqzCEvbw*xQ@Bpw6B?Dj(2*>_d7j8Yzx_BmT+-M!%ZQw zO~w&D#G$xzd&o99q~WXP{`i&LGR3g$tj#HJdkI2q5!BK{l4wZ>#7vlgK%N%(MZObh zTFYNDUx^+1ONyc-yww1i<3x82ZjBR~4B(6slfxPI_97!f8yr&db-yk-*#s3vDWb^+ z_AwDZY;ao+ubTntQ+j8>Pm9#>Y7s0@R*7=LH<0k?5?#)UZ1^EhaIOJ|I>9QOTLWok z3w!>HwcEEpHzSl+fKV!}{zc;H?;u#lT;RJK2IRxOD}jZ|SnEM}A}{&j7}ymYTMB83 z(l$9&kfGosRnTdY@S=LiP*;f)PS?Y=820tHW>`kbd~|0sBr|=I(_c89-=g>5izYcHhA^*eVl&D>A60={|cx7aN6Cb_lGz=?V-MYfzv~rE)ev7AE%Sr z_4N~+?&oygBh4@UbOJ;y`TnoVRv5u=juA?x>bvz4lYovF=im?%tc5)fRosgq*xI+rC(v}cd{{eGd B#fSg^ delta 1890 zcmZvbZA_C_6vywqrxPTU_Te3=IuZ%s7BT^?%3Ik$i9-cGXk-{oP(TC|GorA$FvrNY z%w!PMYamP-GC#~I)QS&CTbhN;5j9EzgScg3vYC(&`J_`qQn}A7w~rtHzw zs#&qP&1r{{h@+{qc8}WS?%OjJ&(LR88XBy+oXF7L78TKefMeZ1w#+3;6Fx6oe!38Y z(D!BXgzMef1YdVZEbG1JQhVLxRz@5{+r~9?dR&xTn`bq2e70jFbG-^|eMdTo3Iil+ zun2!4tYA7OVAU$FEK_A;@L0MIucqU1D}#0U8tgnh9wiRtvh;#kJH{|@a6>_&R@WH*sj#sr^CPcaB_n56o-~PzggEIlyQ_j#d`X_7l$jaE#`Ug zd+S*1$!Wa$C~;^SUy`ocKd)scK7|gM~?h%MX0b8p(NVzlEl#eeITqleX$belo$P@ z0k*4Cqff!F%8pN(w5eibGo;1I%jCDi7S(;G9Y!rO-qEXJdB@gXpb_lL+xp=nY^Mc2 zkbWIs^73C^77uXdUwCPCan(j%&hRql7H96|rOC}zYkB#Amml2b%oln2ikFpxoY~LI zO?SBJx4c~7WvR%SZ}T#Kh^wCCzVVqRcFJjjZu56a@Qb z-r~z0G5VY%P#D}B>M_n}@ECh1Jm3iK&GH(3SG-UZ Date: Sun, 1 Feb 2026 15:18:12 -0500 Subject: [PATCH 5/5] Updating build system --- environment.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/environment.yml b/environment.yml index 56d42fc4..628e539e 100644 --- a/environment.yml +++ b/environment.yml @@ -2,7 +2,8 @@ name: ModSimPy channels: - conda-forge dependencies: - - python + # Core dependencies for users + - python=3.13 - jupyter - numpy - matplotlib @@ -16,6 +17,5 @@ dependencies: - pytables - pip -# pip install pytest nbmake -# pip install jupyter-book ghp-import -# pip install pypandoc fastdoc +# For development dependencies, use environment-dev.yml +# Install with: mamba env create -f environment-dev.yml