diff --git a/docs/Manifest.toml b/docs/Manifest.toml index 98fb5d9..8487f58 100644 --- a/docs/Manifest.toml +++ b/docs/Manifest.toml @@ -2,13 +2,25 @@ julia_version = "1.8.3" manifest_format = "2.0" -project_hash = "20a06a2cb4bb9c1591365ff24e34e279651c4d72" +project_hash = "dcecb67d4d6bd41dbd51d5148fffceb9e33970ca" [[deps.ANSIColoredPrinters]] git-tree-sha1 = "574baf8110975760d391c710b6341da1afa48d8c" uuid = "a4c015fc-c6ff-483c-b24f-f7ea428134e9" version = "0.0.1" +[[deps.AbstractFFTs]] +deps = ["ChainRulesCore", "LinearAlgebra"] +git-tree-sha1 = "69f7020bd72f069c219b5e8c236c1fa90d2cb409" +uuid = "621f4979-c628-5d54-868e-fcf4e3e8185c" +version = "1.2.1" + +[[deps.Adapt]] +deps = ["LinearAlgebra"] +git-tree-sha1 = "195c5505521008abea5aee4f96930717958eac6f" +uuid = "79e6a3ab-5dfb-504d-930d-738a2a938a0e" +version = "3.4.0" + [[deps.ArgTools]] uuid = "0dad84c5-d112-42e6-8d28-ef12dabb789f" version = "1.1.1" @@ -41,12 +53,54 @@ git-tree-sha1 = "43b1a4a8f797c1cddadf60499a8a077d4af2cd2d" uuid = "d1d4a3ce-64b1-5f1a-9ba4-7e7e69966f35" version = "0.1.7" +[[deps.CSV]] +deps = ["CodecZlib", "Dates", "FilePathsBase", "InlineStrings", "Mmap", "Parsers", "PooledArrays", "SentinelArrays", "Tables", "Unicode", "WeakRefStrings"] +git-tree-sha1 = "c5fd7cd27ac4aed0acf4b73948f0110ff2a854b2" +uuid = "336ed68f-0bac-5ca0-87d4-7b16caf5d00b" +version = "0.10.7" + +[[deps.CategoricalArrays]] +deps = ["DataAPI", "Future", "Missings", "Printf", "Requires", "Statistics", "Unicode"] +git-tree-sha1 = "5084cc1a28976dd1642c9f337b28a3cb03e0f7d2" +uuid = "324d7699-5711-5eae-9e2f-1d82baa6b597" +version = "0.10.7" + +[[deps.ChainRulesCore]] +deps = ["Compat", "LinearAlgebra", "SparseArrays"] +git-tree-sha1 = "e7ff6cadf743c098e08fca25c91103ee4303c9bb" +uuid = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" +version = "1.15.6" + +[[deps.ChangesOfVariables]] +deps = ["ChainRulesCore", "LinearAlgebra", "Test"] +git-tree-sha1 = "38f7a08f19d8810338d4f5085211c7dfa5d5bdd8" +uuid = "9e997f8a-9a97-42d5-a9f1-ce6bfc15e2c0" +version = "0.1.4" + [[deps.CodecZlib]] deps = ["TranscodingStreams", "Zlib_jll"] git-tree-sha1 = "ded953804d019afa9a3f98981d99b33e3db7b6da" uuid = "944b1d66-785c-5afd-91f1-9de20f533193" version = "0.7.0" +[[deps.ColorTypes]] +deps = ["FixedPointNumbers", "Random"] +git-tree-sha1 = "eb7f0f8307f71fac7c606984ea5fb2817275d6e4" +uuid = "3da002f7-5984-5a60-b8a6-cbb66c0b333f" +version = "0.11.4" + +[[deps.ColorVectorSpace]] +deps = ["ColorTypes", "FixedPointNumbers", "LinearAlgebra", "SpecialFunctions", "Statistics", "TensorCore"] +git-tree-sha1 = "d08c20eef1f2cbc6e60fd3612ac4340b89fea322" +uuid = "c3611d14-8923-5661-9e6a-0046d554d3a4" +version = "0.9.9" + +[[deps.Colors]] +deps = ["ColorTypes", "FixedPointNumbers", "Reexport"] +git-tree-sha1 = "417b0ed7b8b838aa6ca0a87aadf1bb9eb111ce40" +uuid = "5ae59095-9a9b-59fe-a467-6f913c188581" +version = "0.12.8" + [[deps.Compat]] deps = ["Dates", "LinearAlgebra", "UUIDs"] git-tree-sha1 = "00a2cccc7f098ff3b66806862d275ca3db9e6e5a" @@ -64,11 +118,22 @@ git-tree-sha1 = "62a7c76dbad02fdfdaa53608104edf760938c4ca" uuid = "5218b696-f38b-4ac9-8b61-a12ec717816d" version = "0.17.4" +[[deps.Crayons]] +git-tree-sha1 = "249fe38abf76d48563e2f4556bebd215aa317e15" +uuid = "a8cc5b0e-0ffa-5ad4-8c14-923d3ee1735f" +version = "4.1.1" + [[deps.DataAPI]] git-tree-sha1 = "e08915633fcb3ea83bf9d6126292e5bc5c739922" uuid = "9a962f9c-6df0-11e9-0e5d-c546b8b5ee8a" version = "1.13.0" +[[deps.DataFrames]] +deps = ["Compat", "DataAPI", "Future", "InvertedIndices", "IteratorInterfaceExtensions", "LinearAlgebra", "Markdown", "Missings", "PooledArrays", "PrettyTables", "Printf", "REPL", "Random", "Reexport", "SnoopPrecompile", "SortingAlgorithms", "Statistics", "TableTraits", "Tables", "Unicode"] +git-tree-sha1 = "d4f69885afa5e6149d0cab3818491565cf41446d" +uuid = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0" +version = "1.4.4" + [[deps.DataStructures]] deps = ["Compat", "InteractiveUtils", "OrderedCollections"] git-tree-sha1 = "d1fff3a548102f48987a52a2e0d114fa97d730f0" @@ -84,6 +149,12 @@ version = "1.0.0" deps = ["Printf"] uuid = "ade2ca70-3891-5945-98fb-dc099432e06a" +[[deps.DemoCards]] +deps = ["Dates", "Documenter", "FileIO", "HTTP", "ImageCore", "JSON", "Literate", "Mustache", "Suppressor", "YAML"] +git-tree-sha1 = "5625e94c6c567341056ecbdd0114cde236167e40" +uuid = "311a05b2-6137-4a5a-b473-18580a3d38b5" +version = "0.4.9" + [[deps.Distributed]] deps = ["Random", "Serialization", "Sockets"] uuid = "8ba89e20-285c-5b6f-9357-94700520ee1b" @@ -122,15 +193,43 @@ git-tree-sha1 = "7be5f99f7d15578798f338f5433b6c432ea8037b" uuid = "5789e2e9-d7fb-5bc7-8068-2c6fae9b9549" version = "1.16.0" +[[deps.FilePathsBase]] +deps = ["Compat", "Dates", "Mmap", "Printf", "Test", "UUIDs"] +git-tree-sha1 = "e27c4ebe80e8699540f2d6c805cc12203b614f12" +uuid = "48062228-2e41-5def-b9a4-89aafe57970f" +version = "0.9.20" + [[deps.FileWatching]] uuid = "7b1f6079-737a-58dc-b8bc-7a2ca5c1b5ee" +[[deps.FixedPointNumbers]] +deps = ["Statistics"] +git-tree-sha1 = "335bfdceacc84c5cdf16aadc768aa5ddfc5383cc" +uuid = "53c48c17-4a7d-5ca2-90c5-79b7896eea93" +version = "0.8.4" + +[[deps.Formatting]] +deps = ["Printf"] +git-tree-sha1 = "8339d61043228fdd3eb658d86c926cb282ae72a8" +uuid = "59287772-0a20-5a39-b81b-1366585eb4c0" +version = "0.4.2" + +[[deps.Future]] +deps = ["Random"] +uuid = "9fa8497b-333b-5362-9e8d-4d0656e87820" + [[deps.FuzzyCompletions]] deps = ["REPL"] git-tree-sha1 = "e16dd964b4dfaebcded16b2af32f05e235b354be" uuid = "fb4132e2-a121-4a70-b8a1-d5b831dcdcc2" version = "0.5.1" +[[deps.Graphics]] +deps = ["Colors", "LinearAlgebra", "NaNMath"] +git-tree-sha1 = "d61890399bc535850c4bf08e4e0d3a7ad0f21cbd" +uuid = "a2bd30eb-e257-5431-a919-1863eab51364" +version = "1.1.2" + [[deps.HTTP]] deps = ["Base64", "CodecZlib", "Dates", "IniFile", "Logging", "LoggingExtras", "MbedTLS", "NetworkOptions", "OpenSSL", "Random", "SimpleBufferStream", "Sockets", "URIs", "UUIDs"] git-tree-sha1 = "e1acc37ed078d99a714ed8376446f92a5535ca65" @@ -149,15 +248,43 @@ git-tree-sha1 = "f7be53659ab06ddc986428d3a9dcc95f6fa6705a" uuid = "b5f81e59-6552-4d32-b1f0-c071b021bf89" version = "0.2.2" +[[deps.ImageCore]] +deps = ["AbstractFFTs", "ColorVectorSpace", "Colors", "FixedPointNumbers", "Graphics", "MappedArrays", "MosaicViews", "OffsetArrays", "PaddedViews", "Reexport"] +git-tree-sha1 = "acf614720ef026d38400b3817614c45882d75500" +uuid = "a09fc81d-aa75-5fe9-8630-4744c3626534" +version = "0.9.4" + [[deps.IniFile]] git-tree-sha1 = "f550e6e32074c939295eb5ea6de31849ac2c9625" uuid = "83e8ac13-25f8-5344-8a64-a9f2b223428f" version = "0.5.1" +[[deps.InlineStrings]] +deps = ["Parsers"] +git-tree-sha1 = "0cf92ec945125946352f3d46c96976ab972bde6f" +uuid = "842dd82b-1e85-43dc-bf29-5d0ee9dffc48" +version = "1.3.2" + [[deps.InteractiveUtils]] deps = ["Markdown"] uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240" +[[deps.InverseFunctions]] +deps = ["Test"] +git-tree-sha1 = "49510dfcb407e572524ba94aeae2fced1f3feb0f" +uuid = "3587e190-3f89-42d0-90ee-14403ec27112" +version = "0.1.8" + +[[deps.InvertedIndices]] +git-tree-sha1 = "82aec7a3dd64f4d9584659dc0b62ef7db2ef3e19" +uuid = "41ab1584-1d38-5bbf-9106-f11c6c58b48f" +version = "1.2.0" + +[[deps.IrrationalConstants]] +git-tree-sha1 = "7fd44fd4ff43fc60815f8e764c0f352b83c49151" +uuid = "92d709cd-6900-40b7-9082-c6be49f344b6" +version = "0.1.1" + [[deps.IteratorInterfaceExtensions]] git-tree-sha1 = "a3f24677c21f5bbe9d2a714f95dcd58337fb2856" uuid = "82899510-4779-5014-852e-03e436cf321d" @@ -181,6 +308,11 @@ git-tree-sha1 = "8d928db71efdc942f10e751564e6bbea1e600dfe" uuid = "7d188eb4-7ad8-530c-ae41-71a32a6d4692" version = "1.0.1" +[[deps.LaTeXStrings]] +git-tree-sha1 = "f2355693d6778a178ade15952b7ac47a4ff97996" +uuid = "b964fa9f-0449-5b57-a5c2-d3ea65f4040f" +version = "1.3.0" + [[deps.LazilyInitializedFields]] git-tree-sha1 = "eecfbe1bd3f377b7e6caa378392eeed1616c6820" uuid = "0e77f7df-68c5-4e49-93ce-4cd80f5598bf" @@ -218,6 +350,18 @@ version = "1.16.1+1" deps = ["Libdl", "libblastrampoline_jll"] uuid = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" +[[deps.Literate]] +deps = ["Base64", "IOCapture", "JSON", "REPL"] +git-tree-sha1 = "1c4418beaa6664041e0f9b48f0710f57bff2fcbe" +uuid = "98b081ad-f1c9-55d3-8b20-4c87d4299306" +version = "2.14.0" + +[[deps.LogExpFunctions]] +deps = ["ChainRulesCore", "ChangesOfVariables", "DocStringExtensions", "InverseFunctions", "IrrationalConstants", "LinearAlgebra"] +git-tree-sha1 = "946607f84feb96220f480e0422d3484c49c00239" +uuid = "2ab3a3ac-af41-5b50-aa03-7779005ae688" +version = "0.3.19" + [[deps.Logging]] uuid = "56ddb016-857b-54e1-b83d-db4d58db5568" @@ -232,6 +376,11 @@ git-tree-sha1 = "65f28ad4b594aebe22157d6fac869786a255b7eb" uuid = "6c6e2e6c-3030-632d-7369-2d6c69616d65" version = "0.1.4" +[[deps.MappedArrays]] +git-tree-sha1 = "e8b359ef06ec72e8c030463fe02efe5527ee5142" +uuid = "dbb5928d-eab1-5f90-85c2-b9b0edb7c900" +version = "0.4.1" + [[deps.Markdown]] deps = ["Base64"] uuid = "d6f4376e-aef5-505a-96c1-9c027394607a" @@ -247,9 +396,21 @@ deps = ["Artifacts", "Libdl"] uuid = "c8ffd9c3-330d-5841-b78e-0817d7145fa1" version = "2.28.0+0" +[[deps.Missings]] +deps = ["DataAPI"] +git-tree-sha1 = "bf210ce90b6c9eed32d25dbcae1ebc565df2687f" +uuid = "e1d29d7a-bbdc-5cf2-9ac0-f12de2c33e28" +version = "1.0.2" + [[deps.Mmap]] uuid = "a63ad114-7e13-5084-954f-fe012c677804" +[[deps.MosaicViews]] +deps = ["MappedArrays", "OffsetArrays", "PaddedViews", "StackViews"] +git-tree-sha1 = "7b86a5d4d70a9f5cdf2dacb3cbe6d251d1a61dbe" +uuid = "e94cdb99-869f-56ef-bcf0-1ae2bcbe0389" +version = "0.3.4" + [[deps.MozillaCACerts_jll]] uuid = "14a3606d-f60d-562e-9121-12d972cd8159" version = "2022.2.1" @@ -260,15 +421,38 @@ git-tree-sha1 = "a8cbf066b54d793b9a48c5daa5d586cf2b5bd43d" uuid = "99f44e22-a591-53d1-9472-aa23ef4bd671" version = "1.1.0" +[[deps.Mustache]] +deps = ["Printf", "Tables"] +git-tree-sha1 = "1e566ae913a57d0062ff1af54d2697b9344b99cd" +uuid = "ffc61752-8dc7-55ee-8c37-f3e9cdd09e70" +version = "1.0.14" + +[[deps.NaNMath]] +deps = ["OpenLibm_jll"] +git-tree-sha1 = "a7c3d1da1189a1c2fe843a3bfa04d18d20eb3211" +uuid = "77ba4419-2d1f-58cd-9bb1-8ffee604a2e3" +version = "1.0.1" + [[deps.NetworkOptions]] uuid = "ca575930-c2e3-43a9-ace4-1e988b2c1908" version = "1.2.0" +[[deps.OffsetArrays]] +deps = ["Adapt"] +git-tree-sha1 = "f71d8950b724e9ff6110fc948dff5a329f901d64" +uuid = "6fe1bfb0-de20-5000-8ca7-80f57d26f881" +version = "1.12.8" + [[deps.OpenBLAS_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "Libdl"] uuid = "4536629a-c528-5b80-bd46-f80d51c5b363" version = "0.3.20+0" +[[deps.OpenLibm_jll]] +deps = ["Artifacts", "Libdl"] +uuid = "05823500-19ac-5b8b-9628-191a04bc5112" +version = "0.8.1+0" + [[deps.OpenSSL]] deps = ["BitFlags", "Dates", "MozillaCACerts_jll", "OpenSSL_jll", "Sockets"] git-tree-sha1 = "df6830e37943c7aaa10023471ca47fb3065cc3c4" @@ -281,11 +465,23 @@ git-tree-sha1 = "f6e9dba33f9f2c44e08a020b0caf6903be540004" uuid = "458c3c95-2e84-50aa-8efc-19380b2a3a95" version = "1.1.19+0" +[[deps.OpenSpecFun_jll]] +deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Pkg"] +git-tree-sha1 = "13652491f6856acfd2db29360e1bbcd4565d04f1" +uuid = "efe28fd5-8261-553b-a9e1-b2916fc3738e" +version = "0.5.5+0" + [[deps.OrderedCollections]] git-tree-sha1 = "85f8e6578bf1f9ee0d11e7bb1b1456435479d47c" uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d" version = "1.4.1" +[[deps.PaddedViews]] +deps = ["OffsetArrays"] +git-tree-sha1 = "03a7a85b76381a3d04c7a1656039197e70eda03d" +uuid = "5432bcbf-9aad-5242-b902-cca2824c8663" +version = "0.5.11" + [[deps.Parsers]] deps = ["Dates", "SnoopPrecompile"] git-tree-sha1 = "b64719e8b4504983c7fca6cc9db3ebc8acc2a4d6" @@ -303,6 +499,12 @@ git-tree-sha1 = "43d4448b5a568ee4bca8c77d6af2cedd721999f6" uuid = "c3e4b0f8-55cb-11ea-2926-15256bba5781" version = "0.19.16" +[[deps.PooledArrays]] +deps = ["DataAPI", "Future"] +git-tree-sha1 = "a6062fe4063cdafe78f4a0a81cfffb89721b30e7" +uuid = "2dfb63ee-cc39-5dd5-95bd-886bf059d720" +version = "1.4.2" + [[deps.PrecompileSignatures]] git-tree-sha1 = "18ef344185f25ee9d51d80e179f8dad33dc48eb1" uuid = "91cefc8d-f054-46dc-8f8c-26e11d7c5411" @@ -314,6 +516,12 @@ git-tree-sha1 = "47e5f437cc0e7ef2ce8406ce1e7e24d44915f88d" uuid = "21216c6a-2e73-6563-6e65-726566657250" version = "1.3.0" +[[deps.PrettyTables]] +deps = ["Crayons", "Formatting", "LaTeXStrings", "Markdown", "Reexport", "StringManipulation", "Tables"] +git-tree-sha1 = "96f6db03ab535bdb901300f88335257b0018689d" +uuid = "08abe8d2-0d0c-5749-adfa-8a2ac140af0d" +version = "2.2.2" + [[deps.Printf]] deps = ["Unicode"] uuid = "de0858da-6303-5e67-8744-51eddeeeb8d7" @@ -326,6 +534,11 @@ uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb" deps = ["SHA", "Serialization"] uuid = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" +[[deps.Reexport]] +git-tree-sha1 = "45e428421666073eab6f2da5c9d310d99bb12f9b" +uuid = "189a3867-3050-52da-a836-e630ba90ab69" +version = "1.2.2" + [[deps.RegistryInstances]] deps = ["LazilyInitializedFields", "Pkg", "TOML", "Tar"] git-tree-sha1 = "ffd19052caf598b8653b99404058fce14828be51" @@ -354,6 +567,12 @@ git-tree-sha1 = "f94f779c94e58bf9ea243e77a37e16d9de9126bd" uuid = "6c6a2e73-6563-6170-7368-637461726353" version = "1.1.1" +[[deps.SentinelArrays]] +deps = ["Dates", "Random"] +git-tree-sha1 = "efd23b378ea5f2db53a55ae53d3133de4e080aa9" +uuid = "91c51154-3ec4-41a3-a24f-3f23e20d615c" +version = "1.3.16" + [[deps.Serialization]] uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b" @@ -370,12 +589,48 @@ version = "1.0.1" [[deps.Sockets]] uuid = "6462fe0b-24de-5631-8697-dd941f90decc" +[[deps.SortingAlgorithms]] +deps = ["DataStructures"] +git-tree-sha1 = "a4ada03f999bd01b3a25dcaa30b2d929fe537e00" +uuid = "a2af1166-a08f-5f64-846c-94a0d3cef48c" +version = "1.1.0" + +[[deps.SparseArrays]] +deps = ["LinearAlgebra", "Random"] +uuid = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" + +[[deps.SpecialFunctions]] +deps = ["ChainRulesCore", "IrrationalConstants", "LogExpFunctions", "OpenLibm_jll", "OpenSpecFun_jll"] +git-tree-sha1 = "d75bda01f8c31ebb72df80a46c88b25d1c79c56d" +uuid = "276daf66-3868-5448-9aa4-cd146d93841b" +version = "2.1.7" + +[[deps.StackViews]] +deps = ["OffsetArrays"] +git-tree-sha1 = "46e589465204cd0c08b4bd97385e4fa79a0c770c" +uuid = "cae243ae-269e-4f55-b966-ac2d0dc13c15" +version = "0.1.1" + +[[deps.Statistics]] +deps = ["LinearAlgebra", "SparseArrays"] +uuid = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" + [[deps.StringEncodings]] deps = ["Libiconv_jll"] git-tree-sha1 = "50ccd5ddb00d19392577902f0079267a72c5ab04" uuid = "69024149-9ee7-55f6-a4c4-859efe599b68" version = "0.3.5" +[[deps.StringManipulation]] +git-tree-sha1 = "46da2434b41f41ac3594ee9816ce5541c6096123" +uuid = "892a3eda-7b42-436c-8928-eab12a02cf0e" +version = "0.3.0" + +[[deps.Suppressor]] +git-tree-sha1 = "c6ed566db2fe3931292865b966d6d140b7ef32a9" +uuid = "fd094767-a336-5f1f-9728-57cf17d0bbfb" +version = "0.2.1" + [[deps.TOML]] deps = ["Dates"] uuid = "fa267f1f-6049-4f14-aa54-33bafae1ed76" @@ -398,6 +653,12 @@ deps = ["ArgTools", "SHA"] uuid = "a4e569a6-e804-4fa4-b0f3-eef7a1d5b13e" version = "1.10.1" +[[deps.TensorCore]] +deps = ["LinearAlgebra"] +git-tree-sha1 = "1feb45f88d133a655e001435632f019a9a1bcdb6" +uuid = "62fd8b95-f654-4bbd-a8a5-9c27f68ccd50" +version = "0.1.1" + [[deps.Test]] deps = ["InteractiveUtils", "Logging", "Random", "Serialization"] uuid = "8dfed614-e22c-5e08-85e1-65c5234f0b40" @@ -425,12 +686,24 @@ uuid = "cf7118a7-6976-5b1a-9a39-7adc72f591a4" [[deps.Unicode]] uuid = "4ec0a83e-493e-50e2-b9ac-8f72acf5a8f5" +[[deps.WeakRefStrings]] +deps = ["DataAPI", "InlineStrings", "Parsers"] +git-tree-sha1 = "b1be2855ed9ed8eac54e5caff2afcdb442d52c23" +uuid = "ea10d353-3f73-51f8-a26c-33c1cb351aa5" +version = "1.4.2" + [[deps.YAML]] deps = ["Base64", "Dates", "Printf", "StringEncodings"] git-tree-sha1 = "dbc7f1c0012a69486af79c8bcdb31be820670ba2" uuid = "ddb6d928-2868-570f-bddf-ab3f9cf99eb6" version = "0.4.8" +[[deps.ZipFile]] +deps = ["Libdl", "Printf", "Zlib_jll"] +git-tree-sha1 = "f492b7fe1698e623024e873244f10d89c95c340a" +uuid = "a5390f91-8eb1-5f08-bee0-b1d1ffed6cea" +version = "0.10.1" + [[deps.Zlib_jll]] deps = ["Libdl"] uuid = "83775a58-1f1d-513f-b197-d71354ab007a" diff --git a/docs/Project.toml b/docs/Project.toml index 135986b..ee773f1 100644 --- a/docs/Project.toml +++ b/docs/Project.toml @@ -1,4 +1,10 @@ [deps] +CSV = "336ed68f-0bac-5ca0-87d4-7b16caf5d00b" +CategoricalArrays = "324d7699-5711-5eae-9e2f-1d82baa6b597" +DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0" +DemoCards = "311a05b2-6137-4a5a-b473-18580a3d38b5" Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4" DocumenterCitations = "daee34ce-89f3-4625-b898-19384cb65244" +Downloads = "f43a241f-c20a-4ad4-852c-f6b1247861c6" Pluto = "c3e4b0f8-55cb-11ea-2926-15256bba5781" +ZipFile = "a5390f91-8eb1-5f08-bee0-b1d1ffed6cea" diff --git a/docs/ddc.bib b/docs/ddc.bib index fc6365a..1df665e 100644 --- a/docs/ddc.bib +++ b/docs/ddc.bib @@ -39,7 +39,7 @@ @article{hotz1993 @incollection{rust_chapter_1994, title = {Chapter 51 Structural estimation of markov decision processes}, editor = {Robert F. Engle and Daniel L. McFadden}, - series = {Handbook of Econometrics}, + booktitle = {Handbook of Econometrics}, volume = {4}, isbn = {1573-4412}, url = {http://www.sciencedirect.com/science/article/B7GX7-4FPWV09-P/2/e9b682c3d248e68bdb50c9fbe88ca778}, @@ -47,7 +47,7 @@ @incollection{rust_chapter_1994 author = {John Rust}, year = {1994}, pages = {3081--3143} - +} @article{rr1995, author={Rust,John and Rothwell,Geoffrey}, @@ -75,3 +75,24 @@ @TECHREPORT{rr1995w abstract = {This paper presents a dynamic programming (DP) model of an electric utility's optimal policy for operating a nuclear power plant (NPP). The utility chooses the level of capacity utilization of the NPP as a function of signals about the NPP's current operating state. In each period the utility must determine whether or not to operate the reactor, or shut it down for preventive maintenance or refueling, or to permanently close the plant. Maintenance performed during periodic refueling outages partially ``regenerates'' the NPP, reducing the risk of unplanned forced outages in succeeding periods. Using monthly data on U.S. NPPs in the post-TMI era we estimate parameters of the utility's profit function, the failure processes that lead to unplanned forced outages, and the parameters governing the duration of refueling outages. These parameters imply an endogenous distribution of operating spells and capacity utilization levels that depend on the NPP's age, signals the operator receives about the NPP's current operating state, and the duration since last refueling. The estimates of the DP model reveal that utilities appear responsive to NRC regulation insofar as they impute a very high cost to unplanned and forced outages. Utilities are also highly averse to causing unnecessary wear and tear on their NPP's caused by stop/start operation of their NPP's including planned and unplanned outages. Overall, the DP model yields very accurate predictions of nuclear power generation including the impact of the relatively rare event of NPP decommissionings.}, url = {http://EconPapers.repec.org/RePEc:wpa:wuwpmi:9502001} } + +@article{magnac2002, + ISSN = {00129682, 14680262}, + URL = {http://www.jstor.org/stable/2692293}, + author = {Thierry Magnac and David Thesmar}, + journal = {Econometrica}, + number = {2}, + pages = {801--816}, + publisher = {[Wiley, Econometric Society]}, + title = {Identifying Dynamic Discrete Decision Processes}, + urldate = {2022-12-01}, + volume = {70}, + year = {2002} +} + +@misc{schrimpf2011, +author={Paul Schrimpf}, +year={2011}, +title={Structural Dynamic Models}, +url={https://faculty.arts.ubc.ca/pschrimpf/628/dynamic.pdf} +} diff --git a/docs/demos/Rust_&_Rothwell/rr.jl b/docs/demos/Rust_&_Rothwell/rr.jl new file mode 100644 index 0000000..d01a5b1 --- /dev/null +++ b/docs/demos/Rust_&_Rothwell/rr.jl @@ -0,0 +1,53 @@ +# --- +# title: Reproducing Rust & Rothwell (1995) +# date: 2022 +# author: Paul Schrimpf +# --- + +using ZipFile, DataFrames, Downloads, CSV, CategoricalArrays + +# # Data +# The data for this paper is available from the *Journal of Applied Econometrics* data archive. +# It's supplied as a zip archive containing text files. Each text file named nameX.mon contains monthly data from a plant, reactor number X. There's also nukesum.asc with time-variant information about each reactor and plant. +# +# First, we donwload the zip archive. +dataurl="http://qed.econ.queensu.ca/jae/1995-v10.S/rust-rothwell/rr-data.zip" +datazip="rr-data.zip" +if !isfile(datazip) + Downloads.download(dataurl, datazip) +end + +# Now, we read the time invariant information. + +nukesum = let + zfr = ZipFile.Reader(datazip) + df = filter(x->x.name=="nukesum.asc",zfr.files)[1] |> + x->CSV.File(x, header=false, delim=" ", ignorerepeated=true) |> + DataFrame + rename!(df, ["name","firm", + "start month","start day","start year", + "thermal capacity","nameplate rating", + "net power","arch engineer","steam system", + "builder","turbine","state"]) + df +end + +# And the time-varying information. + +nuket = let + zfr = ZipFile.Reader(datazip) + df = vcat([DataFrame(CSV.File(f, header=false, delim=" ", ignorerepeated=true)) + for f ∈ zfr.files if occursin(r"\.mon$", f.name)]...) + rename!(df, ["name","ID","steam system","year","month", + "vintage","age","hours refuel","hours planned outage", + "hours forced outage","hours total", + "scram in","scram out","number forced outages"]) + df[!,"steam system"] = recode(df[!,"steam system"], + 1=>"Babcock Wilcox",2=>"Combustion", 3=>"GE", 4=>"Westinghouse", + 5=>"Other1",6=>"Other2") + df[!,"vintage"] = recode(df[!,"vintage"], 0=>"preTMI", 1=>"postTMI") + df +end; + +describe(nuket) + diff --git a/docs/make.jl b/docs/make.jl index fa13590..a961bc0 100644 --- a/docs/make.jl +++ b/docs/make.jl @@ -1,9 +1,16 @@ using DynamicDiscreteChoice -using Documenter, DocumenterCitations +using Documenter, DocumenterCitations, DemoCards DocMeta.setdocmeta!(DynamicDiscreteChoice, :DocTestSetup, :(using DynamicDiscreteChoice); recursive=true) +# generate demo files +demopage, postprocess_cb, demo_assets = makedemos("demos") # this is the relative path to docs/ +# if there are generated css assets, pass it to Documenter.HTML +assets = [] +isnothing(demo_assets) || (push!(assets, demo_assets)) + + bib = CitationBibliography("ddc.bib") makedocs(bib; @@ -13,14 +20,20 @@ makedocs(bib; sitename="DynamicDiscreteChoice.jl", format=Documenter.HTML(; prettyurls=get(ENV, "CI", "false") == "true", - canonical="https://ubcecon567.github.io/DynamicDiscreteChoice.jl", - assets=String[], + canonical="https://UBCECON567.github.io/DynamicDiscreteChoice.jl", + assets=assets, ), pages=[ "Home" => "index.md", + "Method" => "method.md", + "Example" => "rr-example.md", + demopage, ], ) +# for democards +postprocess_cb() + deploydocs(; repo="github.com/UBCECON567/DynamicDiscreteChoice.jl", devbranch="main", diff --git a/docs/pluto/rr.jl b/docs/pluto/rr.jl deleted file mode 100644 index 286ce1a..0000000 --- a/docs/pluto/rr.jl +++ /dev/null @@ -1,440 +0,0 @@ -### A Pluto.jl notebook ### -# v0.18.4 - -using Markdown -using InteractiveUtils - -# ╔═╡ c4fd65b6-fdad-421d-9f29-bee3adaf925c -using ZipFile, DataFrames, Downloads, CSV, CategoricalArrays - -# ╔═╡ 6807f3c0-aa36-11ec-03fc-29ebe8385366 -md""" - -# Reproducing Rust & Rothwell (1995) - -""" - -# ╔═╡ 61f8d704-c51f-4705-951d-1744b4fcf553 -md""" -# Data - -The data for this paper is available from the *Journal of Applied Econometrics* data archive. - -It's supplied as a zip archive containing text files. Each text file named nameX.mon contains monthly data from a plant, reactor number X. There's also nukesum.asc with time-variant information about each reactor and plant. -""" - -# ╔═╡ 5b67e221-e2a7-4f6f-9ce8-23283b14d4dd -md""" -First, we donwload the zip archive. -""" - -# ╔═╡ f820f435-b42a-49ae-9d56-26f1a88a98ae -datazip = let - dataurl="http://qed.econ.queensu.ca/jae/1995-v10.S/rust-rothwell/rr-data.zip" - datazip="rr-data.zip" - if !isfile(datazip) - Downloads.download(dataurl, datazip) - end - datazip -end - -# ╔═╡ 04541357-8972-456a-823f-ed53e513f421 -md""" -Now, we read the time invariant information. -""" - -# ╔═╡ d9b2d66f-43fd-459d-bb73-54b118338a66 -nukesum = let - zfr = ZipFile.Reader(datazip) - df = filter(x->x.name=="nukesum.asc",zfr.files)[1] |> - x->CSV.File(x, header=false, delim=" ", ignorerepeated=true) |> - DataFrame - rename!(df, ["name","firm", - "start month","start day","start year", - "thermal capacity","nameplate rating", - "net power","arch engineer","steam system", - "builder","turbine","state"]) - df -end - - -# ╔═╡ 4acdf7c7-9fa3-4fbc-8554-d9d1b5c67350 -md"And the time-varying information." - -# ╔═╡ 589992f8-15de-4ca3-ad75-aae181c63038 -nuket = let - zfr = ZipFile.Reader(datazip) - df = vcat([DataFrame(CSV.File(f, header=false, delim=" ", ignorerepeated=true)) - for f ∈ zfr.files if occursin(r"\.mon$", f.name)]...) - rename!(df, ["name","ID","steam system","year","month", - "vintage","age","hours refuel","hours planned outage", - "hours forced outage","hours total", - "scram in","scram out","number forced outages"]) - df[!,"steam system"] = recode(df[!,"steam system"], - 1=>"Babcock Wilcox",2=>"Combustion", 3=>"GE", 4=>"Westinghouse", - 5=>"Other1",6=>"Other2") - df[!,"vintage"] = recode(df[!,"vintage"], 0=>"preTMI", 1=>"postTMI") - df -end; - -# ╔═╡ a5a47b6d-08da-4a2d-849d-1b9f9246c817 -describe(nuket) - -# ╔═╡ 3ec993cc-f50c-41ea-80f6-59d5c0142292 - - -# ╔═╡ 00000000-0000-0000-0000-000000000001 -PLUTO_PROJECT_TOML_CONTENTS = """ -[deps] -CSV = "336ed68f-0bac-5ca0-87d4-7b16caf5d00b" -CategoricalArrays = "324d7699-5711-5eae-9e2f-1d82baa6b597" -DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0" -Downloads = "f43a241f-c20a-4ad4-852c-f6b1247861c6" -ZipFile = "a5390f91-8eb1-5f08-bee0-b1d1ffed6cea" - -[compat] -CSV = "~0.10.3" -CategoricalArrays = "~0.10.5" -DataFrames = "~1.3.2" -ZipFile = "~0.9.4" -""" - -# ╔═╡ 00000000-0000-0000-0000-000000000002 -PLUTO_MANIFEST_TOML_CONTENTS = """ -# This file is machine-generated - editing it directly is not advised - -julia_version = "1.7.2" -manifest_format = "2.0" - -[[deps.ArgTools]] -uuid = "0dad84c5-d112-42e6-8d28-ef12dabb789f" - -[[deps.Artifacts]] -uuid = "56f22d72-fd6d-98f1-02f0-08ddc0907c33" - -[[deps.Base64]] -uuid = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f" - -[[deps.CSV]] -deps = ["CodecZlib", "Dates", "FilePathsBase", "InlineStrings", "Mmap", "Parsers", "PooledArrays", "SentinelArrays", "Tables", "Unicode", "WeakRefStrings"] -git-tree-sha1 = "9310d9495c1eb2e4fa1955dd478660e2ecab1fbb" -uuid = "336ed68f-0bac-5ca0-87d4-7b16caf5d00b" -version = "0.10.3" - -[[deps.CategoricalArrays]] -deps = ["DataAPI", "Future", "Missings", "Printf", "Requires", "Statistics", "Unicode"] -git-tree-sha1 = "109664d3a6f2202b1225478335ea8fea3cd8706b" -uuid = "324d7699-5711-5eae-9e2f-1d82baa6b597" -version = "0.10.5" - -[[deps.CodecZlib]] -deps = ["TranscodingStreams", "Zlib_jll"] -git-tree-sha1 = "ded953804d019afa9a3f98981d99b33e3db7b6da" -uuid = "944b1d66-785c-5afd-91f1-9de20f533193" -version = "0.7.0" - -[[deps.Compat]] -deps = ["Base64", "Dates", "DelimitedFiles", "Distributed", "InteractiveUtils", "LibGit2", "Libdl", "LinearAlgebra", "Markdown", "Mmap", "Pkg", "Printf", "REPL", "Random", "SHA", "Serialization", "SharedArrays", "Sockets", "SparseArrays", "Statistics", "Test", "UUIDs", "Unicode"] -git-tree-sha1 = "96b0bc6c52df76506efc8a441c6cf1adcb1babc4" -uuid = "34da2185-b29b-5c13-b0c7-acf172513d20" -version = "3.42.0" - -[[deps.CompilerSupportLibraries_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "e66e0078-7015-5450-92f7-15fbd957f2ae" - -[[deps.Crayons]] -git-tree-sha1 = "249fe38abf76d48563e2f4556bebd215aa317e15" -uuid = "a8cc5b0e-0ffa-5ad4-8c14-923d3ee1735f" -version = "4.1.1" - -[[deps.DataAPI]] -git-tree-sha1 = "cc70b17275652eb47bc9e5f81635981f13cea5c8" -uuid = "9a962f9c-6df0-11e9-0e5d-c546b8b5ee8a" -version = "1.9.0" - -[[deps.DataFrames]] -deps = ["Compat", "DataAPI", "Future", "InvertedIndices", "IteratorInterfaceExtensions", "LinearAlgebra", "Markdown", "Missings", "PooledArrays", "PrettyTables", "Printf", "REPL", "Reexport", "SortingAlgorithms", "Statistics", "TableTraits", "Tables", "Unicode"] -git-tree-sha1 = "ae02104e835f219b8930c7664b8012c93475c340" -uuid = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0" -version = "1.3.2" - -[[deps.DataStructures]] -deps = ["Compat", "InteractiveUtils", "OrderedCollections"] -git-tree-sha1 = "3daef5523dd2e769dad2365274f760ff5f282c7d" -uuid = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8" -version = "0.18.11" - -[[deps.DataValueInterfaces]] -git-tree-sha1 = "bfc1187b79289637fa0ef6d4436ebdfe6905cbd6" -uuid = "e2d170a0-9d28-54be-80f0-106bbe20a464" -version = "1.0.0" - -[[deps.Dates]] -deps = ["Printf"] -uuid = "ade2ca70-3891-5945-98fb-dc099432e06a" - -[[deps.DelimitedFiles]] -deps = ["Mmap"] -uuid = "8bb1440f-4735-579b-a4ab-409b98df4dab" - -[[deps.Distributed]] -deps = ["Random", "Serialization", "Sockets"] -uuid = "8ba89e20-285c-5b6f-9357-94700520ee1b" - -[[deps.Downloads]] -deps = ["ArgTools", "LibCURL", "NetworkOptions"] -uuid = "f43a241f-c20a-4ad4-852c-f6b1247861c6" - -[[deps.FilePathsBase]] -deps = ["Compat", "Dates", "Mmap", "Printf", "Test", "UUIDs"] -git-tree-sha1 = "129b104185df66e408edd6625d480b7f9e9823a0" -uuid = "48062228-2e41-5def-b9a4-89aafe57970f" -version = "0.9.18" - -[[deps.Formatting]] -deps = ["Printf"] -git-tree-sha1 = "8339d61043228fdd3eb658d86c926cb282ae72a8" -uuid = "59287772-0a20-5a39-b81b-1366585eb4c0" -version = "0.4.2" - -[[deps.Future]] -deps = ["Random"] -uuid = "9fa8497b-333b-5362-9e8d-4d0656e87820" - -[[deps.InlineStrings]] -deps = ["Parsers"] -git-tree-sha1 = "61feba885fac3a407465726d0c330b3055df897f" -uuid = "842dd82b-1e85-43dc-bf29-5d0ee9dffc48" -version = "1.1.2" - -[[deps.InteractiveUtils]] -deps = ["Markdown"] -uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240" - -[[deps.InvertedIndices]] -git-tree-sha1 = "bee5f1ef5bf65df56bdd2e40447590b272a5471f" -uuid = "41ab1584-1d38-5bbf-9106-f11c6c58b48f" -version = "1.1.0" - -[[deps.IteratorInterfaceExtensions]] -git-tree-sha1 = "a3f24677c21f5bbe9d2a714f95dcd58337fb2856" -uuid = "82899510-4779-5014-852e-03e436cf321d" -version = "1.0.0" - -[[deps.LibCURL]] -deps = ["LibCURL_jll", "MozillaCACerts_jll"] -uuid = "b27032c2-a3e7-50c8-80cd-2d36dbcbfd21" - -[[deps.LibCURL_jll]] -deps = ["Artifacts", "LibSSH2_jll", "Libdl", "MbedTLS_jll", "Zlib_jll", "nghttp2_jll"] -uuid = "deac9b47-8bc7-5906-a0fe-35ac56dc84c0" - -[[deps.LibGit2]] -deps = ["Base64", "NetworkOptions", "Printf", "SHA"] -uuid = "76f85450-5226-5b5a-8eaa-529ad045b433" - -[[deps.LibSSH2_jll]] -deps = ["Artifacts", "Libdl", "MbedTLS_jll"] -uuid = "29816b5a-b9ab-546f-933c-edad1886dfa8" - -[[deps.Libdl]] -uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb" - -[[deps.LinearAlgebra]] -deps = ["Libdl", "libblastrampoline_jll"] -uuid = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" - -[[deps.Logging]] -uuid = "56ddb016-857b-54e1-b83d-db4d58db5568" - -[[deps.Markdown]] -deps = ["Base64"] -uuid = "d6f4376e-aef5-505a-96c1-9c027394607a" - -[[deps.MbedTLS_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "c8ffd9c3-330d-5841-b78e-0817d7145fa1" - -[[deps.Missings]] -deps = ["DataAPI"] -git-tree-sha1 = "bf210ce90b6c9eed32d25dbcae1ebc565df2687f" -uuid = "e1d29d7a-bbdc-5cf2-9ac0-f12de2c33e28" -version = "1.0.2" - -[[deps.Mmap]] -uuid = "a63ad114-7e13-5084-954f-fe012c677804" - -[[deps.MozillaCACerts_jll]] -uuid = "14a3606d-f60d-562e-9121-12d972cd8159" - -[[deps.NetworkOptions]] -uuid = "ca575930-c2e3-43a9-ace4-1e988b2c1908" - -[[deps.OpenBLAS_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "Libdl"] -uuid = "4536629a-c528-5b80-bd46-f80d51c5b363" - -[[deps.OrderedCollections]] -git-tree-sha1 = "85f8e6578bf1f9ee0d11e7bb1b1456435479d47c" -uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d" -version = "1.4.1" - -[[deps.Parsers]] -deps = ["Dates"] -git-tree-sha1 = "85b5da0fa43588c75bb1ff986493443f821c70b7" -uuid = "69de0a69-1ddd-5017-9359-2bf0b02dc9f0" -version = "2.2.3" - -[[deps.Pkg]] -deps = ["Artifacts", "Dates", "Downloads", "LibGit2", "Libdl", "Logging", "Markdown", "Printf", "REPL", "Random", "SHA", "Serialization", "TOML", "Tar", "UUIDs", "p7zip_jll"] -uuid = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" - -[[deps.PooledArrays]] -deps = ["DataAPI", "Future"] -git-tree-sha1 = "db3a23166af8aebf4db5ef87ac5b00d36eb771e2" -uuid = "2dfb63ee-cc39-5dd5-95bd-886bf059d720" -version = "1.4.0" - -[[deps.PrettyTables]] -deps = ["Crayons", "Formatting", "Markdown", "Reexport", "Tables"] -git-tree-sha1 = "dfb54c4e414caa595a1f2ed759b160f5a3ddcba5" -uuid = "08abe8d2-0d0c-5749-adfa-8a2ac140af0d" -version = "1.3.1" - -[[deps.Printf]] -deps = ["Unicode"] -uuid = "de0858da-6303-5e67-8744-51eddeeeb8d7" - -[[deps.REPL]] -deps = ["InteractiveUtils", "Markdown", "Sockets", "Unicode"] -uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb" - -[[deps.Random]] -deps = ["SHA", "Serialization"] -uuid = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" - -[[deps.Reexport]] -git-tree-sha1 = "45e428421666073eab6f2da5c9d310d99bb12f9b" -uuid = "189a3867-3050-52da-a836-e630ba90ab69" -version = "1.2.2" - -[[deps.Requires]] -deps = ["UUIDs"] -git-tree-sha1 = "838a3a4188e2ded87a4f9f184b4b0d78a1e91cb7" -uuid = "ae029012-a4dd-5104-9daa-d747884805df" -version = "1.3.0" - -[[deps.SHA]] -uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce" - -[[deps.SentinelArrays]] -deps = ["Dates", "Random"] -git-tree-sha1 = "6a2f7d70512d205ca8c7ee31bfa9f142fe74310c" -uuid = "91c51154-3ec4-41a3-a24f-3f23e20d615c" -version = "1.3.12" - -[[deps.Serialization]] -uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b" - -[[deps.SharedArrays]] -deps = ["Distributed", "Mmap", "Random", "Serialization"] -uuid = "1a1011a3-84de-559e-8e89-a11a2f7dc383" - -[[deps.Sockets]] -uuid = "6462fe0b-24de-5631-8697-dd941f90decc" - -[[deps.SortingAlgorithms]] -deps = ["DataStructures"] -git-tree-sha1 = "b3363d7460f7d098ca0912c69b082f75625d7508" -uuid = "a2af1166-a08f-5f64-846c-94a0d3cef48c" -version = "1.0.1" - -[[deps.SparseArrays]] -deps = ["LinearAlgebra", "Random"] -uuid = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" - -[[deps.Statistics]] -deps = ["LinearAlgebra", "SparseArrays"] -uuid = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" - -[[deps.TOML]] -deps = ["Dates"] -uuid = "fa267f1f-6049-4f14-aa54-33bafae1ed76" - -[[deps.TableTraits]] -deps = ["IteratorInterfaceExtensions"] -git-tree-sha1 = "c06b2f539df1c6efa794486abfb6ed2022561a39" -uuid = "3783bdb8-4a98-5b6b-af9a-565f29a5fe9c" -version = "1.0.1" - -[[deps.Tables]] -deps = ["DataAPI", "DataValueInterfaces", "IteratorInterfaceExtensions", "LinearAlgebra", "OrderedCollections", "TableTraits", "Test"] -git-tree-sha1 = "5ce79ce186cc678bbb5c5681ca3379d1ddae11a1" -uuid = "bd369af6-aec1-5ad0-b16a-f7cc5008161c" -version = "1.7.0" - -[[deps.Tar]] -deps = ["ArgTools", "SHA"] -uuid = "a4e569a6-e804-4fa4-b0f3-eef7a1d5b13e" - -[[deps.Test]] -deps = ["InteractiveUtils", "Logging", "Random", "Serialization"] -uuid = "8dfed614-e22c-5e08-85e1-65c5234f0b40" - -[[deps.TranscodingStreams]] -deps = ["Random", "Test"] -git-tree-sha1 = "216b95ea110b5972db65aa90f88d8d89dcb8851c" -uuid = "3bb67fe8-82b1-5028-8e26-92a6c54297fa" -version = "0.9.6" - -[[deps.UUIDs]] -deps = ["Random", "SHA"] -uuid = "cf7118a7-6976-5b1a-9a39-7adc72f591a4" - -[[deps.Unicode]] -uuid = "4ec0a83e-493e-50e2-b9ac-8f72acf5a8f5" - -[[deps.WeakRefStrings]] -deps = ["DataAPI", "InlineStrings", "Parsers"] -git-tree-sha1 = "b1be2855ed9ed8eac54e5caff2afcdb442d52c23" -uuid = "ea10d353-3f73-51f8-a26c-33c1cb351aa5" -version = "1.4.2" - -[[deps.ZipFile]] -deps = ["Libdl", "Printf", "Zlib_jll"] -git-tree-sha1 = "3593e69e469d2111389a9bd06bac1f3d730ac6de" -uuid = "a5390f91-8eb1-5f08-bee0-b1d1ffed6cea" -version = "0.9.4" - -[[deps.Zlib_jll]] -deps = ["Libdl"] -uuid = "83775a58-1f1d-513f-b197-d71354ab007a" - -[[deps.libblastrampoline_jll]] -deps = ["Artifacts", "Libdl", "OpenBLAS_jll"] -uuid = "8e850b90-86db-534c-a0d3-1478176c7d93" - -[[deps.nghttp2_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "8e850ede-7688-5339-a07c-302acd2aaf8d" - -[[deps.p7zip_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "3f19e933-33d8-53b3-aaab-bd5110c3b7a0" -""" - -# ╔═╡ Cell order: -# ╟─6807f3c0-aa36-11ec-03fc-29ebe8385366 -# ╟─61f8d704-c51f-4705-951d-1744b4fcf553 -# ╠═c4fd65b6-fdad-421d-9f29-bee3adaf925c -# ╟─5b67e221-e2a7-4f6f-9ce8-23283b14d4dd -# ╠═f820f435-b42a-49ae-9d56-26f1a88a98ae -# ╟─04541357-8972-456a-823f-ed53e513f421 -# ╠═d9b2d66f-43fd-459d-bb73-54b118338a66 -# ╟─4acdf7c7-9fa3-4fbc-8554-d9d1b5c67350 -# ╠═589992f8-15de-4ca3-ad75-aae181c63038 -# ╠═a5a47b6d-08da-4a2d-849d-1b9f9246c817 -# ╠═3ec993cc-f50c-41ea-80f6-59d5c0142292 -# ╟─00000000-0000-0000-0000-000000000001 -# ╟─00000000-0000-0000-0000-000000000002 diff --git a/docs/rr-data.zip b/docs/rr-data.zip new file mode 100644 index 0000000..70e55de Binary files /dev/null and b/docs/rr-data.zip differ diff --git a/docs/src/demos/Rust_&_Rothwell/rr-data.zip b/docs/src/demos/Rust_&_Rothwell/rr-data.zip new file mode 100644 index 0000000..70e55de Binary files /dev/null and b/docs/src/demos/Rust_&_Rothwell/rr-data.zip differ diff --git a/docs/src/method.md b/docs/src/method.md new file mode 100644 index 0000000..c48cc66 --- /dev/null +++ b/docs/src/method.md @@ -0,0 +1,10 @@ +# Estimation Method + +This package provides a constructive, plug-in estimator for dynamic discrete choice models in discrete time with discrete states and actions. + +The estimator is based on the constructive identification argument in [magnac2002](@cite). See [schrimpf2011](@cite) for an overview. + +... + + + diff --git a/docs/src/references..md b/docs/src/references..md new file mode 100644 index 0000000..4b47677 --- /dev/null +++ b/docs/src/references..md @@ -0,0 +1,4 @@ +# References + +```@bibliography +``` \ No newline at end of file diff --git a/docs/src/rr-example.md b/docs/src/rr-example.md new file mode 100644 index 0000000..479b2b5 --- /dev/null +++ b/docs/src/rr-example.md @@ -0,0 +1,37 @@ +# Example: [rr1995](@cite) + +[rr1995](@cite) use a dynamic discrete choice model to analyze how Three Mile Island and the associated regulatory changes affected nuclear power plant operation. + +## Load Data + +```@example +using ZipFile, DataFrames, Downloads, CSV, CategoricalArrays +dataurl="http://qed.econ.queensu.ca/jae/1995-v10.S/rust-rothwell/rr-data.zip" +datazip="rr-data.zip" +if !isfile(datazip) + Downloads.download(dataurl, datazip) +end + +nukesum = let + zfr = ZipFile.Reader(datazip) + df = filter(x->x.name=="nukesum.asc",zfr.files)[1] |> + x->CSV.File(x, header=false, delim=" ", ignorerepeated=true) |> + DataFrame + rename!(df, ["name","firm", + "start month","start day","start year", + "thermal capacity","nameplate rating", + "net power","arch engineer","steam system", + "builder","turbine","state"]) + df +end + +describe(nukesum) +``` + +We can write documentation with code examples in Documenter style md files, but if we want to include lots of code, it might be more convenient to instead use +[Literate.jl](https://github.com/fredrikekre/Literate.jl), perhaps in combination with [DemoCards.jl](https://github.com/JuliaDocs/DemoCards.jl). + +It's possible to combine other literate programming formats with documenter. I used [Weave.jl](https://github.com/JunoLab/Weave.jl) with Documenter in [GMMInference.jl](https://github.com/schrimpf/GMMInference.jl). + +[Pluto.jl can also be integrated with Documenter](https://github.com/fonsp/Pluto.jl/discussions/1345). +