47
List ofExercises
xxvii
Exercise6.2:Exploresyntaxdifferences:listsvs.dicts.......... 364
Exercise6.3:Usestringoperationstoimproveaprogram....... 364
Exercise6.4:Interpretoutputfromaprogram................. 364
Exercise6.5:Makeadictionary ............................. . 365
Exercise6.6:Makeanesteddictionary ....................... . 365
Exercise6.7:Makeanesteddictionaryfromafile.............. 365
Exercise6.8:Makeanesteddictionaryfromafile.............. 365
Exercise6.9:Computetheareaofatriangle .................. . 366
Exercise6.10:Comparedatastructuresforpolynomials ........ . 366
Exercise6.11:Computethederivativeofapolynomial ......... . 366
Exercise6.12:Specifyfunctionsonthecommandline .......... . 367
Exercise6.13:Interpretfunctionspecifications ................ . 368
Exercise6.14:Compareaveragetemperaturesincities.......... 368
Exercise6.15:GenerateanHTMLreportwithfigures.......... 369
Exercise6.16:Allowdifferenttypesforafunctionargument..... 369
Exercise6.17:Makeafunctionmorerobust................... 369
Exercise6.18:Findproportionofbasesinside/outsideexons .... . 370
Exercise7.1:Makeafunctionclass .......................... . 426
Exercise7.2:Addanattributetoaclass ..................... . 426
Exercise7.3:Addfunctionalitytoaclass..................... 427
Exercise7.4:Makeclassesforarectangleandatriangle........ 427
Exercise7.5:Makeaclassforquadraticfunctions.............. 427
Exercise7.6:Makeaclassforstraightlines................... 428
Exercise7.7:Flexiblehandlingoffunctionarguments .......... . 428
Exercise7.8:Wrapfunctionsinaclass ....................... . 428
Exercise7.9:Flexiblehandlingoffunctionarguments .......... . 429
Exercise7.10:Deduceaclassimplementation ................. . 429
Exercise7.11:Implementspecialmethodsinaclass............ 430
Exercise7.12:Makeaclassforsummationofseries ............ . 430
Exercise7.13:Applyanumericaldifferentiationclass........... 431
Exercise7.14:Applysymbolicdifferentiation.................. 431
Exercise7.15:Implementin-place+=and-=operators ......... . 431
Exercise7.16:Implementaclassfornumericaldifferentiation.... 432
Exercise7.17:Examineaprogram........................... 433
Exercise7.18:Modifyaclassfornumericaldifferentiation....... 433
Exercise7.19:MakeaclassfortheHeavisidefunction.......... 433
Exercise7.20:Makeaclassfortheindicatorfunction .......... . 434
Exercise7.21:Makeaclassforpiecewiseconstantfunctions..... 434
Exercise7.22:Speeduprepeatedintegralcalculations.......... 435
Exercise7.23:Applyaclassforpolynomials .................. . 435
Exercise7.24:Findabuginaclassforpolynomials............ 435
Exercise7.25:Implementsubtractionofpolynomials........... 436
Exercise7.26:Testthefunctionalityofprettyprintofpolynomials 436
Exercise7.27:Vectorizeaclassforpolynomials................ 436
Exercise7.28:Useadicttoholdpolynomialcoefficients ........ . 437
46
ListofExercises
Exercise7.29:ExtendclassVec2Dtoworkwithlists/tuples..... 437
Exercise7.30:ExtendclassVec2Dto3Dvectors............... 438
Exercise7.31:UseNumPyarraysinclassVec2D .............. . 438
Exercise7.32:Makeclassesforstudentsandcourses ........... . 439
Exercise7.33:Findlocalandglobalextremaofafunction ...... . 439
Exercise7.34:Findtheoptimalproductionforacompany ...... . 440
Exercise8.1:Flipacointimes .............................. . 499
Exercise8.2:Computeaprobability ......................... . 500
Exercise8.3:Chooserandomcolors.......................... 500
Exercise8.4:Drawballsfromahat.......................... 500
Exercise8.5:Computingprobabilitiesofrollingdice ........... . 500
Exercise8.6:Estimatetheprobabilityinadicegame .......... . 501
Exercise8.7:Computetheprobabilityofhandsofcards........ 501
Exercise8.8:Decideifadicegameisfair..................... 501
Exercise8.9:Adjustagametomakeitfair ................... . 501
Exercise8.10:Generalizeagame ............................ . 502
Exercise8.11:Comparetwoplayingstrategies................. 502
Exercise8.12:Investigatestrategiesinagame................. 502
Exercise8.13:Investigatethewinningchancesofsomegames ... . 502
Exercise8.14:Computeprobabilitiesofthrowingtwodice ...... . 503
Exercise8.15:Vectorizeflippingacoin....................... 503
Exercise8.16:Vectorizeaprobablilitycomputation............ 503
Exercise8.17:Throwdiceandcomputeasmallprobability ..... . 504
Exercise8.18:Differenceequationforrandomnumbers......... 504
Exercise8.19:Makeaclassfordrawingballsfromahat........ 504
Exercise8.20:Independentversusdependentrandomnumbers .. . 505
Exercise8.21:Computetheprobabilityofflippingacoin ....... . 505
Exercise8.22:Simulatebinomialexperiments ................. . 506
Exercise8.23:Simulateapokergame ........................ . 506
Exercise8.24:Estimategrowthinasimulationmodel.......... 506
Exercise8.25:Investigateguessingstrategies.................. 507
Exercise8.26:Vectorizeadicegame......................... 507
Exercise8.27:ComputeπbyaMonteCarlomethod........... 507
Exercise8.28:ComputeπbyaMonteCarlomethod........... 508
Exercise8.29:Computeπbyarandomsum .................. . 508
Exercise8.30:1Drandomwalkwithdrift..................... 508
Exercise8.31:1Drandomwalkuntilapointishit............. 508
Exercise8.32:Simulatemakingafortunefromgaming ......... . 508
Exercise8.33:Makeclassesfor2Drandomwalk............... 509
Exercise8.34:2Drandomwalkwithwalls;scalarversion ....... . 510
Exercise8.35:2Drandomwalkwithwalls;vectorizedversion.... 510
Exercise8.36:Simulatemixingofgasmolecules ............... . 510
Exercise8.37:Simulateslowmixingofgasmolecules........... 511
Exercise8.38:Guessbeerbrands............................ 511
Exercise8.39:Simulatestockprices.......................... 512
47
List ofExercises
xxix
Exercise8.40:Computewithoptionpricesinfinance........... 512
Exercise8.41:Differentiatenoisemeasurements ............... . 513
Exercise8.42:Differentiatenoisysignals...................... 514
Exercise8.43:Modelnoiseinatimesignal.................... 515
Exercise8.44:SpeedupMarkovchainmutation............... 516
Exercise9.1:Demonstratethemagicofinheritance ............ . 585
Exercise9.2:Makepolynomialsubclassesofparabolas ......... . 585
Exercise9.3:Implementaclassforafunctionasasubclass ..... . 586
Exercise9.4:Createanalternativeclasshierarchyforpolynomials 586
Exercise9.5:Makecircleasubclassofanellipse............... 586
Exercise9.6:Makesuper-andsubclassforapoint............. 586
Exercise9.7:Modifyafunctionclassbysubclassing............ 587
Exercise9.8:Exploretheaccuracyofdifferenceformulas ....... . 587
Exercise9.9:Implementasubclass .......................... . 587
Exercise9.10:Makeclassesfornumericaldifferentiation........ 588
Exercise9.11:Implementanewsubclassfordifferentiation...... 588
Exercise9.12:Understandifaclasscanbeusedrecursively..... 588
Exercise9.13:Representpeoplebyaclasshierarchy ........... . 588
Exercise9.14:Addanewclassinaclasshierarchy............. 590
Exercise9.15:Computeconvergenceratesofnumericalintegration
methods .................................... . 590
Exercise9.16:Addcommonfunctionalityinaclasshierarchy.... 591
Exercise9.17:Makeaclasshierarchyforrootfinding .......... . 591
Exercise9.18:Makeacalculuscalculatorclass ................ . 592
Exercise9.19:Computeinversefunctions..................... 593
Exercise9.20:Makelinedrawingofaperson;program ......... . 593
Exercise9.21:Makelinedrawingofaperson;class............. 593
Exercise9.22:Animateapersonwithwavinghands............ 593
ExerciseA.1:Determinethelimitofasequence ............... . 621
ExerciseA.2:Computeπviasequences ...................... . 622
ExerciseA.3:Reducememoryusageofdifferenceequations..... 622
ExerciseA.4:Computethedevelopmentofaloan ............. . 623
ExerciseA.5:Solveasystemofdifferenceequations............ 623
ExerciseA.6:Modifyamodelforfortunedevelopment ......... . 623
ExerciseA.7:Changeindexinadifferenceequation............ 623
ExerciseA.8:Constructtimepointsfromdates................ 624
ExerciseA.9:VisualizetheconvergenceofNewton’smethod .... . 624
ExerciseA.10:Implementthesecantmethod.................. 625
ExerciseA.11:Testdifferentmethodsforrootfinding.......... 625
ExerciseA.12:MakedifferenceequationsfortheMidpointrule.. 626
ExerciseA.13:Computethearclengthofacurve.............. 626
ExerciseA.14:Finddifferenceequationsforcomputingsinx .... . 627
ExerciseA.15:Finddifferenceequationsforcomputingcosx.... 628
ExerciseA.16:Makeaguitar-likesound...................... 628
ExerciseA.17:Dampthebassinasoundfile.................. 628
46
ListofExercises
ExerciseA.18:Dampthetrebleinasoundfile ................ . 629
ExerciseA.19:Demonstrateoscillatorysolutionsof(A.13) ...... . 629
ExerciseA.20:Automatecomputerexperiments............... 630
ExerciseA.21:GenerateanHTMLreport .................... . 630
ExerciseA.22:Useaclasstoarchiveandreportexperiments.... 631
ExerciseA.23:Explorelogisticgrowthinteractively............ 632
ExerciseA.24:Simulatethepriceofwheat.................... 632
ExerciseB.1:Interpolateadiscretefunction .................. . 660
ExerciseB.2:Studyafunctionfordifferentparametervalues.... 660
ExerciseB.3:Studyafunctionanditsderivative .............. . 661
ExerciseB.4:UsetheTrapezoidalmethod.................... 661
ExerciseB.5:Computeasequenceofintegrals................. 662
ExerciseB.6:UsetheTrapezoidalmethod.................... 663
ExerciseB.7:Computetrigonometricintegrals ................ . 663
ExerciseB.8:Plotfunctionsandtheirderivatives.............. 664
ExerciseB.9:UsetheTrapezoidalmethod.................... 664
ExerciseC.1:SolveanonhomogeneouslinearODE ............ . 681
ExerciseC.2:SolveanonlinearODE......................... 681
ExerciseC.3:SolveanODEfory(x)......................... 682
ExerciseC.4:ExperienceinstabilityofanODE................ 682
ExerciseC.5:SolveanODEwithtime-varyinggrowth ......... . 682
ExerciseD.1:Modelsuddenmovementsoftheplate ........... . 710
ExerciseD.2:Writeacallbackfunction....................... 710
ExerciseD.3:Improveinputtothesimulationprogram......... 710
ExerciseE.1:SolveasimpleODEwithfunction-basedcode..... 758
ExerciseE.2:SolveasimpleODEwithclass-basedcode........ 758
ExerciseE.3:SolveasimpleODEwiththeODEsolverhierarchy. 758
ExerciseE.4:SolveanODEspecifiedonthecommandline ..... . 758
ExerciseE.5:ImplementanumericalmethodforODEs......... 759
ExerciseE.6:SolveanODEforemptyingatank .............. . 759
ExerciseE.7:SolveanODEforthearclength ................ . 760
ExerciseE.8:Simulateafallingorrisingbodyinafluid........ 760
ExerciseE.9:Verifythelimitofasolutionastimegrows ....... . 762
ExerciseE.10:Scalethelogisticequation..................... 762
ExerciseE.11:Computelogisticgrowthwithtime-varyingcarrying
capacity .................................... . 763
ExerciseE.12:SolveanODEuntilconstantsolution........... 763
ExerciseE.13:UseaproblemclasstoholddataaboutanODE.. 764
ExerciseE.14:DeriveandsolveascaledODEproblem......... 765
ExerciseE.15:Cleanupafiletomakeitamodule............. 765
ExerciseE.16:Simulateradioactivedecay .................... . 766
ExerciseE.17:ComputeinversefunctionsbysolvinganODE ... . 766
ExerciseE.18:Makeaclassforcomputinginversefunctions..... 767
ExerciseE.19:Addfunctionalitytoaclass.................... 767
ExerciseE.20:Computeinversefunctionsbyinterpolation...... 768
40
List ofExercises
xxxi
ExerciseE.21:Codethe4th-orderRunge-Kuttamethod;function 768
ExerciseE.22:Codethe4th-orderRunge-Kuttamethod;class... 768
ExerciseE.23:CompareODEmethods....................... 769
ExerciseE.24:CodeatestfunctionforsystemsofODEs ....... . 769
ExerciseE.25:CodeHeun’smethodforODEsystems;function.. 769
ExerciseE.26:CodeHeun’smethodforODEsystems;class..... 769
ExerciseE.27:ImplementandtesttheLeapfrogmethod........ 770
ExerciseE.28:ImplementandtestanAdams-Bashforthmethod. 770
ExerciseE.29:SolvetwocoupledODEsforradioactivedecay.... 770
ExerciseE.30:Implementa2nd-orderRunge-Kuttamethod;
function..................................... 771
ExerciseE.31:Implementa2nd-orderRunge-Kuttamethod;class 771
ExerciseE.32:Codetheiteratedmidpointmethod;function .... . 771
ExerciseE.33:Codetheiteratedmidpointmethod;class ....... . 772
ExerciseE.34:Makeasubclassfortheiteratedmidpointmethod 772
ExerciseE.35:ComparetheaccuracyofvariousmethodsforODEs 772
ExerciseE.36:AnimatehowvariousmethodsforODEsconverge 773
ExerciseE.37:StudyconvergenceofnumericalmethodsforODEs 773
ExerciseE.38:Findabody’spositionalongwithitsvelocity .... . 774
ExerciseE.39:Addtheeffectofairresistanceonaball......... 774
ExerciseE.40:SolveanODEsystemforanelectriccircuit...... 775
ExerciseE.41:SimulatethespreadingofadiseasebyaSIRmodel 775
ExerciseE.42:IntroduceproblemandsolverclassesintheSIR
model ...................................... . 777
ExerciseE.43:IntroducevaccinationinaSIRmodel........... 778
ExerciseE.44:IntroduceavaccinationcampaigninaSIRmodel. 779
ExerciseE.45:Findanoptimalvaccinationperiod............. 779
ExerciseE.46:Simulatehuman-zombieinteraction............. 779
ExerciseE.47:Simulateazombiemovie...................... 782
ExerciseE.48:Simulateawaronzombies .................... . 782
ExerciseE.49:Explorepredator-preypopulationinteractions.... 783
ExerciseE.50:Formulatea2nd-orderODEasasystem ........ . 784
ExerciseE.51:Solve¨u+u=0.............................. 785
ExerciseE.52:Makeatoolforanalyzingoscillatorysolutions.... 786
ExerciseE.53:Implementproblem,solver,andvisualizerclasses. 787
ExerciseE.54:Useclassesforflexiblechoicesofmodels......... 790
ExerciseE.55:Applysoftwareforoscillatingsystems........... 791
ExerciseE.56:Modeltheeconomyoffishing .................. . 792
Documents you may be interested
Documents you may be interested