From 1188bdbec7f2391fceecbafbe44bd594ed0adfbc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20F=C3=A9votte?= Date: Fri, 10 Apr 2020 22:23:17 +0200 Subject: [PATCH] =?UTF-8?q?Ex=2003-3:=20premi=C3=A8re=20version=20(sujet?= =?UTF-8?q?=201)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- module3/exo3/Manifest.toml | 730 ++++++ module3/exo3/Project.toml | 14 + module3/exo3/download.stamp | 1 + module3/exo3/exercice.html | 1268 +++++++++ module3/exo3/exercice.jmd | 543 ++++ module3/exo3/make.jl | 10 + module3/exo3/weekly_in_situ_co2_mlo.csv | 3200 +++++++++++++++++++++++ 7 files changed, 5766 insertions(+) create mode 100644 module3/exo3/Manifest.toml create mode 100644 module3/exo3/Project.toml create mode 100644 module3/exo3/download.stamp create mode 100644 module3/exo3/exercice.html create mode 100644 module3/exo3/exercice.jmd create mode 100644 module3/exo3/make.jl create mode 100644 module3/exo3/weekly_in_situ_co2_mlo.csv diff --git a/module3/exo3/Manifest.toml b/module3/exo3/Manifest.toml new file mode 100644 index 0000000..79755bd --- /dev/null +++ b/module3/exo3/Manifest.toml @@ -0,0 +1,730 @@ +# This file is machine-generated - editing it directly is not advised + +[[AbstractFFTs]] +deps = ["LinearAlgebra"] +git-tree-sha1 = "051c95d6836228d120f5f4b984dd5aba1624f716" +uuid = "621f4979-c628-5d54-868e-fcf4e3e8185c" +version = "0.5.0" + +[[Arpack]] +deps = ["Arpack_jll", "Libdl", "LinearAlgebra"] +git-tree-sha1 = "2ff92b71ba1747c5fdd541f8fc87736d82f40ec9" +uuid = "7d9fca2a-8960-54d3-9f78-7d1dccf2cb97" +version = "0.4.0" + +[[Arpack_jll]] +deps = ["Libdl", "OpenBLAS_jll", "Pkg"] +git-tree-sha1 = "e214a9b9bd1b4e1b4f15b22c0994862b66af7ff7" +uuid = "68821587-b530-5797-8361-c406ea357684" +version = "3.5.0+3" + +[[ArrayInterface]] +deps = ["LinearAlgebra", "Requires", "SparseArrays"] +git-tree-sha1 = "b34d74dc877e6083c4c5c553a685e89e10ea4662" +uuid = "4fba245c-0d91-5ea0-9b3e-6abc04ee57a9" +version = "2.8.3" + +[[ArrayLayouts]] +deps = ["FillArrays", "LinearAlgebra"] +git-tree-sha1 = "f8904599065b57f51715faf6278126f853aef6fc" +uuid = "4c555306-a7a7-4459-81d9-ec55ddd5c99a" +version = "0.2.4" + +[[Base64]] +uuid = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f" + +[[BinaryProvider]] +deps = ["Libdl", "SHA"] +git-tree-sha1 = "5b08ed6036d9d3f0ee6369410b830f8873d4024c" +uuid = "b99e7846-7c00-51b0-8f62-c81ae34c0232" +version = "0.5.8" + +[[Bzip2_jll]] +deps = ["Libdl", "Pkg"] +git-tree-sha1 = "3663bfffede2ef41358b6fc2e1d8a6d50b3c3904" +uuid = "6e34b625-4abd-537c-b88f-471c36dfa7a0" +version = "1.0.6+2" + +[[CSV]] +deps = ["CategoricalArrays", "DataFrames", "Dates", "FilePathsBase", "Mmap", "Parsers", "PooledArrays", "Tables", "Unicode", "WeakRefStrings"] +git-tree-sha1 = "8fe77a5478781d59a9ba17f0ac47dda2be5f8ae7" +uuid = "336ed68f-0bac-5ca0-87d4-7b16caf5d00b" +version = "0.6.1" + +[[CategoricalArrays]] +deps = ["Compat", "DataAPI", "Future", "JSON", "Missings", "Printf", "Reexport", "Statistics", "Unicode"] +git-tree-sha1 = "23d7324164c89638c18f6d7f90d972fa9c4fa9fb" +uuid = "324d7699-5711-5eae-9e2f-1d82baa6b597" +version = "0.7.7" + +[[ColorTypes]] +deps = ["FixedPointNumbers", "Random"] +git-tree-sha1 = "c4c1cca28748906265ed62c788d6fe6f0134d264" +uuid = "3da002f7-5984-5a60-b8a6-cbb66c0b333f" +version = "0.10.0" + +[[Colors]] +deps = ["ColorTypes", "FixedPointNumbers", "InteractiveUtils", "Reexport"] +git-tree-sha1 = "2fdeb981ebcf52cd800ddb6a0aa5eac34153552d" +uuid = "5ae59095-9a9b-59fe-a467-6f913c188581" +version = "0.12.0" + +[[CommonSubexpressions]] +deps = ["Test"] +git-tree-sha1 = "efdaf19ab11c7889334ca247ff4c9f7c322817b0" +uuid = "bbf7d656-a473-5ed7-a52c-81e309532950" +version = "0.2.0" + +[[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 = "0198d18b28c093bef39872a22f1a897218a925f5" +uuid = "34da2185-b29b-5c13-b0c7-acf172513d20" +version = "3.8.0" + +[[CompilerSupportLibraries_jll]] +deps = ["Libdl", "Pkg"] +git-tree-sha1 = "7c4f882c41faa72118841185afc58a2eb00ef612" +uuid = "e66e0078-7015-5450-92f7-15fbd957f2ae" +version = "0.3.3+0" + +[[Contour]] +deps = ["StaticArrays"] +git-tree-sha1 = "6d56f927b33d3820561b8f89d7de311718683846" +uuid = "d38c429a-6771-53c6-b99e-75d170b6e991" +version = "0.5.2" + +[[DataAPI]] +git-tree-sha1 = "674b67f344687a88310213ddfa8a2b3c76cc4252" +uuid = "9a962f9c-6df0-11e9-0e5d-c546b8b5ee8a" +version = "1.1.0" + +[[DataFrames]] +deps = ["CategoricalArrays", "Compat", "DataAPI", "Future", "InvertedIndices", "IteratorInterfaceExtensions", "Missings", "PooledArrays", "Printf", "REPL", "Reexport", "SortingAlgorithms", "Statistics", "TableTraits", "Tables", "Unicode"] +git-tree-sha1 = "7d5bf815cc0b30253e3486e8ce2b93bf9d0faff6" +uuid = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0" +version = "0.20.2" + +[[DataInterpolations]] +deps = ["GaussianProcesses", "LinearAlgebra", "Optim", "RecipesBase", "RecursiveArrayTools", "Reexport"] +git-tree-sha1 = "5faf9a0324cbc3d92c072b8c46f2a7314eea73d2" +uuid = "82cc6244-b520-54b8-b5a6-8a565e85f1d0" +version = "2.0.0" + +[[DataStructures]] +deps = ["InteractiveUtils", "OrderedCollections"] +git-tree-sha1 = "73eb18320fe3ba58790c8b8f6f89420f0a622773" +uuid = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8" +version = "0.17.11" + +[[DataValueInterfaces]] +git-tree-sha1 = "bfc1187b79289637fa0ef6d4436ebdfe6905cbd6" +uuid = "e2d170a0-9d28-54be-80f0-106bbe20a464" +version = "1.0.0" + +[[Dates]] +deps = ["Printf"] +uuid = "ade2ca70-3891-5945-98fb-dc099432e06a" + +[[DelimitedFiles]] +deps = ["Mmap"] +uuid = "8bb1440f-4735-579b-a4ab-409b98df4dab" + +[[DiffResults]] +deps = ["StaticArrays"] +git-tree-sha1 = "da24935df8e0c6cf28de340b958f6aac88eaa0cc" +uuid = "163ba53b-c6d8-5494-b064-1a9d43ac40c5" +version = "1.0.2" + +[[DiffRules]] +deps = ["NaNMath", "Random", "SpecialFunctions"] +git-tree-sha1 = "eb0c34204c8410888844ada5359ac8b96292cfd1" +uuid = "b552c78f-8df3-52c6-915a-8e097449b14b" +version = "1.0.1" + +[[Distances]] +deps = ["LinearAlgebra", "Statistics"] +git-tree-sha1 = "23717536c81b63e250f682b0e0933769eecd1411" +uuid = "b4f34e82-e78d-54a5-968a-f98e89d6e8f7" +version = "0.8.2" + +[[Distributed]] +deps = ["Random", "Serialization", "Sockets"] +uuid = "8ba89e20-285c-5b6f-9357-94700520ee1b" + +[[Distributions]] +deps = ["FillArrays", "LinearAlgebra", "PDMats", "Printf", "QuadGK", "Random", "SpecialFunctions", "Statistics", "StatsBase", "StatsFuns"] +git-tree-sha1 = "55e1de79bd2c397e048ca47d251f8fa70e530550" +uuid = "31c24e10-a181-5473-b8eb-7969acd0382f" +version = "0.22.6" + +[[DocStringExtensions]] +deps = ["LibGit2", "Markdown", "Pkg", "Test"] +git-tree-sha1 = "88bb0edb352b16608036faadcc071adda068582a" +uuid = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae" +version = "0.8.1" + +[[Documenter]] +deps = ["Base64", "Dates", "DocStringExtensions", "InteractiveUtils", "JSON", "LibGit2", "Logging", "Markdown", "REPL", "Test", "Unicode"] +git-tree-sha1 = "646ebc3db49889ffeb4c36f89e5d82c6a26295ff" +uuid = "e30172f5-a6a5-5a46-863b-614d45cd2de4" +version = "0.24.7" + +[[ElasticArrays]] +git-tree-sha1 = "5b5b7cb8cba44bcf337b8af0a1f3e57c89468660" +uuid = "fdbdab4c-e67f-52f5-8c3f-e7b388dad3d4" +version = "1.0.0" + +[[ElasticPDMats]] +deps = ["LinearAlgebra", "MacroTools", "PDMats", "Test"] +git-tree-sha1 = "c6ac4406d9b4a549f7316fc746f7ccd5f1bcd2cd" +uuid = "2904ab23-551e-5aed-883f-487f97af5226" +version = "0.2.1" + +[[FFMPEG]] +deps = ["FFMPEG_jll"] +git-tree-sha1 = "c82bef6fc01e30d500f588cd01d29bdd44f1924e" +uuid = "c87230d0-a227-11e9-1b43-d7ebe4e7570a" +version = "0.3.0" + +[[FFMPEG_jll]] +deps = ["Bzip2_jll", "FreeType2_jll", "FriBidi_jll", "LAME_jll", "LibVPX_jll", "Libdl", "Ogg_jll", "OpenSSL_jll", "Opus_jll", "Pkg", "Zlib_jll", "libass_jll", "libfdk_aac_jll", "libvorbis_jll", "x264_jll", "x265_jll"] +git-tree-sha1 = "814bf7865005bee373521cb49cad46182bec53b4" +uuid = "b22a6f82-2f65-5046-a5b2-351ab43fb4e5" +version = "4.1.0+2" + +[[FastGaussQuadrature]] +deps = ["LinearAlgebra", "SpecialFunctions"] +git-tree-sha1 = "c139e3f4c75dc489a493627c7ee44befc177420f" +uuid = "442a2c76-b920-505d-bb47-c5924d526838" +version = "0.4.2" + +[[FilePathsBase]] +deps = ["Dates", "LinearAlgebra", "Printf", "Test", "UUIDs"] +git-tree-sha1 = "2cd6e2e7965934f72cb80251f760228e2264bab3" +uuid = "48062228-2e41-5def-b9a4-89aafe57970f" +version = "0.7.0" + +[[FillArrays]] +deps = ["LinearAlgebra", "Random", "SparseArrays"] +git-tree-sha1 = "51cc2f9bc4eb9c6c0e81ec2f779d1085583cc956" +uuid = "1a297f60-69ca-5386-bcde-b61e274b549b" +version = "0.8.7" + +[[FiniteDiff]] +deps = ["ArrayInterface", "LinearAlgebra", "Requires", "SparseArrays", "StaticArrays"] +git-tree-sha1 = "f60e5d6944975f7140bde67278e10b6b01fb4f29" +uuid = "6a86dc24-6348-571c-b903-95158fe2bd41" +version = "2.3.0" + +[[FixedPointNumbers]] +git-tree-sha1 = "3ba9ea634d4c8b289d590403b4a06f8e227a6238" +uuid = "53c48c17-4a7d-5ca2-90c5-79b7896eea93" +version = "0.8.0" + +[[ForwardDiff]] +deps = ["CommonSubexpressions", "DiffResults", "DiffRules", "NaNMath", "Random", "SpecialFunctions", "StaticArrays"] +git-tree-sha1 = "869540e4367122fbffaace383a5bdc34d6e5e5ac" +uuid = "f6369f11-7733-5829-9624-2563aa707210" +version = "0.10.10" + +[[FreeType2_jll]] +deps = ["Bzip2_jll", "Libdl", "Pkg", "Zlib_jll"] +git-tree-sha1 = "7d900f32a3788d4eacac2bfa3bf5c770179c8afd" +uuid = "d7e528f0-a631-5988-bf34-fe36492bcfd7" +version = "2.10.1+2" + +[[FriBidi_jll]] +deps = ["Libdl", "Pkg"] +git-tree-sha1 = "e479537bf8a8f060c546553c14fd0633978dda7e" +uuid = "559328eb-81f9-559d-9380-de523a88c83c" +version = "1.0.5+2" + +[[Future]] +deps = ["Random"] +uuid = "9fa8497b-333b-5362-9e8d-4d0656e87820" + +[[GLM]] +deps = ["Distributions", "LinearAlgebra", "Printf", "Random", "Reexport", "SparseArrays", "SpecialFunctions", "Statistics", "StatsBase", "StatsFuns", "StatsModels"] +git-tree-sha1 = "db0ace36f9dbe7b6a7a08434c5921377e9df2c72" +uuid = "38e38edf-8417-5370-95a0-9cbb8c7f171a" +version = "1.3.9" + +[[GR]] +deps = ["Base64", "DelimitedFiles", "LinearAlgebra", "Printf", "Random", "Serialization", "Sockets", "Test", "UUIDs"] +git-tree-sha1 = "7ea6f715b7caa10d7ee16f1cfcd12f3ccc74116a" +uuid = "28b8d3ca-fb5f-59d9-8090-bfdbd6d07a71" +version = "0.48.0" + +[[GaussianProcesses]] +deps = ["Distances", "Distributions", "Documenter", "ElasticArrays", "ElasticPDMats", "FastGaussQuadrature", "ForwardDiff", "LinearAlgebra", "Optim", "PDMats", "Printf", "ProgressMeter", "Random", "RecipesBase", "ScikitLearnBase", "SpecialFunctions", "StaticArrays", "Statistics", "StatsFuns", "Zygote"] +git-tree-sha1 = "105c668971f973b0f1b84931b0d68b94da78e692" +uuid = "891a1506-143c-57d2-908e-e1f8e92e6de9" +version = "0.11.2" + +[[GeometryTypes]] +deps = ["ColorTypes", "FixedPointNumbers", "LinearAlgebra", "StaticArrays"] +git-tree-sha1 = "96fd99cf83b1952a7d8cb54f4c585a648275805a" +uuid = "4d00f742-c7ba-57c2-abde-4428a4b178cb" +version = "0.8.2" + +[[HTTP]] +deps = ["Base64", "Dates", "IniFile", "MbedTLS", "Sockets"] +git-tree-sha1 = "cd60d9a575d3b70c026d7e714212fd4ecf86b4bb" +uuid = "cd3eb016-35fb-5094-929b-558a96fad6f3" +version = "0.8.13" + +[[Highlights]] +deps = ["DocStringExtensions", "InteractiveUtils", "REPL"] +git-tree-sha1 = "f823a2d04fb233d52812c8024a6d46d9581904a4" +uuid = "eafb193a-b7ab-5a9e-9068-77385905fa72" +version = "0.4.5" + +[[IRTools]] +deps = ["InteractiveUtils", "MacroTools", "Test"] +git-tree-sha1 = "1a4355e4b5b50be2311ebb644f34f3306dbd0410" +uuid = "7869d1d1-7146-5819-86e3-90919afe41df" +version = "0.3.1" + +[[IniFile]] +deps = ["Test"] +git-tree-sha1 = "098e4d2c533924c921f9f9847274f2ad89e018b8" +uuid = "83e8ac13-25f8-5344-8a64-a9f2b223428f" +version = "0.5.0" + +[[InteractiveUtils]] +deps = ["Markdown"] +uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240" + +[[InvertedIndices]] +deps = ["Test"] +git-tree-sha1 = "15732c475062348b0165684ffe28e85ea8396afc" +uuid = "41ab1584-1d38-5bbf-9106-f11c6c58b48f" +version = "1.0.0" + +[[IteratorInterfaceExtensions]] +git-tree-sha1 = "a3f24677c21f5bbe9d2a714f95dcd58337fb2856" +uuid = "82899510-4779-5014-852e-03e436cf321d" +version = "1.0.0" + +[[JSON]] +deps = ["Dates", "Mmap", "Parsers", "Unicode"] +git-tree-sha1 = "b34d7cef7b337321e97d22242c3c2b91f476748e" +uuid = "682c06a0-de6a-54ab-a142-c8b1cf79cde6" +version = "0.21.0" + +[[LAME_jll]] +deps = ["Libdl", "Pkg"] +git-tree-sha1 = "a46bff84977753fdba8db3c50db1435bb1eb4288" +uuid = "c1c5ebd0-6772-5130-a774-d5fcae4a789d" +version = "3.100.0+0" + +[[LibGit2]] +deps = ["Printf"] +uuid = "76f85450-5226-5b5a-8eaa-529ad045b433" + +[[LibVPX_jll]] +deps = ["Libdl", "Pkg"] +git-tree-sha1 = "e3549ca9bf35feb9d9d954f4c6a9032e92f46e7c" +uuid = "dd192d2f-8180-539f-9fb4-cc70b1dcf69a" +version = "1.8.1+1" + +[[Libdl]] +uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb" + +[[LineSearches]] +deps = ["LinearAlgebra", "NLSolversBase", "NaNMath", "Parameters", "Printf", "Test"] +git-tree-sha1 = "54eb90e8dbe745d617c78dee1d6ae95c7f6f5779" +uuid = "d3d80556-e9d4-5f37-9878-2ab0fcc64255" +version = "7.0.1" + +[[LinearAlgebra]] +deps = ["Libdl"] +uuid = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" + +[[Logging]] +uuid = "56ddb016-857b-54e1-b83d-db4d58db5568" + +[[MacroTools]] +deps = ["Markdown", "Random"] +git-tree-sha1 = "f7d2e3f654af75f01ec49be82c231c382214223a" +uuid = "1914dd2f-81c6-5fcd-8719-6d5c9610ff09" +version = "0.5.5" + +[[Markdown]] +deps = ["Base64"] +uuid = "d6f4376e-aef5-505a-96c1-9c027394607a" + +[[MbedTLS]] +deps = ["Dates", "MbedTLS_jll", "Random", "Sockets"] +git-tree-sha1 = "a9e2221f06b42f56052f43ad7edecb01d0ef5ab4" +uuid = "739be429-bea8-5141-9913-cc70e7f3736d" +version = "1.0.1" + +[[MbedTLS_jll]] +deps = ["Libdl", "Pkg"] +git-tree-sha1 = "066a4467008745eed36dad973ceb66405785a621" +uuid = "c8ffd9c3-330d-5841-b78e-0817d7145fa1" +version = "2.16.0+1" + +[[Measures]] +git-tree-sha1 = "e498ddeee6f9fdb4551ce855a46f54dbd900245f" +uuid = "442fdcdd-2543-5da2-b0f3-8c86c306513e" +version = "0.3.1" + +[[Missings]] +deps = ["DataAPI"] +git-tree-sha1 = "de0a5ce9e5289f27df672ffabef4d1e5861247d5" +uuid = "e1d29d7a-bbdc-5cf2-9ac0-f12de2c33e28" +version = "0.4.3" + +[[Mmap]] +uuid = "a63ad114-7e13-5084-954f-fe012c677804" + +[[Mustache]] +deps = ["Printf", "Tables"] +git-tree-sha1 = "2e11fc5de3a01d23482a257e22009ddaab058d9a" +uuid = "ffc61752-8dc7-55ee-8c37-f3e9cdd09e70" +version = "1.0.2" + +[[NLSolversBase]] +deps = ["DiffResults", "Distributed", "FiniteDiff", "ForwardDiff"] +git-tree-sha1 = "7c4e66c47848562003250f28b579c584e55becc0" +uuid = "d41bc354-129a-5804-8e4c-c37616107c6c" +version = "7.6.1" + +[[NNlib]] +deps = ["BinaryProvider", "Libdl", "LinearAlgebra", "Requires", "Statistics"] +git-tree-sha1 = "d9f196d911f55aeaff11b11f681b135980783824" +uuid = "872c559c-99b0-510c-b3b7-b6c96a88d5cd" +version = "0.6.6" + +[[NaNMath]] +git-tree-sha1 = "928b8ca9b2791081dc71a51c55347c27c618760f" +uuid = "77ba4419-2d1f-58cd-9bb1-8ffee604a2e3" +version = "0.3.3" + +[[Ogg_jll]] +deps = ["Libdl", "Pkg"] +git-tree-sha1 = "f4d4d03c562f40652c0baabd3e4cb2e756e157b7" +uuid = "e7412a2a-1a6e-54c0-be00-318e2571c051" +version = "1.3.3+0" + +[[OpenBLAS_jll]] +deps = ["CompilerSupportLibraries_jll", "Libdl", "Pkg"] +git-tree-sha1 = "2ee3e636e94b9fd95fa8364d5cba2e20dae16609" +uuid = "4536629a-c528-5b80-bd46-f80d51c5b363" +version = "0.3.9+2" + +[[OpenSSL_jll]] +deps = ["Libdl", "Pkg"] +git-tree-sha1 = "d2a6f25262d568b5a7e454cf7ff5066a79d16c7d" +uuid = "458c3c95-2e84-50aa-8efc-19380b2a3a95" +version = "1.1.1+2" + +[[OpenSpecFun_jll]] +deps = ["CompilerSupportLibraries_jll", "Libdl", "Pkg"] +git-tree-sha1 = "d51c416559217d974a1113522d5919235ae67a87" +uuid = "efe28fd5-8261-553b-a9e1-b2916fc3738e" +version = "0.5.3+3" + +[[Optim]] +deps = ["Compat", "FillArrays", "LineSearches", "LinearAlgebra", "NLSolversBase", "NaNMath", "Parameters", "PositiveFactorizations", "Printf", "SparseArrays", "StatsBase"] +git-tree-sha1 = "62054d469d3631960e3f472ceb8624be5b11c34d" +uuid = "429524aa-4258-5aef-a3af-852621145aeb" +version = "0.20.6" + +[[Opus_jll]] +deps = ["Libdl", "Pkg"] +git-tree-sha1 = "c9931bf2fcdb57b48c227395c61ea82603212f7d" +uuid = "91d4177d-7536-5919-b921-800302f37372" +version = "1.3.1+0" + +[[OrderedCollections]] +deps = ["Random", "Serialization", "Test"] +git-tree-sha1 = "c4c13474d23c60d20a67b217f1d7f22a40edf8f1" +uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d" +version = "1.1.0" + +[[PDMats]] +deps = ["Arpack", "LinearAlgebra", "SparseArrays", "SuiteSparse", "Test"] +git-tree-sha1 = "2fc6f50ddd959e462f0a2dbc802ddf2a539c6e35" +uuid = "90014a1f-27ba-587c-ab20-58faa44d9150" +version = "0.9.12" + +[[PackageCompiler]] +deps = ["Libdl", "Pkg", "UUIDs"] +git-tree-sha1 = "8989a56e4506b7b6a050f2b912e7856742d6998c" +uuid = "9b87118b-4619-50d2-8e1e-99f35a4d4d9d" +version = "1.1.1" + +[[Parameters]] +deps = ["OrderedCollections"] +git-tree-sha1 = "b62b2558efb1eef1fa44e4be5ff58a515c287e38" +uuid = "d96e819e-fc66-5662-9728-84c9c7592b0a" +version = "0.12.0" + +[[Parsers]] +deps = ["Dates", "Test"] +git-tree-sha1 = "75d07cb840c300084634b4991761886d0d762724" +uuid = "69de0a69-1ddd-5017-9359-2bf0b02dc9f0" +version = "1.0.1" + +[[Pkg]] +deps = ["Dates", "LibGit2", "Libdl", "Logging", "Markdown", "Printf", "REPL", "Random", "SHA", "UUIDs"] +uuid = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" + +[[PlotThemes]] +deps = ["PlotUtils", "Requires", "Statistics"] +git-tree-sha1 = "87a4ea7f8c350d87d3a8ca9052663b633c0b2722" +uuid = "ccf2f8ad-2431-5c83-bf29-c5338b663b6a" +version = "1.0.3" + +[[PlotUtils]] +deps = ["Colors", "Dates", "Printf", "Random", "Reexport"] +git-tree-sha1 = "51e742162c97d35f714f9611619db6975e19384b" +uuid = "995b91a9-d308-5afd-9ec6-746e21dbc043" +version = "0.6.5" + +[[Plots]] +deps = ["Base64", "Contour", "Dates", "FFMPEG", "FixedPointNumbers", "GR", "GeometryTypes", "JSON", "LinearAlgebra", "Measures", "NaNMath", "Pkg", "PlotThemes", "PlotUtils", "Printf", "REPL", "Random", "RecipesBase", "Reexport", "Requires", "Showoff", "SparseArrays", "Statistics", "StatsBase", "UUIDs"] +git-tree-sha1 = "f226ff9b8e391f6a10891563c370aae8beb5d792" +uuid = "91a5bcdd-55d7-5caf-9e0b-520d859cae80" +version = "0.29.9" + +[[PooledArrays]] +deps = ["DataAPI"] +git-tree-sha1 = "b1333d4eced1826e15adbdf01a4ecaccca9d353c" +uuid = "2dfb63ee-cc39-5dd5-95bd-886bf059d720" +version = "0.5.3" + +[[PositiveFactorizations]] +deps = ["LinearAlgebra", "Test"] +git-tree-sha1 = "127c47b91990c101ee3752291c4f45640eeb03d1" +uuid = "85a6dd25-e78a-55b7-8502-1745935b8125" +version = "0.2.3" + +[[Printf]] +deps = ["Unicode"] +uuid = "de0858da-6303-5e67-8744-51eddeeeb8d7" + +[[ProgressMeter]] +deps = ["Distributed", "Printf"] +git-tree-sha1 = "ea1f4fa0ff5e8b771bf130d87af5b7ef400760bd" +uuid = "92933f4c-e287-5a05-a399-4b506db050ca" +version = "1.2.0" + +[[QuadGK]] +deps = ["DataStructures", "LinearAlgebra"] +git-tree-sha1 = "dc84e810393cfc6294248c9032a9cdacc14a3db4" +uuid = "1fd47b50-473d-5c70-9696-f719f8f3bcdc" +version = "2.3.1" + +[[REPL]] +deps = ["InteractiveUtils", "Markdown", "Sockets"] +uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb" + +[[Random]] +deps = ["Serialization"] +uuid = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" + +[[RecipesBase]] +git-tree-sha1 = "b4ed4a7f988ea2340017916f7c9e5d7560b52cae" +uuid = "3cdcf5f2-1ef4-517c-9805-6587b60abb01" +version = "0.8.0" + +[[RecursiveArrayTools]] +deps = ["ArrayInterface", "LinearAlgebra", "RecipesBase", "Requires", "StaticArrays", "Statistics", "ZygoteRules"] +git-tree-sha1 = "48a8ce7a8cb156231de0477372dcaa6ada1472ef" +uuid = "731186ca-8d62-57ce-b412-fbd966d074cd" +version = "2.3.1" + +[[Reexport]] +deps = ["Pkg"] +git-tree-sha1 = "7b1d07f411bc8ddb7977ec7f377b97b158514fe0" +uuid = "189a3867-3050-52da-a836-e630ba90ab69" +version = "0.2.0" + +[[Requires]] +deps = ["UUIDs"] +git-tree-sha1 = "d37400976e98018ee840e0ca4f9d20baa231dc6b" +uuid = "ae029012-a4dd-5104-9daa-d747884805df" +version = "1.0.1" + +[[Rmath]] +deps = ["Random", "Rmath_jll"] +git-tree-sha1 = "86c5647b565873641538d8f812c04e4c9dbeb370" +uuid = "79098fc4-a85e-5d69-aa6a-4863f24498fa" +version = "0.6.1" + +[[Rmath_jll]] +deps = ["Libdl", "Pkg"] +git-tree-sha1 = "1660f8fefbf5ab9c67560513131d4e933012fc4b" +uuid = "f50d1b31-88e8-58de-be2c-1cc44531875f" +version = "0.2.2+0" + +[[SHA]] +uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce" + +[[ScikitLearnBase]] +deps = ["LinearAlgebra", "Random", "Statistics"] +git-tree-sha1 = "7877e55c1523a4b336b433da39c8e8c08d2f221f" +uuid = "6e75b9c4-186b-50bd-896f-2d2496a4843e" +version = "0.5.0" + +[[Serialization]] +uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b" + +[[SharedArrays]] +deps = ["Distributed", "Mmap", "Random", "Serialization"] +uuid = "1a1011a3-84de-559e-8e89-a11a2f7dc383" + +[[ShiftedArrays]] +git-tree-sha1 = "22395afdcf37d6709a5a0766cc4a5ca52cb85ea0" +uuid = "1277b4bf-5013-50f5-be3d-901d8477a67a" +version = "1.0.0" + +[[Showoff]] +deps = ["Dates"] +git-tree-sha1 = "e032c9df551fb23c9f98ae1064de074111b7bc39" +uuid = "992d4aef-0814-514b-bc4d-f2e9a6c4116f" +version = "0.3.1" + +[[Sockets]] +uuid = "6462fe0b-24de-5631-8697-dd941f90decc" + +[[SortingAlgorithms]] +deps = ["DataStructures", "Random", "Test"] +git-tree-sha1 = "03f5898c9959f8115e30bc7226ada7d0df554ddd" +uuid = "a2af1166-a08f-5f64-846c-94a0d3cef48c" +version = "0.3.1" + +[[SparseArrays]] +deps = ["LinearAlgebra", "Random"] +uuid = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" + +[[SpecialFunctions]] +deps = ["OpenSpecFun_jll"] +git-tree-sha1 = "e19b98acb182567bcb7b75bb5d9eedf3a3b5ec6c" +uuid = "276daf66-3868-5448-9aa4-cd146d93841b" +version = "0.10.0" + +[[StaticArrays]] +deps = ["LinearAlgebra", "Random", "Statistics"] +git-tree-sha1 = "5a3bcb6233adabde68ebc97be66e95dcb787424c" +uuid = "90137ffa-7385-5640-81b9-e52037218182" +version = "0.12.1" + +[[Statistics]] +deps = ["LinearAlgebra", "SparseArrays"] +uuid = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" + +[[StatsBase]] +deps = ["DataAPI", "DataStructures", "LinearAlgebra", "Missings", "Printf", "Random", "SortingAlgorithms", "SparseArrays", "Statistics"] +git-tree-sha1 = "19bfcb46245f69ff4013b3df3b977a289852c3a1" +uuid = "2913bbd2-ae8a-5f71-8c99-4fb6c76f3a91" +version = "0.32.2" + +[[StatsFuns]] +deps = ["Rmath", "SpecialFunctions"] +git-tree-sha1 = "f290ddd5fdedeadd10e961eb3f4d3340f09d030a" +uuid = "4c63d2b9-4356-54db-8cca-17b64c39e42c" +version = "0.9.4" + +[[StatsModels]] +deps = ["DataAPI", "DataStructures", "LinearAlgebra", "ShiftedArrays", "SparseArrays", "StatsBase", "Tables"] +git-tree-sha1 = "5a140e0bf5d92b2c5c0daa0dcefdadbb57c8a7fb" +uuid = "3eaba693-59b7-5ba5-a881-562e759f1c8d" +version = "0.6.11" + +[[SuiteSparse]] +deps = ["Libdl", "LinearAlgebra", "Serialization", "SparseArrays"] +uuid = "4607b0f0-06f3-5cda-b6b1-a6196a1729e9" + +[[TableTraits]] +deps = ["IteratorInterfaceExtensions"] +git-tree-sha1 = "b1ad568ba658d8cbb3b892ed5380a6f3e781a81e" +uuid = "3783bdb8-4a98-5b6b-af9a-565f29a5fe9c" +version = "1.0.0" + +[[Tables]] +deps = ["DataAPI", "DataValueInterfaces", "IteratorInterfaceExtensions", "LinearAlgebra", "TableTraits", "Test"] +git-tree-sha1 = "242b7fde70b8bc6a30d6476adf17ca3cf1ced6ee" +uuid = "bd369af6-aec1-5ad0-b16a-f7cc5008161c" +version = "1.0.3" + +[[Test]] +deps = ["Distributed", "InteractiveUtils", "Logging", "Random"] +uuid = "8dfed614-e22c-5e08-85e1-65c5234f0b40" + +[[UUIDs]] +deps = ["Random", "SHA"] +uuid = "cf7118a7-6976-5b1a-9a39-7adc72f591a4" + +[[Unicode]] +uuid = "4ec0a83e-493e-50e2-b9ac-8f72acf5a8f5" + +[[WeakRefStrings]] +deps = ["DataAPI", "Random", "Test"] +git-tree-sha1 = "28807f85197eaad3cbd2330386fac1dcb9e7e11d" +uuid = "ea10d353-3f73-51f8-a26c-33c1cb351aa5" +version = "0.6.2" + +[[Weave]] +deps = ["Base64", "Dates", "Highlights", "JSON", "Markdown", "Mustache", "Printf", "REPL", "Requires", "Serialization", "YAML"] +git-tree-sha1 = "f4c004ae4ca7200a46fe1b454e11a0c7cec107c4" +uuid = "44d3d7a6-8a23-5bf8-98c5-b353f8df5ec9" +version = "0.9.4" + +[[YAML]] +deps = ["Base64", "Dates", "Printf"] +git-tree-sha1 = "c5e2eaa5ce818c5277388377d592eb4c81f27c00" +uuid = "ddb6d928-2868-570f-bddf-ab3f9cf99eb6" +version = "0.4.0" + +[[Zlib_jll]] +deps = ["Libdl", "Pkg"] +git-tree-sha1 = "2f6c3e15e20e036ee0a0965879b31442b7ec50fa" +uuid = "83775a58-1f1d-513f-b197-d71354ab007a" +version = "1.2.11+9" + +[[Zygote]] +deps = ["AbstractFFTs", "ArrayLayouts", "DiffRules", "FillArrays", "ForwardDiff", "IRTools", "InteractiveUtils", "LinearAlgebra", "MacroTools", "NNlib", "NaNMath", "Random", "Requires", "SpecialFunctions", "Statistics", "ZygoteRules"] +git-tree-sha1 = "014e1f208bd5b43e26448ca31d971053f58bc20a" +uuid = "e88e6eb3-aa80-5325-afca-941959d7151f" +version = "0.4.15" + +[[ZygoteRules]] +deps = ["MacroTools"] +git-tree-sha1 = "b3b4882cc9accf6731a08cc39543fbc6b669dca8" +uuid = "700de1a5-db45-46bc-99cf-38207098b444" +version = "0.2.0" + +[[libass_jll]] +deps = ["Bzip2_jll", "FreeType2_jll", "FriBidi_jll", "Libdl", "Pkg", "Zlib_jll"] +git-tree-sha1 = "d0259e0624e08ae9ebae16c80257caabc25f2048" +uuid = "0ac62f75-1d6f-5e53-bd7c-93b484bb37c0" +version = "0.14.0+1" + +[[libfdk_aac_jll]] +deps = ["Libdl", "Pkg"] +git-tree-sha1 = "0e4ace600c20714a8dd67700c4502714d8473e8e" +uuid = "f638f0a6-7fb0-5443-88ba-1cc74229b280" +version = "0.1.6+1" + +[[libvorbis_jll]] +deps = ["Libdl", "Ogg_jll", "Pkg"] +git-tree-sha1 = "71e54fb89ac3e0344c7185d1876fd96b0f246952" +uuid = "f27f6e37-5d2b-51aa-960f-b287f2bc3b7a" +version = "1.3.6+2" + +[[x264_jll]] +deps = ["Libdl", "Pkg"] +git-tree-sha1 = "23664c0757c3740050ca0e22944c786c165ca25a" +uuid = "1270edf5-f2f9-52d2-97e9-ab00b5d0237a" +version = "2019.5.25+1" + +[[x265_jll]] +deps = ["Libdl", "Pkg"] +git-tree-sha1 = "9345e417084421a8e91373d6196bc58e660eed2a" +uuid = "dfaa095f-4041-5dcd-9319-2fabd8486b76" +version = "3.0.0+0" diff --git a/module3/exo3/Project.toml b/module3/exo3/Project.toml new file mode 100644 index 0000000..568e9b6 --- /dev/null +++ b/module3/exo3/Project.toml @@ -0,0 +1,14 @@ +name = "Exercice" +uuid = "457123a2-77f0-4d56-a035-49d1b3c810fd" +authors = ["François Févotte"] +version = "0.1.0" + +[deps] +CSV = "336ed68f-0bac-5ca0-87d4-7b16caf5d00b" +DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0" +DataInterpolations = "82cc6244-b520-54b8-b5a6-8a565e85f1d0" +GLM = "38e38edf-8417-5370-95a0-9cbb8c7f171a" +HTTP = "cd3eb016-35fb-5094-929b-558a96fad6f3" +PackageCompiler = "9b87118b-4619-50d2-8e1e-99f35a4d4d9d" +Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80" +Weave = "44d3d7a6-8a23-5bf8-98c5-b353f8df5ec9" diff --git a/module3/exo3/download.stamp b/module3/exo3/download.stamp new file mode 100644 index 0000000..653999b --- /dev/null +++ b/module3/exo3/download.stamp @@ -0,0 +1 @@ +2020-04-10 \ No newline at end of file diff --git a/module3/exo3/exercice.html b/module3/exo3/exercice.html new file mode 100644 index 0000000..28dd2b4 --- /dev/null +++ b/module3/exo3/exercice.html @@ -0,0 +1,1268 @@ + + + + + + Analyse de la concentration de CO2 dans l'atmosphère depuis 1958 + + + + + + + + + + + + + + + + + +
+
+
+ +
+

Analyse de la concentration de CO2 dans l'atmosphère depuis 1958

+
François Févotte
+
avril 2020
+
+ +

Gestion des dépendances

+

Environnement

+ + +

Nous utilisons Julia dans sa version 1.4.0, sur une architecture matérielle de type x86 (64 bits)

+ + +
+using InteractiveUtils
+versioninfo()
+
+ + +
+Julia Version 1.4.0
+Commit b8e9a9ecc6 (2020-03-21 16:36 UTC)
+Platform Info:
+  OS: Linux (x86_64-pc-linux-gnu)
+  CPU: Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz
+  WORD_SIZE: 64
+  LIBM: libopenlibm
+  LLVM: libLLVM-8.0.1 (ORCJIT, skylake)
+Environment:
+  JULIA_PROJECT = @.
+
+ + +

Il nous faut maintenant charger l'environnement logiciel de notre étude, c'est à dire toutes les bibliothèques sur lesquelles elle s'appuie, dans les bonnes versions. La liste des dépendances directes est contenue dans le fichier Project.toml, et complétée par le fichier Manifest.toml (qui liste toutes les dépendances directes et indirectes, accompagnées de leurs numéros de version précis).

+

Toutes ces informations permettent au gestionnaire de paquets de re-créer un environnement logiciel identique à celui qui a été utilisé pour développer cette analyse.

+ + +
+using Pkg
+Pkg.activate(@__DIR__)
+Pkg.instantiate()
+
+ + + +

Chargement des dépendances

+ + +

Tant que nous y sommes, profitons en pour charger dès maintenant les paquets dont nous aurons besoin.

+ + +
+import HTTP
+import CSV
+import DataInterpolations; const DI=DataInterpolations
+using GLM
+using Printf
+using Dates
+using DataFrames
+using Statistics
+using Plots; gr()
+
+ + + +

Données d'entrée

+

Nos données d'entrée proviennent du programme Scripps CO2. Nous fondons l'analyse sur le jeu de données contenant des observations hebdomadaires.

+

Téléchargement

+ + +

Le jeu de données est téléchargé une seule fois ; c'est une copie locale qui sert à réaliser l'analyse. Ceci permet de garantir la version des données utilisées pour l'analyse, et stockée dans git aux côtés du présent document.

+

Il est possible de forcer le téléchargement en positionnant la variable force_download=true afin d'actualiser le jeu de données.

+ + +
+const data_url = "https://scrippsco2.ucsd.edu/assets/data/atmospheric/stations/in_situ_co2/weekly/weekly_in_situ_co2_mlo.csv"
+const data_file = "weekly_in_situ_co2_mlo.csv"
+const force_download = false
+
+ + + + +
+if force_download || !isfile(data_file)
+    println("Downloading data:")
+    println("  url  = $data_url")
+    println("  file = $data_file")
+
+    open(data_file, "w") do f
+        req = HTTP.request(:GET, data_url)
+        @assert req.status == 200 "Error while downloading"
+        write(f, req.body)
+    end
+
+    open("download.stamp", "w") do f
+        write(f, string(today()))
+    end
+else
+    println("Using local data:")
+    println("  file = $data_file")
+    println("  downloaded = ", readline("download.stamp"))
+end
+
+ + +
+Using local data:
+  file = weekly_in_situ_co2_mlo.csv
+  downloaded = 2020-04-10
+
+ + +

Lecture

+ + +

Les données d'entrée sont stockées au format CSV, et contiennent 44 lignes d'informations préliminaires que nous reproduisons ici, et qui seront sautées lors de la lecture des données.

+ + +
+skip = 44
+open(data_file) do f
+    for _ in 1:skip; println(readline(f)); end
+end
+
+ + +
+"-------------------------------------------------------------------------------------------"
+" Atmospheric CO2 concentrations (ppm) derived from in situ air measurements                "
+" at Mauna Loa, Observatory, Hawaii: Latitude 19.5°N Longitude 155.6°W Elevation 3397m      "
+"                                                                                           "
+" Source: R. F. Keeling, S. J. Walker, S. C. Piper and A. F. Bollenbacher                   "
+" Scripps CO2 Program ( http://scrippsco2.ucsd.edu )                                        "
+" Scripps Institution of Oceanography (SIO)                                                 "
+" University of California                                                                  "
+" La Jolla, California USA 92093-0244                                                       "
+"                                                                                           "
+" Status of data and correspondence:                                                        "
+"                                                                                           "
+" These data are subject to revision based on recalibration of standard gases. Questions    "
+" about the data should be directed to Dr. Ralph Keeling (rkeeling@ucsd.edu), Stephen Walker"
+" (sjwalker@ucsd.edu) and Stephen Piper (scpiper@ucsd.edu), Scripps CO2 Program.            "
+"                                                                                           "
+" Baseline data in this file through 06-Feb-2020 from archive dated 06-Feb-2020 08:55:31    "
+"                                                                                           "
+"-------------------------------------------------------------------------------------------"
+"                                                                                           "
+" Please cite as:                                                                           "
+"                                                                                           "
+" C. D. Keeling, S. C. Piper, R. B. Bacastow, M. Wahlen, T. P. Whorf, M. Heimann, and       "
+" H. A. Meijer, Exchanges of atmospheric CO2 and 13CO2 with the terrestrial biosphere and   "
+" oceans from 1978 to 2000.  I. Global aspects, SIO Reference Series, No. 01-06, Scripps    "
+" Institution of Oceanography, San Diego, 88 pages, 2001.                                   "
+"                                                                                           "
+" If it is necessary to cite a peer-reviewed article, please cite as:                       "
+"                                                                                           "
+" C. D. Keeling, S. C. Piper, R. B. Bacastow, M. Wahlen, T. P. Whorf, M. Heimann, and       "
+" H. A. Meijer, Atmospheric CO2 and 13CO2 exchange with the terrestrial biosphere and       "
+" oceans from 1978 to 2000: observations and carbon cycle implications, pages 83-113,       "
+" in "A History of Atmospheric CO2 and its effects on Plants, Animals, and Ecosystems",     "
+" editors, Ehleringer, J.R., T. E. Cerling, M. D. Dearing, Springer Verlag,                 "
+" New York, 2005.                                                                           "
+"                                                                                           "
+"-------------------------------------------------------------------------------------------"
+"                                                                                           "
+"                                                                        "
+" The data file below contains 2 columns indicaing the date and CO2      "
+" concentrations in micro-mol CO2 per mole (ppm), reported on the 2008A  "
+" SIO manometric mole fraction scale.  These weekly values have been     "
+" adjusted to 12:00 hours at middle day of each weekly period as         "
+" indicated by the date in the first column.                             "
+
+ + +

Le fichier est structuré en deux colonnes :

+
    +
  • date : date de la mesure

    +
  • +
  • val : concentration en CO2 (en ppm molaires)

    +
  • +
+ + +
+data_raw = CSV.read(data_file; skipto=skip+1, header=[:date, :val])
+
+ + + +

L'examen des premières et dernières lignes de données révèle qu'elles couvrent la période de fin mars 1958 jusqu'à nos jours.

+ + + +
+info(data_raw)
+
+ + +
+3156×2 DataFrame
+│ Row  │ date       │ val     │
+│      │ Date       │ Float64 │
+├──────┼────────────┼─────────┤
+│ 1    │ 1958-03-29 │ 316.19  │
+│ 2    │ 1958-04-05 │ 317.31  │
+│ 3    │ 1958-04-12 │ 317.69  │
+⋮
+│ 3153 │ 2020-01-04 │ 413.19  │
+│ 3154 │ 2020-01-11 │ 413.39  │
+│ 3155 │ 2020-01-25 │ 413.36  │
+│ 3156 │ 2020-02-01 │ 413.99  │
+
+ + +

Vérification des données manquantes

+ + +

Les relevés étant hebdomadaires, l'écart entre deux dates successives du jeu de données devrait être de 7 jours. Un point manquant provoque un écart de 14 jours, ce qui devrait être rattrappable dans le reste de l'analyse ; au delà, il faudra se poser des questions sur le traitement à apporter.

+ + +
+dates = data_raw.date
+for i in 2:length(dates)
+    if dates[i]-dates[i-1] > Dates.Day(14)
+        println("Missing data: ",
+                dates[i-1], " - ", dates[i],
+                "  (", dates[i]-dates[i-1], ")")
+    end
+end
+
+ + +
+Missing data: 1958-05-24 - 1958-07-05  (42 days)
+Missing data: 1958-09-06 - 1958-11-08  (63 days)
+Missing data: 1962-08-18 - 1962-09-15  (28 days)
+Missing data: 1964-01-18 - 1964-05-30  (133 days)
+Missing data: 1964-06-06 - 1964-06-27  (21 days)
+Missing data: 1966-07-09 - 1966-08-06  (28 days)
+Missing data: 1967-01-14 - 1967-02-04  (21 days)
+Missing data: 1984-03-24 - 1984-04-28  (35 days)
+Missing data: 2003-10-04 - 2003-10-25  (21 days)
+Missing data: 2005-02-19 - 2005-03-26  (35 days)
+Missing data: 2006-02-04 - 2006-02-25  (21 days)
+Missing data: 2012-09-29 - 2012-10-20  (21 days)
+
+ + +

Il y a 12 périodes durant lesquelles les données sont manquantes, dont une en particulier ayant duré 19 semaines en 1964. Le traitement devra en tenir compte.

+

Aperçu global des données

+ + +

Une visualisation de l'ensemble des données semble montrer une augmentation tendancielle de la concentration en CO2, à laquelle se superpose une oscillation à plus haute fréquence.

+ + + +

Un zoom sur les dernières années laisse penser que le cycle court se produit sur une période annuelle, avec un minimum local atteint chaque année autour du mois d'octobre.

+ + + +

Analyse

+

Dans cette analyse, nous allons tenter de séparer ces deux composantes : composante tendancielle "lisse" et composante oscillante de période annuelle.

+

La démarche que nous suivons est globalement la suivante : le jeu de données va être découpé en périodes annuelles. Chacune de ces périodes annuelles sera traitée (indépendamment des autres) afin d'en extraire une composante lisse, et une composante périodique.

+

Si notre hypothèse est correcte, les composantes périodiques de chaque année devraient être relativement comparables les unes aux autres, et pouvoir être approchées par leur moyenne. On peut ensuite obtenir la composante lisse tendancielle en éliminant la composante oscillatoire moyenne du signal d'origine.

+

La périodicité des données (hebdomadaire) n'étant que peu adaptée à un découpage annuel, nous allons commencer par interpoler les données à une maille journalière. Ceci nous permettra de découper le jeu de données en années.

+

Travaux sur les dates

+

Il est plus simple d'interpoler entre deux nombres qu'entre deux dates. Dans la suite, nous adopterons une convention selon laquelle chaque date peut être représentée par le nombre de jours qui la sépare de la première mesure :

+ + +
+date2num(d::Date) = Dates.value(d - data_raw.date[1])
+num2date(n::Int)  = data_raw.date[1] + Day(n)
+
+ + + +

Par exemple, pour les premières mesures :

+ + +

3 rows × 2 columns

datedate_num
DateInt64
11958-03-290
21958-04-057
31958-04-1214
+ +

Afin de comparer des données année par année, nous allons aussi enrichir les données avec de nouvelles représentations de la date : une date peut être décomposée comme un couple (year, day) dans lequel

+
    +
  • year représente l'année

    +
  • +
  • day représente l'indice du jour dans l'année (entre 0 et 365).

    +
  • +
+

Dans ce formalisme, le 1er janvier 2020 est représenté par le couple (year=2020, day=0). Le 31 décembre 1983 est représenté par le couple (year=1983, day=364).

+ + +
+dayinyear(date::Date) = Dates.value(date - Date(year(date)))
+dayinyear(num::Int)   = dayinyear(num2date(num))
+
+let d = Date("1983-12-31")
+  year(d), dayinyear(d)
+end
+
+ + +
+(1983, 364)
+
+ + +

Enfin, prévenons dès maintenant que tout le code de l'analyse fonctionne en présence d'années bissextiles, mais rien n'a été fait pour les traiter à part : l'impact, de l'ordre de 1/365 une année sur 4, a été jugé négligeable a priori.

+

Interpolation à la maille journalière

+ + +

On construit un interpolateur linéaire basé sur les mesures de CO2 en fonction de la "date numérique". C'est le paquet Julia DataInterpolations qui se charge d'effectuer le gros du travail.

+ + +
+interp = DI.LinearInterpolation(data_raw.val, date2num.(data_raw.date));
+
+ + + +

Nous allons profiter de la construction des données interpolées pour gérer le problème des données manquantes : nous n'interpolerons aucune donnée dans les "trous" de 3 semaines ou plus. La construction de ce nouveau jeu de données interpolées est aussi l'occasion d'enrichir les formats de représentation des dates. Nous avons maintenant 5 colonnes dans notre jeu de données interpolé :

+
    +
  • date : date identifiant le jour de la mesure (ou de la valeur interpolée)

    +
  • +
  • val : valeur de la mesure de CO2 (ou de l'interpolation)

    +
  • +
  • date_num : date convertie en nombre

    +
  • +
  • year : composante de la date identifiant l'année

    +
  • +
  • day : composante de la date identifiant le jour dans l'année (entre 0 et 365)

    +
  • +
+ + +
+data_interp = DataFrame(date_num=Int[], val=Float64[], date=Date[], year=Int[], day=Int[])
+for i in 2:length(dates)
+    if dates[i]-dates[i-1] > Dates.Day(14)
+        # pas d'interpolation : seule la date de gauche est inclue
+        range = dates[i-1] => dates[i-1]
+    else
+        # Interpolation entre le début de la période et
+        # la fin (exclue car traitée en tant que début de
+        # la prochaine période)
+        range = dates[i-1] => dates[i]-Day(1)
+    end
+
+    # Pour chaque jour dans la période considérée,
+    # on ajoute une nouvelle ligne de données en interpolant
+    for date_num in date2num(first(range)):date2num(last(range))
+        date = num2date(date_num)
+        push!(data_interp, (date_num = date_num,
+                            date = date,
+                            year = year(date),
+                            day  = dayinyear(date),
+                            val  = interp(date_num)))
+    end
+end
+
+# 3 dernières lignes, pour vérification
+last(data_interp, 3)
+
+ + + +

3 rows × 5 columns

date_numvaldateyearday
Int64Float64DateInt64Int64
122586413.722020-01-29202028
222587413.812020-01-30202029
322588413.92020-01-31202030
+ +

En zoomant sur les données interpolées autour de l'une des périodes de données manquantes, on observe bien le résultat attendu : une interpolation linéaire journalière lorsque les données sont disponibles, mais aucune interpolation lorsque les données sont manquantes.

+ + + +

Enfin, nous ne gardons pour notre analyse que des années complètes. D'ailleurs, afin de tester la validité de nos résultats, nous n'allons réaliser l'analyse que sur une fraction des données ; nous garderons les 5 dernières années comme données de test.

+ + +
+firstyear = minimum(data_interp.year)+1
+lastyear  = maximum(data_interp.year)-6
+idx = (data_interp.year.>=firstyear) .& (data_interp.year.<=lastyear)
+data = data_interp[idx, :];
+
+ + + +

Les données sur lesquelles portera l'analyse couvrent donc la période 1959-2014.

+ + +
+info(data)
+
+ + +
+20100×5 DataFrame
+│ Row   │ date_num │ val     │ date       │ year  │ day   │
+│       │ Int64    │ Float64 │ Date       │ Int64 │ Int64 │
+├───────┼──────────┼─────────┼────────────┼───────┼───────┤
+│ 1     │ 278      │ 315.231 │ 1959-01-01 │ 1959  │ 0     │
+│ 2     │ 279      │ 315.236 │ 1959-01-02 │ 1959  │ 1     │
+│ 3     │ 280      │ 315.24  │ 1959-01-03 │ 1959  │ 2     │
+⋮
+│ 20097 │ 20728    │ 399.14  │ 2014-12-28 │ 2014  │ 361   │
+│ 20098 │ 20729    │ 399.27  │ 2014-12-29 │ 2014  │ 362   │
+│ 20099 │ 20730    │ 399.4   │ 2014-12-30 │ 2014  │ 363   │
+│ 20100 │ 20731    │ 399.53  │ 2014-12-31 │ 2014  │ 364   │
+
+ + +

Sur ces années complètes, la composante day de la date devrait être globalement équirépartie entre 0 et 365, ce qui est globalement le cas. Les données manquantes n'ont donc pas d'impact significatif de ce point de vue là.

+ + + +

Analyse des variations annuelles

+ + +

Pour chaque année, on commence par tenter d'extraire la composante oscillante de la mesure. En supposant que cette composante est périodique, il faut que la valeur de cette composante en début d'année soit égale à celle de fin d'année. On va aussi supposer que la composante tendancielle varie linéairement en cours d'année. Si on note $C$ la concentration en CO2 et $d$ le jour, on cherche à écrire :

+

\[ + \forall d\in{0\ldots365}, \quad + C(d) + = \underbrace{\alpha + \beta d}_{\text{tendance locale}} + + \underbrace{\phi(d)}_{\text{composante oscillante}} +\]

+

avec $\phi(0)=\phi(365)$ pour garantir la périodicité de la composante oscillante. Afin de définir la constante $\alpha$ de manière unique, on fixe de plus $\phi(0)=\phi(365)=0$.

+

On obtient donc

+

\[ +\begin{align*} + \alpha &= C(0), \\[1em] + \beta &= \frac{C(365)-C(0)}{365}, \\[1em] + \phi(d) &= C(d) - \alpha - \beta d. +\end{align*} +\]

+

En pratique, plutôt que des valeurs ponctuelles $C(0)$ et $C(365)$, on prend plutôt des valeurs (notées $C_0$ et $C_1$ dans le code) moyennées sur les 7 premiers et 7 derniers jours de l'année.

+ + +
+data.phi   = copy(data.val)
+data.alpha = zero(data.val)
+data.beta  = zero(data.val)
+for year in unique(data.year)
+    idx = (data.year .== year)
+    C₀ = data.val[idx .& (data.day .< 7)  ] |> mean
+    C₁ = data.val[idx .& (data.day .> 358)] |> mean
+    α = C₀
+    β = (C₁ - C₀) / 365
+
+    data.alpha[idx] .= α
+    data.beta[idx]  .= β
+    data.phi[idx]   .-= α .+ β*data.day[idx]
+end
+
+ + + +

Examinons par exemple l'effet de ce traitement sur les données interpolées de l'année 1982. On voit, sur la figure du haut, les mesures brutes ainsi que la tendance locale (affine). Sur la figure du bas, la composante périodique locale vérifie bien les contraintes demandées, avec ses valeurs nulles aux bords.

+ + + +

Pour que notre décomposition soit valide, il faut que les composantes périodiques locales de chaque année se ressemblent, au point de pouvoir être représentées par leur moyenne. Nous calculons donc cette moyenne pour toutes les années du jeu de données d'étude.

+ + +
+avg = by(data, :day, :phi=>mean, :phi=>std);
+
+ + + +

Et nous traçons l'ensemble des composantes oscillantes locales aux côtés de cette moyenne.

+ + + +

Comme on pouvait s'y attendre, il reste une forte variabilité d'année en année. Notons toutefois que l'écart-type, bien qu'important, reste un ordre de grandeur en dessous des valeurs extrêmes, ce qui permet d'espérer que ce profil moyen est suffisamment représentatif pour permettre d'extraire la composante tendancielle lisse des données.

+

Analyse des variations tendancielles

+ + +

Nous sommes maintenant prêts à extraire la composante tendancielle des mesures. Il suffit pour cela de retrancher aux données brutes la composante oscillante moyenne.

+ + +
+data = join(data, avg, on=:day)
+data.smooth = data.val .- data.phi_mean;
+
+ + + +

Même s'il reste des oscillations locales, nous constatons tout de même que la composante tendancielle est devenue suffisamment lisse pour récupérer une forme de monotonie.

+ + + +

Nous allons maintenant tenter de caractériser la tendance sous-jacente. Au vu de la courbe (concave), nous proposons un modèle quadratique de la forme :

+

\[ +C(t) = \alpha + \beta t + \gamma t^2 +\]

+ + +
+model = lm(@formula(smooth ~ date_num + date_num^2),
+            by(data, :year, smooth = :smooth=>mean, date_num = :date_num=>mean))
+
+ + +
+StatsModels.TableRegressionModel{LinearModel{GLM.LmResp{Array{Float64,1}},GLM.DensePredChol{Float64,LinearAlgebra.Cholesky{Float64,Array{Float64,2}}}},Array{Float64,2}}
+
+smooth ~ 1 + date_num + :(date_num ^ 2)
+
+Coefficients:
+───────────────────────────────────────────────────────────────────────────────────────
+                  Estimate  Std. Error    t value  Pr(>|t|)     Lower 95%     Upper 95%
+───────────────────────────────────────────────────────────────────────────────────────
+(Intercept)   313.862       0.263289    1192.08      <1e-99  313.334       314.39
+date_num        0.00221635  5.77649e-5    38.3685    <1e-39    0.00210049    0.00233221
+date_num ^ 2    9.10059e-8  2.66606e-9    34.135     <1e-37    8.56585e-8    9.63533e-8
+───────────────────────────────────────────────────────────────────────────────────────
+
+ + +

Ce genre de modèle semble correspondre assez bien aux données, avec un assez bon niveau de confiance sur l'estimation des paramètres $\alpha$ et $\beta$.

+ + +
+α,  β,  γ  = coef(model);
+α1, β1, γ1 = coef(model)-2*stderror(model);
+α2, β2, γ2 = coef(model)+2*stderror(model);
+
+ + + +

En première approximation, on a en particulier une hausse tendancielle de la concentration de CO2 atmosphérique de l'ordre de $\beta$ = 2.22e-03 ppm/jour ($\pm$5.21%), qui se traduit en une augmentation annuelle comprise entre 0.77 et 0.85 ppm/an avec un niveau de confiance de 95%.

+

On voit toutefois que l'incertitude sur $\beta$ en particulier est de nature à engendrer des

+ + + + +
+date_num = date2num(Date(lastyear)):10:date2num(today()+Year(5))
+prediction = DataFrame(date_num=date_num,
+                       date=num2date.(date_num),
+                       day=dayinyear.(date_num))
+
+prediction.smooth = predict(model, prediction)
+prediction = join(prediction, avg, on=:day)
+
+prediction.val = prediction.smooth .+ prediction.phi_mean
+
+idx = data_raw.date .> Date(lastyear)
+plot(xlabel="Date", ylabel="CO2 [ppm]", legend=:bottomright)
+plot!(data_raw.date[idx], data_raw.val[idx], label="measurements")
+plot!(prediction.date, prediction.smooth,    label="smooth model")
+plot!(prediction.date, prediction.val,       label="predicted value")
+
+ + + + +

Pour aller plus loin

+ + +
+model = glm(@formula(smooth ~ date_num),
+            by(data, :year, smooth = :smooth=>mean, date_num = :date_num=>mean),
+            InverseGaussian(), InverseSquareLink())
+
+ + +
+StatsModels.TableRegressionModel{GeneralizedLinearModel{GLM.GlmResp{Array{Float64,1},InverseGaussian{Float64},InverseSquareLink},GLM.DensePredChol{Float64,LinearAlgebra.Cholesky{Float64,Array{Float64,2}}}},Array{Float64,2}}
+
+smooth ~ 1 + date_num
+
+Coefficients:
+─────────────────────────────────────────────────────────────────────────────────────
+                 Estimate  Std. Error   z value  Pr(>|z|)     Lower 95%     Upper 95%
+─────────────────────────────────────────────────────────────────────────────────────
+(Intercept)   1.02817e-5   1.31515e-8   781.789    <1e-99   1.02559e-5    1.03075e-5
+date_num     -1.91994e-10  1.0025e-12  -191.515    <1e-99  -1.93959e-10  -1.90029e-10
+─────────────────────────────────────────────────────────────────────────────────────
+
+ + + +
+closeall()
+
+ + + + + + + + + + + + + + + +
+ + + +
+
+
+ + diff --git a/module3/exo3/exercice.jmd b/module3/exo3/exercice.jmd new file mode 100644 index 0000000..bcfb6c0 --- /dev/null +++ b/module3/exo3/exercice.jmd @@ -0,0 +1,543 @@ +--- +title : Analyse de la concentration de CO2 dans l'atmosphère depuis 1958 +author : François Févotte +date: avril 2020 +--- + +# Gestion des dépendances + + +## Environnement + +```julia; echo=false; results="hidden" +@info "Instantiating project" +``` + +Nous utilisons Julia dans sa version 1.4.0, sur une architecture matérielle de +type x86 (64 bits) +```julia +using InteractiveUtils +versioninfo() +``` + +Il nous faut maintenant charger l'environnement logiciel de notre étude, c'est à +dire toutes les bibliothèques sur lesquelles elle s'appuie, dans les bonnes +versions. La liste des dépendances directes est contenue dans le fichier +`Project.toml`, et complétée par le fichier `Manifest.toml` (qui liste toutes +les dépendances directes et indirectes, accompagnées de leurs numéros de version +précis). + +Toutes ces informations permettent au gestionnaire de paquets de re-créer un +environnement logiciel identique à celui qui a été utilisé pour développer cette +analyse. +```julia +using Pkg +Pkg.activate(@__DIR__) +Pkg.instantiate() +``` + + +## Chargement des dépendances + +```julia; echo=false; results="hidden" +@info "Loading dependencies" +``` + +Tant que nous y sommes, profitons en pour charger dès maintenant les paquets +dont nous aurons besoin. +```julia +import HTTP +import CSV +import DataInterpolations; const DI=DataInterpolations +using GLM +using Printf +using Dates +using DataFrames +using Statistics +using Plots; gr() +``` + + +# Données d'entrée + +Nos données d'entrée proviennent du programme [Scripps +CO2](https://scrippsco2.ucsd.edu/data/atmospheric_co2/primary_mlo_co2_record.html). Nous +fondons l'analyse sur le jeu de données contenant des observations hebdomadaires. + + +## Téléchargement + +```julia; echo=false; results="hidden" +@info "Retrieving data" +``` + +Le jeu de données est téléchargé une seule fois ; c'est une copie locale qui +sert à réaliser l'analyse. Ceci permet de garantir la version des données +utilisées pour l'analyse, et stockée dans git aux côtés du présent document. + +Il est possible de forcer le téléchargement en positionnant la variable +`force_download=true` afin d'actualiser le jeu de données. + +```julia; results="hidden" +const data_url = "https://scrippsco2.ucsd.edu/assets/data/atmospheric/stations/in_situ_co2/weekly/weekly_in_situ_co2_mlo.csv" +const data_file = "weekly_in_situ_co2_mlo.csv" +const force_download = false +``` + +```julia; +if force_download || !isfile(data_file) + println("Downloading data:") + println(" url = $data_url") + println(" file = $data_file") + + open(data_file, "w") do f + req = HTTP.request(:GET, data_url) + @assert req.status == 200 "Error while downloading" + write(f, req.body) + end + + open("download.stamp", "w") do f + write(f, string(today())) + end +else + println("Using local data:") + println(" file = $data_file") + println(" downloaded = ", readline("download.stamp")) +end +``` + + +## Lecture + +```julia; echo=false; results="hidden" +@info "Parsing data" +``` + +Les données d'entrée sont stockées au format CSV, et contiennent 44 lignes +d'informations préliminaires que nous reproduisons ici, et qui seront sautées +lors de la lecture des données. + +```julia; wrap=false +skip = 44 +open(data_file) do f + for _ in 1:skip; println(readline(f)); end +end +``` + +Le fichier est structuré en deux colonnes : +- `date` : date de la mesure +- `val` : concentration en CO2 (en ppm molaires) + +```julia; results="hidden" +data_raw = CSV.read(data_file; skipto=skip+1, header=[:date, :val]) +``` + +L'examen des premières et dernières lignes de données révèle qu'elles couvrent +la période de fin mars 1958 jusqu'à nos jours. +```julia; echo=false +info(df::DataFrame) = show(IOContext(stdout, :limit=>true, :displaysize=>(15, 100)), df); +``` +```julia +info(data_raw) +``` + + +## Vérification des données manquantes + +```julia; echo=false; results="hidden" +@info "Checking for missing values" +``` + +Les relevés étant hebdomadaires, l'écart entre deux dates successives du jeu de +données devrait être de 7 jours. Un point manquant provoque un écart de 14 +jours, ce qui devrait être rattrappable dans le reste de l'analyse ; au delà, il +faudra se poser des questions sur le traitement à apporter. +```julia +dates = data_raw.date +for i in 2:length(dates) + if dates[i]-dates[i-1] > Dates.Day(14) + println("Missing data: ", + dates[i-1], " - ", dates[i], + " (", dates[i]-dates[i-1], ")") + end +end +``` +Il y a 12 périodes durant lesquelles les données sont manquantes, dont une en +particulier ayant duré 19 semaines en 1964. Le traitement devra en tenir compte. + + +## Aperçu global des données + +```julia; echo=false; results="hidden" +@info "Plotting raw data" +``` + +Une visualisation de l'ensemble des données semble montrer une augmentation +tendancielle de la concentration en CO2, à laquelle se superpose une oscillation +à plus haute fréquence. +```julia; echo=false +plot(xlabel="Date", ylabel="CO2 [ppm]", legend=:bottomright) +plot!(data_raw.date, data_raw.val, label="measurements") +``` + +Un zoom sur les dernières années laisse penser que le cycle court se produit sur +une période annuelle, avec un minimum local atteint chaque année autour du mois +d'octobre. +```julia; echo=false +plot(xlabel="Date", ylabel="CO2 [ppm]", legend=:bottomright) +plot!(data_raw.date[end-150:end], data_raw.val[end-150:end], label="measurements") +``` + +# Analyse + +Dans cette analyse, nous allons tenter de séparer ces deux composantes : +composante tendancielle "lisse" et composante oscillante de période annuelle. + +La démarche que nous suivons est globalement la suivante : le jeu de données va +être découpé en périodes annuelles. Chacune de ces périodes annuelles sera +traitée (indépendamment des autres) afin d'en extraire une composante lisse, et +une composante périodique. + +Si notre hypothèse est correcte, les composantes périodiques de chaque année +devraient être relativement comparables les unes aux autres, et pouvoir être +approchées par leur moyenne. On peut ensuite obtenir la composante lisse +tendancielle en éliminant la composante oscillatoire moyenne du signal d'origine. + +La périodicité des données (hebdomadaire) n'étant que peu adaptée à un découpage +annuel, nous allons commencer par interpoler les données à une maille +journalière. Ceci nous permettra de découper le jeu de données en années. + + +## Travaux sur les dates + +Il est plus simple d'interpoler entre deux nombres qu'entre deux dates. Dans la +suite, nous adopterons une convention selon laquelle chaque date peut être +représentée par le nombre de jours qui la sépare de la première mesure : +```julia; results="hidden" +date2num(d::Date) = Dates.value(d - data_raw.date[1]) +num2date(n::Int) = data_raw.date[1] + Day(n) +``` +Par exemple, pour les premières mesures : +```julia; echo=false +DataFrame(date=data_raw.date[1:3], date_num=date2num.(data_raw.date[1:3])) +``` + +Afin de comparer des données année par année, nous allons aussi enrichir les +données avec de nouvelles représentations de la date : une date peut être +décomposée comme un couple `(year, day)` dans lequel +- `year` représente l'année +- `day` représente l'indice du jour dans l'année (entre 0 et 365). + +Dans ce formalisme, le 1er janvier 2020 est représenté par le couple +`(year=2020, day=0)`. Le 31 décembre 1983 est représenté par le couple +`(year=1983, day=364)`. + +```julia +dayinyear(date::Date) = Dates.value(date - Date(year(date))) +dayinyear(num::Int) = dayinyear(num2date(num)) + +let d = Date("1983-12-31") + year(d), dayinyear(d) +end +``` + +Enfin, prévenons dès maintenant que tout le code de l'analyse fonctionne en +présence d'années bissextiles, mais rien n'a été fait pour les traiter à part : +l'impact, de l'ordre de 1/365 une année sur 4, a été jugé négligeable a priori. + + +## Interpolation à la maille journalière + +```julia; echo=false; results="hidden" +@info "Interpolating daily data" +``` + +On construit un interpolateur linéaire basé sur les mesures de CO2 en fonction +de la "date numérique". C'est le paquet Julia +[`DataInterpolations`](https://github.com/PumasAI/DataInterpolations.jl) qui se +charge d'effectuer le gros du travail. + +```julia +interp = DI.LinearInterpolation(data_raw.val, date2num.(data_raw.date)); +``` + +Nous allons profiter de la construction des données interpolées pour gérer le +problème des données manquantes : nous n'interpolerons aucune donnée dans les +"trous" de 3 semaines ou plus. La construction de ce nouveau jeu de données +interpolées est aussi l'occasion d'enrichir les formats de représentation des +dates. Nous avons maintenant 5 colonnes dans notre jeu de données interpolé : +- `date` : date identifiant le jour de la mesure (ou de la valeur interpolée) +- `val` : valeur de la mesure de CO2 (ou de l'interpolation) +- `date_num` : date convertie en nombre +- `year` : composante de la date identifiant l'année +- `day` : composante de la date identifiant le jour dans l'année (entre 0 et 365) + +```julia +data_interp = DataFrame(date_num=Int[], val=Float64[], date=Date[], year=Int[], day=Int[]) +for i in 2:length(dates) + if dates[i]-dates[i-1] > Dates.Day(14) + # pas d'interpolation : seule la date de gauche est inclue + range = dates[i-1] => dates[i-1] + else + # Interpolation entre le début de la période et + # la fin (exclue car traitée en tant que début de + # la prochaine période) + range = dates[i-1] => dates[i]-Day(1) + end + + # Pour chaque jour dans la période considérée, + # on ajoute une nouvelle ligne de données en interpolant + for date_num in date2num(first(range)):date2num(last(range)) + date = num2date(date_num) + push!(data_interp, (date_num = date_num, + date = date, + year = year(date), + day = dayinyear(date), + val = interp(date_num))) + end +end + +# 3 dernières lignes, pour vérification +last(data_interp, 3) +``` + +En zoomant sur les données interpolées autour de l'une des périodes de données +manquantes, on observe bien le résultat attendu : une interpolation linéaire +journalière lorsque les données sont disponibles, mais aucune interpolation +lorsque les données sont manquantes. + +```julia; echo=false +plot(xlabel="Date", ylabel="CO2 [ppm]", legend=:topleft) + +idx1 = (data_interp.date .> Date("2006-01-20")) .& (data_interp.date .< Date("2006-03-15")) +plot!(data_interp.date[idx1], data_interp.val[idx1], seriestype=:scatter, + label="interpolated values") + +idx2 = (data_raw.date .> Date("2006-01-20")) .& (data_raw.date .< Date("2006-03-15")) +plot!(data_raw.date[idx2], data_raw.val[idx2], seriestype=:scatter, + label="measurements") +``` + +Enfin, nous ne gardons pour notre analyse que des années complètes. D'ailleurs, +afin de tester la validité de nos résultats, nous n'allons réaliser l'analyse +que sur une fraction des données ; nous garderons les 5 dernières années comme +données de test. + +```julia +firstyear = minimum(data_interp.year)+1 +lastyear = maximum(data_interp.year)-6 +idx = (data_interp.year.>=firstyear) .& (data_interp.year.<=lastyear) +data = data_interp[idx, :]; +``` + +Les données sur lesquelles portera l'analyse couvrent donc la période 1959-2014. +```julia +info(data) +``` + +Sur ces années complètes, la composante `day` de la date devrait être +globalement équirépartie entre 0 et 365, ce qui est globalement le cas. Les +données manquantes n'ont donc pas d'impact significatif de ce point de vue là. +```julia; echo=false +histogram(data.day, bins=0:31:365, label=nothing) +``` + +## Analyse des variations annuelles + +```julia; echo=false; results="hidden" +@info "Fitting yearly oscillations" +``` + +Pour chaque année, on commence par tenter d'extraire la composante oscillante de +la mesure. En supposant que cette composante est périodique, il faut que la +valeur de cette composante en début d'année soit égale à celle de fin +d'année. On va aussi supposer que la composante tendancielle varie linéairement +en cours d'année. Si on note $C$ la concentration en CO2 et $d$ le jour, on +cherche à écrire : +$$ + \forall d\in{0\ldots365}, \quad + C(d) + = \underbrace{\alpha + \beta d}_{\text{tendance locale}} + + \underbrace{\phi(d)}_{\text{composante oscillante}} +$$ +avec $\phi(0)=\phi(365)$ pour garantir la périodicité de la composante +oscillante. Afin de définir la constante $\alpha$ de manière unique, on fixe de +plus $\phi(0)=\phi(365)=0$. + +On obtient donc +$$ +\begin{align*} + \alpha &= C(0), \\[1em] + \beta &= \frac{C(365)-C(0)}{365}, \\[1em] + \phi(d) &= C(d) - \alpha - \beta d. +\end{align*} +$$ + +En pratique, plutôt que des valeurs ponctuelles $C(0)$ et $C(365)$, on prend +plutôt des valeurs (notées $C_0$ et $C_1$ dans le code) moyennées sur les 7 +premiers et 7 derniers jours de l'année. + +```julia +data.phi = copy(data.val) +data.alpha = zero(data.val) +data.beta = zero(data.val) +for year in unique(data.year) + idx = (data.year .== year) + C₀ = data.val[idx .& (data.day .< 7) ] |> mean + C₁ = data.val[idx .& (data.day .> 358)] |> mean + α = C₀ + β = (C₁ - C₀) / 365 + + data.alpha[idx] .= α + data.beta[idx] .= β + data.phi[idx] .-= α .+ β*data.day[idx] +end +``` + +Examinons par exemple l'effet de ce traitement sur les données interpolées de +l'année 1982. On voit, sur la figure du haut, les mesures brutes ainsi que la +tendance locale (affine). Sur la figure du bas, la composante périodique locale +vérifie bien les contraintes demandées, avec ses valeurs nulles aux bords. + +```julia; echo=false +let df = data[data.year.==1982, :] + p1 = plot(ylabel="CO2 [ppm]") + plot!(p1, df.date, df.val, label="measurements") + plot!(p1, df.date, df.alpha.+df.beta.*df.day, label="alpha + beta * day") + + + p2 = plot(xlabel="date", ylabel="CO2 [ppm]") + plot!(p2, df.date, df.phi, label="phi") + + l = @layout [a ; b] + plot(p1, p2, layout=l) +end +``` + +Pour que notre décomposition soit valide, il faut que les composantes +périodiques locales de chaque année se ressemblent, au point de pouvoir être +représentées par leur moyenne. Nous calculons donc cette moyenne pour toutes les années du jeu de données d'étude. + +```julia +avg = by(data, :day, :phi=>mean, :phi=>std); +``` + +Et nous traçons l'ensemble des composantes oscillantes locales aux côtés de cette moyenne. + +```julia; echo=false +plot(xlabel="date", ylabel="CO2 [ppm]") +plot!(data.day, data.phi, seriestype=:scatter, label="phi") +plot!(avg.day, avg.phi_mean, linewidth=3, label="phi (moyenne)") +plot!(avg.day, avg.phi_std, linewidth=1, label="phi (écart-type)") +``` + +Comme on pouvait s'y attendre, il reste une forte variabilité d'année en +année. Notons toutefois que l'écart-type, bien qu'important, reste un ordre de +grandeur en dessous des valeurs extrêmes, ce qui permet d'espérer que ce profil +moyen est suffisamment représentatif pour permettre d'extraire la composante +tendancielle lisse des données. + + +## Analyse des variations tendancielles + +```julia; echo=false; output="hidden" +@info "Fitting underlying trend" +``` + +Nous sommes maintenant prêts à extraire la composante tendancielle des +mesures. Il suffit pour cela de retrancher aux données brutes la composante +oscillante moyenne. + +```julia +data = join(data, avg, on=:day) +data.smooth = data.val .- data.phi_mean; +``` + +Même s'il reste des oscillations locales, nous constatons tout de même que la +composante tendancielle est devenue suffisamment lisse pour récupérer une forme +de monotonie. + +```julia; echo=false +plot(xlabel="Date", ylabel="CO2 [ppm]", legend=:bottomright) +plot!(data.date, data.val, label="measurements") +plot!(data.date, data.smooth, label="composante tendancielle") +``` + +Nous allons maintenant tenter de caractériser la tendance sous-jacente. Au vu de +la courbe (concave), nous proposons un modèle quadratique de la forme : +$$ +C(t) = \alpha + \beta t + \gamma t^2 +$$ + +```julia; wrap=false +model = lm(@formula(smooth ~ date_num + date_num^2), + by(data, :year, smooth = :smooth=>mean, date_num = :date_num=>mean)) +``` + +Ce genre de modèle semble correspondre assez bien aux données, avec un assez bon +niveau de confiance sur l'estimation des paramètres $\alpha$ et $\beta$. + +```julia +α, β, γ = coef(model); +α1, β1, γ1 = coef(model)-2*stderror(model); +α2, β2, γ2 = coef(model)+2*stderror(model); +``` + +En première approximation, on a en particulier une hausse tendancielle de la +concentration de CO2 atmosphérique de l'ordre de +$\beta$ = `j @printf "%.2e" β` ppm/jour ($\pm$`j @printf "%.2f" 100*(β2-β)/β`%), +qui se traduit en une augmentation annuelle comprise entre +`j @printf "%.2f" 365*β1` et `j @printf "%.2f" 365*β2` ppm/an +avec un niveau de confiance de 95%. + +On voit toutefois que l'incertitude sur $\beta$ en particulier est de nature à +engendrer une perte de prédictibilité du modèle en temps long. + +```julia; echo=false +data.smooth_pred = predict(model, data) + +plot(xlabel="Date", ylabel="CO2 [ppm]", legend=:bottomright) +plot!(data_raw.date, data_raw.val, label="measurements") +plot!(data.date, data.smooth_pred, label="smooth model", linewidth=3) +plot!(data.date, α .+ β1 * data.date_num .+ γ*data.date_num.^2, linecolor="red", label="smooth model (CI 95%)") +plot!(data.date, α .+ β2 * data.date_num .+ γ*data.date_num.^2, linecolor="red", label=nothing) +``` + +# Reconstruction du signal complet et prédiction + +Nous avons maintenant tous les éléments nécessaires afin de reconstruire +l'évolution de la concentration en CO2 selon +```julia +date_num = date2num(Date(lastyear)):10:date2num(today()+Year(5)) +prediction = DataFrame(date_num=date_num, + date=num2date.(date_num), + day=dayinyear.(date_num)) + +prediction.smooth = predict(model, prediction) +prediction = join(prediction, avg, on=:day) + +prediction.val = prediction.smooth .+ prediction.phi_mean + +idx = data_raw.date .> Date(lastyear) +plot(xlabel="Date", ylabel="CO2 [ppm]", legend=:bottomright) +plot!(data_raw.date[idx], data_raw.val[idx], label="measurements") +plot!(prediction.date, prediction.smooth, label="smooth model") +plot!(prediction.date, prediction.val, label="predicted value") +``` + +## Pour aller plus loin + +```julia; wrap=false +model = glm(@formula(smooth ~ date_num), + by(data, :year, smooth = :smooth=>mean, date_num = :date_num=>mean), + InverseGaussian(), InverseSquareLink()) +``` + + +```julia +closeall() +``` + + + + diff --git a/module3/exo3/make.jl b/module3/exo3/make.jl new file mode 100644 index 0000000..157869a --- /dev/null +++ b/module3/exo3/make.jl @@ -0,0 +1,10 @@ +using Pkg +Pkg.activate(@__DIR__) + +import Weave +Weave.tangle(joinpath(@__DIR__, "exercice.jmd")) + +using PackageCompiler +create_sysimage(Symbol.(keys(Pkg.project().dependencies)); + sysimage_path=Pkg.project().name * ".so", + precompile_execution_file=joinpath(@__DIR__, "exercice.jl")) diff --git a/module3/exo3/weekly_in_situ_co2_mlo.csv b/module3/exo3/weekly_in_situ_co2_mlo.csv new file mode 100644 index 0000000..e756b46 --- /dev/null +++ b/module3/exo3/weekly_in_situ_co2_mlo.csv @@ -0,0 +1,3200 @@ +"-------------------------------------------------------------------------------------------" +" Atmospheric CO2 concentrations (ppm) derived from in situ air measurements " +" at Mauna Loa, Observatory, Hawaii: Latitude 19.5°N Longitude 155.6°W Elevation 3397m " +" " +" Source: R. F. Keeling, S. J. Walker, S. C. Piper and A. F. Bollenbacher " +" Scripps CO2 Program ( http://scrippsco2.ucsd.edu ) " +" Scripps Institution of Oceanography (SIO) " +" University of California " +" La Jolla, California USA 92093-0244 " +" " +" Status of data and correspondence: " +" " +" These data are subject to revision based on recalibration of standard gases. Questions " +" about the data should be directed to Dr. Ralph Keeling (rkeeling@ucsd.edu), Stephen Walker" +" (sjwalker@ucsd.edu) and Stephen Piper (scpiper@ucsd.edu), Scripps CO2 Program. " +" " +" Baseline data in this file through 06-Feb-2020 from archive dated 06-Feb-2020 08:55:31 " +" " +"-------------------------------------------------------------------------------------------" +" " +" Please cite as: " +" " +" C. D. Keeling, S. C. Piper, R. B. Bacastow, M. Wahlen, T. P. Whorf, M. Heimann, and " +" H. A. Meijer, Exchanges of atmospheric CO2 and 13CO2 with the terrestrial biosphere and " +" oceans from 1978 to 2000. I. Global aspects, SIO Reference Series, No. 01-06, Scripps " +" Institution of Oceanography, San Diego, 88 pages, 2001. " +" " +" If it is necessary to cite a peer-reviewed article, please cite as: " +" " +" C. D. Keeling, S. C. Piper, R. B. Bacastow, M. Wahlen, T. P. Whorf, M. Heimann, and " +" H. A. Meijer, Atmospheric CO2 and 13CO2 exchange with the terrestrial biosphere and " +" oceans from 1978 to 2000: observations and carbon cycle implications, pages 83-113, " +" in "A History of Atmospheric CO2 and its effects on Plants, Animals, and Ecosystems", " +" editors, Ehleringer, J.R., T. E. Cerling, M. D. Dearing, Springer Verlag, " +" New York, 2005. " +" " +"-------------------------------------------------------------------------------------------" +" " +" " +" The data file below contains 2 columns indicaing the date and CO2 " +" concentrations in micro-mol CO2 per mole (ppm), reported on the 2008A " +" SIO manometric mole fraction scale. These weekly values have been " +" adjusted to 12:00 hours at middle day of each weekly period as " +" indicated by the date in the first column. " +1958-03-29, 316.19 +1958-04-05, 317.31 +1958-04-12, 317.69 +1958-04-19, 317.58 +1958-04-26, 316.48 +1958-05-03, 316.95 +1958-05-17, 317.56 +1958-05-24, 317.99 +1958-07-05, 315.85 +1958-07-12, 315.85 +1958-07-19, 315.46 +1958-07-26, 315.59 +1958-08-02, 315.64 +1958-08-09, 315.10 +1958-08-16, 315.09 +1958-08-30, 314.14 +1958-09-06, 313.54 +1958-11-08, 313.05 +1958-11-15, 313.26 +1958-11-22, 313.57 +1958-11-29, 314.01 +1958-12-06, 314.56 +1958-12-13, 314.41 +1958-12-20, 314.77 +1958-12-27, 315.21 +1959-01-03, 315.24 +1959-01-10, 315.50 +1959-01-17, 315.69 +1959-01-24, 315.86 +1959-01-31, 315.42 +1959-02-14, 316.94 +1959-02-21, 316.61 +1959-02-28, 316.62 +1959-03-07, 316.81 +1959-03-21, 316.73 +1959-03-28, 316.71 +1959-04-04, 317.72 +1959-04-11, 317.12 +1959-04-18, 317.64 +1959-04-25, 318.32 +1959-05-02, 318.27 +1959-05-09, 318.78 +1959-05-16, 318.05 +1959-05-23, 318.43 +1959-06-06, 318.53 +1959-06-13, 318.14 +1959-06-20, 317.88 +1959-06-27, 317.76 +1959-07-04, 316.86 +1959-07-11, 316.83 +1959-07-18, 316.45 +1959-07-25, 316.16 +1959-08-01, 315.62 +1959-08-08, 314.91 +1959-08-22, 315.00 +1959-08-29, 314.15 +1959-09-05, 314.45 +1959-09-12, 313.93 +1959-09-19, 313.57 +1959-09-26, 313.54 +1959-10-03, 313.04 +1959-10-10, 313.15 +1959-10-17, 313.43 +1959-10-24, 313.46 +1959-10-31, 314.12 +1959-11-07, 314.42 +1959-11-14, 314.88 +1959-11-21, 315.20 +1959-11-28, 315.11 +1959-12-05, 315.06 +1959-12-12, 315.64 +1959-12-19, 315.86 +1959-12-26, 315.77 +1960-01-02, 315.72 +1960-01-09, 316.40 +1960-01-16, 316.73 +1960-01-23, 316.57 +1960-01-30, 316.68 +1960-02-06, 316.61 +1960-02-13, 316.98 +1960-02-20, 317.42 +1960-02-27, 317.00 +1960-03-05, 316.96 +1960-03-12, 317.76 +1960-03-19, 318.07 +1960-03-26, 317.77 +1960-04-02, 318.61 +1960-04-09, 319.34 +1960-04-16, 319.01 +1960-04-23, 319.03 +1960-04-30, 319.77 +1960-05-07, 319.96 +1960-05-14, 319.82 +1960-05-21, 320.04 +1960-05-28, 320.06 +1960-06-04, 319.46 +1960-06-11, 320.08 +1960-06-18, 319.42 +1960-06-25, 319.09 +1960-07-02, 318.18 +1960-07-09, 318.64 +1960-07-16, 318.41 +1960-07-23, 317.91 +1960-07-30, 317.33 +1960-08-06, 316.62 +1960-08-13, 316.70 +1960-08-20, 315.10 +1960-08-27, 314.78 +1960-09-03, 314.72 +1960-09-10, 314.58 +1960-09-17, 314.28 +1960-09-24, 313.33 +1960-10-01, 313.66 +1960-10-08, 313.32 +1960-10-15, 313.92 +1960-10-22, 314.21 +1960-10-29, 314.29 +1960-11-05, 314.50 +1960-11-12, 315.10 +1960-11-19, 315.10 +1960-11-26, 315.41 +1960-12-03, 315.84 +1960-12-10, 316.07 +1960-12-17, 316.21 +1960-12-24, 316.40 +1960-12-31, 316.67 +1961-01-07, 316.73 +1961-01-14, 317.02 +1961-01-21, 317.03 +1961-01-28, 317.01 +1961-02-04, 317.06 +1961-02-11, 317.75 +1961-02-18, 317.94 +1961-02-25, 318.00 +1961-03-04, 318.04 +1961-03-11, 318.51 +1961-03-18, 318.92 +1961-03-25, 318.71 +1961-04-01, 319.41 +1961-04-08, 319.55 +1961-04-15, 318.90 +1961-04-22, 319.74 +1961-04-29, 319.67 +1961-05-06, 320.67 +1961-05-13, 320.46 +1961-05-20, 320.61 +1961-05-27, 320.36 +1961-06-03, 320.09 +1961-06-10, 320.02 +1961-06-17, 319.62 +1961-06-24, 319.49 +1961-07-01, 319.26 +1961-07-08, 319.07 +1961-07-15, 318.49 +1961-07-22, 317.16 +1961-07-29, 317.97 +1961-08-05, 317.91 +1961-08-12, 317.33 +1961-08-19, 316.76 +1961-08-26, 315.26 +1961-09-02, 315.28 +1961-09-09, 314.97 +1961-09-16, 314.53 +1961-09-23, 315.06 +1961-09-30, 315.61 +1961-10-07, 314.97 +1961-10-14, 315.43 +1961-10-21, 315.48 +1961-10-28, 315.72 +1961-11-04, 315.82 +1961-11-11, 315.70 +1961-11-18, 316.21 +1961-11-25, 316.55 +1961-12-02, 316.52 +1961-12-09, 317.02 +1961-12-16, 316.94 +1961-12-23, 317.18 +1961-12-30, 317.46 +1962-01-06, 317.99 +1962-01-13, 318.12 +1962-01-20, 318.07 +1962-01-27, 317.78 +1962-02-03, 318.08 +1962-02-10, 318.35 +1962-02-17, 318.92 +1962-02-24, 319.38 +1962-03-03, 319.28 +1962-03-10, 319.46 +1962-03-17, 319.95 +1962-03-24, 319.78 +1962-03-31, 320.27 +1962-04-07, 320.26 +1962-04-14, 321.03 +1962-04-21, 320.78 +1962-04-28, 320.36 +1962-05-05, 320.89 +1962-05-12, 320.78 +1962-05-19, 321.05 +1962-05-26, 321.16 +1962-06-02, 320.91 +1962-06-09, 320.87 +1962-06-16, 320.52 +1962-06-23, 320.15 +1962-06-30, 320.23 +1962-07-07, 320.10 +1962-07-14, 319.95 +1962-07-21, 319.01 +1962-07-28, 318.75 +1962-08-04, 318.68 +1962-08-11, 317.24 +1962-08-18, 317.48 +1962-09-15, 316.65 +1962-09-22, 315.72 +1962-09-29, 315.92 +1962-10-06, 315.10 +1962-10-13, 315.40 +1962-10-20, 315.72 +1962-10-27, 315.78 +1962-11-03, 315.94 +1962-11-10, 316.49 +1962-11-17, 316.92 +1962-11-24, 317.08 +1962-12-01, 317.19 +1962-12-08, 317.31 +1962-12-15, 317.66 +1962-12-22, 318.18 +1963-01-05, 318.54 +1963-01-12, 318.73 +1963-01-19, 318.90 +1963-01-26, 318.82 +1963-02-02, 318.77 +1963-02-09, 318.95 +1963-02-23, 319.37 +1963-03-02, 319.35 +1963-03-09, 319.70 +1963-03-16, 319.80 +1963-03-23, 320.34 +1963-03-30, 320.29 +1963-04-06, 320.38 +1963-04-13, 320.96 +1963-04-20, 322.05 +1963-04-27, 321.92 +1963-05-11, 321.97 +1963-05-18, 322.28 +1963-05-25, 322.27 +1963-06-01, 322.32 +1963-06-08, 322.09 +1963-06-15, 321.83 +1963-06-22, 320.88 +1963-06-29, 320.49 +1963-07-06, 320.12 +1963-07-13, 319.82 +1963-07-20, 319.56 +1963-07-27, 319.06 +1963-08-03, 318.60 +1963-08-10, 318.27 +1963-08-17, 317.73 +1963-08-24, 317.12 +1963-08-31, 316.44 +1963-09-07, 316.81 +1963-09-14, 315.99 +1963-09-21, 316.03 +1963-09-28, 315.93 +1963-10-05, 316.28 +1963-10-12, 315.65 +1963-10-19, 316.14 +1963-10-26, 316.36 +1963-11-02, 316.63 +1963-11-09, 316.83 +1963-11-16, 317.13 +1963-11-30, 317.56 +1963-12-07, 318.07 +1963-12-14, 318.27 +1963-12-21, 318.59 +1963-12-28, 318.74 +1964-01-04, 319.04 +1964-01-11, 319.49 +1964-01-18, 319.88 +1964-05-30, 322.07 +1964-06-06, 322.06 +1964-06-27, 321.57 +1964-07-04, 321.14 +1964-07-11, 319.95 +1964-07-18, 320.28 +1964-07-25, 320.02 +1964-08-01, 319.14 +1964-08-15, 318.61 +1964-08-22, 318.23 +1964-08-29, 318.11 +1964-09-05, 317.48 +1964-09-12, 316.57 +1964-09-19, 315.59 +1964-09-26, 317.01 +1964-10-03, 316.93 +1964-10-10, 316.51 +1964-10-17, 316.86 +1964-10-24, 317.05 +1964-10-31, 317.65 +1964-11-07, 317.77 +1964-11-14, 317.65 +1964-11-21, 317.52 +1964-11-28, 318.11 +1964-12-05, 318.42 +1964-12-12, 318.58 +1964-12-19, 318.93 +1964-12-26, 318.91 +1965-01-02, 319.08 +1965-01-09, 319.17 +1965-01-16, 319.16 +1965-01-23, 319.79 +1965-01-30, 320.12 +1965-02-06, 320.20 +1965-02-13, 320.16 +1965-02-20, 320.70 +1965-02-27, 320.89 +1965-03-06, 321.07 +1965-03-13, 320.98 +1965-03-20, 320.49 +1965-03-27, 321.40 +1965-04-03, 321.95 +1965-04-10, 322.27 +1965-04-17, 322.17 +1965-04-24, 321.86 +1965-05-01, 322.46 +1965-05-08, 322.22 +1965-05-15, 321.94 +1965-05-22, 321.69 +1965-05-29, 322.26 +1965-06-05, 321.87 +1965-06-12, 321.77 +1965-06-19, 321.77 +1965-06-26, 321.99 +1965-07-03, 321.97 +1965-07-10, 321.85 +1965-07-17, 321.76 +1965-07-24, 320.47 +1965-07-31, 319.49 +1965-08-07, 319.47 +1965-08-14, 318.02 +1965-08-21, 318.82 +1965-08-28, 318.73 +1965-09-04, 318.39 +1965-09-11, 318.05 +1965-09-18, 318.26 +1965-09-25, 316.85 +1965-10-02, 316.60 +1965-10-09, 317.26 +1965-10-16, 317.86 +1965-10-23, 317.56 +1965-10-30, 317.63 +1965-11-06, 318.30 +1965-11-13, 319.26 +1965-11-20, 318.99 +1965-11-27, 319.17 +1965-12-04, 319.09 +1965-12-11, 319.37 +1965-12-18, 319.39 +1965-12-25, 319.70 +1966-01-01, 319.69 +1966-01-08, 320.49 +1966-01-15, 320.63 +1966-01-22, 321.09 +1966-01-29, 321.16 +1966-02-05, 321.26 +1966-02-12, 321.75 +1966-02-19, 321.67 +1966-02-26, 321.80 +1966-03-05, 322.10 +1966-03-12, 322.14 +1966-03-19, 322.57 +1966-03-26, 322.86 +1966-04-02, 323.55 +1966-04-09, 323.62 +1966-04-16, 323.88 +1966-04-23, 323.91 +1966-04-30, 323.53 +1966-05-07, 324.00 +1966-05-14, 324.10 +1966-05-21, 323.72 +1966-05-28, 324.31 +1966-06-04, 324.02 +1966-06-11, 323.88 +1966-06-18, 323.75 +1966-06-25, 323.32 +1966-07-02, 322.82 +1966-07-09, 322.90 +1966-08-06, 321.31 +1966-08-13, 320.85 +1966-08-20, 319.16 +1966-08-27, 319.64 +1966-09-03, 319.94 +1966-09-10, 318.22 +1966-09-17, 318.46 +1966-09-24, 318.31 +1966-10-01, 317.90 +1966-10-08, 317.90 +1966-10-15, 318.21 +1966-10-22, 318.61 +1966-10-29, 318.39 +1966-11-12, 319.59 +1966-11-19, 320.03 +1966-11-26, 320.24 +1966-12-03, 320.80 +1966-12-10, 320.87 +1966-12-17, 321.16 +1966-12-24, 321.31 +1966-12-31, 321.37 +1967-01-07, 321.92 +1967-01-14, 322.93 +1967-02-04, 322.19 +1967-02-11, 322.23 +1967-02-18, 322.86 +1967-02-25, 322.60 +1967-03-04, 322.94 +1967-03-11, 322.60 +1967-03-18, 323.33 +1967-03-25, 323.24 +1967-04-01, 323.15 +1967-04-08, 324.21 +1967-04-15, 324.41 +1967-04-22, 324.60 +1967-04-29, 325.16 +1967-05-06, 325.26 +1967-05-13, 324.78 +1967-05-20, 325.09 +1967-05-27, 324.94 +1967-06-03, 324.95 +1967-06-10, 324.65 +1967-06-17, 323.31 +1967-06-24, 323.50 +1967-07-01, 322.89 +1967-07-08, 322.85 +1967-07-15, 322.45 +1967-07-22, 322.40 +1967-07-29, 322.04 +1967-08-05, 321.65 +1967-08-12, 321.40 +1967-08-19, 320.48 +1967-08-26, 320.01 +1967-09-02, 320.07 +1967-09-09, 319.43 +1967-09-16, 319.35 +1967-09-23, 319.03 +1967-09-30, 318.81 +1967-10-07, 318.88 +1967-10-14, 319.86 +1967-10-21, 319.47 +1967-10-28, 319.86 +1967-11-04, 320.01 +1967-11-11, 320.34 +1967-11-18, 320.91 +1967-11-25, 321.54 +1967-12-02, 321.40 +1967-12-09, 321.89 +1967-12-16, 322.29 +1967-12-23, 321.98 +1967-12-30, 322.30 +1968-01-06, 322.46 +1968-01-13, 322.50 +1968-01-20, 322.59 +1968-01-27, 322.83 +1968-02-03, 322.66 +1968-02-10, 323.17 +1968-02-17, 323.46 +1968-02-24, 323.18 +1968-03-02, 323.15 +1968-03-09, 323.85 +1968-03-16, 323.85 +1968-03-23, 324.21 +1968-03-30, 324.77 +1968-04-06, 324.79 +1968-04-13, 325.04 +1968-04-20, 324.84 +1968-04-27, 325.45 +1968-05-04, 325.63 +1968-05-11, 325.09 +1968-05-18, 325.52 +1968-05-25, 325.86 +1968-06-01, 325.67 +1968-06-08, 325.71 +1968-06-15, 325.56 +1968-06-22, 324.99 +1968-06-29, 324.63 +1968-07-06, 324.70 +1968-07-13, 324.13 +1968-07-20, 323.94 +1968-07-27, 323.40 +1968-08-03, 322.49 +1968-08-10, 322.27 +1968-08-17, 322.02 +1968-08-24, 321.74 +1968-08-31, 321.42 +1968-09-07, 320.44 +1968-09-14, 321.18 +1968-09-21, 319.78 +1968-09-28, 319.89 +1968-10-05, 320.57 +1968-10-12, 320.52 +1968-10-19, 320.26 +1968-10-26, 319.92 +1968-11-02, 320.70 +1968-11-09, 320.89 +1968-11-16, 321.40 +1968-11-23, 321.78 +1968-11-30, 322.06 +1968-12-07, 322.44 +1968-12-14, 322.91 +1968-12-21, 323.33 +1968-12-28, 323.19 +1969-01-04, 323.39 +1969-01-11, 324.06 +1969-01-18, 324.36 +1969-01-25, 324.14 +1969-02-01, 324.16 +1969-02-08, 323.92 +1969-02-15, 324.37 +1969-02-22, 324.86 +1969-03-01, 325.14 +1969-03-08, 325.58 +1969-03-15, 325.72 +1969-03-22, 325.96 +1969-03-29, 325.89 +1969-04-05, 326.27 +1969-04-12, 327.13 +1969-04-19, 326.58 +1969-04-26, 326.57 +1969-05-03, 327.52 +1969-05-10, 327.82 +1969-05-17, 326.86 +1969-05-24, 326.92 +1969-05-31, 327.43 +1969-06-07, 326.51 +1969-06-14, 326.78 +1969-06-21, 326.73 +1969-06-28, 326.37 +1969-07-05, 326.16 +1969-07-12, 326.07 +1969-07-19, 325.72 +1969-07-26, 325.47 +1969-08-02, 324.50 +1969-08-09, 324.56 +1969-08-16, 323.14 +1969-08-23, 322.56 +1969-08-30, 323.14 +1969-09-06, 322.21 +1969-09-13, 322.79 +1969-09-20, 322.84 +1969-09-27, 321.96 +1969-10-04, 321.50 +1969-10-11, 321.82 +1969-10-18, 322.00 +1969-10-25, 321.93 +1969-11-01, 322.21 +1969-11-08, 322.64 +1969-11-15, 322.78 +1969-11-22, 323.10 +1969-11-29, 323.52 +1969-12-06, 323.91 +1969-12-13, 323.99 +1969-12-20, 324.22 +1969-12-27, 324.50 +1970-01-03, 324.70 +1970-01-10, 325.40 +1970-01-17, 325.05 +1970-01-24, 324.80 +1970-01-31, 325.55 +1970-02-07, 325.70 +1970-02-14, 326.02 +1970-02-21, 326.32 +1970-02-28, 326.17 +1970-03-07, 326.85 +1970-03-14, 326.80 +1970-03-21, 327.51 +1970-03-28, 326.95 +1970-04-04, 328.20 +1970-04-11, 327.84 +1970-04-18, 327.81 +1970-04-25, 328.55 +1970-05-02, 327.99 +1970-05-09, 327.56 +1970-05-16, 328.03 +1970-05-23, 328.33 +1970-05-30, 327.98 +1970-06-06, 327.55 +1970-06-13, 327.86 +1970-06-20, 327.71 +1970-06-27, 327.23 +1970-07-04, 327.29 +1970-07-11, 326.24 +1970-07-18, 326.28 +1970-07-25, 325.63 +1970-08-01, 325.24 +1970-08-08, 325.21 +1970-08-15, 324.86 +1970-08-22, 324.84 +1970-08-29, 323.33 +1970-09-05, 322.97 +1970-09-12, 323.58 +1970-09-19, 323.18 +1970-09-26, 323.15 +1970-10-03, 323.21 +1970-10-10, 323.56 +1970-10-17, 322.92 +1970-10-24, 323.02 +1970-10-31, 323.18 +1970-11-07, 323.69 +1970-11-14, 323.76 +1970-11-21, 324.23 +1970-11-28, 324.71 +1970-12-05, 324.73 +1970-12-12, 325.00 +1970-12-19, 325.29 +1970-12-26, 325.58 +1971-01-02, 325.77 +1971-01-09, 325.89 +1971-01-16, 325.90 +1971-01-23, 326.72 +1971-01-30, 326.68 +1971-02-06, 326.55 +1971-02-13, 326.49 +1971-02-20, 326.79 +1971-02-27, 327.05 +1971-03-06, 327.15 +1971-03-13, 327.34 +1971-03-20, 327.08 +1971-03-27, 327.45 +1971-04-03, 327.44 +1971-04-10, 327.10 +1971-04-17, 327.71 +1971-04-24, 328.56 +1971-05-01, 328.20 +1971-05-08, 329.07 +1971-05-15, 329.28 +1971-05-22, 328.92 +1971-05-29, 328.81 +1971-06-05, 328.56 +1971-06-12, 328.80 +1971-06-19, 328.18 +1971-06-26, 328.52 +1971-07-03, 327.92 +1971-07-10, 327.88 +1971-07-17, 327.55 +1971-07-24, 326.21 +1971-07-31, 326.74 +1971-08-07, 326.12 +1971-08-14, 325.61 +1971-08-21, 325.39 +1971-08-28, 324.04 +1971-09-04, 323.65 +1971-09-11, 323.51 +1971-09-18, 323.26 +1971-09-25, 323.30 +1971-10-02, 323.32 +1971-10-09, 322.95 +1971-10-16, 323.52 +1971-10-23, 323.69 +1971-10-30, 324.40 +1971-11-06, 324.36 +1971-11-13, 324.53 +1971-11-20, 325.04 +1971-11-27, 325.51 +1971-12-04, 325.38 +1971-12-11, 325.93 +1971-12-18, 326.28 +1971-12-25, 326.35 +1972-01-01, 326.61 +1972-01-08, 326.67 +1972-01-15, 326.62 +1972-01-22, 326.68 +1972-01-29, 327.24 +1972-02-05, 327.40 +1972-02-12, 327.95 +1972-02-19, 327.83 +1972-02-26, 327.42 +1972-03-04, 327.58 +1972-03-11, 327.16 +1972-03-18, 327.78 +1972-03-25, 328.62 +1972-04-01, 328.97 +1972-04-08, 329.47 +1972-04-15, 329.83 +1972-04-22, 330.13 +1972-04-29, 330.02 +1972-05-06, 330.04 +1972-05-13, 329.75 +1972-05-20, 330.11 +1972-05-27, 330.21 +1972-06-03, 329.71 +1972-06-10, 329.15 +1972-06-17, 329.04 +1972-06-24, 328.52 +1972-07-01, 328.63 +1972-07-08, 328.30 +1972-07-15, 327.72 +1972-07-22, 328.14 +1972-07-29, 327.51 +1972-08-05, 326.92 +1972-08-12, 326.66 +1972-08-19, 326.57 +1972-08-26, 325.05 +1972-09-02, 325.40 +1972-09-09, 325.77 +1972-09-16, 324.81 +1972-09-23, 324.26 +1972-09-30, 324.23 +1972-10-07, 324.88 +1972-10-14, 325.52 +1972-10-21, 325.11 +1972-10-28, 325.86 +1972-11-04, 326.32 +1972-11-11, 326.13 +1972-11-18, 326.44 +1972-11-25, 326.98 +1972-12-02, 326.94 +1972-12-09, 327.16 +1972-12-16, 327.60 +1972-12-23, 327.91 +1972-12-30, 328.26 +1973-01-06, 328.40 +1973-01-13, 328.44 +1973-01-20, 328.66 +1973-01-27, 328.86 +1973-02-03, 329.19 +1973-02-10, 329.53 +1973-02-17, 329.67 +1973-02-24, 329.70 +1973-03-03, 329.95 +1973-03-10, 330.11 +1973-03-17, 330.55 +1973-03-24, 330.83 +1973-03-31, 330.68 +1973-04-07, 331.22 +1973-04-14, 331.10 +1973-04-21, 331.94 +1973-04-28, 332.16 +1973-05-05, 332.21 +1973-05-12, 332.35 +1973-05-19, 332.63 +1973-05-26, 332.58 +1973-06-02, 332.27 +1973-06-09, 332.58 +1973-06-16, 332.02 +1973-06-23, 331.63 +1973-06-30, 331.43 +1973-07-07, 331.53 +1973-07-14, 331.07 +1973-07-21, 330.08 +1973-07-28, 330.13 +1973-08-04, 330.05 +1973-08-11, 329.54 +1973-08-18, 329.36 +1973-08-25, 328.53 +1973-09-01, 328.45 +1973-09-08, 327.65 +1973-09-15, 327.81 +1973-09-22, 327.10 +1973-09-29, 326.60 +1973-10-06, 327.05 +1973-10-13, 327.40 +1973-10-20, 327.48 +1973-10-27, 327.18 +1973-11-03, 327.59 +1973-11-10, 328.02 +1973-11-17, 328.20 +1973-11-24, 328.57 +1973-12-01, 329.05 +1973-12-08, 328.70 +1973-12-15, 328.65 +1973-12-22, 328.24 +1973-12-29, 328.71 +1974-01-05, 328.91 +1974-01-12, 329.29 +1974-01-19, 329.41 +1974-01-26, 329.85 +1974-02-02, 330.54 +1974-02-09, 330.81 +1974-02-16, 330.61 +1974-02-23, 330.68 +1974-03-02, 330.79 +1974-03-09, 331.20 +1974-03-16, 332.11 +1974-03-23, 332.00 +1974-03-30, 331.56 +1974-04-06, 332.47 +1974-04-13, 332.14 +1974-04-20, 332.93 +1974-04-27, 333.17 +1974-05-04, 332.95 +1974-05-11, 333.09 +1974-05-18, 333.27 +1974-05-25, 332.87 +1974-06-01, 332.93 +1974-06-08, 332.03 +1974-06-15, 332.03 +1974-06-22, 332.26 +1974-06-29, 331.73 +1974-07-06, 331.73 +1974-07-13, 331.29 +1974-07-20, 330.47 +1974-07-27, 331.02 +1974-08-03, 330.09 +1974-08-10, 329.92 +1974-08-17, 329.29 +1974-08-24, 328.97 +1974-08-31, 328.19 +1974-09-07, 328.03 +1974-09-14, 327.35 +1974-09-21, 326.91 +1974-09-28, 327.38 +1974-10-05, 327.39 +1974-10-12, 327.06 +1974-10-19, 327.56 +1974-10-26, 327.70 +1974-11-02, 327.99 +1974-11-09, 328.09 +1974-11-16, 328.83 +1974-11-23, 328.65 +1974-11-30, 328.75 +1974-12-07, 329.50 +1974-12-14, 329.73 +1974-12-21, 329.82 +1974-12-28, 329.78 +1975-01-04, 329.93 +1975-01-11, 329.82 +1975-01-18, 330.27 +1975-01-25, 331.13 +1975-02-01, 331.18 +1975-02-08, 331.47 +1975-02-15, 331.00 +1975-02-22, 331.72 +1975-03-01, 331.88 +1975-03-08, 331.61 +1975-03-15, 331.96 +1975-03-22, 332.27 +1975-03-29, 332.58 +1975-04-05, 333.03 +1975-04-12, 333.58 +1975-04-19, 333.54 +1975-04-26, 333.13 +1975-05-03, 333.94 +1975-05-10, 333.93 +1975-05-17, 333.76 +1975-05-24, 333.73 +1975-05-31, 334.13 +1975-06-07, 333.87 +1975-06-14, 333.38 +1975-06-21, 333.45 +1975-06-28, 333.19 +1975-07-05, 332.71 +1975-07-12, 332.05 +1975-07-19, 331.05 +1975-07-26, 331.57 +1975-08-02, 330.83 +1975-08-09, 330.70 +1975-08-16, 330.35 +1975-08-23, 329.30 +1975-08-30, 328.88 +1975-09-06, 329.45 +1975-09-13, 328.52 +1975-09-20, 328.09 +1975-09-27, 328.28 +1975-10-04, 328.03 +1975-10-11, 328.05 +1975-10-18, 328.57 +1975-10-25, 328.81 +1975-11-01, 329.35 +1975-11-08, 329.20 +1975-11-15, 329.17 +1975-11-22, 329.54 +1975-11-29, 330.14 +1975-12-06, 330.35 +1975-12-13, 330.54 +1975-12-20, 331.13 +1975-12-27, 331.29 +1976-01-03, 331.57 +1976-01-10, 331.51 +1976-01-17, 331.74 +1976-01-24, 331.87 +1976-01-31, 332.28 +1976-02-07, 332.19 +1976-02-14, 332.52 +1976-02-21, 333.26 +1976-02-28, 332.48 +1976-03-06, 332.81 +1976-03-13, 333.60 +1976-03-20, 333.14 +1976-03-27, 334.39 +1976-04-03, 334.73 +1976-04-10, 334.26 +1976-04-17, 334.42 +1976-04-24, 334.54 +1976-05-01, 334.74 +1976-05-08, 334.33 +1976-05-15, 334.60 +1976-05-22, 335.43 +1976-05-29, 334.87 +1976-06-05, 334.36 +1976-06-12, 334.63 +1976-06-19, 334.32 +1976-07-03, 333.66 +1976-07-10, 333.42 +1976-07-17, 332.85 +1976-07-24, 332.47 +1976-07-31, 332.13 +1976-08-07, 331.72 +1976-08-14, 330.65 +1976-08-21, 330.69 +1976-08-28, 330.09 +1976-09-04, 329.75 +1976-09-11, 330.09 +1976-09-18, 329.33 +1976-09-25, 328.42 +1976-10-02, 328.85 +1976-10-09, 329.06 +1976-10-16, 329.60 +1976-10-23, 329.17 +1976-10-30, 329.03 +1976-11-06, 329.84 +1976-11-13, 330.43 +1976-11-20, 330.59 +1976-11-27, 330.70 +1976-12-04, 331.15 +1976-12-11, 331.33 +1976-12-18, 331.92 +1976-12-25, 332.20 +1977-01-01, 332.58 +1977-01-08, 332.43 +1977-01-15, 333.14 +1977-01-22, 333.24 +1977-01-29, 333.22 +1977-02-05, 333.41 +1977-02-12, 333.33 +1977-02-19, 333.45 +1977-02-26, 333.63 +1977-03-05, 334.10 +1977-03-12, 334.67 +1977-03-19, 335.11 +1977-03-26, 335.02 +1977-04-02, 335.53 +1977-04-09, 335.94 +1977-04-16, 336.01 +1977-04-23, 336.12 +1977-04-30, 336.78 +1977-05-07, 336.80 +1977-05-14, 336.47 +1977-05-21, 336.84 +1977-05-28, 336.72 +1977-06-04, 336.49 +1977-06-11, 336.31 +1977-06-18, 336.19 +1977-06-25, 336.03 +1977-07-02, 335.59 +1977-07-09, 335.10 +1977-07-16, 335.11 +1977-07-23, 334.60 +1977-07-30, 333.76 +1977-08-06, 333.01 +1977-08-13, 332.98 +1977-08-20, 332.84 +1977-08-27, 332.85 +1977-09-03, 332.17 +1977-09-10, 331.21 +1977-09-17, 332.10 +1977-09-24, 330.96 +1977-10-01, 330.45 +1977-10-08, 330.95 +1977-10-15, 331.52 +1977-10-22, 331.52 +1977-10-29, 331.74 +1977-11-05, 332.13 +1977-11-12, 332.03 +1977-11-19, 332.59 +1977-11-26, 332.85 +1977-12-03, 333.20 +1977-12-10, 333.51 +1977-12-17, 333.85 +1977-12-24, 334.25 +1977-12-31, 334.67 +1978-01-07, 334.27 +1978-01-14, 334.63 +1978-01-21, 335.46 +1978-01-28, 335.94 +1978-02-04, 335.00 +1978-02-11, 335.13 +1978-02-18, 335.66 +1978-02-25, 335.70 +1978-03-04, 336.27 +1978-03-11, 336.10 +1978-03-18, 336.80 +1978-03-25, 337.39 +1978-04-01, 337.08 +1978-04-08, 337.99 +1978-04-15, 337.94 +1978-04-22, 337.47 +1978-04-29, 338.05 +1978-05-06, 338.07 +1978-05-13, 338.10 +1978-05-20, 337.82 +1978-05-27, 337.90 +1978-06-03, 338.48 +1978-06-10, 338.23 +1978-06-17, 337.86 +1978-06-24, 337.39 +1978-07-01, 337.69 +1978-07-08, 336.79 +1978-07-15, 336.72 +1978-07-22, 335.95 +1978-07-29, 335.69 +1978-08-05, 335.17 +1978-08-12, 334.84 +1978-08-19, 334.41 +1978-08-26, 334.37 +1978-09-02, 333.88 +1978-09-09, 332.88 +1978-09-16, 332.19 +1978-09-23, 332.38 +1978-09-30, 332.76 +1978-10-07, 332.10 +1978-10-14, 332.45 +1978-10-21, 333.02 +1978-10-28, 333.18 +1978-11-04, 333.58 +1978-11-11, 333.85 +1978-11-18, 333.88 +1978-11-25, 334.20 +1978-12-02, 334.52 +1978-12-09, 334.80 +1978-12-16, 335.15 +1978-12-23, 335.12 +1978-12-30, 335.32 +1979-01-06, 335.36 +1979-01-13, 335.97 +1979-01-20, 336.85 +1979-01-27, 336.95 +1979-02-03, 336.90 +1979-02-10, 336.54 +1979-02-17, 336.71 +1979-02-24, 336.79 +1979-03-03, 337.12 +1979-03-10, 337.79 +1979-03-17, 337.43 +1979-03-24, 339.02 +1979-03-31, 338.80 +1979-04-07, 338.17 +1979-04-14, 338.66 +1979-04-21, 339.25 +1979-04-28, 339.60 +1979-05-05, 339.30 +1979-05-12, 338.88 +1979-05-19, 339.86 +1979-05-26, 339.62 +1979-06-02, 339.93 +1979-06-09, 339.52 +1979-06-16, 338.90 +1979-06-23, 338.95 +1979-06-30, 339.00 +1979-07-07, 338.28 +1979-07-14, 337.82 +1979-07-21, 337.37 +1979-07-28, 336.84 +1979-08-04, 337.03 +1979-08-11, 336.59 +1979-08-18, 336.17 +1979-08-25, 334.56 +1979-09-01, 334.45 +1979-09-08, 334.00 +1979-09-15, 334.21 +1979-09-22, 333.28 +1979-09-29, 334.11 +1979-10-06, 334.10 +1979-10-13, 333.97 +1979-10-20, 333.74 +1979-10-27, 334.16 +1979-11-03, 334.73 +1979-11-10, 334.86 +1979-11-17, 335.59 +1979-11-24, 335.68 +1979-12-01, 335.99 +1979-12-08, 336.50 +1979-12-15, 336.77 +1979-12-22, 336.88 +1979-12-29, 337.40 +1980-01-05, 337.67 +1980-01-12, 337.48 +1980-01-19, 338.38 +1980-01-26, 338.49 +1980-02-02, 338.05 +1980-02-09, 338.14 +1980-02-16, 338.68 +1980-02-23, 338.26 +1980-03-01, 339.31 +1980-03-08, 339.54 +1980-03-15, 340.02 +1980-03-22, 340.54 +1980-03-29, 341.01 +1980-04-05, 340.41 +1980-04-12, 340.95 +1980-04-19, 340.75 +1980-04-26, 341.06 +1980-05-03, 341.52 +1980-05-10, 341.30 +1980-05-17, 341.38 +1980-05-24, 340.92 +1980-05-31, 341.72 +1980-06-07, 341.38 +1980-06-14, 341.39 +1980-06-21, 340.87 +1980-06-28, 340.40 +1980-07-05, 340.44 +1980-07-12, 339.78 +1980-07-19, 338.51 +1980-07-26, 338.92 +1980-08-02, 337.98 +1980-08-09, 337.77 +1980-08-16, 337.75 +1980-08-23, 337.79 +1980-08-30, 337.01 +1980-09-06, 336.65 +1980-09-13, 335.75 +1980-09-20, 335.28 +1980-09-27, 336.03 +1980-10-04, 335.83 +1980-10-11, 335.87 +1980-10-18, 336.10 +1980-10-25, 336.42 +1980-11-01, 336.65 +1980-11-08, 336.98 +1980-11-15, 337.14 +1980-11-22, 337.31 +1980-11-29, 337.41 +1980-12-06, 337.77 +1980-12-13, 338.10 +1980-12-20, 338.39 +1980-12-27, 338.72 +1981-01-03, 338.94 +1981-01-10, 339.13 +1981-01-17, 339.39 +1981-01-24, 339.36 +1981-01-31, 339.55 +1981-02-07, 340.57 +1981-02-14, 340.04 +1981-02-21, 340.20 +1981-02-28, 341.11 +1981-03-07, 340.73 +1981-03-14, 341.04 +1981-03-21, 341.89 +1981-03-28, 342.19 +1981-04-04, 342.42 +1981-04-11, 342.49 +1981-04-18, 342.78 +1981-04-25, 342.30 +1981-05-02, 342.95 +1981-05-09, 343.00 +1981-05-16, 342.80 +1981-05-23, 342.70 +1981-05-30, 342.75 +1981-06-06, 342.64 +1981-06-13, 342.54 +1981-06-20, 341.81 +1981-06-27, 341.64 +1981-07-04, 341.05 +1981-07-11, 340.87 +1981-07-18, 339.76 +1981-07-25, 340.21 +1981-08-01, 339.56 +1981-08-08, 338.92 +1981-08-15, 338.48 +1981-08-22, 337.57 +1981-08-29, 337.73 +1981-09-05, 337.20 +1981-09-12, 337.03 +1981-09-19, 336.75 +1981-09-26, 335.95 +1981-10-03, 336.30 +1981-10-10, 336.65 +1981-10-17, 337.13 +1981-10-24, 337.22 +1981-10-31, 337.56 +1981-11-07, 337.87 +1981-11-14, 338.14 +1981-11-21, 338.57 +1981-11-28, 339.30 +1981-12-05, 339.29 +1981-12-12, 339.41 +1981-12-19, 339.65 +1981-12-26, 340.23 +1982-01-02, 340.28 +1982-01-09, 340.39 +1982-01-16, 340.72 +1982-01-23, 341.13 +1982-01-30, 341.29 +1982-02-06, 341.94 +1982-02-13, 341.11 +1982-02-20, 341.14 +1982-02-27, 342.19 +1982-03-06, 342.66 +1982-03-13, 342.61 +1982-03-20, 342.78 +1982-03-27, 342.81 +1982-04-03, 342.96 +1982-04-10, 343.30 +1982-04-17, 343.50 +1982-04-24, 344.29 +1982-05-01, 343.83 +1982-05-08, 343.68 +1982-05-15, 344.29 +1982-05-22, 344.10 +1982-05-29, 344.10 +1982-06-05, 343.48 +1982-06-12, 343.50 +1982-06-19, 343.46 +1982-06-26, 342.91 +1982-07-03, 342.53 +1982-07-10, 342.03 +1982-07-17, 342.02 +1982-07-24, 341.81 +1982-07-31, 341.31 +1982-08-07, 340.57 +1982-08-14, 340.06 +1982-08-21, 339.71 +1982-08-28, 338.32 +1982-09-04, 338.88 +1982-09-11, 338.61 +1982-09-18, 337.84 +1982-09-25, 336.92 +1982-10-02, 337.32 +1982-10-09, 338.09 +1982-10-16, 337.60 +1982-10-23, 337.94 +1982-10-30, 338.70 +1982-11-06, 338.49 +1982-11-13, 339.20 +1982-11-20, 339.72 +1982-11-27, 339.88 +1982-12-04, 339.86 +1982-12-11, 340.43 +1982-12-18, 340.71 +1982-12-25, 340.82 +1983-01-01, 340.94 +1983-01-08, 341.44 +1983-01-15, 341.57 +1983-01-22, 341.25 +1983-01-29, 341.72 +1983-02-05, 342.00 +1983-02-12, 342.77 +1983-02-19, 342.50 +1983-02-26, 342.84 +1983-03-05, 342.38 +1983-03-12, 342.58 +1983-03-19, 344.06 +1983-03-26, 343.81 +1983-04-02, 344.02 +1983-04-09, 344.89 +1983-04-16, 345.07 +1983-04-23, 345.32 +1983-04-30, 345.46 +1983-05-07, 345.43 +1983-05-14, 345.77 +1983-05-21, 345.85 +1983-05-28, 345.76 +1983-06-04, 345.68 +1983-06-11, 345.60 +1983-06-18, 345.04 +1983-06-25, 344.97 +1983-07-02, 344.74 +1983-07-09, 344.59 +1983-07-16, 343.73 +1983-07-23, 343.66 +1983-07-30, 342.60 +1983-08-06, 343.05 +1983-08-13, 341.70 +1983-08-20, 342.14 +1983-08-27, 341.80 +1983-09-03, 339.94 +1983-09-10, 339.99 +1983-09-17, 339.86 +1983-09-24, 339.98 +1983-10-01, 339.87 +1983-10-08, 339.76 +1983-10-15, 340.12 +1983-10-22, 340.25 +1983-10-29, 340.37 +1983-11-05, 340.80 +1983-11-12, 341.00 +1983-11-19, 341.18 +1983-11-26, 341.70 +1983-12-03, 341.87 +1983-12-10, 342.85 +1983-12-17, 343.39 +1983-12-24, 343.61 +1983-12-31, 343.47 +1984-01-07, 343.78 +1984-01-14, 343.47 +1984-01-21, 343.50 +1984-01-28, 344.16 +1984-02-04, 344.35 +1984-02-11, 344.57 +1984-02-18, 344.33 +1984-02-25, 344.69 +1984-03-03, 344.88 +1984-03-10, 344.95 +1984-03-17, 345.45 +1984-03-24, 345.69 +1984-04-28, 347.47 +1984-05-05, 347.49 +1984-05-12, 347.78 +1984-05-19, 347.36 +1984-05-26, 347.03 +1984-06-02, 347.09 +1984-06-09, 347.02 +1984-06-16, 346.89 +1984-06-23, 346.37 +1984-06-30, 346.24 +1984-07-07, 345.82 +1984-07-14, 345.48 +1984-07-21, 345.25 +1984-07-28, 344.48 +1984-08-04, 344.05 +1984-08-11, 344.12 +1984-08-18, 343.19 +1984-08-25, 342.05 +1984-09-01, 341.65 +1984-09-08, 340.65 +1984-09-15, 341.37 +1984-09-22, 341.31 +1984-09-29, 340.85 +1984-10-06, 341.19 +1984-10-13, 341.30 +1984-10-20, 341.91 +1984-10-27, 341.67 +1984-11-03, 342.01 +1984-11-10, 342.65 +1984-11-17, 343.14 +1984-11-24, 343.75 +1984-12-01, 343.60 +1984-12-08, 343.95 +1984-12-15, 344.23 +1984-12-22, 344.58 +1984-12-29, 344.57 +1985-01-05, 344.77 +1985-01-12, 345.01 +1985-01-19, 345.01 +1985-01-26, 345.08 +1985-02-02, 345.95 +1985-02-09, 345.54 +1985-02-16, 345.82 +1985-02-23, 346.37 +1985-03-02, 346.77 +1985-03-09, 347.11 +1985-03-16, 347.58 +1985-03-23, 347.70 +1985-03-30, 348.27 +1985-04-06, 348.04 +1985-04-13, 348.08 +1985-04-20, 348.52 +1985-04-27, 348.84 +1985-05-04, 348.89 +1985-05-11, 349.31 +1985-05-18, 349.18 +1985-05-25, 348.18 +1985-06-01, 349.05 +1985-06-08, 348.49 +1985-06-15, 348.24 +1985-06-22, 347.90 +1985-06-29, 347.47 +1985-07-06, 346.90 +1985-07-13, 346.80 +1985-07-20, 346.43 +1985-07-27, 345.79 +1985-08-10, 344.70 +1985-08-17, 344.50 +1985-08-24, 344.38 +1985-08-31, 343.76 +1985-09-07, 344.29 +1985-09-14, 343.37 +1985-09-21, 342.46 +1985-09-28, 342.13 +1985-10-05, 342.40 +1985-10-12, 342.50 +1985-10-19, 343.14 +1985-10-26, 343.22 +1985-11-02, 343.38 +1985-11-09, 343.77 +1985-11-16, 344.25 +1985-11-23, 344.64 +1985-11-30, 345.30 +1985-12-07, 345.37 +1985-12-14, 345.67 +1985-12-21, 345.17 +1985-12-28, 346.30 +1986-01-04, 346.44 +1986-01-11, 346.09 +1986-01-18, 346.25 +1986-01-25, 346.46 +1986-02-01, 346.22 +1986-02-08, 346.84 +1986-02-15, 347.18 +1986-02-22, 347.20 +1986-03-01, 347.07 +1986-03-08, 346.65 +1986-03-15, 347.22 +1986-03-22, 349.15 +1986-03-29, 348.87 +1986-04-05, 349.21 +1986-04-12, 349.45 +1986-04-19, 349.34 +1986-04-26, 350.20 +1986-05-03, 349.99 +1986-05-10, 350.14 +1986-05-17, 350.23 +1986-05-24, 350.13 +1986-05-31, 350.18 +1986-06-07, 349.73 +1986-06-14, 349.54 +1986-06-21, 349.48 +1986-06-28, 348.92 +1986-07-05, 348.69 +1986-07-12, 347.77 +1986-07-19, 347.61 +1986-07-26, 347.41 +1986-08-02, 346.65 +1986-08-09, 346.23 +1986-08-16, 345.59 +1986-08-23, 345.62 +1986-08-30, 345.27 +1986-09-06, 345.05 +1986-09-13, 345.32 +1986-09-20, 344.43 +1986-09-27, 344.51 +1986-10-04, 343.99 +1986-10-11, 344.11 +1986-10-18, 343.99 +1986-10-25, 344.57 +1986-11-01, 345.17 +1986-11-08, 345.35 +1986-11-15, 345.63 +1986-11-22, 345.72 +1986-11-29, 346.41 +1986-12-06, 346.92 +1986-12-13, 346.77 +1986-12-20, 346.97 +1986-12-27, 347.08 +1987-01-03, 347.62 +1987-01-10, 348.37 +1987-01-17, 348.27 +1987-01-24, 347.96 +1987-01-31, 348.03 +1987-02-07, 347.91 +1987-02-14, 348.25 +1987-02-21, 348.54 +1987-02-28, 349.47 +1987-03-07, 348.85 +1987-03-14, 349.27 +1987-03-21, 349.79 +1987-03-28, 350.20 +1987-04-04, 350.82 +1987-04-11, 350.27 +1987-04-18, 351.19 +1987-04-25, 351.39 +1987-05-02, 351.43 +1987-05-09, 352.00 +1987-05-16, 351.73 +1987-05-23, 351.91 +1987-05-30, 351.78 +1987-06-06, 351.65 +1987-06-13, 351.17 +1987-06-20, 351.00 +1987-06-27, 350.94 +1987-07-04, 349.76 +1987-07-11, 349.84 +1987-07-18, 348.87 +1987-07-25, 349.51 +1987-08-01, 349.04 +1987-08-08, 348.15 +1987-08-15, 348.62 +1987-08-22, 348.01 +1987-08-29, 346.71 +1987-09-05, 347.05 +1987-09-12, 346.65 +1987-09-19, 346.29 +1987-09-26, 345.85 +1987-10-03, 345.77 +1987-10-10, 346.34 +1987-10-17, 346.59 +1987-10-24, 346.80 +1987-10-31, 346.91 +1987-11-07, 347.34 +1987-11-14, 347.65 +1987-11-21, 348.16 +1987-11-28, 348.75 +1987-12-05, 348.66 +1987-12-12, 348.82 +1987-12-19, 349.12 +1987-12-26, 349.29 +1988-01-02, 349.78 +1988-01-09, 350.28 +1988-01-16, 350.21 +1988-01-23, 350.79 +1988-01-30, 351.22 +1988-02-06, 351.81 +1988-02-13, 351.31 +1988-02-20, 351.53 +1988-02-27, 352.55 +1988-03-05, 352.88 +1988-03-12, 351.88 +1988-03-19, 351.78 +1988-03-26, 352.23 +1988-04-02, 353.13 +1988-04-09, 353.57 +1988-04-16, 353.15 +1988-04-23, 354.00 +1988-04-30, 354.23 +1988-05-07, 353.76 +1988-05-14, 354.30 +1988-05-21, 354.52 +1988-05-28, 354.20 +1988-06-04, 354.18 +1988-06-11, 354.20 +1988-06-18, 353.61 +1988-06-25, 353.19 +1988-07-02, 353.08 +1988-07-09, 352.56 +1988-07-16, 352.65 +1988-07-23, 351.96 +1988-07-30, 351.13 +1988-08-06, 350.95 +1988-08-13, 350.30 +1988-08-20, 350.49 +1988-08-27, 349.61 +1988-09-03, 349.38 +1988-09-10, 348.73 +1988-09-17, 348.95 +1988-09-24, 348.19 +1988-10-01, 348.82 +1988-10-08, 348.88 +1988-10-15, 348.68 +1988-10-22, 349.42 +1988-10-29, 349.29 +1988-11-05, 349.78 +1988-11-12, 349.89 +1988-11-19, 350.18 +1988-11-26, 350.48 +1988-12-03, 350.50 +1988-12-10, 351.02 +1988-12-17, 351.60 +1988-12-24, 351.36 +1988-12-31, 352.40 +1989-01-07, 352.77 +1989-01-14, 352.97 +1989-01-21, 352.51 +1989-01-28, 353.06 +1989-02-04, 352.83 +1989-02-11, 352.64 +1989-02-18, 353.22 +1989-02-25, 353.48 +1989-03-04, 353.17 +1989-03-11, 353.46 +1989-03-18, 353.55 +1989-03-25, 354.48 +1989-04-01, 354.56 +1989-04-08, 355.05 +1989-04-15, 355.41 +1989-04-22, 356.01 +1989-04-29, 355.90 +1989-05-06, 355.36 +1989-05-13, 355.82 +1989-05-20, 355.64 +1989-05-27, 355.76 +1989-06-03, 355.80 +1989-06-10, 355.09 +1989-06-17, 354.87 +1989-06-24, 354.90 +1989-07-01, 354.50 +1989-07-08, 354.76 +1989-07-15, 353.85 +1989-07-22, 353.19 +1989-07-29, 353.21 +1989-08-05, 352.62 +1989-08-12, 352.24 +1989-08-19, 351.16 +1989-08-26, 350.43 +1989-09-02, 350.79 +1989-09-09, 350.28 +1989-09-16, 349.41 +1989-09-23, 349.31 +1989-09-30, 349.71 +1989-10-07, 349.97 +1989-10-14, 349.74 +1989-10-21, 350.24 +1989-10-28, 350.47 +1989-11-04, 350.66 +1989-11-11, 351.29 +1989-11-18, 351.60 +1989-11-25, 351.46 +1989-12-02, 352.09 +1989-12-09, 352.16 +1989-12-16, 352.48 +1989-12-23, 352.59 +1989-12-30, 353.44 +1990-01-06, 353.47 +1990-01-13, 353.55 +1990-01-20, 353.80 +1990-01-27, 353.96 +1990-02-03, 354.13 +1990-02-10, 355.02 +1990-02-17, 354.87 +1990-02-24, 354.78 +1990-03-03, 355.72 +1990-03-10, 354.99 +1990-03-17, 355.84 +1990-03-24, 355.17 +1990-03-31, 355.95 +1990-04-07, 356.17 +1990-04-14, 355.90 +1990-04-21, 356.68 +1990-04-28, 356.18 +1990-05-05, 357.30 +1990-05-12, 357.09 +1990-05-19, 356.99 +1990-05-26, 357.13 +1990-06-02, 357.01 +1990-06-09, 356.63 +1990-06-16, 355.68 +1990-06-23, 355.53 +1990-06-30, 355.79 +1990-07-07, 355.51 +1990-07-14, 354.00 +1990-07-21, 354.59 +1990-07-28, 354.72 +1990-08-04, 353.56 +1990-08-11, 353.23 +1990-08-18, 352.92 +1990-08-25, 352.01 +1990-09-01, 350.99 +1990-09-08, 350.75 +1990-09-15, 351.33 +1990-09-22, 350.97 +1990-09-29, 350.92 +1990-10-06, 351.10 +1990-10-13, 351.08 +1990-10-20, 351.48 +1990-10-27, 351.47 +1990-11-03, 352.12 +1990-11-10, 352.62 +1990-11-17, 353.05 +1990-11-24, 353.18 +1990-12-01, 353.61 +1990-12-08, 354.07 +1990-12-15, 353.87 +1990-12-22, 354.51 +1990-12-29, 354.89 +1991-01-05, 354.28 +1991-01-12, 354.73 +1991-01-19, 354.86 +1991-01-26, 355.05 +1991-02-02, 355.22 +1991-02-09, 355.23 +1991-02-16, 356.40 +1991-02-23, 355.83 +1991-03-02, 356.41 +1991-03-09, 357.21 +1991-03-16, 357.69 +1991-03-23, 356.96 +1991-03-30, 357.94 +1991-04-06, 358.32 +1991-04-13, 357.83 +1991-04-20, 359.19 +1991-04-27, 359.24 +1991-05-04, 359.11 +1991-05-11, 358.94 +1991-05-18, 360.03 +1991-05-25, 359.08 +1991-06-01, 358.52 +1991-06-08, 358.46 +1991-06-15, 358.22 +1991-06-22, 358.12 +1991-06-29, 357.74 +1991-07-06, 357.27 +1991-07-13, 356.54 +1991-07-20, 355.26 +1991-07-27, 355.30 +1991-08-03, 354.89 +1991-08-10, 354.60 +1991-08-17, 353.78 +1991-08-24, 353.07 +1991-08-31, 353.22 +1991-09-07, 353.06 +1991-09-14, 352.12 +1991-09-21, 351.84 +1991-09-28, 351.69 +1991-10-05, 351.70 +1991-10-12, 352.18 +1991-10-19, 352.53 +1991-10-26, 352.72 +1991-11-02, 353.47 +1991-11-09, 353.76 +1991-11-16, 353.56 +1991-11-23, 353.86 +1991-11-30, 354.35 +1991-12-07, 354.54 +1991-12-14, 354.97 +1991-12-21, 355.22 +1991-12-28, 355.50 +1992-01-04, 355.69 +1992-01-11, 356.07 +1992-01-18, 356.19 +1992-01-25, 355.96 +1992-02-01, 356.05 +1992-02-08, 356.73 +1992-02-15, 357.33 +1992-02-22, 356.99 +1992-02-29, 356.58 +1992-03-07, 357.30 +1992-03-14, 357.80 +1992-03-21, 358.18 +1992-03-28, 358.42 +1992-04-04, 358.57 +1992-04-11, 358.99 +1992-04-18, 359.75 +1992-04-25, 359.25 +1992-05-02, 359.69 +1992-05-09, 359.73 +1992-05-16, 358.60 +1992-05-23, 359.65 +1992-05-30, 360.25 +1992-06-06, 360.03 +1992-06-13, 359.48 +1992-06-20, 358.75 +1992-06-27, 358.45 +1992-07-04, 358.47 +1992-07-11, 357.20 +1992-07-18, 356.37 +1992-07-25, 356.10 +1992-08-01, 354.99 +1992-08-08, 355.33 +1992-08-15, 355.32 +1992-08-22, 354.59 +1992-08-29, 354.34 +1992-09-05, 353.53 +1992-09-12, 353.66 +1992-09-19, 352.37 +1992-09-26, 352.75 +1992-10-03, 353.60 +1992-10-10, 353.38 +1992-10-17, 353.24 +1992-10-24, 353.51 +1992-10-31, 353.56 +1992-11-07, 353.99 +1992-11-14, 353.86 +1992-11-21, 354.57 +1992-11-28, 354.64 +1992-12-05, 354.85 +1992-12-12, 355.37 +1992-12-19, 355.46 +1992-12-26, 355.97 +1993-01-02, 356.29 +1993-01-09, 356.96 +1993-01-16, 356.72 +1993-01-23, 356.66 +1993-01-30, 357.03 +1993-02-06, 356.62 +1993-02-13, 357.23 +1993-02-20, 357.36 +1993-02-27, 357.68 +1993-03-06, 358.39 +1993-03-13, 358.52 +1993-03-20, 358.13 +1993-03-27, 358.85 +1993-04-03, 359.17 +1993-04-10, 358.87 +1993-04-17, 359.42 +1993-04-24, 360.03 +1993-05-01, 359.62 +1993-05-08, 359.78 +1993-05-15, 360.70 +1993-05-22, 360.62 +1993-05-29, 360.35 +1993-06-05, 359.79 +1993-06-12, 359.92 +1993-06-19, 359.34 +1993-06-26, 359.15 +1993-07-03, 357.91 +1993-07-10, 358.02 +1993-07-17, 358.10 +1993-07-24, 356.69 +1993-07-31, 356.52 +1993-08-07, 355.88 +1993-08-14, 355.95 +1993-08-21, 354.90 +1993-08-28, 354.72 +1993-09-04, 354.30 +1993-09-11, 353.23 +1993-09-18, 353.81 +1993-09-25, 353.86 +1993-10-02, 353.80 +1993-10-09, 353.87 +1993-10-16, 354.00 +1993-10-23, 354.45 +1993-10-30, 354.38 +1993-11-06, 354.78 +1993-11-13, 355.16 +1993-11-20, 355.65 +1993-11-27, 356.03 +1993-12-04, 356.27 +1993-12-11, 356.52 +1993-12-18, 356.99 +1993-12-25, 357.50 +1994-01-01, 358.14 +1994-01-08, 358.12 +1994-01-15, 358.43 +1994-01-22, 358.33 +1994-01-29, 358.78 +1994-02-05, 358.49 +1994-02-12, 358.61 +1994-02-19, 359.02 +1994-02-26, 359.64 +1994-03-05, 358.77 +1994-03-12, 359.86 +1994-03-19, 360.49 +1994-03-26, 360.83 +1994-04-02, 360.68 +1994-04-09, 361.01 +1994-04-16, 361.07 +1994-04-23, 361.34 +1994-04-30, 362.25 +1994-05-07, 361.63 +1994-05-14, 361.42 +1994-05-21, 361.78 +1994-05-28, 361.91 +1994-06-04, 361.04 +1994-06-11, 361.07 +1994-06-18, 360.93 +1994-06-25, 360.70 +1994-07-02, 360.22 +1994-07-09, 359.90 +1994-07-16, 359.43 +1994-07-23, 359.00 +1994-07-30, 358.81 +1994-08-06, 358.10 +1994-08-13, 357.52 +1994-08-20, 357.63 +1994-08-27, 356.39 +1994-09-03, 356.44 +1994-09-10, 356.46 +1994-09-17, 355.46 +1994-09-24, 355.50 +1994-10-01, 355.46 +1994-10-08, 355.81 +1994-10-15, 356.09 +1994-10-22, 356.39 +1994-10-29, 356.61 +1994-11-05, 356.97 +1994-11-12, 357.40 +1994-11-19, 357.93 +1994-11-26, 358.11 +1994-12-03, 358.43 +1994-12-10, 359.13 +1994-12-17, 359.25 +1994-12-24, 359.15 +1994-12-31, 359.52 +1995-01-07, 359.68 +1995-01-14, 360.28 +1995-01-21, 360.12 +1995-01-28, 360.04 +1995-02-04, 360.67 +1995-02-11, 361.09 +1995-02-18, 360.88 +1995-02-25, 361.36 +1995-03-04, 362.20 +1995-03-11, 361.24 +1995-03-18, 360.99 +1995-03-25, 362.00 +1995-04-01, 363.80 +1995-04-08, 363.44 +1995-04-15, 363.34 +1995-04-22, 362.89 +1995-04-29, 363.58 +1995-05-06, 363.24 +1995-05-13, 364.11 +1995-05-20, 364.18 +1995-05-27, 363.47 +1995-06-03, 363.92 +1995-06-10, 363.47 +1995-06-17, 362.96 +1995-06-24, 362.81 +1995-07-01, 362.53 +1995-07-08, 362.27 +1995-07-15, 361.97 +1995-07-22, 361.58 +1995-07-29, 360.98 +1995-08-05, 360.45 +1995-08-12, 359.21 +1995-08-19, 358.72 +1995-08-26, 359.29 +1995-09-02, 357.37 +1995-09-09, 358.50 +1995-09-16, 358.58 +1995-09-23, 358.20 +1995-09-30, 357.56 +1995-10-07, 357.65 +1995-10-14, 357.60 +1995-10-21, 358.04 +1995-10-28, 358.23 +1995-11-04, 359.19 +1995-11-11, 359.43 +1995-11-18, 359.69 +1995-11-25, 359.87 +1995-12-02, 360.13 +1995-12-09, 360.43 +1995-12-16, 360.53 +1995-12-23, 360.89 +1995-12-30, 361.73 +1996-01-06, 361.81 +1996-01-13, 362.06 +1996-01-20, 362.17 +1996-01-27, 362.23 +1996-02-03, 362.68 +1996-02-10, 363.12 +1996-02-17, 363.01 +1996-02-24, 364.03 +1996-03-02, 363.84 +1996-03-09, 363.66 +1996-03-16, 364.10 +1996-03-23, 364.53 +1996-03-30, 364.35 +1996-04-06, 364.57 +1996-04-13, 364.89 +1996-04-20, 364.40 +1996-04-27, 365.13 +1996-05-04, 364.92 +1996-05-11, 365.37 +1996-05-18, 365.74 +1996-05-25, 365.43 +1996-06-01, 364.86 +1996-06-08, 365.19 +1996-06-15, 365.27 +1996-06-22, 365.00 +1996-06-29, 364.30 +1996-07-06, 364.19 +1996-07-13, 363.75 +1996-07-20, 363.38 +1996-07-27, 362.84 +1996-08-03, 361.78 +1996-08-10, 362.10 +1996-08-17, 361.29 +1996-08-24, 360.85 +1996-08-31, 360.82 +1996-09-07, 359.86 +1996-09-14, 359.82 +1996-09-21, 359.09 +1996-09-28, 359.04 +1996-10-05, 359.45 +1996-10-12, 359.52 +1996-10-19, 359.86 +1996-10-26, 359.87 +1996-11-02, 359.94 +1996-11-09, 360.52 +1996-11-16, 360.79 +1996-11-23, 361.24 +1996-11-30, 361.40 +1996-12-07, 361.97 +1996-12-14, 362.68 +1996-12-21, 362.47 +1996-12-28, 362.62 +1997-01-04, 362.95 +1997-01-11, 363.00 +1997-01-18, 363.16 +1997-01-25, 363.51 +1997-02-01, 363.28 +1997-02-08, 364.19 +1997-02-15, 364.02 +1997-02-22, 364.24 +1997-03-01, 364.50 +1997-03-08, 364.16 +1997-03-15, 364.19 +1997-03-22, 364.75 +1997-03-29, 365.43 +1997-04-05, 365.80 +1997-04-12, 366.25 +1997-04-19, 366.69 +1997-04-26, 366.79 +1997-05-03, 366.76 +1997-05-10, 366.80 +1997-05-17, 367.03 +1997-05-24, 366.61 +1997-05-31, 366.36 +1997-06-07, 365.71 +1997-06-14, 365.61 +1997-06-21, 365.53 +1997-06-28, 365.16 +1997-07-05, 365.09 +1997-07-12, 364.67 +1997-07-19, 364.11 +1997-07-26, 363.80 +1997-08-02, 363.39 +1997-08-09, 363.36 +1997-08-16, 362.63 +1997-08-23, 361.51 +1997-08-30, 361.66 +1997-09-06, 360.69 +1997-09-13, 360.26 +1997-09-20, 360.08 +1997-09-27, 359.81 +1997-10-04, 360.54 +1997-10-11, 360.49 +1997-10-18, 361.07 +1997-10-25, 361.13 +1997-11-01, 361.71 +1997-11-08, 362.19 +1997-11-15, 362.06 +1997-11-22, 362.65 +1997-11-29, 363.51 +1997-12-06, 363.97 +1997-12-13, 363.95 +1997-12-20, 364.27 +1997-12-27, 365.09 +1998-01-03, 365.24 +1998-01-10, 365.30 +1998-01-17, 365.35 +1998-01-24, 365.38 +1998-01-31, 365.69 +1998-02-07, 366.06 +1998-02-14, 365.52 +1998-02-21, 366.08 +1998-02-28, 367.36 +1998-03-07, 367.02 +1998-03-14, 366.66 +1998-03-21, 367.49 +1998-03-28, 368.57 +1998-04-04, 368.69 +1998-04-11, 368.68 +1998-04-18, 368.05 +1998-04-25, 368.90 +1998-05-02, 369.17 +1998-05-09, 368.83 +1998-05-16, 368.51 +1998-05-23, 369.66 +1998-05-30, 369.70 +1998-06-06, 369.41 +1998-06-13, 368.88 +1998-06-20, 368.54 +1998-06-27, 368.36 +1998-07-04, 368.05 +1998-07-11, 367.54 +1998-07-18, 367.67 +1998-07-25, 367.36 +1998-08-01, 366.88 +1998-08-08, 366.46 +1998-08-15, 365.64 +1998-08-22, 365.63 +1998-08-29, 364.25 +1998-09-05, 364.74 +1998-09-12, 363.96 +1998-09-19, 363.50 +1998-09-26, 363.60 +1998-10-03, 364.01 +1998-10-10, 364.17 +1998-10-17, 364.46 +1998-10-24, 364.49 +1998-10-31, 364.70 +1998-11-07, 365.05 +1998-11-14, 365.48 +1998-11-21, 365.80 +1998-11-28, 366.00 +1998-12-05, 366.46 +1998-12-12, 366.74 +1998-12-19, 367.30 +1998-12-26, 367.38 +1999-01-02, 367.58 +1999-01-09, 367.87 +1999-01-16, 367.80 +1999-01-23, 368.33 +1999-01-30, 369.25 +1999-02-06, 369.19 +1999-02-13, 368.90 +1999-02-20, 369.05 +1999-02-27, 368.52 +1999-03-06, 368.13 +1999-03-13, 369.58 +1999-03-20, 370.27 +1999-03-27, 370.65 +1999-04-03, 371.11 +1999-04-10, 371.59 +1999-04-17, 371.07 +1999-04-24, 370.32 +1999-05-01, 370.82 +1999-05-08, 371.33 +1999-05-15, 371.09 +1999-05-22, 370.89 +1999-05-29, 370.41 +1999-06-05, 370.98 +1999-06-12, 370.33 +1999-06-19, 369.97 +1999-06-26, 369.97 +1999-07-03, 369.49 +1999-07-10, 370.15 +1999-07-17, 369.54 +1999-07-24, 368.66 +1999-07-31, 367.48 +1999-08-07, 367.65 +1999-08-14, 366.77 +1999-08-21, 366.44 +1999-08-28, 366.16 +1999-09-04, 364.22 +1999-09-11, 364.75 +1999-09-18, 365.25 +1999-09-25, 364.74 +1999-10-02, 364.62 +1999-10-09, 365.11 +1999-10-16, 364.94 +1999-10-23, 365.70 +1999-10-30, 365.81 +1999-11-06, 366.24 +1999-11-13, 366.75 +1999-11-20, 366.74 +1999-11-27, 367.20 +1999-12-04, 367.47 +1999-12-11, 368.10 +1999-12-18, 368.05 +1999-12-25, 368.27 +2000-01-01, 368.74 +2000-01-08, 368.63 +2000-01-15, 369.12 +2000-01-22, 369.93 +2000-01-29, 369.35 +2000-02-05, 369.18 +2000-02-12, 369.66 +2000-02-19, 369.45 +2000-02-26, 369.61 +2000-03-04, 370.11 +2000-03-11, 370.09 +2000-03-18, 370.98 +2000-03-25, 370.86 +2000-04-01, 371.04 +2000-04-08, 371.81 +2000-04-15, 371.91 +2000-04-22, 372.10 +2000-04-29, 371.37 +2000-05-06, 371.36 +2000-05-13, 371.83 +2000-05-20, 372.01 +2000-05-27, 371.91 +2000-06-03, 371.98 +2000-06-10, 371.71 +2000-06-17, 371.82 +2000-06-24, 371.41 +2000-07-01, 370.96 +2000-07-08, 370.17 +2000-07-15, 370.29 +2000-07-22, 369.85 +2000-07-29, 369.10 +2000-08-05, 368.86 +2000-08-12, 368.46 +2000-08-19, 367.78 +2000-08-26, 367.25 +2000-09-02, 367.28 +2000-09-09, 366.84 +2000-09-16, 366.35 +2000-09-23, 366.34 +2000-09-30, 366.54 +2000-10-07, 366.42 +2000-10-14, 366.75 +2000-10-21, 366.79 +2000-10-28, 367.46 +2000-11-04, 367.78 +2000-11-11, 368.10 +2000-11-18, 368.76 +2000-11-25, 368.42 +2000-12-02, 369.10 +2000-12-09, 369.74 +2000-12-16, 369.41 +2000-12-23, 369.64 +2000-12-30, 369.91 +2001-01-06, 369.95 +2001-01-13, 370.35 +2001-01-20, 370.10 +2001-01-27, 370.91 +2001-02-03, 371.45 +2001-02-10, 371.29 +2001-02-17, 371.82 +2001-02-24, 371.33 +2001-03-03, 372.34 +2001-03-10, 372.32 +2001-03-17, 372.23 +2001-03-24, 371.97 +2001-03-31, 372.18 +2001-04-07, 372.82 +2001-04-14, 372.84 +2001-04-21, 373.17 +2001-04-28, 372.91 +2001-05-05, 373.83 +2001-05-12, 374.08 +2001-05-19, 373.85 +2001-05-26, 374.05 +2001-06-02, 374.00 +2001-06-09, 373.27 +2001-06-16, 372.98 +2001-06-23, 373.04 +2001-06-30, 372.90 +2001-07-07, 372.29 +2001-07-14, 371.51 +2001-07-21, 371.36 +2001-07-28, 370.76 +2001-08-04, 370.07 +2001-08-11, 369.70 +2001-08-18, 369.43 +2001-08-25, 369.15 +2001-09-01, 368.61 +2001-09-08, 368.34 +2001-09-15, 368.18 +2001-09-22, 367.61 +2001-09-29, 367.56 +2001-10-06, 367.93 +2001-10-13, 367.73 +2001-10-20, 368.23 +2001-10-27, 368.92 +2001-11-03, 368.87 +2001-11-10, 369.03 +2001-11-17, 369.84 +2001-11-24, 370.44 +2001-12-01, 370.51 +2001-12-08, 371.03 +2001-12-15, 371.34 +2001-12-22, 371.51 +2001-12-29, 371.67 +2002-01-05, 371.94 +2002-01-12, 372.26 +2002-01-19, 373.04 +2002-01-26, 372.46 +2002-02-02, 372.85 +2002-02-09, 372.93 +2002-02-16, 372.84 +2002-02-23, 373.40 +2002-03-02, 373.29 +2002-03-09, 373.47 +2002-03-16, 373.37 +2002-03-23, 373.51 +2002-03-30, 374.29 +2002-04-06, 374.50 +2002-04-13, 374.55 +2002-04-20, 375.06 +2002-04-27, 375.47 +2002-05-04, 375.78 +2002-05-11, 374.95 +2002-05-18, 375.24 +2002-05-25, 375.92 +2002-06-01, 375.78 +2002-06-08, 375.66 +2002-06-15, 375.12 +2002-06-22, 375.50 +2002-06-29, 374.47 +2002-07-06, 374.62 +2002-07-13, 374.13 +2002-07-20, 373.68 +2002-07-27, 373.16 +2002-08-03, 372.93 +2002-08-10, 371.73 +2002-08-17, 371.03 +2002-08-24, 370.87 +2002-08-31, 370.12 +2002-09-07, 371.39 +2002-09-14, 371.16 +2002-09-21, 370.45 +2002-09-28, 369.97 +2002-10-05, 369.68 +2002-10-12, 370.04 +2002-10-19, 371.06 +2002-10-26, 370.44 +2002-11-02, 371.67 +2002-11-09, 371.55 +2002-11-16, 372.08 +2002-11-23, 372.69 +2002-11-30, 372.65 +2002-12-07, 373.32 +2002-12-14, 373.44 +2002-12-21, 374.16 +2002-12-28, 374.60 +2003-01-04, 374.49 +2003-01-11, 374.46 +2003-01-18, 374.82 +2003-01-25, 374.89 +2003-02-01, 375.23 +2003-02-08, 374.81 +2003-02-15, 375.70 +2003-02-22, 376.36 +2003-03-01, 375.82 +2003-03-08, 375.89 +2003-03-15, 375.76 +2003-03-22, 376.44 +2003-03-29, 376.82 +2003-04-05, 376.81 +2003-04-12, 377.30 +2003-04-19, 378.11 +2003-04-26, 378.46 +2003-05-03, 378.11 +2003-05-10, 377.49 +2003-05-17, 378.79 +2003-05-24, 378.71 +2003-05-31, 378.29 +2003-06-07, 378.39 +2003-06-21, 377.34 +2003-06-28, 377.85 +2003-07-05, 376.43 +2003-07-12, 377.05 +2003-07-19, 376.70 +2003-07-26, 375.98 +2003-08-02, 375.48 +2003-08-09, 374.67 +2003-08-16, 374.06 +2003-08-23, 374.47 +2003-08-30, 373.48 +2003-09-06, 373.09 +2003-09-13, 372.76 +2003-09-20, 373.08 +2003-09-27, 373.03 +2003-10-04, 372.87 +2003-10-25, 373.33 +2003-11-01, 373.50 +2003-11-08, 373.76 +2003-11-15, 374.45 +2003-11-22, 375.21 +2003-11-29, 374.72 +2003-12-06, 374.47 +2003-12-13, 376.15 +2003-12-20, 376.05 +2003-12-27, 376.43 +2004-01-03, 376.17 +2004-01-10, 376.17 +2004-01-17, 377.01 +2004-01-24, 377.29 +2004-01-31, 377.49 +2004-02-07, 377.47 +2004-02-14, 377.00 +2004-02-21, 377.35 +2004-02-28, 377.67 +2004-03-06, 378.05 +2004-03-13, 379.40 +2004-03-20, 378.47 +2004-03-27, 378.50 +2004-04-03, 380.09 +2004-04-10, 380.41 +2004-04-17, 380.56 +2004-04-24, 380.71 +2004-05-01, 380.28 +2004-05-08, 381.04 +2004-05-15, 380.51 +2004-05-22, 380.33 +2004-05-29, 380.66 +2004-06-05, 379.62 +2004-06-12, 380.00 +2004-06-19, 379.30 +2004-06-26, 379.07 +2004-07-03, 378.44 +2004-07-10, 378.04 +2004-07-17, 377.33 +2004-07-24, 376.99 +2004-07-31, 377.35 +2004-08-07, 376.56 +2004-08-14, 375.84 +2004-08-21, 375.70 +2004-08-28, 374.62 +2004-09-04, 373.82 +2004-09-11, 374.57 +2004-09-18, 374.14 +2004-09-25, 373.80 +2004-10-02, 374.01 +2004-10-09, 373.95 +2004-10-16, 374.05 +2004-10-23, 374.58 +2004-10-30, 375.02 +2004-11-06, 375.06 +2004-11-13, 376.13 +2004-11-20, 376.46 +2004-11-27, 376.13 +2004-12-04, 377.09 +2004-12-11, 377.37 +2004-12-18, 377.50 +2004-12-25, 377.68 +2005-01-01, 378.06 +2005-01-08, 378.21 +2005-01-15, 378.36 +2005-01-22, 378.34 +2005-01-29, 378.66 +2005-02-05, 379.02 +2005-02-12, 379.31 +2005-02-19, 380.25 +2005-03-26, 380.57 +2005-04-02, 382.07 +2005-04-09, 382.25 +2005-04-16, 381.35 +2005-04-23, 382.08 +2005-04-30, 382.38 +2005-05-07, 381.51 +2005-05-14, 382.53 +2005-05-21, 382.14 +2005-05-28, 382.58 +2005-06-04, 382.36 +2005-06-11, 382.31 +2005-06-18, 382.12 +2005-06-25, 381.48 +2005-07-02, 381.15 +2005-07-09, 380.90 +2005-07-16, 380.63 +2005-07-23, 380.36 +2005-07-30, 379.86 +2005-08-06, 379.21 +2005-08-13, 378.97 +2005-08-20, 378.40 +2005-08-27, 377.69 +2005-09-03, 377.82 +2005-09-10, 376.33 +2005-09-17, 376.14 +2005-09-24, 375.95 +2005-10-01, 376.33 +2005-10-08, 376.44 +2005-10-15, 377.12 +2005-10-22, 377.31 +2005-10-29, 377.24 +2005-11-05, 377.76 +2005-11-12, 378.07 +2005-11-19, 378.75 +2005-11-26, 378.77 +2005-12-03, 379.41 +2005-12-10, 380.09 +2005-12-17, 380.09 +2005-12-24, 380.14 +2005-12-31, 380.43 +2006-01-07, 381.28 +2006-01-14, 381.41 +2006-01-21, 381.57 +2006-01-28, 381.47 +2006-02-04, 382.04 +2006-02-25, 381.86 +2006-03-04, 382.39 +2006-03-11, 382.55 +2006-03-18, 382.74 +2006-03-25, 382.55 +2006-04-01, 382.97 +2006-04-08, 384.65 +2006-04-15, 384.67 +2006-04-22, 384.71 +2006-04-29, 384.62 +2006-05-06, 384.91 +2006-05-13, 384.87 +2006-05-20, 385.34 +2006-05-27, 384.30 +2006-06-03, 384.29 +2006-06-10, 384.31 +2006-06-17, 384.07 +2006-06-24, 383.55 +2006-07-01, 383.00 +2006-07-08, 382.78 +2006-07-15, 381.28 +2006-07-22, 381.81 +2006-07-29, 381.55 +2006-08-05, 381.22 +2006-08-12, 380.63 +2006-08-19, 380.20 +2006-08-26, 379.77 +2006-09-02, 379.52 +2006-09-09, 378.66 +2006-09-16, 378.80 +2006-09-23, 378.49 +2006-09-30, 379.00 +2006-10-07, 378.78 +2006-10-14, 379.14 +2006-10-21, 379.22 +2006-10-28, 379.57 +2006-11-04, 379.67 +2006-11-11, 379.81 +2006-11-18, 379.98 +2006-11-25, 381.42 +2006-12-02, 381.31 +2006-12-09, 381.60 +2006-12-16, 381.81 +2006-12-23, 381.96 +2006-12-30, 381.76 +2007-01-06, 382.64 +2007-01-13, 382.36 +2007-01-20, 381.84 +2007-02-03, 383.09 +2007-02-10, 383.60 +2007-02-17, 384.22 +2007-02-24, 383.76 +2007-03-03, 383.71 +2007-03-10, 383.64 +2007-03-17, 384.28 +2007-03-24, 384.96 +2007-03-31, 385.93 +2007-04-07, 385.46 +2007-04-14, 386.30 +2007-04-21, 387.00 +2007-04-28, 386.42 +2007-05-05, 385.85 +2007-05-12, 386.54 +2007-05-19, 386.03 +2007-05-26, 386.93 +2007-06-02, 386.60 +2007-06-09, 386.23 +2007-06-16, 386.29 +2007-06-23, 384.95 +2007-06-30, 384.85 +2007-07-07, 384.92 +2007-07-14, 384.75 +2007-07-21, 383.97 +2007-07-28, 383.41 +2007-08-04, 382.51 +2007-08-11, 381.72 +2007-08-18, 381.60 +2007-08-25, 381.67 +2007-09-01, 381.69 +2007-09-08, 380.74 +2007-09-15, 380.75 +2007-09-22, 380.94 +2007-09-29, 380.80 +2007-10-06, 380.68 +2007-10-13, 380.68 +2007-10-20, 381.10 +2007-10-27, 381.36 +2007-11-03, 381.76 +2007-11-10, 381.92 +2007-11-17, 382.43 +2007-11-24, 382.91 +2007-12-01, 382.90 +2007-12-08, 383.31 +2007-12-15, 383.79 +2007-12-22, 383.90 +2007-12-29, 384.04 +2008-01-05, 384.36 +2008-01-12, 384.41 +2008-01-19, 385.47 +2008-01-26, 386.06 +2008-02-02, 386.19 +2008-02-09, 385.72 +2008-02-16, 385.58 +2008-02-23, 385.24 +2008-03-01, 384.88 +2008-03-08, 385.88 +2008-03-15, 385.64 +2008-03-22, 386.17 +2008-03-29, 386.70 +2008-04-05, 388.00 +2008-04-12, 385.90 +2008-04-19, 386.38 +2008-04-26, 387.19 +2008-05-03, 386.94 +2008-05-10, 388.90 +2008-05-17, 388.84 +2008-05-24, 388.53 +2008-05-31, 388.48 +2008-06-07, 388.16 +2008-06-14, 387.79 +2008-06-21, 387.54 +2008-06-28, 388.11 +2008-07-05, 387.08 +2008-07-12, 386.11 +2008-07-19, 385.73 +2008-07-26, 385.96 +2008-08-02, 384.91 +2008-08-09, 384.68 +2008-08-16, 383.89 +2008-08-23, 383.55 +2008-08-30, 383.16 +2008-09-06, 383.18 +2008-09-13, 383.37 +2008-09-20, 382.98 +2008-09-27, 382.92 +2008-10-04, 382.66 +2008-10-11, 382.72 +2008-10-18, 382.96 +2008-10-25, 382.94 +2008-11-01, 383.61 +2008-11-08, 383.60 +2008-11-15, 384.03 +2008-11-22, 384.32 +2008-11-29, 384.46 +2008-12-06, 384.77 +2008-12-13, 384.89 +2008-12-20, 385.15 +2008-12-27, 385.80 +2009-01-03, 386.01 +2009-01-10, 386.53 +2009-01-17, 386.64 +2009-01-24, 387.05 +2009-01-31, 387.26 +2009-02-07, 386.51 +2009-02-14, 387.44 +2009-02-21, 387.40 +2009-02-28, 387.48 +2009-03-07, 388.54 +2009-03-14, 388.64 +2009-03-21, 388.44 +2009-03-28, 389.17 +2009-04-04, 389.39 +2009-04-11, 389.74 +2009-04-18, 388.67 +2009-04-25, 390.37 +2009-05-02, 390.16 +2009-05-09, 389.87 +2009-05-16, 390.30 +2009-05-23, 390.76 +2009-05-30, 389.35 +2009-06-06, 390.46 +2009-06-13, 390.01 +2009-06-20, 388.88 +2009-06-27, 388.72 +2009-07-04, 388.30 +2009-07-11, 388.68 +2009-07-18, 388.03 +2009-07-25, 387.48 +2009-08-01, 387.16 +2009-08-08, 386.67 +2009-08-15, 385.27 +2009-08-22, 386.05 +2009-08-29, 385.65 +2009-09-05, 385.30 +2009-09-12, 384.48 +2009-09-19, 384.61 +2009-09-26, 384.51 +2009-10-03, 383.43 +2009-10-10, 384.28 +2009-10-17, 384.55 +2009-10-24, 384.79 +2009-10-31, 385.18 +2009-11-07, 385.60 +2009-11-14, 386.09 +2009-11-21, 386.31 +2009-11-28, 386.73 +2009-12-05, 386.91 +2009-12-12, 386.81 +2009-12-19, 388.04 +2009-12-26, 388.19 +2010-01-02, 388.41 +2010-01-09, 388.17 +2010-01-16, 388.69 +2010-01-23, 388.59 +2010-01-30, 389.04 +2010-02-06, 390.91 +2010-02-13, 389.78 +2010-02-20, 390.84 +2010-02-27, 389.38 +2010-03-06, 391.07 +2010-03-13, 391.37 +2010-03-20, 391.55 +2010-03-27, 390.08 +2010-04-03, 391.15 +2010-04-10, 391.60 +2010-04-17, 393.27 +2010-04-24, 393.27 +2010-05-01, 392.99 +2010-05-08, 392.97 +2010-05-15, 393.13 +2010-05-22, 393.55 +2010-05-29, 393.02 +2010-06-05, 393.08 +2010-06-12, 392.35 +2010-06-19, 391.73 +2010-06-26, 391.46 +2010-07-03, 391.01 +2010-07-10, 390.20 +2010-07-17, 389.91 +2010-07-24, 390.12 +2010-07-31, 389.49 +2010-08-07, 389.06 +2010-08-14, 388.76 +2010-08-21, 388.12 +2010-08-28, 387.42 +2010-09-04, 386.91 +2010-09-11, 386.85 +2010-09-18, 386.97 +2010-09-25, 386.87 +2010-10-02, 386.75 +2010-10-09, 386.98 +2010-10-16, 387.03 +2010-10-23, 387.80 +2010-10-30, 387.78 +2010-11-06, 387.95 +2010-11-13, 388.27 +2010-11-20, 389.11 +2010-11-27, 389.59 +2010-12-04, 389.88 +2010-12-11, 389.75 +2010-12-18, 389.58 +2010-12-25, 389.96 +2011-01-01, 390.50 +2011-01-08, 391.61 +2011-01-15, 391.06 +2011-01-22, 391.25 +2011-01-29, 392.00 +2011-02-05, 391.89 +2011-02-12, 391.52 +2011-02-19, 391.82 +2011-02-26, 392.50 +2011-03-05, 391.59 +2011-03-12, 391.94 +2011-03-19, 392.43 +2011-03-26, 394.11 +2011-04-02, 393.40 +2011-04-09, 392.71 +2011-04-16, 393.73 +2011-04-23, 393.22 +2011-04-30, 393.59 +2011-05-07, 393.36 +2011-05-14, 393.84 +2011-05-21, 395.12 +2011-05-28, 394.49 +2011-06-04, 394.08 +2011-06-11, 393.42 +2011-06-18, 393.92 +2011-06-25, 393.37 +2011-07-02, 393.31 +2011-07-09, 393.61 +2011-07-16, 392.64 +2011-07-23, 391.13 +2011-07-30, 391.77 +2011-08-06, 390.76 +2011-08-13, 390.53 +2011-08-20, 389.82 +2011-08-27, 389.41 +2011-09-03, 389.23 +2011-09-10, 389.17 +2011-09-17, 389.15 +2011-09-24, 388.86 +2011-10-01, 388.91 +2011-10-08, 388.74 +2011-10-15, 388.91 +2011-10-22, 389.09 +2011-10-29, 389.45 +2011-11-05, 389.64 +2011-11-12, 390.24 +2011-11-19, 390.44 +2011-11-26, 390.77 +2011-12-03, 391.08 +2011-12-10, 391.70 +2011-12-17, 392.24 +2011-12-24, 392.09 +2011-12-31, 392.26 +2012-01-07, 392.92 +2012-01-14, 393.61 +2012-01-21, 393.04 +2012-01-28, 393.03 +2012-02-04, 392.43 +2012-02-11, 393.45 +2012-02-18, 393.97 +2012-02-25, 393.62 +2012-03-03, 394.17 +2012-03-10, 393.38 +2012-03-17, 394.79 +2012-03-24, 395.15 +2012-03-31, 394.91 +2012-04-07, 396.45 +2012-04-14, 396.38 +2012-04-21, 396.56 +2012-04-28, 396.70 +2012-05-05, 397.08 +2012-05-12, 397.28 +2012-05-19, 396.56 +2012-05-26, 396.28 +2012-06-02, 396.03 +2012-06-09, 396.02 +2012-06-16, 395.86 +2012-06-23, 395.73 +2012-06-30, 395.41 +2012-07-07, 394.86 +2012-07-14, 394.59 +2012-07-21, 394.35 +2012-07-28, 393.60 +2012-08-04, 393.39 +2012-08-11, 392.93 +2012-08-18, 392.31 +2012-08-25, 391.70 +2012-09-01, 391.98 +2012-09-08, 391.00 +2012-09-15, 391.03 +2012-09-22, 391.02 +2012-09-29, 390.99 +2012-10-20, 391.29 +2012-10-27, 391.46 +2012-11-03, 391.76 +2012-11-10, 392.77 +2012-11-17, 393.42 +2012-11-24, 393.36 +2012-12-01, 393.61 +2012-12-08, 394.05 +2012-12-15, 394.46 +2012-12-22, 394.83 +2012-12-29, 394.62 +2013-01-05, 394.99 +2013-01-12, 395.57 +2013-01-19, 396.21 +2013-01-26, 395.64 +2013-02-02, 396.39 +2013-02-09, 396.46 +2013-02-16, 397.31 +2013-02-23, 396.88 +2013-03-02, 397.13 +2013-03-09, 396.64 +2013-03-16, 397.25 +2013-03-23, 397.21 +2013-03-30, 398.39 +2013-04-06, 398.05 +2013-04-13, 397.43 +2013-04-20, 398.76 +2013-04-27, 399.33 +2013-05-04, 399.64 +2013-05-11, 399.78 +2013-05-18, 400.04 +2013-05-25, 400.22 +2013-06-01, 399.43 +2013-06-08, 398.91 +2013-06-15, 398.58 +2013-06-22, 398.50 +2013-06-29, 398.65 +2013-07-06, 397.56 +2013-07-13, 397.48 +2013-07-20, 396.83 +2013-07-27, 396.98 +2013-08-03, 396.61 +2013-08-10, 395.55 +2013-08-17, 395.24 +2013-08-24, 394.73 +2013-08-31, 394.33 +2013-09-07, 393.52 +2013-09-14, 393.25 +2013-09-21, 393.53 +2013-09-28, 393.22 +2013-10-05, 393.47 +2013-10-12, 393.52 +2013-10-19, 393.93 +2013-10-26, 394.13 +2013-11-02, 394.39 +2013-11-09, 395.25 +2013-11-16, 394.85 +2013-11-23, 395.66 +2013-11-30, 396.06 +2013-12-07, 396.27 +2013-12-14, 396.52 +2013-12-21, 397.30 +2013-12-28, 397.59 +2014-01-04, 397.90 +2014-01-11, 397.82 +2014-01-18, 398.13 +2014-01-25, 397.75 +2014-02-01, 398.02 +2014-02-08, 397.98 +2014-02-15, 397.79 +2014-02-22, 398.24 +2014-03-01, 397.92 +2014-03-08, 398.88 +2014-03-15, 400.68 +2014-03-22, 399.62 +2014-03-29, 400.34 +2014-04-05, 401.32 +2014-04-12, 401.22 +2014-04-19, 401.29 +2014-04-26, 401.42 +2014-05-03, 401.74 +2014-05-10, 401.51 +2014-05-17, 402.18 +2014-05-24, 401.44 +2014-05-31, 402.12 +2014-06-07, 401.55 +2014-06-14, 401.31 +2014-06-21, 401.21 +2014-06-28, 400.57 +2014-07-05, 400.06 +2014-07-12, 399.58 +2014-07-19, 398.54 +2014-07-26, 397.86 +2014-08-02, 397.86 +2014-08-09, 397.45 +2014-08-16, 397.23 +2014-08-23, 396.75 +2014-08-30, 396.37 +2014-09-06, 396.35 +2014-09-13, 394.80 +2014-09-20, 395.32 +2014-09-27, 395.55 +2014-10-04, 395.57 +2014-10-11, 395.49 +2014-10-18, 395.72 +2014-10-25, 395.91 +2014-11-01, 396.52 +2014-11-08, 396.90 +2014-11-15, 397.34 +2014-11-22, 397.24 +2014-11-29, 398.10 +2014-12-06, 398.26 +2014-12-13, 398.92 +2014-12-20, 399.09 +2014-12-27, 399.01 +2015-01-03, 399.92 +2015-01-10, 399.86 +2015-01-17, 399.72 +2015-01-24, 399.98 +2015-01-31, 400.20 +2015-02-07, 400.02 +2015-02-14, 400.15 +2015-02-21, 400.36 +2015-02-28, 401.03 +2015-03-07, 401.63 +2015-03-14, 401.80 +2015-03-21, 400.79 +2015-03-28, 402.50 +2015-04-04, 402.74 +2015-04-11, 403.88 +2015-04-18, 403.80 +2015-04-25, 403.22 +2015-05-02, 404.07 +2015-05-09, 404.09 +2015-05-16, 404.31 +2015-05-23, 403.85 +2015-05-30, 403.81 +2015-06-06, 403.45 +2015-06-13, 402.72 +2015-06-20, 402.63 +2015-06-27, 402.36 +2015-07-04, 402.25 +2015-07-11, 401.71 +2015-07-18, 401.02 +2015-07-25, 401.30 +2015-08-01, 398.74 +2015-08-08, 399.21 +2015-08-15, 399.12 +2015-08-22, 399.03 +2015-08-29, 398.80 +2015-09-05, 398.16 +2015-09-12, 397.10 +2015-09-19, 397.57 +2015-09-26, 397.42 +2015-10-03, 397.74 +2015-10-10, 398.51 +2015-10-17, 398.61 +2015-10-24, 398.43 +2015-10-31, 398.87 +2015-11-07, 399.53 +2015-11-14, 400.75 +2015-11-21, 400.42 +2015-11-28, 400.83 +2015-12-05, 400.91 +2015-12-12, 402.40 +2015-12-19, 402.32 +2015-12-26, 402.01 +2016-01-02, 402.25 +2016-01-09, 402.23 +2016-01-16, 402.68 +2016-01-23, 403.26 +2016-01-30, 402.79 +2016-02-06, 404.98 +2016-02-13, 403.22 +2016-02-20, 404.59 +2016-02-27, 403.98 +2016-03-05, 403.99 +2016-03-12, 404.51 +2016-03-19, 405.01 +2016-03-26, 406.16 +2016-04-02, 405.70 +2016-04-09, 408.56 +2016-04-16, 408.16 +2016-04-23, 407.70 +2016-04-30, 407.84 +2016-05-07, 407.51 +2016-05-14, 407.54 +2016-05-21, 407.41 +2016-05-28, 407.92 +2016-06-04, 407.52 +2016-06-11, 406.99 +2016-06-18, 407.02 +2016-06-25, 406.40 +2016-07-02, 405.96 +2016-07-09, 404.93 +2016-07-16, 403.64 +2016-07-23, 403.71 +2016-07-30, 403.76 +2016-08-06, 403.22 +2016-08-13, 402.11 +2016-08-20, 401.78 +2016-08-27, 401.43 +2016-09-03, 401.27 +2016-09-10, 401.13 +2016-09-17, 401.25 +2016-09-24, 400.85 +2016-10-01, 400.82 +2016-10-08, 401.20 +2016-10-15, 401.70 +2016-10-22, 401.82 +2016-10-29, 402.38 +2016-11-05, 403.15 +2016-11-12, 403.12 +2016-11-19, 403.95 +2016-11-26, 404.44 +2016-12-03, 404.16 +2016-12-10, 404.28 +2016-12-17, 404.63 +2016-12-24, 404.66 +2016-12-31, 405.38 +2017-01-07, 405.94 +2017-01-14, 405.91 +2017-01-21, 406.37 +2017-01-28, 406.35 +2017-02-04, 406.20 +2017-02-11, 406.02 +2017-02-18, 406.17 +2017-02-25, 408.07 +2017-03-04, 407.06 +2017-03-11, 406.53 +2017-03-18, 406.73 +2017-03-25, 407.89 +2017-04-01, 408.66 +2017-04-08, 407.19 +2017-04-15, 409.12 +2017-04-22, 409.89 +2017-04-29, 409.04 +2017-05-06, 409.54 +2017-05-13, 409.83 +2017-05-20, 410.18 +2017-05-27, 409.88 +2017-06-03, 409.67 +2017-06-10, 409.62 +2017-06-17, 408.82 +2017-06-24, 408.43 +2017-07-01, 407.77 +2017-07-08, 407.68 +2017-07-15, 407.11 +2017-07-22, 406.76 +2017-07-29, 406.50 +2017-08-05, 405.93 +2017-08-12, 405.55 +2017-08-19, 404.81 +2017-08-26, 404.54 +2017-09-02, 404.10 +2017-09-09, 403.39 +2017-09-16, 403.44 +2017-09-23, 402.95 +2017-09-30, 402.73 +2017-10-07, 403.19 +2017-10-14, 403.60 +2017-10-21, 404.05 +2017-10-28, 404.25 +2017-11-04, 404.28 +2017-11-11, 404.51 +2017-11-18, 405.53 +2017-11-25, 406.36 +2017-12-02, 406.85 +2017-12-09, 406.16 +2017-12-16, 406.50 +2017-12-23, 407.07 +2017-12-30, 407.24 +2018-01-06, 407.96 +2018-01-13, 408.08 +2018-01-20, 408.26 +2018-01-27, 408.05 +2018-02-03, 407.63 +2018-02-10, 408.41 +2018-02-17, 408.46 +2018-02-24, 408.69 +2018-03-03, 408.77 +2018-03-10, 409.64 +2018-03-17, 408.69 +2018-03-24, 409.77 +2018-03-31, 409.63 +2018-04-07, 409.41 +2018-04-14, 410.10 +2018-04-21, 411.36 +2018-04-28, 410.58 +2018-05-05, 409.75 +2018-05-12, 411.62 +2018-05-19, 411.43 +2018-05-26, 411.81 +2018-06-02, 411.15 +2018-06-09, 411.24 +2018-06-16, 410.56 +2018-06-23, 410.81 +2018-06-30, 410.19 +2018-07-07, 409.29 +2018-07-14, 409.07 +2018-07-21, 408.49 +2018-07-28, 408.08 +2018-08-04, 407.36 +2018-08-11, 407.28 +2018-08-18, 407.07 +2018-08-25, 406.63 +2018-09-01, 405.98 +2018-09-08, 405.61 +2018-09-15, 405.60 +2018-09-22, 405.69 +2018-09-29, 405.56 +2018-10-06, 405.56 +2018-10-13, 405.91 +2018-10-20, 406.42 +2018-10-27, 406.51 +2018-11-03, 406.83 +2018-11-10, 407.69 +2018-11-17, 409.11 +2018-11-24, 408.46 +2018-12-01, 408.56 +2018-12-08, 408.92 +2018-12-15, 409.56 +2018-12-22, 409.73 +2018-12-29, 409.26 +2019-01-05, 410.32 +2019-01-12, 409.73 +2019-01-19, 412.31 +2019-01-26, 410.91 +2019-02-02, 410.97 +2019-02-09, 412.12 +2019-02-16, 411.79 +2019-02-23, 411.46 +2019-03-02, 412.08 +2019-03-09, 412.26 +2019-03-16, 412.87 +2019-03-23, 410.73 +2019-03-30, 412.37 +2019-04-06, 412.62 +2019-04-13, 413.36 +2019-04-20, 413.94 +2019-04-27, 414.27 +2019-05-04, 414.41 +2019-05-11, 414.95 +2019-05-18, 415.08 +2019-05-25, 414.66 +2019-06-01, 414.21 +2019-06-08, 414.45 +2019-06-15, 413.85 +2019-06-22, 413.68 +2019-06-29, 413.38 +2019-07-06, 412.69 +2019-07-13, 412.30 +2019-07-20, 411.76 +2019-07-27, 410.32 +2019-08-03, 410.50 +2019-08-10, 410.48 +2019-08-17, 410.05 +2019-08-24, 409.52 +2019-08-31, 409.32 +2019-09-07, 408.80 +2019-09-14, 408.61 +2019-09-21, 408.50 +2019-09-28, 408.28 +2019-10-05, 407.99 +2019-10-12, 408.61 +2019-10-19, 408.77 +2019-10-26, 408.68 +2019-11-02, 409.86 +2019-11-09, 410.15 +2019-11-16, 410.22 +2019-11-23, 410.48 +2019-11-30, 410.92 +2019-12-07, 411.27 +2019-12-14, 411.67 +2019-12-21, 412.30 +2019-12-28, 412.59 +2020-01-04, 413.19 +2020-01-11, 413.39 +2020-01-25, 413.36 +2020-02-01, 413.99 -- 2.18.1