From a2abe6169d993b26185184bf53239410dbccbbff Mon Sep 17 00:00:00 2001 From: "Documenter.jl" Date: Wed, 11 Dec 2024 16:10:25 +0000 Subject: [PATCH] build based on 718da93 --- dev/404.html | 4 +- dev/UserGuide/cache.html | 6 +-- dev/UserGuide/chunk.html | 28 +++++----- dev/UserGuide/combine.html | 6 +-- dev/UserGuide/compute.html | 10 ++-- dev/UserGuide/convert.html | 6 +-- dev/UserGuide/create.html | 6 +-- dev/UserGuide/faq.html | 50 +++++++++--------- dev/UserGuide/group.html | 10 ++-- dev/UserGuide/read.html | 6 +-- dev/UserGuide/select.html | 6 +-- dev/UserGuide/types.html | 6 +-- dev/UserGuide/write.html | 24 ++++----- dev/api.html | 20 +++---- ...jTbX.js => UserGuide_chunk.md.DheM5GwS.js} | 20 +++---- ...js => UserGuide_chunk.md.DheM5GwS.lean.js} | 20 +++---- ...Wq.js => UserGuide_compute.md.BnROvPGu.js} | 2 +- ... => UserGuide_compute.md.BnROvPGu.lean.js} | 2 +- ...CvsWvH.js => UserGuide_faq.md.DujPZLJ-.js} | 42 +++++++-------- ...n.js => UserGuide_faq.md.DujPZLJ-.lean.js} | 42 +++++++-------- ...kSMy.js => UserGuide_group.md.D803I59b.js} | 2 +- ...js => UserGuide_group.md.D803I59b.lean.js} | 2 +- ...2Acr.js => UserGuide_write.md.CZ3VTuto.js} | 16 +++--- ...js => UserGuide_write.md.CZ3VTuto.lean.js} | 16 +++--- ...{api.md.wIEA4sqI.js => api.md.C4RLD1GU.js} | 8 +-- ...EA4sqI.lean.js => api.md.C4RLD1GU.lean.js} | 8 +-- .../{app.HXKpO_YX.js => app.CalNfiaa.js} | 2 +- .../chunks/@localSearchIndexroot.BVsQolaK.js | 1 - .../chunks/@localSearchIndexroot.BaJs6gCP.js | 1 + ...TaXOAl.js => VPLocalSearchBox.DJECbzTq.js} | 2 +- .../{theme.CUcjuZ66.js => theme.C0fR5TI8.js} | 4 +- dev/assets/dadyujg.BJNzQY3Z.png | Bin 0 -> 677879 bytes dev/assets/dadyujg.CBBZcGwj.png | Bin 677870 -> 0 bytes ...> development_contributors.md.DVJKR9ns.js} | 2 +- ...elopment_contributors.md.DVJKR9ns.lean.js} | 2 +- ...ex.md.Cye5ANCP.js => index.md.BxY-HPmN.js} | 2 +- ...ANCP.lean.js => index.md.BxY-HPmN.lean.js} | 2 +- dev/assets/lwcvkom.CBIWEbop.png | Bin 0 -> 82254 bytes dev/assets/lwcvkom.Cj9TSrtJ.png | Bin 82251 -> 0 bytes dev/assets/sdpqlwg.C0lFChV0.png | Bin 0 -> 110232 bytes dev/assets/sdpqlwg.VVvPdzHG.png | Bin 110252 -> 0 bytes ...orials_mean_seasonal_cycle.md.CiCKLk5j.js} | 2 +- ...s_mean_seasonal_cycle.md.CiCKLk5j.lean.js} | 2 +- dev/development/contribute.html | 6 +-- dev/development/contributors.html | 8 +-- dev/get_started.html | 6 +-- dev/hashmap.json | 2 +- dev/index.html | 10 ++-- dev/tutorials/mean_seasonal_cycle.html | 12 ++--- dev/tutorials/other_tutorials.html | 6 +-- dev/tutorials/plottingmaps.html | 6 +-- 51 files changed, 223 insertions(+), 223 deletions(-) rename dev/assets/{UserGuide_chunk.md.BUA8jTbX.js => UserGuide_chunk.md.DheM5GwS.js} (99%) rename dev/assets/{UserGuide_chunk.md.BUA8jTbX.lean.js => UserGuide_chunk.md.DheM5GwS.lean.js} (99%) rename dev/assets/{UserGuide_compute.md.-KH1LiWq.js => UserGuide_compute.md.BnROvPGu.js} (99%) rename dev/assets/{UserGuide_compute.md.-KH1LiWq.lean.js => UserGuide_compute.md.BnROvPGu.lean.js} (99%) rename dev/assets/{UserGuide_faq.md.b4CvsWvH.js => UserGuide_faq.md.DujPZLJ-.js} (98%) rename dev/assets/{UserGuide_faq.md.b4CvsWvH.lean.js => UserGuide_faq.md.DujPZLJ-.lean.js} (98%) rename dev/assets/{UserGuide_group.md.C2QOkSMy.js => UserGuide_group.md.D803I59b.js} (99%) rename dev/assets/{UserGuide_group.md.C2QOkSMy.lean.js => UserGuide_group.md.D803I59b.lean.js} (99%) rename dev/assets/{UserGuide_write.md.CFbQ2Acr.js => UserGuide_write.md.CZ3VTuto.js} (99%) rename dev/assets/{UserGuide_write.md.CFbQ2Acr.lean.js => UserGuide_write.md.CZ3VTuto.lean.js} (99%) rename dev/assets/{api.md.wIEA4sqI.js => api.md.C4RLD1GU.js} (92%) rename dev/assets/{api.md.wIEA4sqI.lean.js => api.md.C4RLD1GU.lean.js} (92%) rename dev/assets/{app.HXKpO_YX.js => app.CalNfiaa.js} (95%) delete mode 100644 dev/assets/chunks/@localSearchIndexroot.BVsQolaK.js create mode 100644 dev/assets/chunks/@localSearchIndexroot.BaJs6gCP.js rename dev/assets/chunks/{VPLocalSearchBox.BUTaXOAl.js => VPLocalSearchBox.DJECbzTq.js} (99%) rename dev/assets/chunks/{theme.CUcjuZ66.js => theme.C0fR5TI8.js} (99%) create mode 100644 dev/assets/dadyujg.BJNzQY3Z.png delete mode 100644 dev/assets/dadyujg.CBBZcGwj.png rename dev/assets/{development_contributors.md.D2DvZ_J1.js => development_contributors.md.DVJKR9ns.js} (98%) rename dev/assets/{development_contributors.md.D2DvZ_J1.lean.js => development_contributors.md.DVJKR9ns.lean.js} (98%) rename dev/assets/{index.md.Cye5ANCP.js => index.md.BxY-HPmN.js} (94%) rename dev/assets/{index.md.Cye5ANCP.lean.js => index.md.BxY-HPmN.lean.js} (94%) create mode 100644 dev/assets/lwcvkom.CBIWEbop.png delete mode 100644 dev/assets/lwcvkom.Cj9TSrtJ.png create mode 100644 dev/assets/sdpqlwg.C0lFChV0.png delete mode 100644 dev/assets/sdpqlwg.VVvPdzHG.png rename dev/assets/{tutorials_mean_seasonal_cycle.md.CMKY15SQ.js => tutorials_mean_seasonal_cycle.md.CiCKLk5j.js} (99%) rename dev/assets/{tutorials_mean_seasonal_cycle.md.CMKY15SQ.lean.js => tutorials_mean_seasonal_cycle.md.CiCKLk5j.lean.js} (99%) diff --git a/dev/404.html b/dev/404.html index 0d4f2d4a..10ef176e 100644 --- a/dev/404.html +++ b/dev/404.html @@ -9,7 +9,7 @@ - + @@ -19,7 +19,7 @@
- + \ No newline at end of file diff --git a/dev/UserGuide/cache.html b/dev/UserGuide/cache.html index 74cb5c70..2b289980 100644 --- a/dev/UserGuide/cache.html +++ b/dev/UserGuide/cache.html @@ -9,9 +9,9 @@ - + - + @@ -26,7 +26,7 @@ cachesize = 500 #MB cache(ds,maxsize = cachesize)

The above will wrap every array in the dataset into its own cache, where the 500MB are distributed equally across datasets. Alternatively individual caches can be applied to single YAXArrays

julia
yax = ds.avariable
 cache(yax,maxsize = 1000)
- + \ No newline at end of file diff --git a/dev/UserGuide/chunk.html b/dev/UserGuide/chunk.html index 5832b119..0c400c59 100644 --- a/dev/UserGuide/chunk.html +++ b/dev/UserGuide/chunk.html @@ -9,11 +9,11 @@ - + - + - + @@ -57,15 +57,15 @@ Variables with additional axes: Additional Axes: - (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points) + (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points, + → Dim_3 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points) Variables: - x + z Additional Axes: - (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points, - → Dim_3 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points) + (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points) Variables: - z

Set chunking by Variable

The following will set the chunk size for each Variable separately and results in exactly the same chunking as the example above

julia
using YAXArrays, Zarr
+  x

Set chunking by Variable

The following will set the chunk size for each Variable separately and results in exactly the same chunking as the example above

julia
using YAXArrays, Zarr
 ds = Dataset(x = YAXArray(rand(10,20)), y = YAXArray(rand(10)), z = YAXArray(rand(10,20,5)))
 dschunked = setchunks(ds,(x = (5,10), y = Dict("Dim_1"=>5), z = (Dim_1 = 5, Dim_2 = 10, Dim_3 = 2)))
 Cube(dschunked).chunks
2×2×3 DiskArrays.GridChunks{3, Tuple{DiskArrays.RegularChunks, DiskArrays.RegularChunks, DiskArrays.RegularChunks}}:
@@ -89,15 +89,15 @@
 
 Variables with additional axes:
   Additional Axes: 
-  (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points)
+  (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points,
+  → Dim_3 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points)
   Variables: 
-  x
+  z
 
   Additional Axes: 
-  (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points,
-  → Dim_3 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points)
+  (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points)
   Variables: 
-  z

Set chunking for all variables

The following code snippet only works when all member variables of the dataset have the same shape and sets the output chunks for all arrays.

julia
using YAXArrays, Zarr
+  x

Set chunking for all variables

The following code snippet only works when all member variables of the dataset have the same shape and sets the output chunks for all arrays.

julia
using YAXArrays, Zarr
 ds = Dataset(x = YAXArray(rand(10,20)), y = YAXArray(rand(10,20)), z = YAXArray(rand(10,20)))
 dschunked = setchunks(ds,(5,10))
 Cube(dschunked).chunks
2×2×3 DiskArrays.GridChunks{3, Tuple{DiskArrays.RegularChunks, DiskArrays.RegularChunks, DiskArrays.RegularChunks}}:
@@ -119,7 +119,7 @@
 
 Variables: 
 x, y, z

Suggestions on how to improve or add to these examples is welcome.

- + \ No newline at end of file diff --git a/dev/UserGuide/combine.html b/dev/UserGuide/combine.html index 6077b1f3..1a64d7b2 100644 --- a/dev/UserGuide/combine.html +++ b/dev/UserGuide/combine.html @@ -9,9 +9,9 @@ - + - + @@ -49,7 +49,7 @@ ├───────────────────────────────────────────────── loaded lazily ┤ data size: 96.0 bytes └────────────────────────────────────────────────────────────────┘ - + \ No newline at end of file diff --git a/dev/UserGuide/compute.html b/dev/UserGuide/compute.html index 7863b42d..5557ba84 100644 --- a/dev/UserGuide/compute.html +++ b/dev/UserGuide/compute.html @@ -9,11 +9,11 @@ - + - + - + @@ -42,7 +42,7 @@ :origin => "user guide" ├──────────────────────────────────────────────────────────── loaded in memory ┤ data size: 35.16 KB -└──────────────────────────────────────────────────────────────────────────────┘

Modify elements of a YAXArray

julia
a[1,2,3]
0.6720458572735374
julia
a[1,2,3] = 42
42
julia
a[1,2,3]
42.0

WARNING

Some arrays, e.g. those saved in a cloud object storage are immutable making any modification of the data impossible.

Arithmetics

Add a value to all elements of an array and save it as a new array:

julia
a2 = a .+ 5
╭──────────────────────────────╮
+└──────────────────────────────────────────────────────────────────────────────┘

Modify elements of a YAXArray

julia
a[1,2,3]
0.5837743112480992
julia
a[1,2,3] = 42
42
julia
a[1,2,3]
42.0

WARNING

Some arrays, e.g. those saved in a cloud object storage are immutable making any modification of the data impossible.

Arithmetics

Add a value to all elements of an array and save it as a new array:

julia
a2 = a .+ 5
╭──────────────────────────────╮
 │ 30×10×15 YAXArray{Float64,3} │
 ├──────────────────────────────┴───────────────────────────────────────── dims ┐
   ↓ time Sampled{Date} Date("2022-01-01"):Dates.Day(1):Date("2022-01-30") ForwardOrdered Regular Points,
@@ -427,7 +427,7 @@
 mapCube(mymean, a, indims=InDims("time"), outdims=OutDims())

In the last example, mapCube was used to map the mymean function. mapslices is a convenient function that can replace mapCube, where you can omit defining an extra function with the output argument as an input (e.g. mymean). It is possible to simply use mapslice

julia
mapslices(mean  skipmissing, a, dims="time")

It is also possible to distribute easily the workload on a cluster, with little modification to the code. To do so, we use the ClusterManagers package.

julia
using Distributed
 using ClusterManagers
 addprocs(SlurmManager(10))
- + \ No newline at end of file diff --git a/dev/UserGuide/convert.html b/dev/UserGuide/convert.html index 8d66431e..ceb64ecd 100644 --- a/dev/UserGuide/convert.html +++ b/dev/UserGuide/convert.html @@ -9,9 +9,9 @@ - + - + @@ -99,7 +99,7 @@ 3 0.522262 0.237824 0.165853 0.662295 0.327439 0.793913 4 0.365971 0.215988 0.520744 0.096862 0.625389 0.725765 5 0.271209 0.521769 0.858065 0.162134 0.181798 0.425153

INFO

At the moment there is no support to save a DimArray directly into disk as a NetCDF or a Zarr file.

- + \ No newline at end of file diff --git a/dev/UserGuide/create.html b/dev/UserGuide/create.html index 88dce543..c3b26e32 100644 --- a/dev/UserGuide/create.html +++ b/dev/UserGuide/create.html @@ -9,9 +9,9 @@ - + - + @@ -69,7 +69,7 @@ a2, a3 Properties: Dict(:origin => "user guide") - + \ No newline at end of file diff --git a/dev/UserGuide/faq.html b/dev/UserGuide/faq.html index 1ef4b5a9..5b671a17 100644 --- a/dev/UserGuide/faq.html +++ b/dev/UserGuide/faq.html @@ -9,11 +9,11 @@ - + - + - + @@ -217,20 +217,20 @@ None Variables with additional axes: Additional Axes: - (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points) + (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points, + → Time Sampled{Date} Date("2020-01-01"):Dates.Month(1):Date("2022-12-01") ForwardOrdered Regular Points) Variables: - longitudes + temperature Additional Axes: (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points) Variables: - latitudes + longitudes Additional Axes: - (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points, - → Time Sampled{Date} Date("2020-01-01"):Dates.Month(1):Date("2022-12-01") ForwardOrdered Regular Points) + (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points) Variables: - temperature

If your dataset has been read from a file with Cube it is not loaded into memory, and you have to load the latitudes and longitudes YAXArrays into memory:

julia
latitudes_yasxa  = readcubedata(ds["latitudes"])
+  latitudes

If your dataset has been read from a file with Cube it is not loaded into memory, and you have to load the latitudes and longitudes YAXArrays into memory:

julia
latitudes_yasxa  = readcubedata(ds["latitudes"])
 longitudes_yasxa = readcubedata(ds["longitudes"])
 ds_subset = ds[points = Where(p-> latitudes_yasxa[p]  >= 20 && latitudes_yasxa[p]  <= 80 &&
                              longitudes_yasxa[p] >= 0  && longitudes_yasxa[p] <= 180
@@ -242,18 +242,18 @@
   Additional Axes: 
   (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points)
   Variables: 
-  latitudes
+  longitudes
 
   Additional Axes: 
-  (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points,
-  → Time   Sampled{Date} Date("2020-01-01"):Dates.Month(1):Date("2022-12-01") ForwardOrdered Regular Points)
+  (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points)
   Variables: 
-  temperature
+  latitudes
 
   Additional Axes: 
-  (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points)
+  (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points,
+  → Time   Sampled{Date} Date("2020-01-01"):Dates.Month(1):Date("2022-12-01") ForwardOrdered Regular Points)
   Variables: 
-  longitudes

How do I apply map algebra?

Our next step is map algebra computations. This can be done effectively using the 'map' function. For example:

Multiplying cubes with only spatio-temporal dimensions

julia
julia> map((x, y) -> x * y, ds1, ds2)
╭──────────────────────────────╮
+  temperature

How do I apply map algebra?

Our next step is map algebra computations. This can be done effectively using the 'map' function. For example:

Multiplying cubes with only spatio-temporal dimensions

julia
julia> map((x, y) -> x * y, ds1, ds2)
╭──────────────────────────────╮
 20×10×15 YAXArray{Float64,3}
 ├──────────────────────────────┴───────────────────────────────────────── dims ┐
 time Sampled{Float64} 1.0:1.0:20.0 ForwardOrdered Regular Points,
@@ -332,12 +332,6 @@
 None
 Variables with additional axes:
   Additional Axes: 
-  (Dim_1 Sampled{Int64} Base.OneTo(2) ForwardOrdered Regular Points,
-Dim_2 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points)
-  Variables: 
-  c
-
-  Additional Axes: 
   (Dim_1 Sampled{Int64} Base.OneTo(10) ForwardOrdered Regular Points,
 Dim_2 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points)
   Variables: 
@@ -346,7 +340,13 @@
   Additional Axes: 
   (Dim_1 Sampled{Int64} Base.OneTo(10) ForwardOrdered Regular Points)
   Variables: 
-  a

WARNING

You will not be able to save this dataset, first you will need to rename those dimensions with the same name but different values.

Ho do I construct a Dataset from a TimeArray

In this section we will use MarketData.jl and TimeSeries.jl to simulate some stocks.

julia
using YAXArrays, DimensionalData
+  a
+
+  Additional Axes: 
+  (Dim_1 Sampled{Int64} Base.OneTo(2) ForwardOrdered Regular Points,
+Dim_2 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points)
+  Variables: 
+  c

WARNING

You will not be able to save this dataset, first you will need to rename those dimensions with the same name but different values.

Ho do I construct a Dataset from a TimeArray

In this section we will use MarketData.jl and TimeSeries.jl to simulate some stocks.

julia
using YAXArrays, DimensionalData
 using MarketData, TimeSeries
 
 stocks = Dict(:Stock1 => random_ohlcv(), :Stock2 => random_ohlcv(), :Stock3 => random_ohlcv())
@@ -367,13 +367,13 @@
   (time     Sampled{DateTime} [2020-01-01T00:00:00, …, 2020-01-21T19:00:00] ForwardOrdered Irregular Points,
 variable Categorical{Symbol} [:Open, :High, :Low, :Close, :Volume] Unordered)
   Variables: 
-  Stock1
+  Stock3
 
   Additional Axes: 
   (time     Sampled{DateTime} [2020-01-01T00:00:00, …, 2020-01-21T19:00:00] ForwardOrdered Irregular Points,
 variable Categorical{Symbol} [:Open, :High, :Low, :Close, :Volume] Unordered)
   Variables: 
-  Stock3

and, it looks like there some small differences in the axes, they are being printed independently although they should be the same. Well, they are at least at the == level but not at ===. We could use the axes from one YAXArray as reference and rebuild all the others

julia
yax_list = [rebuild(yax_list[1], values(stocks[k])) for k in d_keys];

and voilà

julia
julia> ds = Dataset(; (d_keys .=> yax_list)...)
YAXArray Dataset
+  Stock1

and, it looks like there some small differences in the axes, they are being printed independently although they should be the same. Well, they are at least at the == level but not at ===. We could use the axes from one YAXArray as reference and rebuild all the others

julia
yax_list = [rebuild(yax_list[1], values(stocks[k])) for k in d_keys];

and voilà

julia
julia> ds = Dataset(; (d_keys .=> yax_list)...)
YAXArray Dataset
 Shared Axes:
   (time     Sampled{DateTime} [2020-01-01T00:00:00, …, 2020-01-21T19:00:00] ForwardOrdered Irregular Points,
 variable Categorical{Symbol} [:Open, :High, :Low, :Close, :Volume] Unordered)
@@ -400,7 +400,7 @@
 ├─────────────────────────────────────────────────── loaded in memory ┤
   summarysize: 172.0 bytes
 └─────────────────────────────────────────────────────────────────────┘

WARNING

Note that although their creation is allowed, it is not possible to save these types into Zarr or NetCDF.

- + \ No newline at end of file diff --git a/dev/UserGuide/group.html b/dev/UserGuide/group.html index 2460ab85..d8f2660c 100644 --- a/dev/UserGuide/group.html +++ b/dev/UserGuide/group.html @@ -9,11 +9,11 @@ - + - + - + @@ -210,8 +210,8 @@ colgap!(fig.layout, 5) rowgap!(fig.layout, 5) fig -end

which shows a good agreement with the results first published by Joe Hamman.

- +end

which shows a good agreement with the results first published by Joe Hamman.

+ \ No newline at end of file diff --git a/dev/UserGuide/read.html b/dev/UserGuide/read.html index 9563421a..0bdc9fd9 100644 --- a/dev/UserGuide/read.html +++ b/dev/UserGuide/read.html @@ -9,9 +9,9 @@ - + - + @@ -139,7 +139,7 @@ ├──────────────────────────────────────────────────────────── loaded in memory ┤ data size: 2.8 MB └──────────────────────────────────────────────────────────────────────────────┘

Note how the loading status changes from loaded lazily to loaded in memory.

- + \ No newline at end of file diff --git a/dev/UserGuide/select.html b/dev/UserGuide/select.html index 1913dfe1..d77f5a21 100644 --- a/dev/UserGuide/select.html +++ b/dev/UserGuide/select.html @@ -9,9 +9,9 @@ - + - + @@ -315,7 +315,7 @@ 89.5

These values are defined as lookups in the package DimensionalData:

julia
lookup(tos, :lon)
Sampled{Float64} ForwardOrdered Regular DimensionalData.Dimensions.Lookups.Points
 wrapping: 1.0:2.0:359.0

which is equivalent to:

julia
tos.lon.val
Sampled{Float64} ForwardOrdered Regular DimensionalData.Dimensions.Lookups.Points
 wrapping: 1.0:2.0:359.0
- + \ No newline at end of file diff --git a/dev/UserGuide/types.html b/dev/UserGuide/types.html index abdb4502..53abe98b 100644 --- a/dev/UserGuide/types.html +++ b/dev/UserGuide/types.html @@ -9,9 +9,9 @@ - + - + @@ -22,7 +22,7 @@
Skip to content

Types

This section describes the data structures used to work with n-dimensional arrays in YAXArrays.

YAXArray

An Array stores a sequence of ordered elements of the same type usually across multiple dimensions or axes. For example, one can measure temperature across all time points of the time dimension or brightness values of a picture across X and Y dimensions. A one dimensional array is called Vector and a two dimensional array is called a Matrix. In many Machine Learning libraries, arrays are also called tensors. Arrays are designed to store dense spatial-temporal data stored in a grid, whereas a collection of sparse points is usually stored in data frames or relational databases.

A DimArray as defined by DimensionalData.jl adds names to the dimensions and their axes ticks for a given Array. These names can be used to access the data, e.g., by date instead of just by integer position.

A YAXArray is a subtype of a AbstractDimArray and adds functions to load and process the named arrays. For example, it can also handle very large arrays stored on disk that are too big to fit in memory. In addition, it provides functions for parallel computation.

Dataset

A Dataset is an ordered dictionary of YAXArrays that usually share dimensions. For example, it can bundle arrays storing temperature and precipitation that are measured at the same time points and the same locations. One also can store a picture in a Dataset with three arrays containing brightness values for red green and blue, respectively. Internally, those arrays are still separated allowing to chose different element types for each array. Analog to the (NetCDF Data Model)[https://docs.unidata.ucar.edu/netcdf-c/current/netcdf_data_model.html], a Dataset usually represents variables belonging to the same group.

(Data) Cube

A (Data) Cube is just a YAXArray in which arrays from a dataset are combined together by introducing a new dimension containing labels of which array the corresponding element came from. Unlike a Dataset, all arrays must have the same element type to be converted into a cube. This data structure is useful when we want to use all variables at once. For example, the arrays temperature and precipitation which are measured at the same locations and dates can be combined into a single cube. A more formal definition of Data Cubes are given in Mahecha et al. 2020

Dimension

A Dimension or axis as defined by DimensionalData.jl adds tick labels, e.g., to each row or column of an array. It's name is used to access particular subsets of that array.

- + \ No newline at end of file diff --git a/dev/UserGuide/write.html b/dev/UserGuide/write.html index 894a7f50..9efe5973 100644 --- a/dev/UserGuide/write.html +++ b/dev/UserGuide/write.html @@ -9,11 +9,11 @@ - + - + - + @@ -43,25 +43,25 @@ savecube(ds.tos, "tos.nc", driver=:netcdf)

Save an entire Dataset to a directory:

julia
savedataset(ds, path="ds.nc", driver=:netcdf)

netcdf compression

Save a dataset to NetCDF format with compression:

julia
n = 7 # compression level, number between 0 (no compression) and 9 (max compression)
 savedataset(ds, path="ds_c.nc", driver=:netcdf, compress=n)

Comparing it to the default saved file

julia
ds_info = stat("ds.nc")
 ds_c_info = stat("ds_c.nc")
-println("File size: ", "default: ", ds_info.size, " bytes", ", compress: ", ds_c_info.size, " bytes")
File size: default: 2963858 bytes, compress: 1159914 bytes

Overwrite a Dataset

If a path already exists, an error will be thrown. Set overwrite=true to delete the existing dataset

julia
savedataset(ds, path="ds.zarr", driver=:zarr, overwrite=true)

DANGER

Again, setting overwrite will delete all your previous saved data.

Look at the doc string for more information

YAXArrays.Datasets.savedataset Function

savedataset(ds::Dataset; path = "", persist = nothing, overwrite = false, append = false, skeleton=false, backend = :all, driver = backend, max_cache = 5e8, writefac=4.0)

Saves a Dataset into a file at path with the format given by driver, i.e., driver=:netcdf or driver=:zarr.

Warning

overwrite = true, deletes ALL your data and it will create a new file.

source

Append to a Dataset

New variables can be added to an existing dataset using the append=true keyword.

julia
ds2 = Dataset(z = YAXArray(rand(10,20,5)))
+println("File size: ", "default: ", ds_info.size, " bytes", ", compress: ", ds_c_info.size, " bytes")
File size: default: 2963858 bytes, compress: 1159914 bytes

Overwrite a Dataset

If a path already exists, an error will be thrown. Set overwrite=true to delete the existing dataset

julia
savedataset(ds, path="ds.zarr", driver=:zarr, overwrite=true)

DANGER

Again, setting overwrite will delete all your previous saved data.

Look at the doc string for more information

YAXArrays.Datasets.savedataset Function

savedataset(ds::Dataset; path = "", persist = nothing, overwrite = false, append = false, skeleton=false, backend = :all, driver = backend, max_cache = 5e8, writefac=4.0)

Saves a Dataset into a file at path with the format given by driver, i.e., driver=:netcdf or driver=:zarr.

Warning

overwrite = true, deletes ALL your data and it will create a new file.

source

Append to a Dataset

New variables can be added to an existing dataset using the append=true keyword.

julia
ds2 = Dataset(z = YAXArray(rand(10,20,5)))
 savedataset(ds2, path="ds.zarr", backend=:zarr, append=true)
julia
julia> open_dataset("ds.zarr", driver=:zarr)
YAXArray Dataset
 Shared Axes:
 None
 Variables with additional axes:
   Additional Axes: 
-  (Dim_1 Sampled{Int64} 1:1:10 ForwardOrdered Regular Points,
-Dim_2 Sampled{Int64} 1:1:20 ForwardOrdered Regular Points,
-Dim_3 Sampled{Int64} 1:1:5 ForwardOrdered Regular Points)
-  Variables: 
-  z
-
-  Additional Axes: 
   (lon Sampled{Float64} 1.0:2.0:359.0 ForwardOrdered Regular Points,
 lat Sampled{Float64} -79.5:1.0:89.5 ForwardOrdered Regular Points,
 Ti  Sampled{CFTime.DateTime360Day} [CFTime.DateTime360Day(2001-01-16T00:00:00), …, CFTime.DateTime360Day(2002-12-16T00:00:00)] ForwardOrdered Irregular Points)
   Variables: 
   tos
 
+  Additional Axes: 
+  (Dim_1 Sampled{Int64} 1:1:10 ForwardOrdered Regular Points,
+Dim_2 Sampled{Int64} 1:1:20 ForwardOrdered Regular Points,
+Dim_3 Sampled{Int64} 1:1:5 ForwardOrdered Regular Points)
+  Variables: 
+  z
+
 Properties: Dict{String, Any}("cmor_version" => 0.96, "references" => "Dufresne et al, Journal of Climate, 2015, vol XX, p 136", "realization" => 1, "contact" => "Sebastien Denvil, sebastien.denvil@ipsl.jussieu.fr", "Conventions" => "CF-1.0", "history" => "YYYY/MM/JJ: data generated; YYYY/MM/JJ+1 data transformed  At 16:37:23 on 01/11/2005, CMOR rewrote data to comply with CF standards and IPCC Fourth Assessment requirements", "table_id" => "Table O1 (13 November 2004)", "source" => "IPSL-CM4_v1 (2003) : atmosphere : LMDZ (IPSL-CM4_IPCC, 96x71x19) ; ocean ORCA2 (ipsl_cm4_v1_8, 2x2L31); sea ice LIM (ipsl_cm4_v", "title" => "IPSL  model output prepared for IPCC Fourth Assessment SRES A2 experiment", "experiment_id" => "SRES A2 experiment"…)

Save Skeleton

Sometimes one merely wants to create a datacube "Skeleton" on disk and gradually fill it with data. Here we make use of FillArrays to create a YAXArray and write only the axis data and array metadata to disk, while no actual array data is copied:

julia
using YAXArrays, Zarr, FillArrays

create the Zeros array

julia
julia> a = YAXArray(Zeros(Union{Missing, Float32},  5, 4, 5))
╭───────────────────────────────────────────╮
 5×4×5 YAXArray{Union{Missing, Float32},3}
 ├───────────────────────────────────────────┴──────────────────────────── dims ┐
@@ -93,7 +93,7 @@
  0.459041  0.761553   0.367809  0.414041
  0.223574  0.898926   0.647957  0.820737
  0.457984  0.839919   0.858795  0.1921

indeed, those entries had been updated.

- + \ No newline at end of file diff --git a/dev/api.html b/dev/api.html index 1c70fd0c..d8753a24 100644 --- a/dev/api.html +++ b/dev/api.html @@ -9,11 +9,11 @@ - + - + - + @@ -21,22 +21,22 @@ -
Skip to content

API Reference

This section describes all available functions of this package.

Public API

YAXArrays.getAxis Method
julia
getAxis(desc, c)

Given an Axis description and a cube, returns the corresponding axis of the cube. The Axis description can be:

  • the name as a string or symbol.

  • an Axis object

source

YAXArrays.Cubes Module

The functions provided by YAXArrays are supposed to work on different types of cubes. This module defines the interface for all Data types that

source

YAXArrays.Cubes.YAXArray Type
julia
YAXArray{T,N}

An array labelled with named axes that have values associated with them. It can wrap normal arrays or, more typically DiskArrays.

Fields

  • axes: Tuple of Dimensions containing the Axes of the Cube

  • data: length(axes)-dimensional array which holds the data, this can be a lazy DiskArray

  • properties: Metadata properties describing the content of the data

  • chunks: Representation of the chunking of the data

  • cleaner: Cleaner objects to track which objects to tidy up when the YAXArray goes out of scope

source

YAXArrays.Cubes.caxes Function

Returns the axes of a Cube

source

YAXArrays.Cubes.caxes Method
julia
caxes

Embeds Cube inside a new Cube

source

YAXArrays.Cubes.concatenatecubes Method
julia
function concatenateCubes(cubelist, cataxis::CategoricalAxis)

Concatenates a vector of datacubes that have identical axes to a new single cube along the new axis cataxis

source

YAXArrays.Cubes.readcubedata Method
julia
readcubedata(cube)

Given any array implementing the YAXArray interface it returns an in-memory YAXArray from it.

source

YAXArrays.Cubes.setchunks Method
julia
setchunks(c::YAXArray,chunks)

Resets the chunks of a YAXArray and returns a new YAXArray. Note that this will not change the chunking of the underlying data itself, it will just make the data "look" like it had a different chunking. If you need a persistent on-disk representation of this chunking, use savecube on the resulting array. The chunks argument can take one of the following forms:

  • a DiskArrays.GridChunks object

  • a tuple specifying the chunk size along each dimension

  • an AbstractDict or NamedTuple mapping one or more axis names to chunk sizes

source

YAXArrays.Cubes.subsetcube Function

This function calculates a subset of a cube's data

source

YAXArrays.DAT.InDims Type
julia
InDims(axisdesc...;...)

Creates a description of an Input Data Cube for cube operations. Takes a single or multiple axis descriptions as first arguments. Alternatively a MovingWindow(@ref) struct can be passed to include neighbour slices of one or more axes in the computation. Axes can be specified by their name (String), through an Axis type, or by passing a concrete axis.

Keyword arguments

  • artype how shall the array be represented in the inner function. Defaults to Array, alternatives are DataFrame or AsAxisArray

  • filter define some filter to skip the computation, e.g. when all values are missing. Defaults to AllMissing(), possible values are AnyMissing(), AnyOcean(), StdZero(), NValid(n) (for at least n non-missing elements). It is also possible to provide a custom one-argument function that takes the array and returns true if the compuation shall be skipped and false otherwise.

  • window_oob_value if one of the input dimensions is a MowingWindow, this value will be used to fill out-of-bounds areas

source

YAXArrays.DAT.MovingWindow Type
julia
MovingWindow(desc, pre, after)

Constructs a MovingWindow object to be passed to an InDims constructor to define that the axis in desc shall participate in the inner function (i.e. shall be looped over), but inside the inner function pre values before and after values after the center value will be passed as well.

For example passing MovingWindow("Time", 2, 0) will loop over the time axis and always pass the current time step plus the 2 previous steps. So in the inner function the array will have an additional dimension of size 3.

source

YAXArrays.DAT.OutDims Method
julia
OutDims(axisdesc;...)

Creates a description of an Output Data Cube for cube operations. Takes a single or a Vector/Tuple of axes as first argument. Axes can be specified by their name (String), through an Axis type, or by passing a concrete axis.

  • axisdesc: List of input axis names

  • backend : specifies the dataset backend to write data to, must be either :auto or a key in YAXArrayBase.backendlist

  • update : specifies wether the function operates inplace or if an output is returned

  • artype : specifies the Array type inside the inner function that is mapped over

  • chunksize: A Dict specifying the chunksizes for the output dimensions of the cube, or :input to copy chunksizes from input cube axes or :max to not chunk the inner dimensions

  • outtype: force the output type to a specific type, defaults to Any which means that the element type of the first input cube is used

source

YAXArrays.DAT.CubeTable Method
julia
CubeTable()

Function to turn a DataCube object into an iterable table. Takes a list of as arguments, specified as a name=cube expression. For example CubeTable(data=cube1,country=cube2) would generate a Table with the entries data and country, where data contains the values of cube1 and country the values of cube2. The cubes are matched and broadcasted along their axes like in mapCube.

source

YAXArrays.DAT.cubefittable Method
julia
cubefittable(tab,o,fitsym;post=getpostfunction(o),kwargs...)

Executes fittable on the CubeTable tab with the (Weighted-)OnlineStat o, looping through the values specified by fitsym. Finally, writes the results from the TableAggregator to an output data cube.

source

YAXArrays.DAT.fittable Method
julia
fittable(tab,o,fitsym;by=(),weight=nothing)

Loops through an iterable table tab and thereby fitting an OnlineStat o with the values specified through fitsym. Optionally one can specify a field (or tuple) to group by. Any groupby specifier can either be a symbol denoting the entry to group by or an anynymous function calculating the group from a table row.

For example the following would caluclate a weighted mean over a cube weighted by grid cell area and grouped by country and month:

julia
fittable(iter,WeightedMean,:tair,weight=(i->abs(cosd(i.lat))),by=(i->month(i.time),:country))

source

YAXArrays.DAT.mapCube Method
julia
mapCube(fun, cube, addargs...;kwargs...)
+    
Skip to content

API Reference

This section describes all available functions of this package.

Public API

YAXArrays.getAxis Method
julia
getAxis(desc, c)

Given an Axis description and a cube, returns the corresponding axis of the cube. The Axis description can be:

  • the name as a string or symbol.

  • an Axis object

source

YAXArrays.Cubes Module

The functions provided by YAXArrays are supposed to work on different types of cubes. This module defines the interface for all Data types that

source

YAXArrays.Cubes.YAXArray Type
julia
YAXArray{T,N}

An array labelled with named axes that have values associated with them. It can wrap normal arrays or, more typically DiskArrays.

Fields

  • axes: Tuple of Dimensions containing the Axes of the Cube

  • data: length(axes)-dimensional array which holds the data, this can be a lazy DiskArray

  • properties: Metadata properties describing the content of the data

  • chunks: Representation of the chunking of the data

  • cleaner: Cleaner objects to track which objects to tidy up when the YAXArray goes out of scope

source

YAXArrays.Cubes.caxes Function

Returns the axes of a Cube

source

YAXArrays.Cubes.caxes Method
julia
caxes

Embeds Cube inside a new Cube

source

YAXArrays.Cubes.concatenatecubes Method
julia
function concatenateCubes(cubelist, cataxis::CategoricalAxis)

Concatenates a vector of datacubes that have identical axes to a new single cube along the new axis cataxis

source

YAXArrays.Cubes.readcubedata Method
julia
readcubedata(cube)

Given any array implementing the YAXArray interface it returns an in-memory YAXArray from it.

source

YAXArrays.Cubes.setchunks Method
julia
setchunks(c::YAXArray,chunks)

Resets the chunks of a YAXArray and returns a new YAXArray. Note that this will not change the chunking of the underlying data itself, it will just make the data "look" like it had a different chunking. If you need a persistent on-disk representation of this chunking, use savecube on the resulting array. The chunks argument can take one of the following forms:

  • a DiskArrays.GridChunks object

  • a tuple specifying the chunk size along each dimension

  • an AbstractDict or NamedTuple mapping one or more axis names to chunk sizes

source

YAXArrays.Cubes.subsetcube Function

This function calculates a subset of a cube's data

source

YAXArrays.DAT.InDims Type
julia
InDims(axisdesc...;...)

Creates a description of an Input Data Cube for cube operations. Takes a single or multiple axis descriptions as first arguments. Alternatively a MovingWindow(@ref) struct can be passed to include neighbour slices of one or more axes in the computation. Axes can be specified by their name (String), through an Axis type, or by passing a concrete axis.

Keyword arguments

  • artype how shall the array be represented in the inner function. Defaults to Array, alternatives are DataFrame or AsAxisArray

  • filter define some filter to skip the computation, e.g. when all values are missing. Defaults to AllMissing(), possible values are AnyMissing(), AnyOcean(), StdZero(), NValid(n) (for at least n non-missing elements). It is also possible to provide a custom one-argument function that takes the array and returns true if the compuation shall be skipped and false otherwise.

  • window_oob_value if one of the input dimensions is a MowingWindow, this value will be used to fill out-of-bounds areas

source

YAXArrays.DAT.MovingWindow Type
julia
MovingWindow(desc, pre, after)

Constructs a MovingWindow object to be passed to an InDims constructor to define that the axis in desc shall participate in the inner function (i.e. shall be looped over), but inside the inner function pre values before and after values after the center value will be passed as well.

For example passing MovingWindow("Time", 2, 0) will loop over the time axis and always pass the current time step plus the 2 previous steps. So in the inner function the array will have an additional dimension of size 3.

source

YAXArrays.DAT.OutDims Method
julia
OutDims(axisdesc;...)

Creates a description of an Output Data Cube for cube operations. Takes a single or a Vector/Tuple of axes as first argument. Axes can be specified by their name (String), through an Axis type, or by passing a concrete axis.

  • axisdesc: List of input axis names

  • backend : specifies the dataset backend to write data to, must be either :auto or a key in YAXArrayBase.backendlist

  • update : specifies wether the function operates inplace or if an output is returned

  • artype : specifies the Array type inside the inner function that is mapped over

  • chunksize: A Dict specifying the chunksizes for the output dimensions of the cube, or :input to copy chunksizes from input cube axes or :max to not chunk the inner dimensions

  • outtype: force the output type to a specific type, defaults to Any which means that the element type of the first input cube is used

source

YAXArrays.DAT.CubeTable Method
julia
CubeTable()

Function to turn a DataCube object into an iterable table. Takes a list of as arguments, specified as a name=cube expression. For example CubeTable(data=cube1,country=cube2) would generate a Table with the entries data and country, where data contains the values of cube1 and country the values of cube2. The cubes are matched and broadcasted along their axes like in mapCube.

source

YAXArrays.DAT.cubefittable Method
julia
cubefittable(tab,o,fitsym;post=getpostfunction(o),kwargs...)

Executes fittable on the CubeTable tab with the (Weighted-)OnlineStat o, looping through the values specified by fitsym. Finally, writes the results from the TableAggregator to an output data cube.

source

YAXArrays.DAT.fittable Method
julia
fittable(tab,o,fitsym;by=(),weight=nothing)

Loops through an iterable table tab and thereby fitting an OnlineStat o with the values specified through fitsym. Optionally one can specify a field (or tuple) to group by. Any groupby specifier can either be a symbol denoting the entry to group by or an anynymous function calculating the group from a table row.

For example the following would caluclate a weighted mean over a cube weighted by grid cell area and grouped by country and month:

julia
fittable(iter,WeightedMean,:tair,weight=(i->abs(cosd(i.lat))),by=(i->month(i.time),:country))

source

YAXArrays.DAT.mapCube Method
julia
mapCube(fun, cube, addargs...;kwargs...)
 
 Map a given function `fun` over slices of all cubes of the dataset `ds`. 
 Use InDims to discribe the input dimensions and OutDims to describe the output dimensions of the function.
 For Datasets, only one output cube can be specified.
 In contrast to the mapCube function for cubes, additional arguments for the inner function should be set as keyword arguments.
 
-For the specific keyword arguments see the docstring of the mapCube function for cubes.

source

YAXArrays.DAT.mapCube Method
julia
mapCube(fun, cube, addargs...;kwargs...)

Map a given function fun over slices of the data cube cube. The additional arguments addargs will be forwarded to the inner function fun. Use InDims to discribe the input dimensions and OutDims to describe the output dimensions of the function.

Keyword arguments

  • max_cache=YAXDefaults.max_cache Float64 maximum size of blocks that are read into memory in bits e.g. max_cache=5.0e8. Or String. e.g. max_cache="10MB" ormax_cache=1GB``` defaults to approx 10Mb.

  • indims::InDims List of input cube descriptors of type InDims for each input data cube.

  • outdims::OutDims List of output cube descriptors of type OutDims for each output cube.

  • inplace does the function write to an output array inplace or return a single value> defaults to true

  • ispar boolean to determine if parallelisation should be applied, defaults to true if workers are available.

  • showprog boolean indicating if a ProgressMeter shall be shown

  • include_loopvars boolean to indicate if the varoables looped over should be added as function arguments

  • nthreads number of threads for the computation, defaults to Threads.nthreads for every worker.

  • loopchunksize determines the chunk sizes of variables which are looped over, a dict

  • kwargs additional keyword arguments are passed to the inner function

The first argument is always the function to be applied, the second is the input cube or a tuple of input cubes if needed.

source

YAXArrays.Datasets.Dataset Type
julia
Dataset object which stores an `OrderedDict` of YAXArrays with Symbol keys.
+For the specific keyword arguments see the docstring of the mapCube function for cubes.

source

YAXArrays.DAT.mapCube Method
julia
mapCube(fun, cube, addargs...;kwargs...)

Map a given function fun over slices of the data cube cube. The additional arguments addargs will be forwarded to the inner function fun. Use InDims to discribe the input dimensions and OutDims to describe the output dimensions of the function.

Keyword arguments

  • max_cache=YAXDefaults.max_cache Float64 maximum size of blocks that are read into memory in bits e.g. max_cache=5.0e8. Or String. e.g. max_cache="10MB" ormax_cache=1GB``` defaults to approx 10Mb.

  • indims::InDims List of input cube descriptors of type InDims for each input data cube.

  • outdims::OutDims List of output cube descriptors of type OutDims for each output cube.

  • inplace does the function write to an output array inplace or return a single value> defaults to true

  • ispar boolean to determine if parallelisation should be applied, defaults to true if workers are available.

  • showprog boolean indicating if a ProgressMeter shall be shown

  • include_loopvars boolean to indicate if the varoables looped over should be added as function arguments

  • nthreads number of threads for the computation, defaults to Threads.nthreads for every worker.

  • loopchunksize determines the chunk sizes of variables which are looped over, a dict

  • kwargs additional keyword arguments are passed to the inner function

The first argument is always the function to be applied, the second is the input cube or a tuple of input cubes if needed.

source

YAXArrays.Datasets.Dataset Type
julia
Dataset object which stores an `OrderedDict` of YAXArrays with Symbol keys.
 a dictionary of CubeAxes and a Dictionary of general properties.
-A dictionary can hold cubes with differing axes. But it will share the common axes between the subcubes.

source

YAXArrays.Datasets.Dataset Method

Dataset(; properties = Dict{String,Any}, cubes...)

Construct a YAXArray Dataset with global attributes properties a and a list of named YAXArrays cubes...

source

YAXArrays.Datasets.Cube Method
julia
Cube(ds::Dataset; joinname="Variable")

Construct a single YAXArray from the dataset ds by concatenating the cubes in the datset on the joinname dimension.

source

YAXArrays.Datasets.open_dataset Method

open_dataset(g; driver=:all)

Open the dataset at g with the given driver. The default driver will search for available drivers and tries to detect the useable driver from the filename extension.

source

YAXArrays.Datasets.open_mfdataset Method
julia
open_mfdataset(files::DD.DimVector{<:AbstractString}; kwargs...)

Opens and concatenates a list of dataset paths along the dimension specified in files. This method can be used when the generic glob-based version of open_mfdataset fails or is too slow. For example, to concatenate a list of annual NetCDF files along the Ti dimension, one can use:

julia
files = ["1990.nc","1991.nc","1992.nc"]
+A dictionary can hold cubes with differing axes. But it will share the common axes between the subcubes.

source

YAXArrays.Datasets.Dataset Method

Dataset(; properties = Dict{String,Any}, cubes...)

Construct a YAXArray Dataset with global attributes properties a and a list of named YAXArrays cubes...

source

YAXArrays.Datasets.Cube Method
julia
Cube(ds::Dataset; joinname="Variable")

Construct a single YAXArray from the dataset ds by concatenating the cubes in the datset on the joinname dimension.

source

YAXArrays.Datasets.open_dataset Method

open_dataset(g; driver=:all)

Open the dataset at g with the given driver. The default driver will search for available drivers and tries to detect the useable driver from the filename extension.

source

YAXArrays.Datasets.open_mfdataset Method
julia
open_mfdataset(files::DD.DimVector{<:AbstractString}; kwargs...)

Opens and concatenates a list of dataset paths along the dimension specified in files. This method can be used when the generic glob-based version of open_mfdataset fails or is too slow. For example, to concatenate a list of annual NetCDF files along the Ti dimension, one can use:

julia
files = ["1990.nc","1991.nc","1992.nc"]
 open_mfdataset(DD.DimArray(files,DD.Ti()))

alternatively, if the dimension to concatenate along does not exist yet, the dimension provided in the input arg is used:

julia
files = ["a.nc","b.nc","c.nc"]
-open_mfdataset(DD.DimArray(files,DD.Dim{:NewDim}(["a","b","c"])))

source

YAXArrays.Datasets.savecube Method
julia
savecube(cube,name::String)

Save a YAXArray to the path.

Extended Help

The keyword arguments are:

  • name:

  • datasetaxis="Variable" special treatment of a categorical axis that gets written into separate zarr arrays

  • max_cache: The number of bits that are used as cache for the data handling.

  • backend: The backend, that is used to save the data. Falls back to searching the backend according to the extension of the path.

  • driver: The same setting as backend.

  • overwrite::Bool=false overwrite cube if it already exists

source

YAXArrays.Datasets.savedataset Method

savedataset(ds::Dataset; path = "", persist = nothing, overwrite = false, append = false, skeleton=false, backend = :all, driver = backend, max_cache = 5e8, writefac=4.0)

Saves a Dataset into a file at path with the format given by driver, i.e., driver=:netcdf or driver=:zarr.

Warning

overwrite = true, deletes ALL your data and it will create a new file.

source

YAXArrays.Datasets.to_dataset Method

to_dataset(c;datasetaxis = "Variable", layername = "layer")

Convert a Data Cube into a Dataset. It is possible to treat one of the Cube's axes as a "DatasetAxis" i.e. the cube will be split into different parts that become variables in the Dataset. If no such axis is specified or found, there will only be a single variable in the dataset with the name layername

source

Internal API

YAXArrays.YAXDefaults Constant

Default configuration for YAXArrays, has the following fields:

  • workdir[]::String = "./" The default location for temporary cubes.

  • recal[]::Bool = false set to true if you want @loadOrGenerate to always recalculate the results.

  • chunksize[]::Any = :input Set the default output chunksize.

  • max_cache[]::Float64 = 1e8 The maximum cache used by mapCube.

  • cubedir[]::"" the default location for Cube() without an argument.

  • subsetextensions::Array{Any} = [] List of registered functions, that convert subsetting input into dimension boundaries.

source

YAXArrays.findAxis Method
julia
findAxis(desc, c)

Internal function

Extended Help

Given an Axis description and a cube return the index of the Axis.

The Axis description can be:

  • the name as a string or symbol.

  • an Axis object

source

YAXArrays.getOutAxis Method
julia
getOutAxis

source

YAXArrays.get_descriptor Method
julia
get_descriptor(a)

Get the descriptor of an Axis. This is used to dispatch on the descriptor.

source

YAXArrays.match_axis Method
julia
match_axis

Internal function

Extended Help

Match the Axis based on the AxisDescriptor.
+open_mfdataset(DD.DimArray(files,DD.Dim{:NewDim}(["a","b","c"])))

source

YAXArrays.Datasets.savecube Method
julia
savecube(cube,name::String)

Save a YAXArray to the path.

Extended Help

The keyword arguments are:

  • name:

  • datasetaxis="Variable" special treatment of a categorical axis that gets written into separate zarr arrays

  • max_cache: The number of bits that are used as cache for the data handling.

  • backend: The backend, that is used to save the data. Falls back to searching the backend according to the extension of the path.

  • driver: The same setting as backend.

  • overwrite::Bool=false overwrite cube if it already exists

source

YAXArrays.Datasets.savedataset Method

savedataset(ds::Dataset; path = "", persist = nothing, overwrite = false, append = false, skeleton=false, backend = :all, driver = backend, max_cache = 5e8, writefac=4.0)

Saves a Dataset into a file at path with the format given by driver, i.e., driver=:netcdf or driver=:zarr.

Warning

overwrite = true, deletes ALL your data and it will create a new file.

source

YAXArrays.Datasets.to_dataset Method

to_dataset(c;datasetaxis = "Variable", layername = "layer")

Convert a Data Cube into a Dataset. It is possible to treat one of the Cube's axes as a "DatasetAxis" i.e. the cube will be split into different parts that become variables in the Dataset. If no such axis is specified or found, there will only be a single variable in the dataset with the name layername

source

Internal API

YAXArrays.YAXDefaults Constant

Default configuration for YAXArrays, has the following fields:

  • workdir[]::String = "./" The default location for temporary cubes.

  • recal[]::Bool = false set to true if you want @loadOrGenerate to always recalculate the results.

  • chunksize[]::Any = :input Set the default output chunksize.

  • max_cache[]::Float64 = 1e8 The maximum cache used by mapCube.

  • cubedir[]::"" the default location for Cube() without an argument.

  • subsetextensions::Array{Any} = [] List of registered functions, that convert subsetting input into dimension boundaries.

source

YAXArrays.findAxis Method
julia
findAxis(desc, c)

Internal function

Extended Help

Given an Axis description and a cube return the index of the Axis.

The Axis description can be:

  • the name as a string or symbol.

  • an Axis object

source

YAXArrays.getOutAxis Method
julia
getOutAxis

source

YAXArrays.get_descriptor Method
julia
get_descriptor(a)

Get the descriptor of an Axis. This is used to dispatch on the descriptor.

source

YAXArrays.match_axis Method
julia
match_axis

Internal function

Extended Help

Match the Axis based on the AxisDescriptor.
 This is used to find different axes and to make certain axis description the same.
-For example to disregard differences of captialisation.

source

YAXArrays.Cubes.CleanMe Type
julia
mutable struct CleanMe

Struct which describes data paths and their persistency. Non-persistend paths/files are removed at finalize step

source

YAXArrays.Cubes.clean Method
julia
clean(c::CleanMe)

finalizer function for CleanMe struct. The main process removes all directories/files which are not persistent.

source

YAXArrays.Cubes.copydata Method
julia
copydata(outar, inar, copybuf)

Internal function which copies the data from the input inar into the output outar at the copybuf positions.

source

YAXArrays.Cubes.optifunc Method
julia
optifunc(s, maxbuf, incs, outcs, insize, outsize, writefac)

Internal

This function is going to be minimized to detect the best possible chunk setting for the rechunking of the data.

source

YAXArrays.DAT.DATConfig Type

Configuration object of a DAT process. This holds all necessary information to perform the calculations. It contains the following fields:

  • incubes::NTuple{NIN, YAXArrays.DAT.InputCube} where NIN: The input data cubes

  • outcubes::NTuple{NOUT, YAXArrays.DAT.OutputCube} where NOUT: The output data cubes

  • allInAxes::Vector: List of all axes of the input cubes

  • LoopAxes::Vector: List of axes that are looped through

  • ispar::Bool: Flag whether the computation is parallelized

  • loopcachesize::Vector{Int64}:

  • allow_irregular_chunks::Bool:

  • max_cache::Any: Maximal size of the in memory cache

  • fu::Any: Inner function which is computed

  • inplace::Bool: Flag whether the computation happens in place

  • include_loopvars::Bool:

  • ntr::Any:

  • do_gc::Bool: Flag if GC should be called explicitly. Probably necessary for many runs in Julia 1.9

  • addargs::Any: Additional arguments for the inner function

  • kwargs::Any: Additional keyword arguments for the inner function

source

YAXArrays.DAT.InputCube Type

Internal representation of an input cube for DAT operations

  • cube: The input data

  • desc: The input description given by the user/registration

  • axesSmall: List of axes that were actually selected through the description

  • icolon

  • colonperm

  • loopinds: Indices of loop axes that this cube does not contain, i.e. broadcasts

  • cachesize: Number of elements to keep in cache along each axis

  • window

  • iwindow

  • windowloopinds

  • iall

source

YAXArrays.DAT.OutputCube Type

Internal representation of an output cube for DAT operations

Fields

  • cube: The actual outcube cube, once it is generated

  • cube_unpermuted: The unpermuted output cube

  • desc: The description of the output axes as given by users or registration

  • axesSmall: The list of output axes determined through the description

  • allAxes: List of all the axes of the cube

  • loopinds: Index of the loop axes that are broadcasted for this output cube

  • innerchunks

  • outtype: Elementtype of the outputcube

source

YAXArrays.DAT.YAXColumn Type
julia
YAXColumn

A struct representing a single column of a YAXArray partitioned Table # Fields

  • inarBC

  • inds

source

YAXArrays.DAT.cmpcachmisses Method

Function that compares two cache miss specifiers by their importance

source

YAXArrays.DAT.getFrontPerm Method

Calculate an axis permutation that brings the wanted dimensions to the front

source

YAXArrays.DAT.getLoopCacheSize Method

Calculate optimal Cache size to DAT operation

source

YAXArrays.DAT.getOuttype Method
julia
getOuttype(outtype, cdata)

Internal function

Get the element type for the output cube

source

YAXArrays.DAT.getloopchunks Method
julia
getloopchunks(dc::DATConfig)

Internal function

Returns the chunks that can be looped over toghether for all dimensions.
-This computation of the size of the chunks is handled by [`DiskArrays.approx_chunksize`](@ref)

source

YAXArrays.DAT.permuteloopaxes Method
julia
permuteloopaxes(dc)

Internal function

Permute the dimensions of the cube, so that the axes that are looped through are in the first positions. This is necessary for a faster looping through the data.

source

YAXArrays.Cubes.setchunks Method
julia
setchunks(c::Dataset,chunks)

Resets the chunks of all or a subset YAXArrays in the dataset and returns a new Dataset. Note that this will not change the chunking of the underlying data itself, it will just make the data "look" like it had a different chunking. If you need a persistent on-disk representation of this chunking, use savedataset on the resulting array. The chunks argument can take one of the following forms:

  • a NamedTuple or AbstractDict mapping from variable name to a description of the desired variable chunks

  • a NamedTuple or AbstractDict mapping from dimension name to a description of the desired variable chunks

  • a description of the desired variable chunks applied to all members of the Dataset

where a description of the desired variable chunks can take one of the following forms:

  • a DiskArrays.GridChunks object

  • a tuple specifying the chunk size along each dimension

  • an AbstractDict or NamedTuple mapping one or more axis names to chunk sizes

source

YAXArrays.Datasets.collectfromhandle Method

Extracts a YAXArray from a dataset handle that was just created from a arrayinfo

source

YAXArrays.Datasets.createdataset Method

function createdataset(DS::Type,axlist; kwargs...)

Creates a new dataset with axes specified in axlist. Each axis must be a subtype of CubeAxis. A new empty Zarr array will be created and can serve as a sink for mapCube operations.

Keyword arguments

  • path="" location where the new cube is stored

  • T=Union{Float32,Missing} data type of the target cube

  • chunksize = ntuple(i->length(axlist[i]),length(axlist)) chunk sizes of the array

  • chunkoffset = ntuple(i->0,length(axlist)) offsets of the chunks

  • persist::Bool=true shall the disk data be garbage-collected when the cube goes out of scope?

  • overwrite::Bool=false overwrite cube if it already exists

  • properties=Dict{String,Any}() additional cube properties

  • globalproperties=Dict{String,Any} global attributes to be added to the dataset

  • fillvalue= T>:Missing ? defaultfillval(Base.nonmissingtype(T)) : nothing fill value

  • datasetaxis="Variable" special treatment of a categorical axis that gets written into separate zarr arrays

  • layername="layer" Fallback name of the variable stored in the dataset if no datasetaxis is found

source

YAXArrays.Datasets.getarrayinfo Method

Extract necessary information to create a YAXArrayBase dataset from a name and YAXArray pair

source

YAXArrays.Datasets.testrange Method

Test if data in x can be approximated by a step range

source

- +For example to disregard differences of captialisation.

source

YAXArrays.Cubes.CleanMe Type
julia
mutable struct CleanMe

Struct which describes data paths and their persistency. Non-persistend paths/files are removed at finalize step

source

YAXArrays.Cubes.clean Method
julia
clean(c::CleanMe)

finalizer function for CleanMe struct. The main process removes all directories/files which are not persistent.

source

YAXArrays.Cubes.copydata Method
julia
copydata(outar, inar, copybuf)

Internal function which copies the data from the input inar into the output outar at the copybuf positions.

source

YAXArrays.Cubes.optifunc Method
julia
optifunc(s, maxbuf, incs, outcs, insize, outsize, writefac)

Internal

This function is going to be minimized to detect the best possible chunk setting for the rechunking of the data.

source

YAXArrays.DAT.DATConfig Type

Configuration object of a DAT process. This holds all necessary information to perform the calculations. It contains the following fields:

  • incubes::NTuple{NIN, YAXArrays.DAT.InputCube} where NIN: The input data cubes

  • outcubes::NTuple{NOUT, YAXArrays.DAT.OutputCube} where NOUT: The output data cubes

  • allInAxes::Vector: List of all axes of the input cubes

  • LoopAxes::Vector: List of axes that are looped through

  • ispar::Bool: Flag whether the computation is parallelized

  • loopcachesize::Vector{Int64}:

  • allow_irregular_chunks::Bool:

  • max_cache::Any: Maximal size of the in memory cache

  • fu::Any: Inner function which is computed

  • inplace::Bool: Flag whether the computation happens in place

  • include_loopvars::Bool:

  • ntr::Any:

  • do_gc::Bool: Flag if GC should be called explicitly. Probably necessary for many runs in Julia 1.9

  • addargs::Any: Additional arguments for the inner function

  • kwargs::Any: Additional keyword arguments for the inner function

source

YAXArrays.DAT.InputCube Type

Internal representation of an input cube for DAT operations

  • cube: The input data

  • desc: The input description given by the user/registration

  • axesSmall: List of axes that were actually selected through the description

  • icolon

  • colonperm

  • loopinds: Indices of loop axes that this cube does not contain, i.e. broadcasts

  • cachesize: Number of elements to keep in cache along each axis

  • window

  • iwindow

  • windowloopinds

  • iall

source

YAXArrays.DAT.OutputCube Type

Internal representation of an output cube for DAT operations

Fields

  • cube: The actual outcube cube, once it is generated

  • cube_unpermuted: The unpermuted output cube

  • desc: The description of the output axes as given by users or registration

  • axesSmall: The list of output axes determined through the description

  • allAxes: List of all the axes of the cube

  • loopinds: Index of the loop axes that are broadcasted for this output cube

  • innerchunks

  • outtype: Elementtype of the outputcube

source

YAXArrays.DAT.YAXColumn Type
julia
YAXColumn

A struct representing a single column of a YAXArray partitioned Table # Fields

  • inarBC

  • inds

source

YAXArrays.DAT.cmpcachmisses Method

Function that compares two cache miss specifiers by their importance

source

YAXArrays.DAT.getFrontPerm Method

Calculate an axis permutation that brings the wanted dimensions to the front

source

YAXArrays.DAT.getLoopCacheSize Method

Calculate optimal Cache size to DAT operation

source

YAXArrays.DAT.getOuttype Method
julia
getOuttype(outtype, cdata)

Internal function

Get the element type for the output cube

source

YAXArrays.DAT.getloopchunks Method
julia
getloopchunks(dc::DATConfig)

Internal function

Returns the chunks that can be looped over toghether for all dimensions.
+This computation of the size of the chunks is handled by [`DiskArrays.approx_chunksize`](@ref)

source

YAXArrays.DAT.permuteloopaxes Method
julia
permuteloopaxes(dc)

Internal function

Permute the dimensions of the cube, so that the axes that are looped through are in the first positions. This is necessary for a faster looping through the data.

source

YAXArrays.Cubes.setchunks Method
julia
setchunks(c::Dataset,chunks)

Resets the chunks of all or a subset YAXArrays in the dataset and returns a new Dataset. Note that this will not change the chunking of the underlying data itself, it will just make the data "look" like it had a different chunking. If you need a persistent on-disk representation of this chunking, use savedataset on the resulting array. The chunks argument can take one of the following forms:

  • a NamedTuple or AbstractDict mapping from variable name to a description of the desired variable chunks

  • a NamedTuple or AbstractDict mapping from dimension name to a description of the desired variable chunks

  • a description of the desired variable chunks applied to all members of the Dataset

where a description of the desired variable chunks can take one of the following forms:

  • a DiskArrays.GridChunks object

  • a tuple specifying the chunk size along each dimension

  • an AbstractDict or NamedTuple mapping one or more axis names to chunk sizes

source

YAXArrays.Datasets.collectfromhandle Method

Extracts a YAXArray from a dataset handle that was just created from a arrayinfo

source

YAXArrays.Datasets.createdataset Method

function createdataset(DS::Type,axlist; kwargs...)

Creates a new dataset with axes specified in axlist. Each axis must be a subtype of CubeAxis. A new empty Zarr array will be created and can serve as a sink for mapCube operations.

Keyword arguments

  • path="" location where the new cube is stored

  • T=Union{Float32,Missing} data type of the target cube

  • chunksize = ntuple(i->length(axlist[i]),length(axlist)) chunk sizes of the array

  • chunkoffset = ntuple(i->0,length(axlist)) offsets of the chunks

  • persist::Bool=true shall the disk data be garbage-collected when the cube goes out of scope?

  • overwrite::Bool=false overwrite cube if it already exists

  • properties=Dict{String,Any}() additional cube properties

  • globalproperties=Dict{String,Any} global attributes to be added to the dataset

  • fillvalue= T>:Missing ? defaultfillval(Base.nonmissingtype(T)) : nothing fill value

  • datasetaxis="Variable" special treatment of a categorical axis that gets written into separate zarr arrays

  • layername="layer" Fallback name of the variable stored in the dataset if no datasetaxis is found

source

YAXArrays.Datasets.getarrayinfo Method

Extract necessary information to create a YAXArrayBase dataset from a name and YAXArray pair

source

YAXArrays.Datasets.testrange Method

Test if data in x can be approximated by a step range

source

+ \ No newline at end of file diff --git a/dev/assets/UserGuide_chunk.md.BUA8jTbX.js b/dev/assets/UserGuide_chunk.md.DheM5GwS.js similarity index 99% rename from dev/assets/UserGuide_chunk.md.BUA8jTbX.js rename to dev/assets/UserGuide_chunk.md.DheM5GwS.js index af8516b9..3a5d6bc6 100644 --- a/dev/assets/UserGuide_chunk.md.BUA8jTbX.js +++ b/dev/assets/UserGuide_chunk.md.DheM5GwS.js @@ -34,15 +34,15 @@ import{_ as a,c as i,a2 as n,o as p}from"./chunks/framework.swGcc4Ky.js";const g Variables with additional axes: Additional Axes: - (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points) + (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points, + → Dim_3 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points) Variables: - x + z Additional Axes: - (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points, - → Dim_3 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points) + (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points) Variables: - z

Set chunking by Variable

The following will set the chunk size for each Variable separately and results in exactly the same chunking as the example above

julia
using YAXArrays, Zarr
+  x

Set chunking by Variable

The following will set the chunk size for each Variable separately and results in exactly the same chunking as the example above

julia
using YAXArrays, Zarr
 ds = Dataset(x = YAXArray(rand(10,20)), y = YAXArray(rand(10)), z = YAXArray(rand(10,20,5)))
 dschunked = setchunks(ds,(x = (5,10), y = Dict("Dim_1"=>5), z = (Dim_1 = 5, Dim_2 = 10, Dim_3 = 2)))
 Cube(dschunked).chunks
2×2×3 DiskArrays.GridChunks{3, Tuple{DiskArrays.RegularChunks, DiskArrays.RegularChunks, DiskArrays.RegularChunks}}:
@@ -66,15 +66,15 @@ import{_ as a,c as i,a2 as n,o as p}from"./chunks/framework.swGcc4Ky.js";const g
 
 Variables with additional axes:
   Additional Axes: 
-  (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points)
+  (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points,
+  → Dim_3 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points)
   Variables: 
-  x
+  z
 
   Additional Axes: 
-  (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points,
-  → Dim_3 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points)
+  (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points)
   Variables: 
-  z

Set chunking for all variables

The following code snippet only works when all member variables of the dataset have the same shape and sets the output chunks for all arrays.

julia
using YAXArrays, Zarr
+  x

Set chunking for all variables

The following code snippet only works when all member variables of the dataset have the same shape and sets the output chunks for all arrays.

julia
using YAXArrays, Zarr
 ds = Dataset(x = YAXArray(rand(10,20)), y = YAXArray(rand(10,20)), z = YAXArray(rand(10,20)))
 dschunked = setchunks(ds,(5,10))
 Cube(dschunked).chunks
2×2×3 DiskArrays.GridChunks{3, Tuple{DiskArrays.RegularChunks, DiskArrays.RegularChunks, DiskArrays.RegularChunks}}:
diff --git a/dev/assets/UserGuide_chunk.md.BUA8jTbX.lean.js b/dev/assets/UserGuide_chunk.md.DheM5GwS.lean.js
similarity index 99%
rename from dev/assets/UserGuide_chunk.md.BUA8jTbX.lean.js
rename to dev/assets/UserGuide_chunk.md.DheM5GwS.lean.js
index af8516b9..3a5d6bc6 100644
--- a/dev/assets/UserGuide_chunk.md.BUA8jTbX.lean.js
+++ b/dev/assets/UserGuide_chunk.md.DheM5GwS.lean.js
@@ -34,15 +34,15 @@ import{_ as a,c as i,a2 as n,o as p}from"./chunks/framework.swGcc4Ky.js";const g
 
 Variables with additional axes:
   Additional Axes: 
-  (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points)
+  (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points,
+  → Dim_3 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points)
   Variables: 
-  x
+  z
 
   Additional Axes: 
-  (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points,
-  → Dim_3 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points)
+  (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points)
   Variables: 
-  z

Set chunking by Variable

The following will set the chunk size for each Variable separately and results in exactly the same chunking as the example above

julia
using YAXArrays, Zarr
+  x

Set chunking by Variable

The following will set the chunk size for each Variable separately and results in exactly the same chunking as the example above

julia
using YAXArrays, Zarr
 ds = Dataset(x = YAXArray(rand(10,20)), y = YAXArray(rand(10)), z = YAXArray(rand(10,20,5)))
 dschunked = setchunks(ds,(x = (5,10), y = Dict("Dim_1"=>5), z = (Dim_1 = 5, Dim_2 = 10, Dim_3 = 2)))
 Cube(dschunked).chunks
2×2×3 DiskArrays.GridChunks{3, Tuple{DiskArrays.RegularChunks, DiskArrays.RegularChunks, DiskArrays.RegularChunks}}:
@@ -66,15 +66,15 @@ import{_ as a,c as i,a2 as n,o as p}from"./chunks/framework.swGcc4Ky.js";const g
 
 Variables with additional axes:
   Additional Axes: 
-  (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points)
+  (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points,
+  → Dim_3 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points)
   Variables: 
-  x
+  z
 
   Additional Axes: 
-  (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points,
-  → Dim_3 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points)
+  (↓ Dim_2 Sampled{Int64} Base.OneTo(20) ForwardOrdered Regular Points)
   Variables: 
-  z

Set chunking for all variables

The following code snippet only works when all member variables of the dataset have the same shape and sets the output chunks for all arrays.

julia
using YAXArrays, Zarr
+  x

Set chunking for all variables

The following code snippet only works when all member variables of the dataset have the same shape and sets the output chunks for all arrays.

julia
using YAXArrays, Zarr
 ds = Dataset(x = YAXArray(rand(10,20)), y = YAXArray(rand(10,20)), z = YAXArray(rand(10,20)))
 dschunked = setchunks(ds,(5,10))
 Cube(dschunked).chunks
2×2×3 DiskArrays.GridChunks{3, Tuple{DiskArrays.RegularChunks, DiskArrays.RegularChunks, DiskArrays.RegularChunks}}:
diff --git a/dev/assets/UserGuide_compute.md.-KH1LiWq.js b/dev/assets/UserGuide_compute.md.BnROvPGu.js
similarity index 99%
rename from dev/assets/UserGuide_compute.md.-KH1LiWq.js
rename to dev/assets/UserGuide_compute.md.BnROvPGu.js
index 7adb5fe5..a3f60935 100644
--- a/dev/assets/UserGuide_compute.md.-KH1LiWq.js
+++ b/dev/assets/UserGuide_compute.md.BnROvPGu.js
@@ -19,7 +19,7 @@ import{_ as i,c as a,a2 as n,o as t}from"./chunks/framework.swGcc4Ky.js";const g
   :origin => "user guide"
 ├──────────────────────────────────────────────────────────── loaded in memory ┤
   data size: 35.16 KB
-└──────────────────────────────────────────────────────────────────────────────┘

Modify elements of a YAXArray

julia
a[1,2,3]
0.6720458572735374
julia
a[1,2,3] = 42
42
julia
a[1,2,3]
42.0

WARNING

Some arrays, e.g. those saved in a cloud object storage are immutable making any modification of the data impossible.

Arithmetics

Add a value to all elements of an array and save it as a new array:

julia
a2 = a .+ 5
╭──────────────────────────────╮
+└──────────────────────────────────────────────────────────────────────────────┘

Modify elements of a YAXArray

julia
a[1,2,3]
0.5837743112480992
julia
a[1,2,3] = 42
42
julia
a[1,2,3]
42.0

WARNING

Some arrays, e.g. those saved in a cloud object storage are immutable making any modification of the data impossible.

Arithmetics

Add a value to all elements of an array and save it as a new array:

julia
a2 = a .+ 5
╭──────────────────────────────╮
 │ 30×10×15 YAXArray{Float64,3} │
 ├──────────────────────────────┴───────────────────────────────────────── dims ┐
   ↓ time Sampled{Date} Date("2022-01-01"):Dates.Day(1):Date("2022-01-30") ForwardOrdered Regular Points,
diff --git a/dev/assets/UserGuide_compute.md.-KH1LiWq.lean.js b/dev/assets/UserGuide_compute.md.BnROvPGu.lean.js
similarity index 99%
rename from dev/assets/UserGuide_compute.md.-KH1LiWq.lean.js
rename to dev/assets/UserGuide_compute.md.BnROvPGu.lean.js
index 7adb5fe5..a3f60935 100644
--- a/dev/assets/UserGuide_compute.md.-KH1LiWq.lean.js
+++ b/dev/assets/UserGuide_compute.md.BnROvPGu.lean.js
@@ -19,7 +19,7 @@ import{_ as i,c as a,a2 as n,o as t}from"./chunks/framework.swGcc4Ky.js";const g
   :origin => "user guide"
 ├──────────────────────────────────────────────────────────── loaded in memory ┤
   data size: 35.16 KB
-└──────────────────────────────────────────────────────────────────────────────┘

Modify elements of a YAXArray

julia
a[1,2,3]
0.6720458572735374
julia
a[1,2,3] = 42
42
julia
a[1,2,3]
42.0

WARNING

Some arrays, e.g. those saved in a cloud object storage are immutable making any modification of the data impossible.

Arithmetics

Add a value to all elements of an array and save it as a new array:

julia
a2 = a .+ 5
╭──────────────────────────────╮
+└──────────────────────────────────────────────────────────────────────────────┘

Modify elements of a YAXArray

julia
a[1,2,3]
0.5837743112480992
julia
a[1,2,3] = 42
42
julia
a[1,2,3]
42.0

WARNING

Some arrays, e.g. those saved in a cloud object storage are immutable making any modification of the data impossible.

Arithmetics

Add a value to all elements of an array and save it as a new array:

julia
a2 = a .+ 5
╭──────────────────────────────╮
 │ 30×10×15 YAXArray{Float64,3} │
 ├──────────────────────────────┴───────────────────────────────────────── dims ┐
   ↓ time Sampled{Date} Date("2022-01-01"):Dates.Day(1):Date("2022-01-30") ForwardOrdered Regular Points,
diff --git a/dev/assets/UserGuide_faq.md.b4CvsWvH.js b/dev/assets/UserGuide_faq.md.DujPZLJ-.js
similarity index 98%
rename from dev/assets/UserGuide_faq.md.b4CvsWvH.js
rename to dev/assets/UserGuide_faq.md.DujPZLJ-.js
index 1685885e..d0da2e3a 100644
--- a/dev/assets/UserGuide_faq.md.b4CvsWvH.js
+++ b/dev/assets/UserGuide_faq.md.DujPZLJ-.js
@@ -194,20 +194,20 @@ import{_ as i,c as a,a2 as n,o as e}from"./chunks/framework.swGcc4Ky.js";const t
 None
 Variables with additional axes:
   Additional Axes: 
-  (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points)
+  (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points,
+  → Time   Sampled{Date} Date("2020-01-01"):Dates.Month(1):Date("2022-12-01") ForwardOrdered Regular Points)
   Variables: 
-  longitudes
+  temperature
 
   Additional Axes: 
   (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points)
   Variables: 
-  latitudes
+  longitudes
 
   Additional Axes: 
-  (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points,
-  → Time   Sampled{Date} Date("2020-01-01"):Dates.Month(1):Date("2022-12-01") ForwardOrdered Regular Points)
+  (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points)
   Variables: 
-  temperature

If your dataset has been read from a file with Cube it is not loaded into memory, and you have to load the latitudes and longitudes YAXArrays into memory:

julia
latitudes_yasxa  = readcubedata(ds["latitudes"])
+  latitudes

If your dataset has been read from a file with Cube it is not loaded into memory, and you have to load the latitudes and longitudes YAXArrays into memory:

julia
latitudes_yasxa  = readcubedata(ds["latitudes"])
 longitudes_yasxa = readcubedata(ds["longitudes"])
 ds_subset = ds[points = Where(p-> latitudes_yasxa[p]  >= 20 && latitudes_yasxa[p]  <= 80 &&
                              longitudes_yasxa[p] >= 0  && longitudes_yasxa[p] <= 180
@@ -219,18 +219,18 @@ import{_ as i,c as a,a2 as n,o as e}from"./chunks/framework.swGcc4Ky.js";const t
   Additional Axes: 
   (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points)
   Variables: 
-  latitudes
+  longitudes
 
   Additional Axes: 
-  (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points,
-  → Time   Sampled{Date} Date("2020-01-01"):Dates.Month(1):Date("2022-12-01") ForwardOrdered Regular Points)
+  (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points)
   Variables: 
-  temperature
+  latitudes
 
   Additional Axes: 
-  (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points)
+  (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points,
+  → Time   Sampled{Date} Date("2020-01-01"):Dates.Month(1):Date("2022-12-01") ForwardOrdered Regular Points)
   Variables: 
-  longitudes

How do I apply map algebra?

Our next step is map algebra computations. This can be done effectively using the 'map' function. For example:

Multiplying cubes with only spatio-temporal dimensions

julia
julia> map((x, y) -> x * y, ds1, ds2)
╭──────────────────────────────╮
+  temperature

How do I apply map algebra?

Our next step is map algebra computations. This can be done effectively using the 'map' function. For example:

Multiplying cubes with only spatio-temporal dimensions

julia
julia> map((x, y) -> x * y, ds1, ds2)
╭──────────────────────────────╮
 20×10×15 YAXArray{Float64,3}
 ├──────────────────────────────┴───────────────────────────────────────── dims ┐
 time Sampled{Float64} 1.0:1.0:20.0 ForwardOrdered Regular Points,
@@ -309,12 +309,6 @@ import{_ as i,c as a,a2 as n,o as e}from"./chunks/framework.swGcc4Ky.js";const t
 None
 Variables with additional axes:
   Additional Axes: 
-  (Dim_1 Sampled{Int64} Base.OneTo(2) ForwardOrdered Regular Points,
-Dim_2 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points)
-  Variables: 
-  c
-
-  Additional Axes: 
   (Dim_1 Sampled{Int64} Base.OneTo(10) ForwardOrdered Regular Points,
 Dim_2 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points)
   Variables: 
@@ -323,7 +317,13 @@ import{_ as i,c as a,a2 as n,o as e}from"./chunks/framework.swGcc4Ky.js";const t
   Additional Axes: 
   (Dim_1 Sampled{Int64} Base.OneTo(10) ForwardOrdered Regular Points)
   Variables: 
-  a

WARNING

You will not be able to save this dataset, first you will need to rename those dimensions with the same name but different values.

Ho do I construct a Dataset from a TimeArray

In this section we will use MarketData.jl and TimeSeries.jl to simulate some stocks.

julia
using YAXArrays, DimensionalData
+  a
+
+  Additional Axes: 
+  (Dim_1 Sampled{Int64} Base.OneTo(2) ForwardOrdered Regular Points,
+Dim_2 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points)
+  Variables: 
+  c

WARNING

You will not be able to save this dataset, first you will need to rename those dimensions with the same name but different values.

Ho do I construct a Dataset from a TimeArray

In this section we will use MarketData.jl and TimeSeries.jl to simulate some stocks.

julia
using YAXArrays, DimensionalData
 using MarketData, TimeSeries
 
 stocks = Dict(:Stock1 => random_ohlcv(), :Stock2 => random_ohlcv(), :Stock3 => random_ohlcv())
@@ -344,13 +344,13 @@ import{_ as i,c as a,a2 as n,o as e}from"./chunks/framework.swGcc4Ky.js";const t
   (time     Sampled{DateTime} [2020-01-01T00:00:00, …, 2020-01-21T19:00:00] ForwardOrdered Irregular Points,
 variable Categorical{Symbol} [:Open, :High, :Low, :Close, :Volume] Unordered)
   Variables: 
-  Stock1
+  Stock3
 
   Additional Axes: 
   (time     Sampled{DateTime} [2020-01-01T00:00:00, …, 2020-01-21T19:00:00] ForwardOrdered Irregular Points,
 variable Categorical{Symbol} [:Open, :High, :Low, :Close, :Volume] Unordered)
   Variables: 
-  Stock3

and, it looks like there some small differences in the axes, they are being printed independently although they should be the same. Well, they are at least at the == level but not at ===. We could use the axes from one YAXArray as reference and rebuild all the others

julia
yax_list = [rebuild(yax_list[1], values(stocks[k])) for k in d_keys];

and voilà

julia
julia> ds = Dataset(; (d_keys .=> yax_list)...)
YAXArray Dataset
+  Stock1

and, it looks like there some small differences in the axes, they are being printed independently although they should be the same. Well, they are at least at the == level but not at ===. We could use the axes from one YAXArray as reference and rebuild all the others

julia
yax_list = [rebuild(yax_list[1], values(stocks[k])) for k in d_keys];

and voilà

julia
julia> ds = Dataset(; (d_keys .=> yax_list)...)
YAXArray Dataset
 Shared Axes:
   (time     Sampled{DateTime} [2020-01-01T00:00:00, …, 2020-01-21T19:00:00] ForwardOrdered Irregular Points,
 variable Categorical{Symbol} [:Open, :High, :Low, :Close, :Volume] Unordered)
diff --git a/dev/assets/UserGuide_faq.md.b4CvsWvH.lean.js b/dev/assets/UserGuide_faq.md.DujPZLJ-.lean.js
similarity index 98%
rename from dev/assets/UserGuide_faq.md.b4CvsWvH.lean.js
rename to dev/assets/UserGuide_faq.md.DujPZLJ-.lean.js
index 1685885e..d0da2e3a 100644
--- a/dev/assets/UserGuide_faq.md.b4CvsWvH.lean.js
+++ b/dev/assets/UserGuide_faq.md.DujPZLJ-.lean.js
@@ -194,20 +194,20 @@ import{_ as i,c as a,a2 as n,o as e}from"./chunks/framework.swGcc4Ky.js";const t
 None
 Variables with additional axes:
   Additional Axes: 
-  (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points)
+  (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points,
+  → Time   Sampled{Date} Date("2020-01-01"):Dates.Month(1):Date("2022-12-01") ForwardOrdered Regular Points)
   Variables: 
-  longitudes
+  temperature
 
   Additional Axes: 
   (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points)
   Variables: 
-  latitudes
+  longitudes
 
   Additional Axes: 
-  (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points,
-  → Time   Sampled{Date} Date("2020-01-01"):Dates.Month(1):Date("2022-12-01") ForwardOrdered Regular Points)
+  (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points)
   Variables: 
-  temperature

If your dataset has been read from a file with Cube it is not loaded into memory, and you have to load the latitudes and longitudes YAXArrays into memory:

julia
latitudes_yasxa  = readcubedata(ds["latitudes"])
+  latitudes

If your dataset has been read from a file with Cube it is not loaded into memory, and you have to load the latitudes and longitudes YAXArrays into memory:

julia
latitudes_yasxa  = readcubedata(ds["latitudes"])
 longitudes_yasxa = readcubedata(ds["longitudes"])
 ds_subset = ds[points = Where(p-> latitudes_yasxa[p]  >= 20 && latitudes_yasxa[p]  <= 80 &&
                              longitudes_yasxa[p] >= 0  && longitudes_yasxa[p] <= 180
@@ -219,18 +219,18 @@ import{_ as i,c as a,a2 as n,o as e}from"./chunks/framework.swGcc4Ky.js";const t
   Additional Axes: 
   (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points)
   Variables: 
-  latitudes
+  longitudes
 
   Additional Axes: 
-  (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points,
-  → Time   Sampled{Date} Date("2020-01-01"):Dates.Month(1):Date("2022-12-01") ForwardOrdered Regular Points)
+  (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points)
   Variables: 
-  temperature
+  latitudes
 
   Additional Axes: 
-  (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points)
+  (↓ points Sampled{Int64} [9, 13, …, 95, 100] ForwardOrdered Irregular Points,
+  → Time   Sampled{Date} Date("2020-01-01"):Dates.Month(1):Date("2022-12-01") ForwardOrdered Regular Points)
   Variables: 
-  longitudes

How do I apply map algebra?

Our next step is map algebra computations. This can be done effectively using the 'map' function. For example:

Multiplying cubes with only spatio-temporal dimensions

julia
julia> map((x, y) -> x * y, ds1, ds2)
╭──────────────────────────────╮
+  temperature

How do I apply map algebra?

Our next step is map algebra computations. This can be done effectively using the 'map' function. For example:

Multiplying cubes with only spatio-temporal dimensions

julia
julia> map((x, y) -> x * y, ds1, ds2)
╭──────────────────────────────╮
 20×10×15 YAXArray{Float64,3}
 ├──────────────────────────────┴───────────────────────────────────────── dims ┐
 time Sampled{Float64} 1.0:1.0:20.0 ForwardOrdered Regular Points,
@@ -309,12 +309,6 @@ import{_ as i,c as a,a2 as n,o as e}from"./chunks/framework.swGcc4Ky.js";const t
 None
 Variables with additional axes:
   Additional Axes: 
-  (Dim_1 Sampled{Int64} Base.OneTo(2) ForwardOrdered Regular Points,
-Dim_2 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points)
-  Variables: 
-  c
-
-  Additional Axes: 
   (Dim_1 Sampled{Int64} Base.OneTo(10) ForwardOrdered Regular Points,
 Dim_2 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points)
   Variables: 
@@ -323,7 +317,13 @@ import{_ as i,c as a,a2 as n,o as e}from"./chunks/framework.swGcc4Ky.js";const t
   Additional Axes: 
   (Dim_1 Sampled{Int64} Base.OneTo(10) ForwardOrdered Regular Points)
   Variables: 
-  a

WARNING

You will not be able to save this dataset, first you will need to rename those dimensions with the same name but different values.

Ho do I construct a Dataset from a TimeArray

In this section we will use MarketData.jl and TimeSeries.jl to simulate some stocks.

julia
using YAXArrays, DimensionalData
+  a
+
+  Additional Axes: 
+  (Dim_1 Sampled{Int64} Base.OneTo(2) ForwardOrdered Regular Points,
+Dim_2 Sampled{Int64} Base.OneTo(5) ForwardOrdered Regular Points)
+  Variables: 
+  c

WARNING

You will not be able to save this dataset, first you will need to rename those dimensions with the same name but different values.

Ho do I construct a Dataset from a TimeArray

In this section we will use MarketData.jl and TimeSeries.jl to simulate some stocks.

julia
using YAXArrays, DimensionalData
 using MarketData, TimeSeries
 
 stocks = Dict(:Stock1 => random_ohlcv(), :Stock2 => random_ohlcv(), :Stock3 => random_ohlcv())
@@ -344,13 +344,13 @@ import{_ as i,c as a,a2 as n,o as e}from"./chunks/framework.swGcc4Ky.js";const t
   (time     Sampled{DateTime} [2020-01-01T00:00:00, …, 2020-01-21T19:00:00] ForwardOrdered Irregular Points,
 variable Categorical{Symbol} [:Open, :High, :Low, :Close, :Volume] Unordered)
   Variables: 
-  Stock1
+  Stock3
 
   Additional Axes: 
   (time     Sampled{DateTime} [2020-01-01T00:00:00, …, 2020-01-21T19:00:00] ForwardOrdered Irregular Points,
 variable Categorical{Symbol} [:Open, :High, :Low, :Close, :Volume] Unordered)
   Variables: 
-  Stock3

and, it looks like there some small differences in the axes, they are being printed independently although they should be the same. Well, they are at least at the == level but not at ===. We could use the axes from one YAXArray as reference and rebuild all the others

julia
yax_list = [rebuild(yax_list[1], values(stocks[k])) for k in d_keys];

and voilà

julia
julia> ds = Dataset(; (d_keys .=> yax_list)...)
YAXArray Dataset
+  Stock1

and, it looks like there some small differences in the axes, they are being printed independently although they should be the same. Well, they are at least at the == level but not at ===. We could use the axes from one YAXArray as reference and rebuild all the others

julia
yax_list = [rebuild(yax_list[1], values(stocks[k])) for k in d_keys];

and voilà

julia
julia> ds = Dataset(; (d_keys .=> yax_list)...)
YAXArray Dataset
 Shared Axes:
   (time     Sampled{DateTime} [2020-01-01T00:00:00, …, 2020-01-21T19:00:00] ForwardOrdered Irregular Points,
 variable Categorical{Symbol} [:Open, :High, :Low, :Close, :Volume] Unordered)
diff --git a/dev/assets/UserGuide_group.md.C2QOkSMy.js b/dev/assets/UserGuide_group.md.D803I59b.js
similarity index 99%
rename from dev/assets/UserGuide_group.md.C2QOkSMy.js
rename to dev/assets/UserGuide_group.md.D803I59b.js
index bbd6e01d..35ecd19a 100644
--- a/dev/assets/UserGuide_group.md.C2QOkSMy.js
+++ b/dev/assets/UserGuide_group.md.D803I59b.js
@@ -1,4 +1,4 @@
-import{_ as i,c as a,a2 as n,o as e}from"./chunks/framework.swGcc4Ky.js";const h="/YAXArrays.jl/dev/assets/dadyujg.CBBZcGwj.png",y=JSON.parse('{"title":"Group YAXArrays and Datasets","description":"","frontmatter":{},"headers":[],"relativePath":"UserGuide/group.md","filePath":"UserGuide/group.md","lastUpdated":null}'),t={name:"UserGuide/group.md"};function l(p,s,k,d,r,g){return e(),a("div",null,s[0]||(s[0]=[n(`

Group YAXArrays and Datasets

The following examples will use the groupby function to calculate temporal and spatial averages.

julia
using YAXArrays, DimensionalData
+import{_ as i,c as a,a2 as n,o as e}from"./chunks/framework.swGcc4Ky.js";const h="/YAXArrays.jl/dev/assets/dadyujg.BJNzQY3Z.png",y=JSON.parse('{"title":"Group YAXArrays and Datasets","description":"","frontmatter":{},"headers":[],"relativePath":"UserGuide/group.md","filePath":"UserGuide/group.md","lastUpdated":null}'),t={name:"UserGuide/group.md"};function l(p,s,k,d,r,g){return e(),a("div",null,s[0]||(s[0]=[n(`

Group YAXArrays and Datasets

The following examples will use the groupby function to calculate temporal and spatial averages.

julia
using YAXArrays, DimensionalData
 using NetCDF
 using Downloads
 using Dates
diff --git a/dev/assets/UserGuide_group.md.C2QOkSMy.lean.js b/dev/assets/UserGuide_group.md.D803I59b.lean.js
similarity index 99%
rename from dev/assets/UserGuide_group.md.C2QOkSMy.lean.js
rename to dev/assets/UserGuide_group.md.D803I59b.lean.js
index bbd6e01d..35ecd19a 100644
--- a/dev/assets/UserGuide_group.md.C2QOkSMy.lean.js
+++ b/dev/assets/UserGuide_group.md.D803I59b.lean.js
@@ -1,4 +1,4 @@
-import{_ as i,c as a,a2 as n,o as e}from"./chunks/framework.swGcc4Ky.js";const h="/YAXArrays.jl/dev/assets/dadyujg.CBBZcGwj.png",y=JSON.parse('{"title":"Group YAXArrays and Datasets","description":"","frontmatter":{},"headers":[],"relativePath":"UserGuide/group.md","filePath":"UserGuide/group.md","lastUpdated":null}'),t={name:"UserGuide/group.md"};function l(p,s,k,d,r,g){return e(),a("div",null,s[0]||(s[0]=[n(`

Group YAXArrays and Datasets

The following examples will use the groupby function to calculate temporal and spatial averages.

julia
using YAXArrays, DimensionalData
+import{_ as i,c as a,a2 as n,o as e}from"./chunks/framework.swGcc4Ky.js";const h="/YAXArrays.jl/dev/assets/dadyujg.BJNzQY3Z.png",y=JSON.parse('{"title":"Group YAXArrays and Datasets","description":"","frontmatter":{},"headers":[],"relativePath":"UserGuide/group.md","filePath":"UserGuide/group.md","lastUpdated":null}'),t={name:"UserGuide/group.md"};function l(p,s,k,d,r,g){return e(),a("div",null,s[0]||(s[0]=[n(`

Group YAXArrays and Datasets

The following examples will use the groupby function to calculate temporal and spatial averages.

julia
using YAXArrays, DimensionalData
 using NetCDF
 using Downloads
 using Dates
diff --git a/dev/assets/UserGuide_write.md.CFbQ2Acr.js b/dev/assets/UserGuide_write.md.CZ3VTuto.js
similarity index 99%
rename from dev/assets/UserGuide_write.md.CFbQ2Acr.js
rename to dev/assets/UserGuide_write.md.CZ3VTuto.js
index d11d3f35..bb308fcd 100644
--- a/dev/assets/UserGuide_write.md.CFbQ2Acr.js
+++ b/dev/assets/UserGuide_write.md.CZ3VTuto.js
@@ -20,25 +20,25 @@ import{_ as n,c as l,a2 as t,j as i,a,G as p,B as h,o as k}from"./chunks/framewo
 savecube(ds.tos, "tos.nc", driver=:netcdf)

Save an entire Dataset to a directory:

julia
savedataset(ds, path="ds.nc", driver=:netcdf)

netcdf compression

Save a dataset to NetCDF format with compression:

julia
n = 7 # compression level, number between 0 (no compression) and 9 (max compression)
 savedataset(ds, path="ds_c.nc", driver=:netcdf, compress=n)

Comparing it to the default saved file

julia
ds_info = stat("ds.nc")
 ds_c_info = stat("ds_c.nc")
-println("File size: ", "default: ", ds_info.size, " bytes", ", compress: ", ds_c_info.size, " bytes")
File size: default: 2963858 bytes, compress: 1159914 bytes

Overwrite a Dataset

If a path already exists, an error will be thrown. Set overwrite=true to delete the existing dataset

julia
savedataset(ds, path="ds.zarr", driver=:zarr, overwrite=true)

DANGER

Again, setting overwrite will delete all your previous saved data.

Look at the doc string for more information

`,29)),i("details",r,[i("summary",null,[s[0]||(s[0]=i("a",{id:"YAXArrays.Datasets.savedataset",href:"#YAXArrays.Datasets.savedataset"},[i("span",{class:"jlbinding"},"YAXArrays.Datasets.savedataset")],-1)),s[1]||(s[1]=a()),p(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[2]||(s[2]=i("p",null,'savedataset(ds::Dataset; path = "", persist = nothing, overwrite = false, append = false, skeleton=false, backend = :all, driver = backend, max_cache = 5e8, writefac=4.0)',-1)),s[3]||(s[3]=i("p",null,[a("Saves a Dataset into a file at "),i("code",null,"path"),a(" with the format given by "),i("code",null,"driver"),a(", i.e., driver=:netcdf or driver=:zarr.")],-1)),s[4]||(s[4]=i("div",{class:"warning custom-block"},[i("p",{class:"custom-block-title"},"Warning"),i("p",null,"overwrite = true, deletes ALL your data and it will create a new file.")],-1)),s[5]||(s[5]=i("p",null,[i("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DatasetAPI/Datasets.jl#L627-L636",target:"_blank",rel:"noreferrer"},"source")],-1))]),s[7]||(s[7]=t(`

Append to a Dataset

New variables can be added to an existing dataset using the append=true keyword.

julia
ds2 = Dataset(z = YAXArray(rand(10,20,5)))
+println("File size: ", "default: ", ds_info.size, " bytes", ", compress: ", ds_c_info.size, " bytes")
File size: default: 2963858 bytes, compress: 1159914 bytes

Overwrite a Dataset

If a path already exists, an error will be thrown. Set overwrite=true to delete the existing dataset

julia
savedataset(ds, path="ds.zarr", driver=:zarr, overwrite=true)

DANGER

Again, setting overwrite will delete all your previous saved data.

Look at the doc string for more information

`,29)),i("details",r,[i("summary",null,[s[0]||(s[0]=i("a",{id:"YAXArrays.Datasets.savedataset",href:"#YAXArrays.Datasets.savedataset"},[i("span",{class:"jlbinding"},"YAXArrays.Datasets.savedataset")],-1)),s[1]||(s[1]=a()),p(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[2]||(s[2]=i("p",null,'savedataset(ds::Dataset; path = "", persist = nothing, overwrite = false, append = false, skeleton=false, backend = :all, driver = backend, max_cache = 5e8, writefac=4.0)',-1)),s[3]||(s[3]=i("p",null,[a("Saves a Dataset into a file at "),i("code",null,"path"),a(" with the format given by "),i("code",null,"driver"),a(", i.e., driver=:netcdf or driver=:zarr.")],-1)),s[4]||(s[4]=i("div",{class:"warning custom-block"},[i("p",{class:"custom-block-title"},"Warning"),i("p",null,"overwrite = true, deletes ALL your data and it will create a new file.")],-1)),s[5]||(s[5]=i("p",null,[i("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DatasetAPI/Datasets.jl#L637-L646",target:"_blank",rel:"noreferrer"},"source")],-1))]),s[7]||(s[7]=t(`

Append to a Dataset

New variables can be added to an existing dataset using the append=true keyword.

julia
ds2 = Dataset(z = YAXArray(rand(10,20,5)))
 savedataset(ds2, path="ds.zarr", backend=:zarr, append=true)
julia
julia> open_dataset("ds.zarr", driver=:zarr)
YAXArray Dataset
 Shared Axes:
 None
 Variables with additional axes:
   Additional Axes: 
-  (Dim_1 Sampled{Int64} 1:1:10 ForwardOrdered Regular Points,
-Dim_2 Sampled{Int64} 1:1:20 ForwardOrdered Regular Points,
-Dim_3 Sampled{Int64} 1:1:5 ForwardOrdered Regular Points)
-  Variables: 
-  z
-
-  Additional Axes: 
   (lon Sampled{Float64} 1.0:2.0:359.0 ForwardOrdered Regular Points,
 lat Sampled{Float64} -79.5:1.0:89.5 ForwardOrdered Regular Points,
 Ti  Sampled{CFTime.DateTime360Day} [CFTime.DateTime360Day(2001-01-16T00:00:00), …, CFTime.DateTime360Day(2002-12-16T00:00:00)] ForwardOrdered Irregular Points)
   Variables: 
   tos
 
+  Additional Axes: 
+  (Dim_1 Sampled{Int64} 1:1:10 ForwardOrdered Regular Points,
+Dim_2 Sampled{Int64} 1:1:20 ForwardOrdered Regular Points,
+Dim_3 Sampled{Int64} 1:1:5 ForwardOrdered Regular Points)
+  Variables: 
+  z
+
 Properties: Dict{String, Any}("cmor_version" => 0.96, "references" => "Dufresne et al, Journal of Climate, 2015, vol XX, p 136", "realization" => 1, "contact" => "Sebastien Denvil, sebastien.denvil@ipsl.jussieu.fr", "Conventions" => "CF-1.0", "history" => "YYYY/MM/JJ: data generated; YYYY/MM/JJ+1 data transformed  At 16:37:23 on 01/11/2005, CMOR rewrote data to comply with CF standards and IPCC Fourth Assessment requirements", "table_id" => "Table O1 (13 November 2004)", "source" => "IPSL-CM4_v1 (2003) : atmosphere : LMDZ (IPSL-CM4_IPCC, 96x71x19) ; ocean ORCA2 (ipsl_cm4_v1_8, 2x2L31); sea ice LIM (ipsl_cm4_v", "title" => "IPSL  model output prepared for IPCC Fourth Assessment SRES A2 experiment", "experiment_id" => "SRES A2 experiment"…)

Save Skeleton

Sometimes one merely wants to create a datacube "Skeleton" on disk and gradually fill it with data. Here we make use of FillArrays to create a YAXArray and write only the axis data and array metadata to disk, while no actual array data is copied:

julia
using YAXArrays, Zarr, FillArrays

create the Zeros array

julia
julia> a = YAXArray(Zeros(Union{Missing, Float32},  5, 4, 5))
╭───────────────────────────────────────────╮
 5×4×5 YAXArray{Union{Missing, Float32},3}
 ├───────────────────────────────────────────┴──────────────────────────── dims ┐
diff --git a/dev/assets/UserGuide_write.md.CFbQ2Acr.lean.js b/dev/assets/UserGuide_write.md.CZ3VTuto.lean.js
similarity index 99%
rename from dev/assets/UserGuide_write.md.CFbQ2Acr.lean.js
rename to dev/assets/UserGuide_write.md.CZ3VTuto.lean.js
index d11d3f35..bb308fcd 100644
--- a/dev/assets/UserGuide_write.md.CFbQ2Acr.lean.js
+++ b/dev/assets/UserGuide_write.md.CZ3VTuto.lean.js
@@ -20,25 +20,25 @@ import{_ as n,c as l,a2 as t,j as i,a,G as p,B as h,o as k}from"./chunks/framewo
 savecube(ds.tos, "tos.nc", driver=:netcdf)

Save an entire Dataset to a directory:

julia
savedataset(ds, path="ds.nc", driver=:netcdf)

netcdf compression

Save a dataset to NetCDF format with compression:

julia
n = 7 # compression level, number between 0 (no compression) and 9 (max compression)
 savedataset(ds, path="ds_c.nc", driver=:netcdf, compress=n)

Comparing it to the default saved file

julia
ds_info = stat("ds.nc")
 ds_c_info = stat("ds_c.nc")
-println("File size: ", "default: ", ds_info.size, " bytes", ", compress: ", ds_c_info.size, " bytes")
File size: default: 2963858 bytes, compress: 1159914 bytes

Overwrite a Dataset

If a path already exists, an error will be thrown. Set overwrite=true to delete the existing dataset

julia
savedataset(ds, path="ds.zarr", driver=:zarr, overwrite=true)

DANGER

Again, setting overwrite will delete all your previous saved data.

Look at the doc string for more information

`,29)),i("details",r,[i("summary",null,[s[0]||(s[0]=i("a",{id:"YAXArrays.Datasets.savedataset",href:"#YAXArrays.Datasets.savedataset"},[i("span",{class:"jlbinding"},"YAXArrays.Datasets.savedataset")],-1)),s[1]||(s[1]=a()),p(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[2]||(s[2]=i("p",null,'savedataset(ds::Dataset; path = "", persist = nothing, overwrite = false, append = false, skeleton=false, backend = :all, driver = backend, max_cache = 5e8, writefac=4.0)',-1)),s[3]||(s[3]=i("p",null,[a("Saves a Dataset into a file at "),i("code",null,"path"),a(" with the format given by "),i("code",null,"driver"),a(", i.e., driver=:netcdf or driver=:zarr.")],-1)),s[4]||(s[4]=i("div",{class:"warning custom-block"},[i("p",{class:"custom-block-title"},"Warning"),i("p",null,"overwrite = true, deletes ALL your data and it will create a new file.")],-1)),s[5]||(s[5]=i("p",null,[i("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DatasetAPI/Datasets.jl#L627-L636",target:"_blank",rel:"noreferrer"},"source")],-1))]),s[7]||(s[7]=t(`

Append to a Dataset

New variables can be added to an existing dataset using the append=true keyword.

julia
ds2 = Dataset(z = YAXArray(rand(10,20,5)))
+println("File size: ", "default: ", ds_info.size, " bytes", ", compress: ", ds_c_info.size, " bytes")
File size: default: 2963858 bytes, compress: 1159914 bytes

Overwrite a Dataset

If a path already exists, an error will be thrown. Set overwrite=true to delete the existing dataset

julia
savedataset(ds, path="ds.zarr", driver=:zarr, overwrite=true)

DANGER

Again, setting overwrite will delete all your previous saved data.

Look at the doc string for more information

`,29)),i("details",r,[i("summary",null,[s[0]||(s[0]=i("a",{id:"YAXArrays.Datasets.savedataset",href:"#YAXArrays.Datasets.savedataset"},[i("span",{class:"jlbinding"},"YAXArrays.Datasets.savedataset")],-1)),s[1]||(s[1]=a()),p(e,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[2]||(s[2]=i("p",null,'savedataset(ds::Dataset; path = "", persist = nothing, overwrite = false, append = false, skeleton=false, backend = :all, driver = backend, max_cache = 5e8, writefac=4.0)',-1)),s[3]||(s[3]=i("p",null,[a("Saves a Dataset into a file at "),i("code",null,"path"),a(" with the format given by "),i("code",null,"driver"),a(", i.e., driver=:netcdf or driver=:zarr.")],-1)),s[4]||(s[4]=i("div",{class:"warning custom-block"},[i("p",{class:"custom-block-title"},"Warning"),i("p",null,"overwrite = true, deletes ALL your data and it will create a new file.")],-1)),s[5]||(s[5]=i("p",null,[i("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DatasetAPI/Datasets.jl#L637-L646",target:"_blank",rel:"noreferrer"},"source")],-1))]),s[7]||(s[7]=t(`

Append to a Dataset

New variables can be added to an existing dataset using the append=true keyword.

julia
ds2 = Dataset(z = YAXArray(rand(10,20,5)))
 savedataset(ds2, path="ds.zarr", backend=:zarr, append=true)
julia
julia> open_dataset("ds.zarr", driver=:zarr)
YAXArray Dataset
 Shared Axes:
 None
 Variables with additional axes:
   Additional Axes: 
-  (Dim_1 Sampled{Int64} 1:1:10 ForwardOrdered Regular Points,
-Dim_2 Sampled{Int64} 1:1:20 ForwardOrdered Regular Points,
-Dim_3 Sampled{Int64} 1:1:5 ForwardOrdered Regular Points)
-  Variables: 
-  z
-
-  Additional Axes: 
   (lon Sampled{Float64} 1.0:2.0:359.0 ForwardOrdered Regular Points,
 lat Sampled{Float64} -79.5:1.0:89.5 ForwardOrdered Regular Points,
 Ti  Sampled{CFTime.DateTime360Day} [CFTime.DateTime360Day(2001-01-16T00:00:00), …, CFTime.DateTime360Day(2002-12-16T00:00:00)] ForwardOrdered Irregular Points)
   Variables: 
   tos
 
+  Additional Axes: 
+  (Dim_1 Sampled{Int64} 1:1:10 ForwardOrdered Regular Points,
+Dim_2 Sampled{Int64} 1:1:20 ForwardOrdered Regular Points,
+Dim_3 Sampled{Int64} 1:1:5 ForwardOrdered Regular Points)
+  Variables: 
+  z
+
 Properties: Dict{String, Any}("cmor_version" => 0.96, "references" => "Dufresne et al, Journal of Climate, 2015, vol XX, p 136", "realization" => 1, "contact" => "Sebastien Denvil, sebastien.denvil@ipsl.jussieu.fr", "Conventions" => "CF-1.0", "history" => "YYYY/MM/JJ: data generated; YYYY/MM/JJ+1 data transformed  At 16:37:23 on 01/11/2005, CMOR rewrote data to comply with CF standards and IPCC Fourth Assessment requirements", "table_id" => "Table O1 (13 November 2004)", "source" => "IPSL-CM4_v1 (2003) : atmosphere : LMDZ (IPSL-CM4_IPCC, 96x71x19) ; ocean ORCA2 (ipsl_cm4_v1_8, 2x2L31); sea ice LIM (ipsl_cm4_v", "title" => "IPSL  model output prepared for IPCC Fourth Assessment SRES A2 experiment", "experiment_id" => "SRES A2 experiment"…)

Save Skeleton

Sometimes one merely wants to create a datacube "Skeleton" on disk and gradually fill it with data. Here we make use of FillArrays to create a YAXArray and write only the axis data and array metadata to disk, while no actual array data is copied:

julia
using YAXArrays, Zarr, FillArrays

create the Zeros array

julia
julia> a = YAXArray(Zeros(Union{Missing, Float32},  5, 4, 5))
╭───────────────────────────────────────────╮
 5×4×5 YAXArray{Union{Missing, Float32},3}
 ├───────────────────────────────────────────┴──────────────────────────── dims ┐
diff --git a/dev/assets/api.md.wIEA4sqI.js b/dev/assets/api.md.C4RLD1GU.js
similarity index 92%
rename from dev/assets/api.md.wIEA4sqI.js
rename to dev/assets/api.md.C4RLD1GU.js
index e97c1307..38f9d389 100644
--- a/dev/assets/api.md.wIEA4sqI.js
+++ b/dev/assets/api.md.C4RLD1GU.js
@@ -1,12 +1,12 @@
-import{_ as n,c as o,j as e,a,G as i,a2 as l,B as r,o as p}from"./chunks/framework.swGcc4Ky.js";const hs=JSON.parse('{"title":"API Reference","description":"","frontmatter":{},"headers":[],"relativePath":"api.md","filePath":"api.md","lastUpdated":null}'),d={name:"api.md"},u={class:"jldocstring custom-block",open:""},c={class:"jldocstring custom-block",open:""},h={class:"jldocstring custom-block",open:""},b={class:"jldocstring custom-block",open:""},y={class:"jldocstring custom-block",open:""},k={class:"jldocstring custom-block",open:""},g={class:"jldocstring custom-block",open:""},A={class:"jldocstring custom-block",open:""},f={class:"jldocstring custom-block",open:""},m={class:"jldocstring custom-block",open:""},j={class:"jldocstring custom-block",open:""},E={class:"jldocstring custom-block",open:""},C={class:"jldocstring custom-block",open:""},D={class:"jldocstring custom-block",open:""},T={class:"jldocstring custom-block",open:""},v={class:"jldocstring custom-block",open:""},X={class:"jldocstring custom-block",open:""},Y={class:"jldocstring custom-block",open:""},x={class:"jldocstring custom-block",open:""},F={class:"jldocstring custom-block",open:""},w={class:"jldocstring custom-block",open:""},L={class:"jldocstring custom-block",open:""},M={class:"jldocstring custom-block",open:""},B={class:"jldocstring custom-block",open:""},O={class:"jldocstring custom-block",open:""},I={class:"jldocstring custom-block",open:""},J={class:"jldocstring custom-block",open:""},P={class:"jldocstring custom-block",open:""},q={class:"jldocstring custom-block",open:""},z={class:"jldocstring custom-block",open:""},N={class:"jldocstring custom-block",open:""},S={class:"jldocstring custom-block",open:""},V={class:"jldocstring custom-block",open:""},R={class:"jldocstring custom-block",open:""},G={class:"jldocstring custom-block",open:""},W={class:"jldocstring custom-block",open:""},U={class:"jldocstring custom-block",open:""},$={class:"jldocstring custom-block",open:""},H={class:"jldocstring custom-block",open:""},K={class:"jldocstring custom-block",open:""},Z={class:"jldocstring custom-block",open:""},Q={class:"jldocstring custom-block",open:""},_={class:"jldocstring custom-block",open:""},ss={class:"jldocstring custom-block",open:""},es={class:"jldocstring custom-block",open:""},as={class:"jldocstring custom-block",open:""},ts={class:"jldocstring custom-block",open:""},is={class:"jldocstring custom-block",open:""},ls={class:"jldocstring custom-block",open:""};function ns(os,s,rs,ps,ds,us){const t=r("Badge");return p(),o("div",null,[s[165]||(s[165]=e("h1",{id:"API-Reference",tabindex:"-1"},[a("API Reference "),e("a",{class:"header-anchor",href:"#API-Reference","aria-label":'Permalink to "API Reference {#API-Reference}"'},"​")],-1)),s[166]||(s[166]=e("p",null,"This section describes all available functions of this package.",-1)),s[167]||(s[167]=e("h2",{id:"Public-API",tabindex:"-1"},[a("Public API "),e("a",{class:"header-anchor",href:"#Public-API","aria-label":'Permalink to "Public API {#Public-API}"'},"​")],-1)),e("details",u,[e("summary",null,[s[0]||(s[0]=e("a",{id:"YAXArrays.getAxis-Tuple{Any, Any}",href:"#YAXArrays.getAxis-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.getAxis")],-1)),s[1]||(s[1]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[2]||(s[2]=l('
julia
getAxis(desc, c)

Given an Axis description and a cube, returns the corresponding axis of the cube. The Axis description can be:

  • the name as a string or symbol.

  • an Axis object

source

',4))]),e("details",c,[e("summary",null,[s[3]||(s[3]=e("a",{id:"YAXArrays.Cubes",href:"#YAXArrays.Cubes"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes")],-1)),s[4]||(s[4]=a()),i(t,{type:"info",class:"jlObjectType jlModule",text:"Module"})]),s[5]||(s[5]=e("p",null,"The functions provided by YAXArrays are supposed to work on different types of cubes. This module defines the interface for all Data types that",-1)),s[6]||(s[6]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/Cubes/Cubes.jl#L1-L4",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",h,[e("summary",null,[s[7]||(s[7]=e("a",{id:"YAXArrays.Cubes.YAXArray",href:"#YAXArrays.Cubes.YAXArray"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.YAXArray")],-1)),s[8]||(s[8]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[9]||(s[9]=l('
julia
YAXArray{T,N}

An array labelled with named axes that have values associated with them. It can wrap normal arrays or, more typically DiskArrays.

Fields

  • axes: Tuple of Dimensions containing the Axes of the Cube

  • data: length(axes)-dimensional array which holds the data, this can be a lazy DiskArray

  • properties: Metadata properties describing the content of the data

  • chunks: Representation of the chunking of the data

  • cleaner: Cleaner objects to track which objects to tidy up when the YAXArray goes out of scope

source

',5))]),e("details",b,[e("summary",null,[s[10]||(s[10]=e("a",{id:"YAXArrays.Cubes.caxes",href:"#YAXArrays.Cubes.caxes"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.caxes")],-1)),s[11]||(s[11]=a()),i(t,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[12]||(s[12]=e("p",null,"Returns the axes of a Cube",-1)),s[13]||(s[13]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/Cubes/Cubes.jl#L27",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",y,[e("summary",null,[s[14]||(s[14]=e("a",{id:"YAXArrays.Cubes.caxes-Tuple{DimensionalData.Dimensions.Dimension}",href:"#YAXArrays.Cubes.caxes-Tuple{DimensionalData.Dimensions.Dimension}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.caxes")],-1)),s[15]||(s[15]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[16]||(s[16]=l('
julia
caxes

Embeds Cube inside a new Cube

source

',3))]),e("details",k,[e("summary",null,[s[17]||(s[17]=e("a",{id:"YAXArrays.Cubes.concatenatecubes-Tuple{Any, DimensionalData.Dimensions.Dimension}",href:"#YAXArrays.Cubes.concatenatecubes-Tuple{Any, DimensionalData.Dimensions.Dimension}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.concatenatecubes")],-1)),s[18]||(s[18]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[19]||(s[19]=l('
julia
function concatenateCubes(cubelist, cataxis::CategoricalAxis)

Concatenates a vector of datacubes that have identical axes to a new single cube along the new axis cataxis

source

',3))]),e("details",g,[e("summary",null,[s[20]||(s[20]=e("a",{id:"YAXArrays.Cubes.readcubedata-Tuple{Any}",href:"#YAXArrays.Cubes.readcubedata-Tuple{Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.readcubedata")],-1)),s[21]||(s[21]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[22]||(s[22]=l('
julia
readcubedata(cube)

Given any array implementing the YAXArray interface it returns an in-memory YAXArray from it.

source

',3))]),e("details",A,[e("summary",null,[s[23]||(s[23]=e("a",{id:"YAXArrays.Cubes.setchunks-Tuple{YAXArray, Any}",href:"#YAXArrays.Cubes.setchunks-Tuple{YAXArray, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.setchunks")],-1)),s[24]||(s[24]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[25]||(s[25]=l('
julia
setchunks(c::YAXArray,chunks)

Resets the chunks of a YAXArray and returns a new YAXArray. Note that this will not change the chunking of the underlying data itself, it will just make the data "look" like it had a different chunking. If you need a persistent on-disk representation of this chunking, use savecube on the resulting array. The chunks argument can take one of the following forms:

  • a DiskArrays.GridChunks object

  • a tuple specifying the chunk size along each dimension

  • an AbstractDict or NamedTuple mapping one or more axis names to chunk sizes

source

',4))]),e("details",f,[e("summary",null,[s[26]||(s[26]=e("a",{id:"YAXArrays.Cubes.subsetcube",href:"#YAXArrays.Cubes.subsetcube"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.subsetcube")],-1)),s[27]||(s[27]=a()),i(t,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[28]||(s[28]=e("p",null,"This function calculates a subset of a cube's data",-1)),s[29]||(s[29]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/Cubes/Cubes.jl#L22-L24",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",m,[e("summary",null,[s[30]||(s[30]=e("a",{id:"YAXArrays.DAT.InDims",href:"#YAXArrays.DAT.InDims"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.InDims")],-1)),s[31]||(s[31]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[32]||(s[32]=l('
julia
InDims(axisdesc...;...)

Creates a description of an Input Data Cube for cube operations. Takes a single or multiple axis descriptions as first arguments. Alternatively a MovingWindow(@ref) struct can be passed to include neighbour slices of one or more axes in the computation. Axes can be specified by their name (String), through an Axis type, or by passing a concrete axis.

Keyword arguments

  • artype how shall the array be represented in the inner function. Defaults to Array, alternatives are DataFrame or AsAxisArray

  • filter define some filter to skip the computation, e.g. when all values are missing. Defaults to AllMissing(), possible values are AnyMissing(), AnyOcean(), StdZero(), NValid(n) (for at least n non-missing elements). It is also possible to provide a custom one-argument function that takes the array and returns true if the compuation shall be skipped and false otherwise.

  • window_oob_value if one of the input dimensions is a MowingWindow, this value will be used to fill out-of-bounds areas

source

',5))]),e("details",j,[e("summary",null,[s[33]||(s[33]=e("a",{id:"YAXArrays.DAT.MovingWindow",href:"#YAXArrays.DAT.MovingWindow"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.MovingWindow")],-1)),s[34]||(s[34]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[35]||(s[35]=l('
julia
MovingWindow(desc, pre, after)

Constructs a MovingWindow object to be passed to an InDims constructor to define that the axis in desc shall participate in the inner function (i.e. shall be looped over), but inside the inner function pre values before and after values after the center value will be passed as well.

For example passing MovingWindow("Time", 2, 0) will loop over the time axis and always pass the current time step plus the 2 previous steps. So in the inner function the array will have an additional dimension of size 3.

source

',4))]),e("details",E,[e("summary",null,[s[36]||(s[36]=e("a",{id:"YAXArrays.DAT.OutDims-Tuple",href:"#YAXArrays.DAT.OutDims-Tuple"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.OutDims")],-1)),s[37]||(s[37]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[38]||(s[38]=l('
julia
OutDims(axisdesc;...)

Creates a description of an Output Data Cube for cube operations. Takes a single or a Vector/Tuple of axes as first argument. Axes can be specified by their name (String), through an Axis type, or by passing a concrete axis.

  • axisdesc: List of input axis names

  • backend : specifies the dataset backend to write data to, must be either :auto or a key in YAXArrayBase.backendlist

  • update : specifies wether the function operates inplace or if an output is returned

  • artype : specifies the Array type inside the inner function that is mapped over

  • chunksize: A Dict specifying the chunksizes for the output dimensions of the cube, or :input to copy chunksizes from input cube axes or :max to not chunk the inner dimensions

  • outtype: force the output type to a specific type, defaults to Any which means that the element type of the first input cube is used

source

',4))]),e("details",C,[e("summary",null,[s[39]||(s[39]=e("a",{id:"YAXArrays.DAT.CubeTable-Tuple{}",href:"#YAXArrays.DAT.CubeTable-Tuple{}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.CubeTable")],-1)),s[40]||(s[40]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[41]||(s[41]=l('
julia
CubeTable()

Function to turn a DataCube object into an iterable table. Takes a list of as arguments, specified as a name=cube expression. For example CubeTable(data=cube1,country=cube2) would generate a Table with the entries data and country, where data contains the values of cube1 and country the values of cube2. The cubes are matched and broadcasted along their axes like in mapCube.

source

',3))]),e("details",D,[e("summary",null,[s[42]||(s[42]=e("a",{id:"YAXArrays.DAT.cubefittable-Tuple{Any, Any, Any}",href:"#YAXArrays.DAT.cubefittable-Tuple{Any, Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.cubefittable")],-1)),s[43]||(s[43]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[44]||(s[44]=l('
julia
cubefittable(tab,o,fitsym;post=getpostfunction(o),kwargs...)

Executes fittable on the CubeTable tab with the (Weighted-)OnlineStat o, looping through the values specified by fitsym. Finally, writes the results from the TableAggregator to an output data cube.

source

',3))]),e("details",T,[e("summary",null,[s[45]||(s[45]=e("a",{id:"YAXArrays.DAT.fittable-Tuple{YAXArrays.DAT.CubeIterator, Any, Any}",href:"#YAXArrays.DAT.fittable-Tuple{YAXArrays.DAT.CubeIterator, Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.fittable")],-1)),s[46]||(s[46]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[47]||(s[47]=l('
julia
fittable(tab,o,fitsym;by=(),weight=nothing)

Loops through an iterable table tab and thereby fitting an OnlineStat o with the values specified through fitsym. Optionally one can specify a field (or tuple) to group by. Any groupby specifier can either be a symbol denoting the entry to group by or an anynymous function calculating the group from a table row.

For example the following would caluclate a weighted mean over a cube weighted by grid cell area and grouped by country and month:

julia
fittable(iter,WeightedMean,:tair,weight=(i->abs(cosd(i.lat))),by=(i->month(i.time),:country))

source

',5))]),e("details",v,[e("summary",null,[s[48]||(s[48]=e("a",{id:"YAXArrays.DAT.mapCube-Tuple{Function, Dataset, Vararg{Any}}",href:"#YAXArrays.DAT.mapCube-Tuple{Function, Dataset, Vararg{Any}}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.mapCube")],-1)),s[49]||(s[49]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[50]||(s[50]=l(`
julia
mapCube(fun, cube, addargs...;kwargs...)
+import{_ as n,c as o,j as e,a,G as i,a2 as l,B as r,o as p}from"./chunks/framework.swGcc4Ky.js";const cs=JSON.parse('{"title":"API Reference","description":"","frontmatter":{},"headers":[],"relativePath":"api.md","filePath":"api.md","lastUpdated":null}'),d={name:"api.md"},u={class:"jldocstring custom-block",open:""},h={class:"jldocstring custom-block",open:""},c={class:"jldocstring custom-block",open:""},b={class:"jldocstring custom-block",open:""},y={class:"jldocstring custom-block",open:""},k={class:"jldocstring custom-block",open:""},g={class:"jldocstring custom-block",open:""},A={class:"jldocstring custom-block",open:""},f={class:"jldocstring custom-block",open:""},m={class:"jldocstring custom-block",open:""},j={class:"jldocstring custom-block",open:""},E={class:"jldocstring custom-block",open:""},C={class:"jldocstring custom-block",open:""},D={class:"jldocstring custom-block",open:""},T={class:"jldocstring custom-block",open:""},v={class:"jldocstring custom-block",open:""},X={class:"jldocstring custom-block",open:""},Y={class:"jldocstring custom-block",open:""},x={class:"jldocstring custom-block",open:""},F={class:"jldocstring custom-block",open:""},w={class:"jldocstring custom-block",open:""},L={class:"jldocstring custom-block",open:""},M={class:"jldocstring custom-block",open:""},B={class:"jldocstring custom-block",open:""},O={class:"jldocstring custom-block",open:""},I={class:"jldocstring custom-block",open:""},J={class:"jldocstring custom-block",open:""},P={class:"jldocstring custom-block",open:""},q={class:"jldocstring custom-block",open:""},z={class:"jldocstring custom-block",open:""},N={class:"jldocstring custom-block",open:""},S={class:"jldocstring custom-block",open:""},V={class:"jldocstring custom-block",open:""},R={class:"jldocstring custom-block",open:""},G={class:"jldocstring custom-block",open:""},W={class:"jldocstring custom-block",open:""},U={class:"jldocstring custom-block",open:""},$={class:"jldocstring custom-block",open:""},H={class:"jldocstring custom-block",open:""},K={class:"jldocstring custom-block",open:""},Z={class:"jldocstring custom-block",open:""},Q={class:"jldocstring custom-block",open:""},_={class:"jldocstring custom-block",open:""},ss={class:"jldocstring custom-block",open:""},es={class:"jldocstring custom-block",open:""},as={class:"jldocstring custom-block",open:""},ts={class:"jldocstring custom-block",open:""},is={class:"jldocstring custom-block",open:""},ls={class:"jldocstring custom-block",open:""};function ns(os,s,rs,ps,ds,us){const t=r("Badge");return p(),o("div",null,[s[165]||(s[165]=e("h1",{id:"API-Reference",tabindex:"-1"},[a("API Reference "),e("a",{class:"header-anchor",href:"#API-Reference","aria-label":'Permalink to "API Reference {#API-Reference}"'},"​")],-1)),s[166]||(s[166]=e("p",null,"This section describes all available functions of this package.",-1)),s[167]||(s[167]=e("h2",{id:"Public-API",tabindex:"-1"},[a("Public API "),e("a",{class:"header-anchor",href:"#Public-API","aria-label":'Permalink to "Public API {#Public-API}"'},"​")],-1)),e("details",u,[e("summary",null,[s[0]||(s[0]=e("a",{id:"YAXArrays.getAxis-Tuple{Any, Any}",href:"#YAXArrays.getAxis-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.getAxis")],-1)),s[1]||(s[1]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[2]||(s[2]=l('
julia
getAxis(desc, c)

Given an Axis description and a cube, returns the corresponding axis of the cube. The Axis description can be:

  • the name as a string or symbol.

  • an Axis object

source

',4))]),e("details",h,[e("summary",null,[s[3]||(s[3]=e("a",{id:"YAXArrays.Cubes",href:"#YAXArrays.Cubes"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes")],-1)),s[4]||(s[4]=a()),i(t,{type:"info",class:"jlObjectType jlModule",text:"Module"})]),s[5]||(s[5]=e("p",null,"The functions provided by YAXArrays are supposed to work on different types of cubes. This module defines the interface for all Data types that",-1)),s[6]||(s[6]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/Cubes/Cubes.jl#L1-L4",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",c,[e("summary",null,[s[7]||(s[7]=e("a",{id:"YAXArrays.Cubes.YAXArray",href:"#YAXArrays.Cubes.YAXArray"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.YAXArray")],-1)),s[8]||(s[8]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[9]||(s[9]=l('
julia
YAXArray{T,N}

An array labelled with named axes that have values associated with them. It can wrap normal arrays or, more typically DiskArrays.

Fields

  • axes: Tuple of Dimensions containing the Axes of the Cube

  • data: length(axes)-dimensional array which holds the data, this can be a lazy DiskArray

  • properties: Metadata properties describing the content of the data

  • chunks: Representation of the chunking of the data

  • cleaner: Cleaner objects to track which objects to tidy up when the YAXArray goes out of scope

source

',5))]),e("details",b,[e("summary",null,[s[10]||(s[10]=e("a",{id:"YAXArrays.Cubes.caxes",href:"#YAXArrays.Cubes.caxes"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.caxes")],-1)),s[11]||(s[11]=a()),i(t,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[12]||(s[12]=e("p",null,"Returns the axes of a Cube",-1)),s[13]||(s[13]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/Cubes/Cubes.jl#L27",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",y,[e("summary",null,[s[14]||(s[14]=e("a",{id:"YAXArrays.Cubes.caxes-Tuple{DimensionalData.Dimensions.Dimension}",href:"#YAXArrays.Cubes.caxes-Tuple{DimensionalData.Dimensions.Dimension}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.caxes")],-1)),s[15]||(s[15]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[16]||(s[16]=l('
julia
caxes

Embeds Cube inside a new Cube

source

',3))]),e("details",k,[e("summary",null,[s[17]||(s[17]=e("a",{id:"YAXArrays.Cubes.concatenatecubes-Tuple{Any, DimensionalData.Dimensions.Dimension}",href:"#YAXArrays.Cubes.concatenatecubes-Tuple{Any, DimensionalData.Dimensions.Dimension}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.concatenatecubes")],-1)),s[18]||(s[18]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[19]||(s[19]=l('
julia
function concatenateCubes(cubelist, cataxis::CategoricalAxis)

Concatenates a vector of datacubes that have identical axes to a new single cube along the new axis cataxis

source

',3))]),e("details",g,[e("summary",null,[s[20]||(s[20]=e("a",{id:"YAXArrays.Cubes.readcubedata-Tuple{Any}",href:"#YAXArrays.Cubes.readcubedata-Tuple{Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.readcubedata")],-1)),s[21]||(s[21]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[22]||(s[22]=l('
julia
readcubedata(cube)

Given any array implementing the YAXArray interface it returns an in-memory YAXArray from it.

source

',3))]),e("details",A,[e("summary",null,[s[23]||(s[23]=e("a",{id:"YAXArrays.Cubes.setchunks-Tuple{YAXArray, Any}",href:"#YAXArrays.Cubes.setchunks-Tuple{YAXArray, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.setchunks")],-1)),s[24]||(s[24]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[25]||(s[25]=l('
julia
setchunks(c::YAXArray,chunks)

Resets the chunks of a YAXArray and returns a new YAXArray. Note that this will not change the chunking of the underlying data itself, it will just make the data "look" like it had a different chunking. If you need a persistent on-disk representation of this chunking, use savecube on the resulting array. The chunks argument can take one of the following forms:

  • a DiskArrays.GridChunks object

  • a tuple specifying the chunk size along each dimension

  • an AbstractDict or NamedTuple mapping one or more axis names to chunk sizes

source

',4))]),e("details",f,[e("summary",null,[s[26]||(s[26]=e("a",{id:"YAXArrays.Cubes.subsetcube",href:"#YAXArrays.Cubes.subsetcube"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.subsetcube")],-1)),s[27]||(s[27]=a()),i(t,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[28]||(s[28]=e("p",null,"This function calculates a subset of a cube's data",-1)),s[29]||(s[29]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/Cubes/Cubes.jl#L22-L24",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",m,[e("summary",null,[s[30]||(s[30]=e("a",{id:"YAXArrays.DAT.InDims",href:"#YAXArrays.DAT.InDims"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.InDims")],-1)),s[31]||(s[31]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[32]||(s[32]=l('
julia
InDims(axisdesc...;...)

Creates a description of an Input Data Cube for cube operations. Takes a single or multiple axis descriptions as first arguments. Alternatively a MovingWindow(@ref) struct can be passed to include neighbour slices of one or more axes in the computation. Axes can be specified by their name (String), through an Axis type, or by passing a concrete axis.

Keyword arguments

  • artype how shall the array be represented in the inner function. Defaults to Array, alternatives are DataFrame or AsAxisArray

  • filter define some filter to skip the computation, e.g. when all values are missing. Defaults to AllMissing(), possible values are AnyMissing(), AnyOcean(), StdZero(), NValid(n) (for at least n non-missing elements). It is also possible to provide a custom one-argument function that takes the array and returns true if the compuation shall be skipped and false otherwise.

  • window_oob_value if one of the input dimensions is a MowingWindow, this value will be used to fill out-of-bounds areas

source

',5))]),e("details",j,[e("summary",null,[s[33]||(s[33]=e("a",{id:"YAXArrays.DAT.MovingWindow",href:"#YAXArrays.DAT.MovingWindow"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.MovingWindow")],-1)),s[34]||(s[34]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[35]||(s[35]=l('
julia
MovingWindow(desc, pre, after)

Constructs a MovingWindow object to be passed to an InDims constructor to define that the axis in desc shall participate in the inner function (i.e. shall be looped over), but inside the inner function pre values before and after values after the center value will be passed as well.

For example passing MovingWindow("Time", 2, 0) will loop over the time axis and always pass the current time step plus the 2 previous steps. So in the inner function the array will have an additional dimension of size 3.

source

',4))]),e("details",E,[e("summary",null,[s[36]||(s[36]=e("a",{id:"YAXArrays.DAT.OutDims-Tuple",href:"#YAXArrays.DAT.OutDims-Tuple"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.OutDims")],-1)),s[37]||(s[37]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[38]||(s[38]=l('
julia
OutDims(axisdesc;...)

Creates a description of an Output Data Cube for cube operations. Takes a single or a Vector/Tuple of axes as first argument. Axes can be specified by their name (String), through an Axis type, or by passing a concrete axis.

  • axisdesc: List of input axis names

  • backend : specifies the dataset backend to write data to, must be either :auto or a key in YAXArrayBase.backendlist

  • update : specifies wether the function operates inplace or if an output is returned

  • artype : specifies the Array type inside the inner function that is mapped over

  • chunksize: A Dict specifying the chunksizes for the output dimensions of the cube, or :input to copy chunksizes from input cube axes or :max to not chunk the inner dimensions

  • outtype: force the output type to a specific type, defaults to Any which means that the element type of the first input cube is used

source

',4))]),e("details",C,[e("summary",null,[s[39]||(s[39]=e("a",{id:"YAXArrays.DAT.CubeTable-Tuple{}",href:"#YAXArrays.DAT.CubeTable-Tuple{}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.CubeTable")],-1)),s[40]||(s[40]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[41]||(s[41]=l('
julia
CubeTable()

Function to turn a DataCube object into an iterable table. Takes a list of as arguments, specified as a name=cube expression. For example CubeTable(data=cube1,country=cube2) would generate a Table with the entries data and country, where data contains the values of cube1 and country the values of cube2. The cubes are matched and broadcasted along their axes like in mapCube.

source

',3))]),e("details",D,[e("summary",null,[s[42]||(s[42]=e("a",{id:"YAXArrays.DAT.cubefittable-Tuple{Any, Any, Any}",href:"#YAXArrays.DAT.cubefittable-Tuple{Any, Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.cubefittable")],-1)),s[43]||(s[43]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[44]||(s[44]=l('
julia
cubefittable(tab,o,fitsym;post=getpostfunction(o),kwargs...)

Executes fittable on the CubeTable tab with the (Weighted-)OnlineStat o, looping through the values specified by fitsym. Finally, writes the results from the TableAggregator to an output data cube.

source

',3))]),e("details",T,[e("summary",null,[s[45]||(s[45]=e("a",{id:"YAXArrays.DAT.fittable-Tuple{YAXArrays.DAT.CubeIterator, Any, Any}",href:"#YAXArrays.DAT.fittable-Tuple{YAXArrays.DAT.CubeIterator, Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.fittable")],-1)),s[46]||(s[46]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[47]||(s[47]=l('
julia
fittable(tab,o,fitsym;by=(),weight=nothing)

Loops through an iterable table tab and thereby fitting an OnlineStat o with the values specified through fitsym. Optionally one can specify a field (or tuple) to group by. Any groupby specifier can either be a symbol denoting the entry to group by or an anynymous function calculating the group from a table row.

For example the following would caluclate a weighted mean over a cube weighted by grid cell area and grouped by country and month:

julia
fittable(iter,WeightedMean,:tair,weight=(i->abs(cosd(i.lat))),by=(i->month(i.time),:country))

source

',5))]),e("details",v,[e("summary",null,[s[48]||(s[48]=e("a",{id:"YAXArrays.DAT.mapCube-Tuple{Function, Dataset, Vararg{Any}}",href:"#YAXArrays.DAT.mapCube-Tuple{Function, Dataset, Vararg{Any}}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.mapCube")],-1)),s[49]||(s[49]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[50]||(s[50]=l(`
julia
mapCube(fun, cube, addargs...;kwargs...)
 
 Map a given function \`fun\` over slices of all cubes of the dataset \`ds\`. 
 Use InDims to discribe the input dimensions and OutDims to describe the output dimensions of the function.
 For Datasets, only one output cube can be specified.
 In contrast to the mapCube function for cubes, additional arguments for the inner function should be set as keyword arguments.
 
-For the specific keyword arguments see the docstring of the mapCube function for cubes.

source

`,2))]),e("details",X,[e("summary",null,[s[51]||(s[51]=e("a",{id:"YAXArrays.DAT.mapCube-Tuple{Function, Tuple, Vararg{Any}}",href:"#YAXArrays.DAT.mapCube-Tuple{Function, Tuple, Vararg{Any}}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.mapCube")],-1)),s[52]||(s[52]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[53]||(s[53]=l('
julia
mapCube(fun, cube, addargs...;kwargs...)

Map a given function fun over slices of the data cube cube. The additional arguments addargs will be forwarded to the inner function fun. Use InDims to discribe the input dimensions and OutDims to describe the output dimensions of the function.

Keyword arguments

  • max_cache=YAXDefaults.max_cache Float64 maximum size of blocks that are read into memory in bits e.g. max_cache=5.0e8. Or String. e.g. max_cache="10MB" ormax_cache=1GB``` defaults to approx 10Mb.

  • indims::InDims List of input cube descriptors of type InDims for each input data cube.

  • outdims::OutDims List of output cube descriptors of type OutDims for each output cube.

  • inplace does the function write to an output array inplace or return a single value> defaults to true

  • ispar boolean to determine if parallelisation should be applied, defaults to true if workers are available.

  • showprog boolean indicating if a ProgressMeter shall be shown

  • include_loopvars boolean to indicate if the varoables looped over should be added as function arguments

  • nthreads number of threads for the computation, defaults to Threads.nthreads for every worker.

  • loopchunksize determines the chunk sizes of variables which are looped over, a dict

  • kwargs additional keyword arguments are passed to the inner function

The first argument is always the function to be applied, the second is the input cube or a tuple of input cubes if needed.

source

',6))]),e("details",Y,[e("summary",null,[s[54]||(s[54]=e("a",{id:"YAXArrays.Datasets.Dataset",href:"#YAXArrays.Datasets.Dataset"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.Dataset")],-1)),s[55]||(s[55]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[56]||(s[56]=l('
julia
Dataset object which stores an `OrderedDict` of YAXArrays with Symbol keys.\na dictionary of CubeAxes and a Dictionary of general properties.\nA dictionary can hold cubes with differing axes. But it will share the common axes between the subcubes.

source

',2))]),e("details",x,[e("summary",null,[s[57]||(s[57]=e("a",{id:"YAXArrays.Datasets.Dataset-Tuple{}",href:"#YAXArrays.Datasets.Dataset-Tuple{}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.Dataset")],-1)),s[58]||(s[58]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[59]||(s[59]=e("p",null,"Dataset(; properties = Dict{String,Any}, cubes...)",-1)),s[60]||(s[60]=e("p",null,[a("Construct a YAXArray Dataset with global attributes "),e("code",null,"properties"),a(" a and a list of named YAXArrays cubes...")],-1)),s[61]||(s[61]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DatasetAPI/Datasets.jl#L28-L32",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",F,[e("summary",null,[s[62]||(s[62]=e("a",{id:"YAXArrays.Datasets.Cube-Tuple{Dataset}",href:"#YAXArrays.Datasets.Cube-Tuple{Dataset}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.Cube")],-1)),s[63]||(s[63]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[64]||(s[64]=l('
julia
Cube(ds::Dataset; joinname="Variable")

Construct a single YAXArray from the dataset ds by concatenating the cubes in the datset on the joinname dimension.

source

',3))]),e("details",w,[e("summary",null,[s[65]||(s[65]=e("a",{id:"YAXArrays.Datasets.open_dataset-Tuple{Any}",href:"#YAXArrays.Datasets.open_dataset-Tuple{Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.open_dataset")],-1)),s[66]||(s[66]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[67]||(s[67]=e("p",null,"open_dataset(g; driver=:all)",-1)),s[68]||(s[68]=e("p",null,[a("Open the dataset at "),e("code",null,"g"),a(" with the given "),e("code",null,"driver"),a(". The default driver will search for available drivers and tries to detect the useable driver from the filename extension.")],-1)),s[69]||(s[69]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DatasetAPI/Datasets.jl#L398-L403",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",L,[e("summary",null,[s[70]||(s[70]=e("a",{id:'YAXArrays.Datasets.open_mfdataset-Tuple{DimensionalData.DimVector{var"#s37", D, R, A} where {var"#s37"<:AbstractString, D<:Tuple, R<:Tuple, A<:AbstractVector{var"#s37"}}}',href:'#YAXArrays.Datasets.open_mfdataset-Tuple{DimensionalData.DimVector{var"#s37", D, R, A} where {var"#s37"<:AbstractString, D<:Tuple, R<:Tuple, A<:AbstractVector{var"#s37"}}}'},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.open_mfdataset")],-1)),s[71]||(s[71]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[72]||(s[72]=l(`
julia
open_mfdataset(files::DD.DimVector{<:AbstractString}; kwargs...)

Opens and concatenates a list of dataset paths along the dimension specified in files. This method can be used when the generic glob-based version of open_mfdataset fails or is too slow. For example, to concatenate a list of annual NetCDF files along the Ti dimension, one can use:

julia
files = ["1990.nc","1991.nc","1992.nc"]
+For the specific keyword arguments see the docstring of the mapCube function for cubes.

source

`,2))]),e("details",X,[e("summary",null,[s[51]||(s[51]=e("a",{id:"YAXArrays.DAT.mapCube-Tuple{Function, Tuple, Vararg{Any}}",href:"#YAXArrays.DAT.mapCube-Tuple{Function, Tuple, Vararg{Any}}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.mapCube")],-1)),s[52]||(s[52]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[53]||(s[53]=l('
julia
mapCube(fun, cube, addargs...;kwargs...)

Map a given function fun over slices of the data cube cube. The additional arguments addargs will be forwarded to the inner function fun. Use InDims to discribe the input dimensions and OutDims to describe the output dimensions of the function.

Keyword arguments

  • max_cache=YAXDefaults.max_cache Float64 maximum size of blocks that are read into memory in bits e.g. max_cache=5.0e8. Or String. e.g. max_cache="10MB" ormax_cache=1GB``` defaults to approx 10Mb.

  • indims::InDims List of input cube descriptors of type InDims for each input data cube.

  • outdims::OutDims List of output cube descriptors of type OutDims for each output cube.

  • inplace does the function write to an output array inplace or return a single value> defaults to true

  • ispar boolean to determine if parallelisation should be applied, defaults to true if workers are available.

  • showprog boolean indicating if a ProgressMeter shall be shown

  • include_loopvars boolean to indicate if the varoables looped over should be added as function arguments

  • nthreads number of threads for the computation, defaults to Threads.nthreads for every worker.

  • loopchunksize determines the chunk sizes of variables which are looped over, a dict

  • kwargs additional keyword arguments are passed to the inner function

The first argument is always the function to be applied, the second is the input cube or a tuple of input cubes if needed.

source

',6))]),e("details",Y,[e("summary",null,[s[54]||(s[54]=e("a",{id:"YAXArrays.Datasets.Dataset",href:"#YAXArrays.Datasets.Dataset"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.Dataset")],-1)),s[55]||(s[55]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[56]||(s[56]=l('
julia
Dataset object which stores an `OrderedDict` of YAXArrays with Symbol keys.\na dictionary of CubeAxes and a Dictionary of general properties.\nA dictionary can hold cubes with differing axes. But it will share the common axes between the subcubes.

source

',2))]),e("details",x,[e("summary",null,[s[57]||(s[57]=e("a",{id:"YAXArrays.Datasets.Dataset-Tuple{}",href:"#YAXArrays.Datasets.Dataset-Tuple{}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.Dataset")],-1)),s[58]||(s[58]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[59]||(s[59]=e("p",null,"Dataset(; properties = Dict{String,Any}, cubes...)",-1)),s[60]||(s[60]=e("p",null,[a("Construct a YAXArray Dataset with global attributes "),e("code",null,"properties"),a(" a and a list of named YAXArrays cubes...")],-1)),s[61]||(s[61]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DatasetAPI/Datasets.jl#L28-L32",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",F,[e("summary",null,[s[62]||(s[62]=e("a",{id:"YAXArrays.Datasets.Cube-Tuple{Dataset}",href:"#YAXArrays.Datasets.Cube-Tuple{Dataset}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.Cube")],-1)),s[63]||(s[63]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[64]||(s[64]=l('
julia
Cube(ds::Dataset; joinname="Variable")

Construct a single YAXArray from the dataset ds by concatenating the cubes in the datset on the joinname dimension.

source

',3))]),e("details",w,[e("summary",null,[s[65]||(s[65]=e("a",{id:"YAXArrays.Datasets.open_dataset-Tuple{Any}",href:"#YAXArrays.Datasets.open_dataset-Tuple{Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.open_dataset")],-1)),s[66]||(s[66]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[67]||(s[67]=e("p",null,"open_dataset(g; driver=:all)",-1)),s[68]||(s[68]=e("p",null,[a("Open the dataset at "),e("code",null,"g"),a(" with the given "),e("code",null,"driver"),a(". The default driver will search for available drivers and tries to detect the useable driver from the filename extension.")],-1)),s[69]||(s[69]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DatasetAPI/Datasets.jl#L408-L413",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",L,[e("summary",null,[s[70]||(s[70]=e("a",{id:'YAXArrays.Datasets.open_mfdataset-Tuple{DimensionalData.DimVector{var"#s37", D, R, A} where {var"#s37"<:AbstractString, D<:Tuple, R<:Tuple, A<:AbstractVector{var"#s37"}}}',href:'#YAXArrays.Datasets.open_mfdataset-Tuple{DimensionalData.DimVector{var"#s37", D, R, A} where {var"#s37"<:AbstractString, D<:Tuple, R<:Tuple, A<:AbstractVector{var"#s37"}}}'},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.open_mfdataset")],-1)),s[71]||(s[71]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[72]||(s[72]=l(`
julia
open_mfdataset(files::DD.DimVector{<:AbstractString}; kwargs...)

Opens and concatenates a list of dataset paths along the dimension specified in files. This method can be used when the generic glob-based version of open_mfdataset fails or is too slow. For example, to concatenate a list of annual NetCDF files along the Ti dimension, one can use:

julia
files = ["1990.nc","1991.nc","1992.nc"]
 open_mfdataset(DD.DimArray(files,DD.Ti()))

alternatively, if the dimension to concatenate along does not exist yet, the dimension provided in the input arg is used:

julia
files = ["a.nc","b.nc","c.nc"]
-open_mfdataset(DD.DimArray(files,DD.Dim{:NewDim}(["a","b","c"])))

source

`,6))]),e("details",M,[e("summary",null,[s[73]||(s[73]=e("a",{id:"YAXArrays.Datasets.savecube-Tuple{Any, AbstractString}",href:"#YAXArrays.Datasets.savecube-Tuple{Any, AbstractString}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.savecube")],-1)),s[74]||(s[74]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[75]||(s[75]=l('
julia
savecube(cube,name::String)

Save a YAXArray to the path.

Extended Help

The keyword arguments are:

  • name:

  • datasetaxis="Variable" special treatment of a categorical axis that gets written into separate zarr arrays

  • max_cache: The number of bits that are used as cache for the data handling.

  • backend: The backend, that is used to save the data. Falls back to searching the backend according to the extension of the path.

  • driver: The same setting as backend.

  • overwrite::Bool=false overwrite cube if it already exists

source

',6))]),e("details",B,[e("summary",null,[s[76]||(s[76]=e("a",{id:"YAXArrays.Datasets.savedataset-Tuple{Dataset}",href:"#YAXArrays.Datasets.savedataset-Tuple{Dataset}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.savedataset")],-1)),s[77]||(s[77]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[78]||(s[78]=e("p",null,'savedataset(ds::Dataset; path = "", persist = nothing, overwrite = false, append = false, skeleton=false, backend = :all, driver = backend, max_cache = 5e8, writefac=4.0)',-1)),s[79]||(s[79]=e("p",null,[a("Saves a Dataset into a file at "),e("code",null,"path"),a(" with the format given by "),e("code",null,"driver"),a(", i.e., driver=:netcdf or driver=:zarr.")],-1)),s[80]||(s[80]=e("div",{class:"warning custom-block"},[e("p",{class:"custom-block-title"},"Warning"),e("p",null,"overwrite = true, deletes ALL your data and it will create a new file.")],-1)),s[81]||(s[81]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DatasetAPI/Datasets.jl#L627-L636",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",O,[e("summary",null,[s[82]||(s[82]=e("a",{id:"YAXArrays.Datasets.to_dataset-Tuple{Any}",href:"#YAXArrays.Datasets.to_dataset-Tuple{Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.to_dataset")],-1)),s[83]||(s[83]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[84]||(s[84]=e("p",null,'to_dataset(c;datasetaxis = "Variable", layername = "layer")',-1)),s[85]||(s[85]=e("p",null,[a(`Convert a Data Cube into a Dataset. It is possible to treat one of the Cube's axes as a "DatasetAxis" i.e. the cube will be split into different parts that become variables in the Dataset. If no such axis is specified or found, there will only be a single variable in the dataset with the name `),e("code",null,"layername")],-1)),s[86]||(s[86]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DatasetAPI/Datasets.jl#L45-L53",target:"_blank",rel:"noreferrer"},"source")],-1))]),s[168]||(s[168]=e("h2",{id:"Internal-API",tabindex:"-1"},[a("Internal API "),e("a",{class:"header-anchor",href:"#Internal-API","aria-label":'Permalink to "Internal API {#Internal-API}"'},"​")],-1)),e("details",I,[e("summary",null,[s[87]||(s[87]=e("a",{id:"YAXArrays.YAXDefaults",href:"#YAXArrays.YAXDefaults"},[e("span",{class:"jlbinding"},"YAXArrays.YAXDefaults")],-1)),s[88]||(s[88]=a()),i(t,{type:"info",class:"jlObjectType jlConstant",text:"Constant"})]),s[89]||(s[89]=l('

Default configuration for YAXArrays, has the following fields:

  • workdir[]::String = "./" The default location for temporary cubes.

  • recal[]::Bool = false set to true if you want @loadOrGenerate to always recalculate the results.

  • chunksize[]::Any = :input Set the default output chunksize.

  • max_cache[]::Float64 = 1e8 The maximum cache used by mapCube.

  • cubedir[]::"" the default location for Cube() without an argument.

  • subsetextensions::Array{Any} = [] List of registered functions, that convert subsetting input into dimension boundaries.

source

',3))]),e("details",J,[e("summary",null,[s[90]||(s[90]=e("a",{id:"YAXArrays.findAxis-Tuple{Any, Any}",href:"#YAXArrays.findAxis-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.findAxis")],-1)),s[91]||(s[91]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[92]||(s[92]=l('
julia
findAxis(desc, c)

Internal function

Extended Help

Given an Axis description and a cube return the index of the Axis.

The Axis description can be:

  • the name as a string or symbol.

  • an Axis object

source

',7))]),e("details",P,[e("summary",null,[s[93]||(s[93]=e("a",{id:"YAXArrays.getOutAxis-NTuple{5, Any}",href:"#YAXArrays.getOutAxis-NTuple{5, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.getOutAxis")],-1)),s[94]||(s[94]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[95]||(s[95]=l('
julia
getOutAxis

source

',2))]),e("details",q,[e("summary",null,[s[96]||(s[96]=e("a",{id:"YAXArrays.get_descriptor-Tuple{String}",href:"#YAXArrays.get_descriptor-Tuple{String}"},[e("span",{class:"jlbinding"},"YAXArrays.get_descriptor")],-1)),s[97]||(s[97]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[98]||(s[98]=l('
julia
get_descriptor(a)

Get the descriptor of an Axis. This is used to dispatch on the descriptor.

source

',3))]),e("details",z,[e("summary",null,[s[99]||(s[99]=e("a",{id:"YAXArrays.match_axis-Tuple{YAXArrays.ByName, Any}",href:"#YAXArrays.match_axis-Tuple{YAXArrays.ByName, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.match_axis")],-1)),s[100]||(s[100]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[101]||(s[101]=l(`
julia
match_axis

Internal function

Extended Help

Match the Axis based on the AxisDescriptor.
+open_mfdataset(DD.DimArray(files,DD.Dim{:NewDim}(["a","b","c"])))

source

`,6))]),e("details",M,[e("summary",null,[s[73]||(s[73]=e("a",{id:"YAXArrays.Datasets.savecube-Tuple{Any, AbstractString}",href:"#YAXArrays.Datasets.savecube-Tuple{Any, AbstractString}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.savecube")],-1)),s[74]||(s[74]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[75]||(s[75]=l('
julia
savecube(cube,name::String)

Save a YAXArray to the path.

Extended Help

The keyword arguments are:

  • name:

  • datasetaxis="Variable" special treatment of a categorical axis that gets written into separate zarr arrays

  • max_cache: The number of bits that are used as cache for the data handling.

  • backend: The backend, that is used to save the data. Falls back to searching the backend according to the extension of the path.

  • driver: The same setting as backend.

  • overwrite::Bool=false overwrite cube if it already exists

source

',6))]),e("details",B,[e("summary",null,[s[76]||(s[76]=e("a",{id:"YAXArrays.Datasets.savedataset-Tuple{Dataset}",href:"#YAXArrays.Datasets.savedataset-Tuple{Dataset}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.savedataset")],-1)),s[77]||(s[77]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[78]||(s[78]=e("p",null,'savedataset(ds::Dataset; path = "", persist = nothing, overwrite = false, append = false, skeleton=false, backend = :all, driver = backend, max_cache = 5e8, writefac=4.0)',-1)),s[79]||(s[79]=e("p",null,[a("Saves a Dataset into a file at "),e("code",null,"path"),a(" with the format given by "),e("code",null,"driver"),a(", i.e., driver=:netcdf or driver=:zarr.")],-1)),s[80]||(s[80]=e("div",{class:"warning custom-block"},[e("p",{class:"custom-block-title"},"Warning"),e("p",null,"overwrite = true, deletes ALL your data and it will create a new file.")],-1)),s[81]||(s[81]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DatasetAPI/Datasets.jl#L637-L646",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",O,[e("summary",null,[s[82]||(s[82]=e("a",{id:"YAXArrays.Datasets.to_dataset-Tuple{Any}",href:"#YAXArrays.Datasets.to_dataset-Tuple{Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.to_dataset")],-1)),s[83]||(s[83]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[84]||(s[84]=e("p",null,'to_dataset(c;datasetaxis = "Variable", layername = "layer")',-1)),s[85]||(s[85]=e("p",null,[a(`Convert a Data Cube into a Dataset. It is possible to treat one of the Cube's axes as a "DatasetAxis" i.e. the cube will be split into different parts that become variables in the Dataset. If no such axis is specified or found, there will only be a single variable in the dataset with the name `),e("code",null,"layername")],-1)),s[86]||(s[86]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DatasetAPI/Datasets.jl#L45-L53",target:"_blank",rel:"noreferrer"},"source")],-1))]),s[168]||(s[168]=e("h2",{id:"Internal-API",tabindex:"-1"},[a("Internal API "),e("a",{class:"header-anchor",href:"#Internal-API","aria-label":'Permalink to "Internal API {#Internal-API}"'},"​")],-1)),e("details",I,[e("summary",null,[s[87]||(s[87]=e("a",{id:"YAXArrays.YAXDefaults",href:"#YAXArrays.YAXDefaults"},[e("span",{class:"jlbinding"},"YAXArrays.YAXDefaults")],-1)),s[88]||(s[88]=a()),i(t,{type:"info",class:"jlObjectType jlConstant",text:"Constant"})]),s[89]||(s[89]=l('

Default configuration for YAXArrays, has the following fields:

  • workdir[]::String = "./" The default location for temporary cubes.

  • recal[]::Bool = false set to true if you want @loadOrGenerate to always recalculate the results.

  • chunksize[]::Any = :input Set the default output chunksize.

  • max_cache[]::Float64 = 1e8 The maximum cache used by mapCube.

  • cubedir[]::"" the default location for Cube() without an argument.

  • subsetextensions::Array{Any} = [] List of registered functions, that convert subsetting input into dimension boundaries.

source

',3))]),e("details",J,[e("summary",null,[s[90]||(s[90]=e("a",{id:"YAXArrays.findAxis-Tuple{Any, Any}",href:"#YAXArrays.findAxis-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.findAxis")],-1)),s[91]||(s[91]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[92]||(s[92]=l('
julia
findAxis(desc, c)

Internal function

Extended Help

Given an Axis description and a cube return the index of the Axis.

The Axis description can be:

  • the name as a string or symbol.

  • an Axis object

source

',7))]),e("details",P,[e("summary",null,[s[93]||(s[93]=e("a",{id:"YAXArrays.getOutAxis-NTuple{5, Any}",href:"#YAXArrays.getOutAxis-NTuple{5, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.getOutAxis")],-1)),s[94]||(s[94]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[95]||(s[95]=l('
julia
getOutAxis

source

',2))]),e("details",q,[e("summary",null,[s[96]||(s[96]=e("a",{id:"YAXArrays.get_descriptor-Tuple{String}",href:"#YAXArrays.get_descriptor-Tuple{String}"},[e("span",{class:"jlbinding"},"YAXArrays.get_descriptor")],-1)),s[97]||(s[97]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[98]||(s[98]=l('
julia
get_descriptor(a)

Get the descriptor of an Axis. This is used to dispatch on the descriptor.

source

',3))]),e("details",z,[e("summary",null,[s[99]||(s[99]=e("a",{id:"YAXArrays.match_axis-Tuple{YAXArrays.ByName, Any}",href:"#YAXArrays.match_axis-Tuple{YAXArrays.ByName, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.match_axis")],-1)),s[100]||(s[100]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[101]||(s[101]=l(`
julia
match_axis

Internal function

Extended Help

Match the Axis based on the AxisDescriptor.
 This is used to find different axes and to make certain axis description the same.
-For example to disregard differences of captialisation.

source

`,5))]),e("details",N,[e("summary",null,[s[102]||(s[102]=e("a",{id:"YAXArrays.Cubes.CleanMe",href:"#YAXArrays.Cubes.CleanMe"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.CleanMe")],-1)),s[103]||(s[103]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[104]||(s[104]=l('
julia
mutable struct CleanMe

Struct which describes data paths and their persistency. Non-persistend paths/files are removed at finalize step

source

',3))]),e("details",S,[e("summary",null,[s[105]||(s[105]=e("a",{id:"YAXArrays.Cubes.clean-Tuple{YAXArrays.Cubes.CleanMe}",href:"#YAXArrays.Cubes.clean-Tuple{YAXArrays.Cubes.CleanMe}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.clean")],-1)),s[106]||(s[106]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[107]||(s[107]=l('
julia
clean(c::CleanMe)

finalizer function for CleanMe struct. The main process removes all directories/files which are not persistent.

source

',3))]),e("details",V,[e("summary",null,[s[108]||(s[108]=e("a",{id:"YAXArrays.Cubes.copydata-Tuple{Any, Any, Any}",href:"#YAXArrays.Cubes.copydata-Tuple{Any, Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.copydata")],-1)),s[109]||(s[109]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[110]||(s[110]=l('
julia
copydata(outar, inar, copybuf)

Internal function which copies the data from the input inar into the output outar at the copybuf positions.

source

',3))]),e("details",R,[e("summary",null,[s[111]||(s[111]=e("a",{id:"YAXArrays.Cubes.optifunc-NTuple{7, Any}",href:"#YAXArrays.Cubes.optifunc-NTuple{7, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.optifunc")],-1)),s[112]||(s[112]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[113]||(s[113]=l('
julia
optifunc(s, maxbuf, incs, outcs, insize, outsize, writefac)

Internal

This function is going to be minimized to detect the best possible chunk setting for the rechunking of the data.

source

',4))]),e("details",G,[e("summary",null,[s[114]||(s[114]=e("a",{id:"YAXArrays.DAT.DATConfig",href:"#YAXArrays.DAT.DATConfig"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.DATConfig")],-1)),s[115]||(s[115]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[116]||(s[116]=l('

Configuration object of a DAT process. This holds all necessary information to perform the calculations. It contains the following fields:

  • incubes::NTuple{NIN, YAXArrays.DAT.InputCube} where NIN: The input data cubes

  • outcubes::NTuple{NOUT, YAXArrays.DAT.OutputCube} where NOUT: The output data cubes

  • allInAxes::Vector: List of all axes of the input cubes

  • LoopAxes::Vector: List of axes that are looped through

  • ispar::Bool: Flag whether the computation is parallelized

  • loopcachesize::Vector{Int64}:

  • allow_irregular_chunks::Bool:

  • max_cache::Any: Maximal size of the in memory cache

  • fu::Any: Inner function which is computed

  • inplace::Bool: Flag whether the computation happens in place

  • include_loopvars::Bool:

  • ntr::Any:

  • do_gc::Bool: Flag if GC should be called explicitly. Probably necessary for many runs in Julia 1.9

  • addargs::Any: Additional arguments for the inner function

  • kwargs::Any: Additional keyword arguments for the inner function

source

',3))]),e("details",W,[e("summary",null,[s[117]||(s[117]=e("a",{id:"YAXArrays.DAT.InputCube",href:"#YAXArrays.DAT.InputCube"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.InputCube")],-1)),s[118]||(s[118]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[119]||(s[119]=l('

Internal representation of an input cube for DAT operations

  • cube: The input data

  • desc: The input description given by the user/registration

  • axesSmall: List of axes that were actually selected through the description

  • icolon

  • colonperm

  • loopinds: Indices of loop axes that this cube does not contain, i.e. broadcasts

  • cachesize: Number of elements to keep in cache along each axis

  • window

  • iwindow

  • windowloopinds

  • iall

source

',3))]),e("details",U,[e("summary",null,[s[120]||(s[120]=e("a",{id:"YAXArrays.DAT.OutputCube",href:"#YAXArrays.DAT.OutputCube"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.OutputCube")],-1)),s[121]||(s[121]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[122]||(s[122]=l('

Internal representation of an output cube for DAT operations

Fields

  • cube: The actual outcube cube, once it is generated

  • cube_unpermuted: The unpermuted output cube

  • desc: The description of the output axes as given by users or registration

  • axesSmall: The list of output axes determined through the description

  • allAxes: List of all the axes of the cube

  • loopinds: Index of the loop axes that are broadcasted for this output cube

  • innerchunks

  • outtype: Elementtype of the outputcube

source

',4))]),e("details",$,[e("summary",null,[s[123]||(s[123]=e("a",{id:"YAXArrays.DAT.YAXColumn",href:"#YAXArrays.DAT.YAXColumn"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.YAXColumn")],-1)),s[124]||(s[124]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[125]||(s[125]=l('
julia
YAXColumn

A struct representing a single column of a YAXArray partitioned Table # Fields

  • inarBC

  • inds

source

',4))]),e("details",H,[e("summary",null,[s[126]||(s[126]=e("a",{id:"YAXArrays.DAT.cmpcachmisses-Tuple{Any, Any}",href:"#YAXArrays.DAT.cmpcachmisses-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.cmpcachmisses")],-1)),s[127]||(s[127]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[128]||(s[128]=e("p",null,"Function that compares two cache miss specifiers by their importance",-1)),s[129]||(s[129]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DAT/DAT.jl#L957-L959",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",K,[e("summary",null,[s[130]||(s[130]=e("a",{id:"YAXArrays.DAT.getFrontPerm-Tuple{Any, Any}",href:"#YAXArrays.DAT.getFrontPerm-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.getFrontPerm")],-1)),s[131]||(s[131]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[132]||(s[132]=e("p",null,"Calculate an axis permutation that brings the wanted dimensions to the front",-1)),s[133]||(s[133]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DAT/DAT.jl#L1202",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",Z,[e("summary",null,[s[134]||(s[134]=e("a",{id:"YAXArrays.DAT.getLoopCacheSize-NTuple{5, Any}",href:"#YAXArrays.DAT.getLoopCacheSize-NTuple{5, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.getLoopCacheSize")],-1)),s[135]||(s[135]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[136]||(s[136]=e("p",null,"Calculate optimal Cache size to DAT operation",-1)),s[137]||(s[137]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DAT/DAT.jl#L1056",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",Q,[e("summary",null,[s[138]||(s[138]=e("a",{id:"YAXArrays.DAT.getOuttype-Tuple{Int64, Any}",href:"#YAXArrays.DAT.getOuttype-Tuple{Int64, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.getOuttype")],-1)),s[139]||(s[139]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[140]||(s[140]=l('
julia
getOuttype(outtype, cdata)

Internal function

Get the element type for the output cube

source

',4))]),e("details",_,[e("summary",null,[s[141]||(s[141]=e("a",{id:"YAXArrays.DAT.getloopchunks-Tuple{YAXArrays.DAT.DATConfig}",href:"#YAXArrays.DAT.getloopchunks-Tuple{YAXArrays.DAT.DATConfig}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.getloopchunks")],-1)),s[142]||(s[142]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[143]||(s[143]=l('
julia
getloopchunks(dc::DATConfig)

Internal function

Returns the chunks that can be looped over toghether for all dimensions.\nThis computation of the size of the chunks is handled by [`DiskArrays.approx_chunksize`](@ref)

source

',4))]),e("details",ss,[e("summary",null,[s[144]||(s[144]=e("a",{id:"YAXArrays.DAT.permuteloopaxes-Tuple{Any}",href:"#YAXArrays.DAT.permuteloopaxes-Tuple{Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.permuteloopaxes")],-1)),s[145]||(s[145]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[146]||(s[146]=l('
julia
permuteloopaxes(dc)

Internal function

Permute the dimensions of the cube, so that the axes that are looped through are in the first positions. This is necessary for a faster looping through the data.

source

',4))]),e("details",es,[e("summary",null,[s[147]||(s[147]=e("a",{id:"YAXArrays.Cubes.setchunks-Tuple{Dataset, Any}",href:"#YAXArrays.Cubes.setchunks-Tuple{Dataset, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.setchunks")],-1)),s[148]||(s[148]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[149]||(s[149]=l('
julia
setchunks(c::Dataset,chunks)

Resets the chunks of all or a subset YAXArrays in the dataset and returns a new Dataset. Note that this will not change the chunking of the underlying data itself, it will just make the data "look" like it had a different chunking. If you need a persistent on-disk representation of this chunking, use savedataset on the resulting array. The chunks argument can take one of the following forms:

  • a NamedTuple or AbstractDict mapping from variable name to a description of the desired variable chunks

  • a NamedTuple or AbstractDict mapping from dimension name to a description of the desired variable chunks

  • a description of the desired variable chunks applied to all members of the Dataset

where a description of the desired variable chunks can take one of the following forms:

  • a DiskArrays.GridChunks object

  • a tuple specifying the chunk size along each dimension

  • an AbstractDict or NamedTuple mapping one or more axis names to chunk sizes

source

',6))]),e("details",as,[e("summary",null,[s[150]||(s[150]=e("a",{id:"YAXArrays.Datasets.collectfromhandle-Tuple{Any, Any, Any}",href:"#YAXArrays.Datasets.collectfromhandle-Tuple{Any, Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.collectfromhandle")],-1)),s[151]||(s[151]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[152]||(s[152]=e("p",null,"Extracts a YAXArray from a dataset handle that was just created from a arrayinfo",-1)),s[153]||(s[153]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DatasetAPI/Datasets.jl#L533-L535",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",ts,[e("summary",null,[s[154]||(s[154]=e("a",{id:"YAXArrays.Datasets.createdataset-Tuple{Any, Any}",href:"#YAXArrays.Datasets.createdataset-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.createdataset")],-1)),s[155]||(s[155]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[156]||(s[156]=l('

function createdataset(DS::Type,axlist; kwargs...)

Creates a new dataset with axes specified in axlist. Each axis must be a subtype of CubeAxis. A new empty Zarr array will be created and can serve as a sink for mapCube operations.

Keyword arguments

  • path="" location where the new cube is stored

  • T=Union{Float32,Missing} data type of the target cube

  • chunksize = ntuple(i->length(axlist[i]),length(axlist)) chunk sizes of the array

  • chunkoffset = ntuple(i->0,length(axlist)) offsets of the chunks

  • persist::Bool=true shall the disk data be garbage-collected when the cube goes out of scope?

  • overwrite::Bool=false overwrite cube if it already exists

  • properties=Dict{String,Any}() additional cube properties

  • globalproperties=Dict{String,Any} global attributes to be added to the dataset

  • fillvalue= T>:Missing ? defaultfillval(Base.nonmissingtype(T)) : nothing fill value

  • datasetaxis="Variable" special treatment of a categorical axis that gets written into separate zarr arrays

  • layername="layer" Fallback name of the variable stored in the dataset if no datasetaxis is found

source

',6))]),e("details",is,[e("summary",null,[s[157]||(s[157]=e("a",{id:"YAXArrays.Datasets.getarrayinfo-Tuple{Any, Any}",href:"#YAXArrays.Datasets.getarrayinfo-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.getarrayinfo")],-1)),s[158]||(s[158]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[159]||(s[159]=e("p",null,"Extract necessary information to create a YAXArrayBase dataset from a name and YAXArray pair",-1)),s[160]||(s[160]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DatasetAPI/Datasets.jl#L502-L504",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",ls,[e("summary",null,[s[161]||(s[161]=e("a",{id:"YAXArrays.Datasets.testrange-Tuple{Any}",href:"#YAXArrays.Datasets.testrange-Tuple{Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.testrange")],-1)),s[162]||(s[162]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[163]||(s[163]=e("p",null,"Test if data in x can be approximated by a step range",-1)),s[164]||(s[164]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DatasetAPI/Datasets.jl#L312",target:"_blank",rel:"noreferrer"},"source")],-1))])])}const bs=n(d,[["render",ns]]);export{hs as __pageData,bs as default}; +For example to disregard differences of captialisation.

source

`,5))]),e("details",N,[e("summary",null,[s[102]||(s[102]=e("a",{id:"YAXArrays.Cubes.CleanMe",href:"#YAXArrays.Cubes.CleanMe"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.CleanMe")],-1)),s[103]||(s[103]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[104]||(s[104]=l('
julia
mutable struct CleanMe

Struct which describes data paths and their persistency. Non-persistend paths/files are removed at finalize step

source

',3))]),e("details",S,[e("summary",null,[s[105]||(s[105]=e("a",{id:"YAXArrays.Cubes.clean-Tuple{YAXArrays.Cubes.CleanMe}",href:"#YAXArrays.Cubes.clean-Tuple{YAXArrays.Cubes.CleanMe}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.clean")],-1)),s[106]||(s[106]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[107]||(s[107]=l('
julia
clean(c::CleanMe)

finalizer function for CleanMe struct. The main process removes all directories/files which are not persistent.

source

',3))]),e("details",V,[e("summary",null,[s[108]||(s[108]=e("a",{id:"YAXArrays.Cubes.copydata-Tuple{Any, Any, Any}",href:"#YAXArrays.Cubes.copydata-Tuple{Any, Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.copydata")],-1)),s[109]||(s[109]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[110]||(s[110]=l('
julia
copydata(outar, inar, copybuf)

Internal function which copies the data from the input inar into the output outar at the copybuf positions.

source

',3))]),e("details",R,[e("summary",null,[s[111]||(s[111]=e("a",{id:"YAXArrays.Cubes.optifunc-NTuple{7, Any}",href:"#YAXArrays.Cubes.optifunc-NTuple{7, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.optifunc")],-1)),s[112]||(s[112]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[113]||(s[113]=l('
julia
optifunc(s, maxbuf, incs, outcs, insize, outsize, writefac)

Internal

This function is going to be minimized to detect the best possible chunk setting for the rechunking of the data.

source

',4))]),e("details",G,[e("summary",null,[s[114]||(s[114]=e("a",{id:"YAXArrays.DAT.DATConfig",href:"#YAXArrays.DAT.DATConfig"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.DATConfig")],-1)),s[115]||(s[115]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[116]||(s[116]=l('

Configuration object of a DAT process. This holds all necessary information to perform the calculations. It contains the following fields:

  • incubes::NTuple{NIN, YAXArrays.DAT.InputCube} where NIN: The input data cubes

  • outcubes::NTuple{NOUT, YAXArrays.DAT.OutputCube} where NOUT: The output data cubes

  • allInAxes::Vector: List of all axes of the input cubes

  • LoopAxes::Vector: List of axes that are looped through

  • ispar::Bool: Flag whether the computation is parallelized

  • loopcachesize::Vector{Int64}:

  • allow_irregular_chunks::Bool:

  • max_cache::Any: Maximal size of the in memory cache

  • fu::Any: Inner function which is computed

  • inplace::Bool: Flag whether the computation happens in place

  • include_loopvars::Bool:

  • ntr::Any:

  • do_gc::Bool: Flag if GC should be called explicitly. Probably necessary for many runs in Julia 1.9

  • addargs::Any: Additional arguments for the inner function

  • kwargs::Any: Additional keyword arguments for the inner function

source

',3))]),e("details",W,[e("summary",null,[s[117]||(s[117]=e("a",{id:"YAXArrays.DAT.InputCube",href:"#YAXArrays.DAT.InputCube"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.InputCube")],-1)),s[118]||(s[118]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[119]||(s[119]=l('

Internal representation of an input cube for DAT operations

  • cube: The input data

  • desc: The input description given by the user/registration

  • axesSmall: List of axes that were actually selected through the description

  • icolon

  • colonperm

  • loopinds: Indices of loop axes that this cube does not contain, i.e. broadcasts

  • cachesize: Number of elements to keep in cache along each axis

  • window

  • iwindow

  • windowloopinds

  • iall

source

',3))]),e("details",U,[e("summary",null,[s[120]||(s[120]=e("a",{id:"YAXArrays.DAT.OutputCube",href:"#YAXArrays.DAT.OutputCube"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.OutputCube")],-1)),s[121]||(s[121]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[122]||(s[122]=l('

Internal representation of an output cube for DAT operations

Fields

  • cube: The actual outcube cube, once it is generated

  • cube_unpermuted: The unpermuted output cube

  • desc: The description of the output axes as given by users or registration

  • axesSmall: The list of output axes determined through the description

  • allAxes: List of all the axes of the cube

  • loopinds: Index of the loop axes that are broadcasted for this output cube

  • innerchunks

  • outtype: Elementtype of the outputcube

source

',4))]),e("details",$,[e("summary",null,[s[123]||(s[123]=e("a",{id:"YAXArrays.DAT.YAXColumn",href:"#YAXArrays.DAT.YAXColumn"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.YAXColumn")],-1)),s[124]||(s[124]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[125]||(s[125]=l('
julia
YAXColumn

A struct representing a single column of a YAXArray partitioned Table # Fields

  • inarBC

  • inds

source

',4))]),e("details",H,[e("summary",null,[s[126]||(s[126]=e("a",{id:"YAXArrays.DAT.cmpcachmisses-Tuple{Any, Any}",href:"#YAXArrays.DAT.cmpcachmisses-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.cmpcachmisses")],-1)),s[127]||(s[127]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[128]||(s[128]=e("p",null,"Function that compares two cache miss specifiers by their importance",-1)),s[129]||(s[129]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DAT/DAT.jl#L957-L959",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",K,[e("summary",null,[s[130]||(s[130]=e("a",{id:"YAXArrays.DAT.getFrontPerm-Tuple{Any, Any}",href:"#YAXArrays.DAT.getFrontPerm-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.getFrontPerm")],-1)),s[131]||(s[131]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[132]||(s[132]=e("p",null,"Calculate an axis permutation that brings the wanted dimensions to the front",-1)),s[133]||(s[133]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DAT/DAT.jl#L1202",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",Z,[e("summary",null,[s[134]||(s[134]=e("a",{id:"YAXArrays.DAT.getLoopCacheSize-NTuple{5, Any}",href:"#YAXArrays.DAT.getLoopCacheSize-NTuple{5, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.getLoopCacheSize")],-1)),s[135]||(s[135]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[136]||(s[136]=e("p",null,"Calculate optimal Cache size to DAT operation",-1)),s[137]||(s[137]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DAT/DAT.jl#L1056",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",Q,[e("summary",null,[s[138]||(s[138]=e("a",{id:"YAXArrays.DAT.getOuttype-Tuple{Int64, Any}",href:"#YAXArrays.DAT.getOuttype-Tuple{Int64, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.getOuttype")],-1)),s[139]||(s[139]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[140]||(s[140]=l('
julia
getOuttype(outtype, cdata)

Internal function

Get the element type for the output cube

source

',4))]),e("details",_,[e("summary",null,[s[141]||(s[141]=e("a",{id:"YAXArrays.DAT.getloopchunks-Tuple{YAXArrays.DAT.DATConfig}",href:"#YAXArrays.DAT.getloopchunks-Tuple{YAXArrays.DAT.DATConfig}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.getloopchunks")],-1)),s[142]||(s[142]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[143]||(s[143]=l('
julia
getloopchunks(dc::DATConfig)

Internal function

Returns the chunks that can be looped over toghether for all dimensions.\nThis computation of the size of the chunks is handled by [`DiskArrays.approx_chunksize`](@ref)

source

',4))]),e("details",ss,[e("summary",null,[s[144]||(s[144]=e("a",{id:"YAXArrays.DAT.permuteloopaxes-Tuple{Any}",href:"#YAXArrays.DAT.permuteloopaxes-Tuple{Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.permuteloopaxes")],-1)),s[145]||(s[145]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[146]||(s[146]=l('
julia
permuteloopaxes(dc)

Internal function

Permute the dimensions of the cube, so that the axes that are looped through are in the first positions. This is necessary for a faster looping through the data.

source

',4))]),e("details",es,[e("summary",null,[s[147]||(s[147]=e("a",{id:"YAXArrays.Cubes.setchunks-Tuple{Dataset, Any}",href:"#YAXArrays.Cubes.setchunks-Tuple{Dataset, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.setchunks")],-1)),s[148]||(s[148]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[149]||(s[149]=l('
julia
setchunks(c::Dataset,chunks)

Resets the chunks of all or a subset YAXArrays in the dataset and returns a new Dataset. Note that this will not change the chunking of the underlying data itself, it will just make the data "look" like it had a different chunking. If you need a persistent on-disk representation of this chunking, use savedataset on the resulting array. The chunks argument can take one of the following forms:

  • a NamedTuple or AbstractDict mapping from variable name to a description of the desired variable chunks

  • a NamedTuple or AbstractDict mapping from dimension name to a description of the desired variable chunks

  • a description of the desired variable chunks applied to all members of the Dataset

where a description of the desired variable chunks can take one of the following forms:

  • a DiskArrays.GridChunks object

  • a tuple specifying the chunk size along each dimension

  • an AbstractDict or NamedTuple mapping one or more axis names to chunk sizes

source

',6))]),e("details",as,[e("summary",null,[s[150]||(s[150]=e("a",{id:"YAXArrays.Datasets.collectfromhandle-Tuple{Any, Any, Any}",href:"#YAXArrays.Datasets.collectfromhandle-Tuple{Any, Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.collectfromhandle")],-1)),s[151]||(s[151]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[152]||(s[152]=e("p",null,"Extracts a YAXArray from a dataset handle that was just created from a arrayinfo",-1)),s[153]||(s[153]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DatasetAPI/Datasets.jl#L543-L545",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",ts,[e("summary",null,[s[154]||(s[154]=e("a",{id:"YAXArrays.Datasets.createdataset-Tuple{Any, Any}",href:"#YAXArrays.Datasets.createdataset-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.createdataset")],-1)),s[155]||(s[155]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[156]||(s[156]=l('

function createdataset(DS::Type,axlist; kwargs...)

Creates a new dataset with axes specified in axlist. Each axis must be a subtype of CubeAxis. A new empty Zarr array will be created and can serve as a sink for mapCube operations.

Keyword arguments

  • path="" location where the new cube is stored

  • T=Union{Float32,Missing} data type of the target cube

  • chunksize = ntuple(i->length(axlist[i]),length(axlist)) chunk sizes of the array

  • chunkoffset = ntuple(i->0,length(axlist)) offsets of the chunks

  • persist::Bool=true shall the disk data be garbage-collected when the cube goes out of scope?

  • overwrite::Bool=false overwrite cube if it already exists

  • properties=Dict{String,Any}() additional cube properties

  • globalproperties=Dict{String,Any} global attributes to be added to the dataset

  • fillvalue= T>:Missing ? defaultfillval(Base.nonmissingtype(T)) : nothing fill value

  • datasetaxis="Variable" special treatment of a categorical axis that gets written into separate zarr arrays

  • layername="layer" Fallback name of the variable stored in the dataset if no datasetaxis is found

source

',6))]),e("details",is,[e("summary",null,[s[157]||(s[157]=e("a",{id:"YAXArrays.Datasets.getarrayinfo-Tuple{Any, Any}",href:"#YAXArrays.Datasets.getarrayinfo-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.getarrayinfo")],-1)),s[158]||(s[158]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[159]||(s[159]=e("p",null,"Extract necessary information to create a YAXArrayBase dataset from a name and YAXArray pair",-1)),s[160]||(s[160]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DatasetAPI/Datasets.jl#L512-L514",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",ls,[e("summary",null,[s[161]||(s[161]=e("a",{id:"YAXArrays.Datasets.testrange-Tuple{Any}",href:"#YAXArrays.Datasets.testrange-Tuple{Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.testrange")],-1)),s[162]||(s[162]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[163]||(s[163]=e("p",null,"Test if data in x can be approximated by a step range",-1)),s[164]||(s[164]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DatasetAPI/Datasets.jl#L312",target:"_blank",rel:"noreferrer"},"source")],-1))])])}const bs=n(d,[["render",ns]]);export{cs as __pageData,bs as default}; diff --git a/dev/assets/api.md.wIEA4sqI.lean.js b/dev/assets/api.md.C4RLD1GU.lean.js similarity index 92% rename from dev/assets/api.md.wIEA4sqI.lean.js rename to dev/assets/api.md.C4RLD1GU.lean.js index e97c1307..38f9d389 100644 --- a/dev/assets/api.md.wIEA4sqI.lean.js +++ b/dev/assets/api.md.C4RLD1GU.lean.js @@ -1,12 +1,12 @@ -import{_ as n,c as o,j as e,a,G as i,a2 as l,B as r,o as p}from"./chunks/framework.swGcc4Ky.js";const hs=JSON.parse('{"title":"API Reference","description":"","frontmatter":{},"headers":[],"relativePath":"api.md","filePath":"api.md","lastUpdated":null}'),d={name:"api.md"},u={class:"jldocstring custom-block",open:""},c={class:"jldocstring custom-block",open:""},h={class:"jldocstring custom-block",open:""},b={class:"jldocstring custom-block",open:""},y={class:"jldocstring custom-block",open:""},k={class:"jldocstring custom-block",open:""},g={class:"jldocstring custom-block",open:""},A={class:"jldocstring custom-block",open:""},f={class:"jldocstring custom-block",open:""},m={class:"jldocstring custom-block",open:""},j={class:"jldocstring custom-block",open:""},E={class:"jldocstring custom-block",open:""},C={class:"jldocstring custom-block",open:""},D={class:"jldocstring custom-block",open:""},T={class:"jldocstring custom-block",open:""},v={class:"jldocstring custom-block",open:""},X={class:"jldocstring custom-block",open:""},Y={class:"jldocstring custom-block",open:""},x={class:"jldocstring custom-block",open:""},F={class:"jldocstring custom-block",open:""},w={class:"jldocstring custom-block",open:""},L={class:"jldocstring custom-block",open:""},M={class:"jldocstring custom-block",open:""},B={class:"jldocstring custom-block",open:""},O={class:"jldocstring custom-block",open:""},I={class:"jldocstring custom-block",open:""},J={class:"jldocstring custom-block",open:""},P={class:"jldocstring custom-block",open:""},q={class:"jldocstring custom-block",open:""},z={class:"jldocstring custom-block",open:""},N={class:"jldocstring custom-block",open:""},S={class:"jldocstring custom-block",open:""},V={class:"jldocstring custom-block",open:""},R={class:"jldocstring custom-block",open:""},G={class:"jldocstring custom-block",open:""},W={class:"jldocstring custom-block",open:""},U={class:"jldocstring custom-block",open:""},$={class:"jldocstring custom-block",open:""},H={class:"jldocstring custom-block",open:""},K={class:"jldocstring custom-block",open:""},Z={class:"jldocstring custom-block",open:""},Q={class:"jldocstring custom-block",open:""},_={class:"jldocstring custom-block",open:""},ss={class:"jldocstring custom-block",open:""},es={class:"jldocstring custom-block",open:""},as={class:"jldocstring custom-block",open:""},ts={class:"jldocstring custom-block",open:""},is={class:"jldocstring custom-block",open:""},ls={class:"jldocstring custom-block",open:""};function ns(os,s,rs,ps,ds,us){const t=r("Badge");return p(),o("div",null,[s[165]||(s[165]=e("h1",{id:"API-Reference",tabindex:"-1"},[a("API Reference "),e("a",{class:"header-anchor",href:"#API-Reference","aria-label":'Permalink to "API Reference {#API-Reference}"'},"​")],-1)),s[166]||(s[166]=e("p",null,"This section describes all available functions of this package.",-1)),s[167]||(s[167]=e("h2",{id:"Public-API",tabindex:"-1"},[a("Public API "),e("a",{class:"header-anchor",href:"#Public-API","aria-label":'Permalink to "Public API {#Public-API}"'},"​")],-1)),e("details",u,[e("summary",null,[s[0]||(s[0]=e("a",{id:"YAXArrays.getAxis-Tuple{Any, Any}",href:"#YAXArrays.getAxis-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.getAxis")],-1)),s[1]||(s[1]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[2]||(s[2]=l('
julia
getAxis(desc, c)

Given an Axis description and a cube, returns the corresponding axis of the cube. The Axis description can be:

  • the name as a string or symbol.

  • an Axis object

source

',4))]),e("details",c,[e("summary",null,[s[3]||(s[3]=e("a",{id:"YAXArrays.Cubes",href:"#YAXArrays.Cubes"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes")],-1)),s[4]||(s[4]=a()),i(t,{type:"info",class:"jlObjectType jlModule",text:"Module"})]),s[5]||(s[5]=e("p",null,"The functions provided by YAXArrays are supposed to work on different types of cubes. This module defines the interface for all Data types that",-1)),s[6]||(s[6]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/Cubes/Cubes.jl#L1-L4",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",h,[e("summary",null,[s[7]||(s[7]=e("a",{id:"YAXArrays.Cubes.YAXArray",href:"#YAXArrays.Cubes.YAXArray"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.YAXArray")],-1)),s[8]||(s[8]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[9]||(s[9]=l('
julia
YAXArray{T,N}

An array labelled with named axes that have values associated with them. It can wrap normal arrays or, more typically DiskArrays.

Fields

  • axes: Tuple of Dimensions containing the Axes of the Cube

  • data: length(axes)-dimensional array which holds the data, this can be a lazy DiskArray

  • properties: Metadata properties describing the content of the data

  • chunks: Representation of the chunking of the data

  • cleaner: Cleaner objects to track which objects to tidy up when the YAXArray goes out of scope

source

',5))]),e("details",b,[e("summary",null,[s[10]||(s[10]=e("a",{id:"YAXArrays.Cubes.caxes",href:"#YAXArrays.Cubes.caxes"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.caxes")],-1)),s[11]||(s[11]=a()),i(t,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[12]||(s[12]=e("p",null,"Returns the axes of a Cube",-1)),s[13]||(s[13]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/Cubes/Cubes.jl#L27",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",y,[e("summary",null,[s[14]||(s[14]=e("a",{id:"YAXArrays.Cubes.caxes-Tuple{DimensionalData.Dimensions.Dimension}",href:"#YAXArrays.Cubes.caxes-Tuple{DimensionalData.Dimensions.Dimension}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.caxes")],-1)),s[15]||(s[15]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[16]||(s[16]=l('
julia
caxes

Embeds Cube inside a new Cube

source

',3))]),e("details",k,[e("summary",null,[s[17]||(s[17]=e("a",{id:"YAXArrays.Cubes.concatenatecubes-Tuple{Any, DimensionalData.Dimensions.Dimension}",href:"#YAXArrays.Cubes.concatenatecubes-Tuple{Any, DimensionalData.Dimensions.Dimension}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.concatenatecubes")],-1)),s[18]||(s[18]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[19]||(s[19]=l('
julia
function concatenateCubes(cubelist, cataxis::CategoricalAxis)

Concatenates a vector of datacubes that have identical axes to a new single cube along the new axis cataxis

source

',3))]),e("details",g,[e("summary",null,[s[20]||(s[20]=e("a",{id:"YAXArrays.Cubes.readcubedata-Tuple{Any}",href:"#YAXArrays.Cubes.readcubedata-Tuple{Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.readcubedata")],-1)),s[21]||(s[21]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[22]||(s[22]=l('
julia
readcubedata(cube)

Given any array implementing the YAXArray interface it returns an in-memory YAXArray from it.

source

',3))]),e("details",A,[e("summary",null,[s[23]||(s[23]=e("a",{id:"YAXArrays.Cubes.setchunks-Tuple{YAXArray, Any}",href:"#YAXArrays.Cubes.setchunks-Tuple{YAXArray, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.setchunks")],-1)),s[24]||(s[24]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[25]||(s[25]=l('
julia
setchunks(c::YAXArray,chunks)

Resets the chunks of a YAXArray and returns a new YAXArray. Note that this will not change the chunking of the underlying data itself, it will just make the data "look" like it had a different chunking. If you need a persistent on-disk representation of this chunking, use savecube on the resulting array. The chunks argument can take one of the following forms:

  • a DiskArrays.GridChunks object

  • a tuple specifying the chunk size along each dimension

  • an AbstractDict or NamedTuple mapping one or more axis names to chunk sizes

source

',4))]),e("details",f,[e("summary",null,[s[26]||(s[26]=e("a",{id:"YAXArrays.Cubes.subsetcube",href:"#YAXArrays.Cubes.subsetcube"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.subsetcube")],-1)),s[27]||(s[27]=a()),i(t,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[28]||(s[28]=e("p",null,"This function calculates a subset of a cube's data",-1)),s[29]||(s[29]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/Cubes/Cubes.jl#L22-L24",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",m,[e("summary",null,[s[30]||(s[30]=e("a",{id:"YAXArrays.DAT.InDims",href:"#YAXArrays.DAT.InDims"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.InDims")],-1)),s[31]||(s[31]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[32]||(s[32]=l('
julia
InDims(axisdesc...;...)

Creates a description of an Input Data Cube for cube operations. Takes a single or multiple axis descriptions as first arguments. Alternatively a MovingWindow(@ref) struct can be passed to include neighbour slices of one or more axes in the computation. Axes can be specified by their name (String), through an Axis type, or by passing a concrete axis.

Keyword arguments

  • artype how shall the array be represented in the inner function. Defaults to Array, alternatives are DataFrame or AsAxisArray

  • filter define some filter to skip the computation, e.g. when all values are missing. Defaults to AllMissing(), possible values are AnyMissing(), AnyOcean(), StdZero(), NValid(n) (for at least n non-missing elements). It is also possible to provide a custom one-argument function that takes the array and returns true if the compuation shall be skipped and false otherwise.

  • window_oob_value if one of the input dimensions is a MowingWindow, this value will be used to fill out-of-bounds areas

source

',5))]),e("details",j,[e("summary",null,[s[33]||(s[33]=e("a",{id:"YAXArrays.DAT.MovingWindow",href:"#YAXArrays.DAT.MovingWindow"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.MovingWindow")],-1)),s[34]||(s[34]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[35]||(s[35]=l('
julia
MovingWindow(desc, pre, after)

Constructs a MovingWindow object to be passed to an InDims constructor to define that the axis in desc shall participate in the inner function (i.e. shall be looped over), but inside the inner function pre values before and after values after the center value will be passed as well.

For example passing MovingWindow("Time", 2, 0) will loop over the time axis and always pass the current time step plus the 2 previous steps. So in the inner function the array will have an additional dimension of size 3.

source

',4))]),e("details",E,[e("summary",null,[s[36]||(s[36]=e("a",{id:"YAXArrays.DAT.OutDims-Tuple",href:"#YAXArrays.DAT.OutDims-Tuple"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.OutDims")],-1)),s[37]||(s[37]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[38]||(s[38]=l('
julia
OutDims(axisdesc;...)

Creates a description of an Output Data Cube for cube operations. Takes a single or a Vector/Tuple of axes as first argument. Axes can be specified by their name (String), through an Axis type, or by passing a concrete axis.

  • axisdesc: List of input axis names

  • backend : specifies the dataset backend to write data to, must be either :auto or a key in YAXArrayBase.backendlist

  • update : specifies wether the function operates inplace or if an output is returned

  • artype : specifies the Array type inside the inner function that is mapped over

  • chunksize: A Dict specifying the chunksizes for the output dimensions of the cube, or :input to copy chunksizes from input cube axes or :max to not chunk the inner dimensions

  • outtype: force the output type to a specific type, defaults to Any which means that the element type of the first input cube is used

source

',4))]),e("details",C,[e("summary",null,[s[39]||(s[39]=e("a",{id:"YAXArrays.DAT.CubeTable-Tuple{}",href:"#YAXArrays.DAT.CubeTable-Tuple{}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.CubeTable")],-1)),s[40]||(s[40]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[41]||(s[41]=l('
julia
CubeTable()

Function to turn a DataCube object into an iterable table. Takes a list of as arguments, specified as a name=cube expression. For example CubeTable(data=cube1,country=cube2) would generate a Table with the entries data and country, where data contains the values of cube1 and country the values of cube2. The cubes are matched and broadcasted along their axes like in mapCube.

source

',3))]),e("details",D,[e("summary",null,[s[42]||(s[42]=e("a",{id:"YAXArrays.DAT.cubefittable-Tuple{Any, Any, Any}",href:"#YAXArrays.DAT.cubefittable-Tuple{Any, Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.cubefittable")],-1)),s[43]||(s[43]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[44]||(s[44]=l('
julia
cubefittable(tab,o,fitsym;post=getpostfunction(o),kwargs...)

Executes fittable on the CubeTable tab with the (Weighted-)OnlineStat o, looping through the values specified by fitsym. Finally, writes the results from the TableAggregator to an output data cube.

source

',3))]),e("details",T,[e("summary",null,[s[45]||(s[45]=e("a",{id:"YAXArrays.DAT.fittable-Tuple{YAXArrays.DAT.CubeIterator, Any, Any}",href:"#YAXArrays.DAT.fittable-Tuple{YAXArrays.DAT.CubeIterator, Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.fittable")],-1)),s[46]||(s[46]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[47]||(s[47]=l('
julia
fittable(tab,o,fitsym;by=(),weight=nothing)

Loops through an iterable table tab and thereby fitting an OnlineStat o with the values specified through fitsym. Optionally one can specify a field (or tuple) to group by. Any groupby specifier can either be a symbol denoting the entry to group by or an anynymous function calculating the group from a table row.

For example the following would caluclate a weighted mean over a cube weighted by grid cell area and grouped by country and month:

julia
fittable(iter,WeightedMean,:tair,weight=(i->abs(cosd(i.lat))),by=(i->month(i.time),:country))

source

',5))]),e("details",v,[e("summary",null,[s[48]||(s[48]=e("a",{id:"YAXArrays.DAT.mapCube-Tuple{Function, Dataset, Vararg{Any}}",href:"#YAXArrays.DAT.mapCube-Tuple{Function, Dataset, Vararg{Any}}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.mapCube")],-1)),s[49]||(s[49]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[50]||(s[50]=l(`
julia
mapCube(fun, cube, addargs...;kwargs...)
+import{_ as n,c as o,j as e,a,G as i,a2 as l,B as r,o as p}from"./chunks/framework.swGcc4Ky.js";const cs=JSON.parse('{"title":"API Reference","description":"","frontmatter":{},"headers":[],"relativePath":"api.md","filePath":"api.md","lastUpdated":null}'),d={name:"api.md"},u={class:"jldocstring custom-block",open:""},h={class:"jldocstring custom-block",open:""},c={class:"jldocstring custom-block",open:""},b={class:"jldocstring custom-block",open:""},y={class:"jldocstring custom-block",open:""},k={class:"jldocstring custom-block",open:""},g={class:"jldocstring custom-block",open:""},A={class:"jldocstring custom-block",open:""},f={class:"jldocstring custom-block",open:""},m={class:"jldocstring custom-block",open:""},j={class:"jldocstring custom-block",open:""},E={class:"jldocstring custom-block",open:""},C={class:"jldocstring custom-block",open:""},D={class:"jldocstring custom-block",open:""},T={class:"jldocstring custom-block",open:""},v={class:"jldocstring custom-block",open:""},X={class:"jldocstring custom-block",open:""},Y={class:"jldocstring custom-block",open:""},x={class:"jldocstring custom-block",open:""},F={class:"jldocstring custom-block",open:""},w={class:"jldocstring custom-block",open:""},L={class:"jldocstring custom-block",open:""},M={class:"jldocstring custom-block",open:""},B={class:"jldocstring custom-block",open:""},O={class:"jldocstring custom-block",open:""},I={class:"jldocstring custom-block",open:""},J={class:"jldocstring custom-block",open:""},P={class:"jldocstring custom-block",open:""},q={class:"jldocstring custom-block",open:""},z={class:"jldocstring custom-block",open:""},N={class:"jldocstring custom-block",open:""},S={class:"jldocstring custom-block",open:""},V={class:"jldocstring custom-block",open:""},R={class:"jldocstring custom-block",open:""},G={class:"jldocstring custom-block",open:""},W={class:"jldocstring custom-block",open:""},U={class:"jldocstring custom-block",open:""},$={class:"jldocstring custom-block",open:""},H={class:"jldocstring custom-block",open:""},K={class:"jldocstring custom-block",open:""},Z={class:"jldocstring custom-block",open:""},Q={class:"jldocstring custom-block",open:""},_={class:"jldocstring custom-block",open:""},ss={class:"jldocstring custom-block",open:""},es={class:"jldocstring custom-block",open:""},as={class:"jldocstring custom-block",open:""},ts={class:"jldocstring custom-block",open:""},is={class:"jldocstring custom-block",open:""},ls={class:"jldocstring custom-block",open:""};function ns(os,s,rs,ps,ds,us){const t=r("Badge");return p(),o("div",null,[s[165]||(s[165]=e("h1",{id:"API-Reference",tabindex:"-1"},[a("API Reference "),e("a",{class:"header-anchor",href:"#API-Reference","aria-label":'Permalink to "API Reference {#API-Reference}"'},"​")],-1)),s[166]||(s[166]=e("p",null,"This section describes all available functions of this package.",-1)),s[167]||(s[167]=e("h2",{id:"Public-API",tabindex:"-1"},[a("Public API "),e("a",{class:"header-anchor",href:"#Public-API","aria-label":'Permalink to "Public API {#Public-API}"'},"​")],-1)),e("details",u,[e("summary",null,[s[0]||(s[0]=e("a",{id:"YAXArrays.getAxis-Tuple{Any, Any}",href:"#YAXArrays.getAxis-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.getAxis")],-1)),s[1]||(s[1]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[2]||(s[2]=l('
julia
getAxis(desc, c)

Given an Axis description and a cube, returns the corresponding axis of the cube. The Axis description can be:

  • the name as a string or symbol.

  • an Axis object

source

',4))]),e("details",h,[e("summary",null,[s[3]||(s[3]=e("a",{id:"YAXArrays.Cubes",href:"#YAXArrays.Cubes"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes")],-1)),s[4]||(s[4]=a()),i(t,{type:"info",class:"jlObjectType jlModule",text:"Module"})]),s[5]||(s[5]=e("p",null,"The functions provided by YAXArrays are supposed to work on different types of cubes. This module defines the interface for all Data types that",-1)),s[6]||(s[6]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/Cubes/Cubes.jl#L1-L4",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",c,[e("summary",null,[s[7]||(s[7]=e("a",{id:"YAXArrays.Cubes.YAXArray",href:"#YAXArrays.Cubes.YAXArray"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.YAXArray")],-1)),s[8]||(s[8]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[9]||(s[9]=l('
julia
YAXArray{T,N}

An array labelled with named axes that have values associated with them. It can wrap normal arrays or, more typically DiskArrays.

Fields

  • axes: Tuple of Dimensions containing the Axes of the Cube

  • data: length(axes)-dimensional array which holds the data, this can be a lazy DiskArray

  • properties: Metadata properties describing the content of the data

  • chunks: Representation of the chunking of the data

  • cleaner: Cleaner objects to track which objects to tidy up when the YAXArray goes out of scope

source

',5))]),e("details",b,[e("summary",null,[s[10]||(s[10]=e("a",{id:"YAXArrays.Cubes.caxes",href:"#YAXArrays.Cubes.caxes"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.caxes")],-1)),s[11]||(s[11]=a()),i(t,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[12]||(s[12]=e("p",null,"Returns the axes of a Cube",-1)),s[13]||(s[13]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/Cubes/Cubes.jl#L27",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",y,[e("summary",null,[s[14]||(s[14]=e("a",{id:"YAXArrays.Cubes.caxes-Tuple{DimensionalData.Dimensions.Dimension}",href:"#YAXArrays.Cubes.caxes-Tuple{DimensionalData.Dimensions.Dimension}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.caxes")],-1)),s[15]||(s[15]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[16]||(s[16]=l('
julia
caxes

Embeds Cube inside a new Cube

source

',3))]),e("details",k,[e("summary",null,[s[17]||(s[17]=e("a",{id:"YAXArrays.Cubes.concatenatecubes-Tuple{Any, DimensionalData.Dimensions.Dimension}",href:"#YAXArrays.Cubes.concatenatecubes-Tuple{Any, DimensionalData.Dimensions.Dimension}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.concatenatecubes")],-1)),s[18]||(s[18]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[19]||(s[19]=l('
julia
function concatenateCubes(cubelist, cataxis::CategoricalAxis)

Concatenates a vector of datacubes that have identical axes to a new single cube along the new axis cataxis

source

',3))]),e("details",g,[e("summary",null,[s[20]||(s[20]=e("a",{id:"YAXArrays.Cubes.readcubedata-Tuple{Any}",href:"#YAXArrays.Cubes.readcubedata-Tuple{Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.readcubedata")],-1)),s[21]||(s[21]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[22]||(s[22]=l('
julia
readcubedata(cube)

Given any array implementing the YAXArray interface it returns an in-memory YAXArray from it.

source

',3))]),e("details",A,[e("summary",null,[s[23]||(s[23]=e("a",{id:"YAXArrays.Cubes.setchunks-Tuple{YAXArray, Any}",href:"#YAXArrays.Cubes.setchunks-Tuple{YAXArray, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.setchunks")],-1)),s[24]||(s[24]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[25]||(s[25]=l('
julia
setchunks(c::YAXArray,chunks)

Resets the chunks of a YAXArray and returns a new YAXArray. Note that this will not change the chunking of the underlying data itself, it will just make the data "look" like it had a different chunking. If you need a persistent on-disk representation of this chunking, use savecube on the resulting array. The chunks argument can take one of the following forms:

  • a DiskArrays.GridChunks object

  • a tuple specifying the chunk size along each dimension

  • an AbstractDict or NamedTuple mapping one or more axis names to chunk sizes

source

',4))]),e("details",f,[e("summary",null,[s[26]||(s[26]=e("a",{id:"YAXArrays.Cubes.subsetcube",href:"#YAXArrays.Cubes.subsetcube"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.subsetcube")],-1)),s[27]||(s[27]=a()),i(t,{type:"info",class:"jlObjectType jlFunction",text:"Function"})]),s[28]||(s[28]=e("p",null,"This function calculates a subset of a cube's data",-1)),s[29]||(s[29]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/Cubes/Cubes.jl#L22-L24",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",m,[e("summary",null,[s[30]||(s[30]=e("a",{id:"YAXArrays.DAT.InDims",href:"#YAXArrays.DAT.InDims"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.InDims")],-1)),s[31]||(s[31]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[32]||(s[32]=l('
julia
InDims(axisdesc...;...)

Creates a description of an Input Data Cube for cube operations. Takes a single or multiple axis descriptions as first arguments. Alternatively a MovingWindow(@ref) struct can be passed to include neighbour slices of one or more axes in the computation. Axes can be specified by their name (String), through an Axis type, or by passing a concrete axis.

Keyword arguments

  • artype how shall the array be represented in the inner function. Defaults to Array, alternatives are DataFrame or AsAxisArray

  • filter define some filter to skip the computation, e.g. when all values are missing. Defaults to AllMissing(), possible values are AnyMissing(), AnyOcean(), StdZero(), NValid(n) (for at least n non-missing elements). It is also possible to provide a custom one-argument function that takes the array and returns true if the compuation shall be skipped and false otherwise.

  • window_oob_value if one of the input dimensions is a MowingWindow, this value will be used to fill out-of-bounds areas

source

',5))]),e("details",j,[e("summary",null,[s[33]||(s[33]=e("a",{id:"YAXArrays.DAT.MovingWindow",href:"#YAXArrays.DAT.MovingWindow"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.MovingWindow")],-1)),s[34]||(s[34]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[35]||(s[35]=l('
julia
MovingWindow(desc, pre, after)

Constructs a MovingWindow object to be passed to an InDims constructor to define that the axis in desc shall participate in the inner function (i.e. shall be looped over), but inside the inner function pre values before and after values after the center value will be passed as well.

For example passing MovingWindow("Time", 2, 0) will loop over the time axis and always pass the current time step plus the 2 previous steps. So in the inner function the array will have an additional dimension of size 3.

source

',4))]),e("details",E,[e("summary",null,[s[36]||(s[36]=e("a",{id:"YAXArrays.DAT.OutDims-Tuple",href:"#YAXArrays.DAT.OutDims-Tuple"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.OutDims")],-1)),s[37]||(s[37]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[38]||(s[38]=l('
julia
OutDims(axisdesc;...)

Creates a description of an Output Data Cube for cube operations. Takes a single or a Vector/Tuple of axes as first argument. Axes can be specified by their name (String), through an Axis type, or by passing a concrete axis.

  • axisdesc: List of input axis names

  • backend : specifies the dataset backend to write data to, must be either :auto or a key in YAXArrayBase.backendlist

  • update : specifies wether the function operates inplace or if an output is returned

  • artype : specifies the Array type inside the inner function that is mapped over

  • chunksize: A Dict specifying the chunksizes for the output dimensions of the cube, or :input to copy chunksizes from input cube axes or :max to not chunk the inner dimensions

  • outtype: force the output type to a specific type, defaults to Any which means that the element type of the first input cube is used

source

',4))]),e("details",C,[e("summary",null,[s[39]||(s[39]=e("a",{id:"YAXArrays.DAT.CubeTable-Tuple{}",href:"#YAXArrays.DAT.CubeTable-Tuple{}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.CubeTable")],-1)),s[40]||(s[40]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[41]||(s[41]=l('
julia
CubeTable()

Function to turn a DataCube object into an iterable table. Takes a list of as arguments, specified as a name=cube expression. For example CubeTable(data=cube1,country=cube2) would generate a Table with the entries data and country, where data contains the values of cube1 and country the values of cube2. The cubes are matched and broadcasted along their axes like in mapCube.

source

',3))]),e("details",D,[e("summary",null,[s[42]||(s[42]=e("a",{id:"YAXArrays.DAT.cubefittable-Tuple{Any, Any, Any}",href:"#YAXArrays.DAT.cubefittable-Tuple{Any, Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.cubefittable")],-1)),s[43]||(s[43]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[44]||(s[44]=l('
julia
cubefittable(tab,o,fitsym;post=getpostfunction(o),kwargs...)

Executes fittable on the CubeTable tab with the (Weighted-)OnlineStat o, looping through the values specified by fitsym. Finally, writes the results from the TableAggregator to an output data cube.

source

',3))]),e("details",T,[e("summary",null,[s[45]||(s[45]=e("a",{id:"YAXArrays.DAT.fittable-Tuple{YAXArrays.DAT.CubeIterator, Any, Any}",href:"#YAXArrays.DAT.fittable-Tuple{YAXArrays.DAT.CubeIterator, Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.fittable")],-1)),s[46]||(s[46]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[47]||(s[47]=l('
julia
fittable(tab,o,fitsym;by=(),weight=nothing)

Loops through an iterable table tab and thereby fitting an OnlineStat o with the values specified through fitsym. Optionally one can specify a field (or tuple) to group by. Any groupby specifier can either be a symbol denoting the entry to group by or an anynymous function calculating the group from a table row.

For example the following would caluclate a weighted mean over a cube weighted by grid cell area and grouped by country and month:

julia
fittable(iter,WeightedMean,:tair,weight=(i->abs(cosd(i.lat))),by=(i->month(i.time),:country))

source

',5))]),e("details",v,[e("summary",null,[s[48]||(s[48]=e("a",{id:"YAXArrays.DAT.mapCube-Tuple{Function, Dataset, Vararg{Any}}",href:"#YAXArrays.DAT.mapCube-Tuple{Function, Dataset, Vararg{Any}}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.mapCube")],-1)),s[49]||(s[49]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[50]||(s[50]=l(`
julia
mapCube(fun, cube, addargs...;kwargs...)
 
 Map a given function \`fun\` over slices of all cubes of the dataset \`ds\`. 
 Use InDims to discribe the input dimensions and OutDims to describe the output dimensions of the function.
 For Datasets, only one output cube can be specified.
 In contrast to the mapCube function for cubes, additional arguments for the inner function should be set as keyword arguments.
 
-For the specific keyword arguments see the docstring of the mapCube function for cubes.

source

`,2))]),e("details",X,[e("summary",null,[s[51]||(s[51]=e("a",{id:"YAXArrays.DAT.mapCube-Tuple{Function, Tuple, Vararg{Any}}",href:"#YAXArrays.DAT.mapCube-Tuple{Function, Tuple, Vararg{Any}}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.mapCube")],-1)),s[52]||(s[52]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[53]||(s[53]=l('
julia
mapCube(fun, cube, addargs...;kwargs...)

Map a given function fun over slices of the data cube cube. The additional arguments addargs will be forwarded to the inner function fun. Use InDims to discribe the input dimensions and OutDims to describe the output dimensions of the function.

Keyword arguments

  • max_cache=YAXDefaults.max_cache Float64 maximum size of blocks that are read into memory in bits e.g. max_cache=5.0e8. Or String. e.g. max_cache="10MB" ormax_cache=1GB``` defaults to approx 10Mb.

  • indims::InDims List of input cube descriptors of type InDims for each input data cube.

  • outdims::OutDims List of output cube descriptors of type OutDims for each output cube.

  • inplace does the function write to an output array inplace or return a single value> defaults to true

  • ispar boolean to determine if parallelisation should be applied, defaults to true if workers are available.

  • showprog boolean indicating if a ProgressMeter shall be shown

  • include_loopvars boolean to indicate if the varoables looped over should be added as function arguments

  • nthreads number of threads for the computation, defaults to Threads.nthreads for every worker.

  • loopchunksize determines the chunk sizes of variables which are looped over, a dict

  • kwargs additional keyword arguments are passed to the inner function

The first argument is always the function to be applied, the second is the input cube or a tuple of input cubes if needed.

source

',6))]),e("details",Y,[e("summary",null,[s[54]||(s[54]=e("a",{id:"YAXArrays.Datasets.Dataset",href:"#YAXArrays.Datasets.Dataset"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.Dataset")],-1)),s[55]||(s[55]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[56]||(s[56]=l('
julia
Dataset object which stores an `OrderedDict` of YAXArrays with Symbol keys.\na dictionary of CubeAxes and a Dictionary of general properties.\nA dictionary can hold cubes with differing axes. But it will share the common axes between the subcubes.

source

',2))]),e("details",x,[e("summary",null,[s[57]||(s[57]=e("a",{id:"YAXArrays.Datasets.Dataset-Tuple{}",href:"#YAXArrays.Datasets.Dataset-Tuple{}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.Dataset")],-1)),s[58]||(s[58]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[59]||(s[59]=e("p",null,"Dataset(; properties = Dict{String,Any}, cubes...)",-1)),s[60]||(s[60]=e("p",null,[a("Construct a YAXArray Dataset with global attributes "),e("code",null,"properties"),a(" a and a list of named YAXArrays cubes...")],-1)),s[61]||(s[61]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DatasetAPI/Datasets.jl#L28-L32",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",F,[e("summary",null,[s[62]||(s[62]=e("a",{id:"YAXArrays.Datasets.Cube-Tuple{Dataset}",href:"#YAXArrays.Datasets.Cube-Tuple{Dataset}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.Cube")],-1)),s[63]||(s[63]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[64]||(s[64]=l('
julia
Cube(ds::Dataset; joinname="Variable")

Construct a single YAXArray from the dataset ds by concatenating the cubes in the datset on the joinname dimension.

source

',3))]),e("details",w,[e("summary",null,[s[65]||(s[65]=e("a",{id:"YAXArrays.Datasets.open_dataset-Tuple{Any}",href:"#YAXArrays.Datasets.open_dataset-Tuple{Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.open_dataset")],-1)),s[66]||(s[66]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[67]||(s[67]=e("p",null,"open_dataset(g; driver=:all)",-1)),s[68]||(s[68]=e("p",null,[a("Open the dataset at "),e("code",null,"g"),a(" with the given "),e("code",null,"driver"),a(". The default driver will search for available drivers and tries to detect the useable driver from the filename extension.")],-1)),s[69]||(s[69]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DatasetAPI/Datasets.jl#L398-L403",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",L,[e("summary",null,[s[70]||(s[70]=e("a",{id:'YAXArrays.Datasets.open_mfdataset-Tuple{DimensionalData.DimVector{var"#s37", D, R, A} where {var"#s37"<:AbstractString, D<:Tuple, R<:Tuple, A<:AbstractVector{var"#s37"}}}',href:'#YAXArrays.Datasets.open_mfdataset-Tuple{DimensionalData.DimVector{var"#s37", D, R, A} where {var"#s37"<:AbstractString, D<:Tuple, R<:Tuple, A<:AbstractVector{var"#s37"}}}'},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.open_mfdataset")],-1)),s[71]||(s[71]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[72]||(s[72]=l(`
julia
open_mfdataset(files::DD.DimVector{<:AbstractString}; kwargs...)

Opens and concatenates a list of dataset paths along the dimension specified in files. This method can be used when the generic glob-based version of open_mfdataset fails or is too slow. For example, to concatenate a list of annual NetCDF files along the Ti dimension, one can use:

julia
files = ["1990.nc","1991.nc","1992.nc"]
+For the specific keyword arguments see the docstring of the mapCube function for cubes.

source

`,2))]),e("details",X,[e("summary",null,[s[51]||(s[51]=e("a",{id:"YAXArrays.DAT.mapCube-Tuple{Function, Tuple, Vararg{Any}}",href:"#YAXArrays.DAT.mapCube-Tuple{Function, Tuple, Vararg{Any}}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.mapCube")],-1)),s[52]||(s[52]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[53]||(s[53]=l('
julia
mapCube(fun, cube, addargs...;kwargs...)

Map a given function fun over slices of the data cube cube. The additional arguments addargs will be forwarded to the inner function fun. Use InDims to discribe the input dimensions and OutDims to describe the output dimensions of the function.

Keyword arguments

  • max_cache=YAXDefaults.max_cache Float64 maximum size of blocks that are read into memory in bits e.g. max_cache=5.0e8. Or String. e.g. max_cache="10MB" ormax_cache=1GB``` defaults to approx 10Mb.

  • indims::InDims List of input cube descriptors of type InDims for each input data cube.

  • outdims::OutDims List of output cube descriptors of type OutDims for each output cube.

  • inplace does the function write to an output array inplace or return a single value> defaults to true

  • ispar boolean to determine if parallelisation should be applied, defaults to true if workers are available.

  • showprog boolean indicating if a ProgressMeter shall be shown

  • include_loopvars boolean to indicate if the varoables looped over should be added as function arguments

  • nthreads number of threads for the computation, defaults to Threads.nthreads for every worker.

  • loopchunksize determines the chunk sizes of variables which are looped over, a dict

  • kwargs additional keyword arguments are passed to the inner function

The first argument is always the function to be applied, the second is the input cube or a tuple of input cubes if needed.

source

',6))]),e("details",Y,[e("summary",null,[s[54]||(s[54]=e("a",{id:"YAXArrays.Datasets.Dataset",href:"#YAXArrays.Datasets.Dataset"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.Dataset")],-1)),s[55]||(s[55]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[56]||(s[56]=l('
julia
Dataset object which stores an `OrderedDict` of YAXArrays with Symbol keys.\na dictionary of CubeAxes and a Dictionary of general properties.\nA dictionary can hold cubes with differing axes. But it will share the common axes between the subcubes.

source

',2))]),e("details",x,[e("summary",null,[s[57]||(s[57]=e("a",{id:"YAXArrays.Datasets.Dataset-Tuple{}",href:"#YAXArrays.Datasets.Dataset-Tuple{}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.Dataset")],-1)),s[58]||(s[58]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[59]||(s[59]=e("p",null,"Dataset(; properties = Dict{String,Any}, cubes...)",-1)),s[60]||(s[60]=e("p",null,[a("Construct a YAXArray Dataset with global attributes "),e("code",null,"properties"),a(" a and a list of named YAXArrays cubes...")],-1)),s[61]||(s[61]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DatasetAPI/Datasets.jl#L28-L32",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",F,[e("summary",null,[s[62]||(s[62]=e("a",{id:"YAXArrays.Datasets.Cube-Tuple{Dataset}",href:"#YAXArrays.Datasets.Cube-Tuple{Dataset}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.Cube")],-1)),s[63]||(s[63]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[64]||(s[64]=l('
julia
Cube(ds::Dataset; joinname="Variable")

Construct a single YAXArray from the dataset ds by concatenating the cubes in the datset on the joinname dimension.

source

',3))]),e("details",w,[e("summary",null,[s[65]||(s[65]=e("a",{id:"YAXArrays.Datasets.open_dataset-Tuple{Any}",href:"#YAXArrays.Datasets.open_dataset-Tuple{Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.open_dataset")],-1)),s[66]||(s[66]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[67]||(s[67]=e("p",null,"open_dataset(g; driver=:all)",-1)),s[68]||(s[68]=e("p",null,[a("Open the dataset at "),e("code",null,"g"),a(" with the given "),e("code",null,"driver"),a(". The default driver will search for available drivers and tries to detect the useable driver from the filename extension.")],-1)),s[69]||(s[69]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DatasetAPI/Datasets.jl#L408-L413",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",L,[e("summary",null,[s[70]||(s[70]=e("a",{id:'YAXArrays.Datasets.open_mfdataset-Tuple{DimensionalData.DimVector{var"#s37", D, R, A} where {var"#s37"<:AbstractString, D<:Tuple, R<:Tuple, A<:AbstractVector{var"#s37"}}}',href:'#YAXArrays.Datasets.open_mfdataset-Tuple{DimensionalData.DimVector{var"#s37", D, R, A} where {var"#s37"<:AbstractString, D<:Tuple, R<:Tuple, A<:AbstractVector{var"#s37"}}}'},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.open_mfdataset")],-1)),s[71]||(s[71]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[72]||(s[72]=l(`
julia
open_mfdataset(files::DD.DimVector{<:AbstractString}; kwargs...)

Opens and concatenates a list of dataset paths along the dimension specified in files. This method can be used when the generic glob-based version of open_mfdataset fails or is too slow. For example, to concatenate a list of annual NetCDF files along the Ti dimension, one can use:

julia
files = ["1990.nc","1991.nc","1992.nc"]
 open_mfdataset(DD.DimArray(files,DD.Ti()))

alternatively, if the dimension to concatenate along does not exist yet, the dimension provided in the input arg is used:

julia
files = ["a.nc","b.nc","c.nc"]
-open_mfdataset(DD.DimArray(files,DD.Dim{:NewDim}(["a","b","c"])))

source

`,6))]),e("details",M,[e("summary",null,[s[73]||(s[73]=e("a",{id:"YAXArrays.Datasets.savecube-Tuple{Any, AbstractString}",href:"#YAXArrays.Datasets.savecube-Tuple{Any, AbstractString}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.savecube")],-1)),s[74]||(s[74]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[75]||(s[75]=l('
julia
savecube(cube,name::String)

Save a YAXArray to the path.

Extended Help

The keyword arguments are:

  • name:

  • datasetaxis="Variable" special treatment of a categorical axis that gets written into separate zarr arrays

  • max_cache: The number of bits that are used as cache for the data handling.

  • backend: The backend, that is used to save the data. Falls back to searching the backend according to the extension of the path.

  • driver: The same setting as backend.

  • overwrite::Bool=false overwrite cube if it already exists

source

',6))]),e("details",B,[e("summary",null,[s[76]||(s[76]=e("a",{id:"YAXArrays.Datasets.savedataset-Tuple{Dataset}",href:"#YAXArrays.Datasets.savedataset-Tuple{Dataset}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.savedataset")],-1)),s[77]||(s[77]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[78]||(s[78]=e("p",null,'savedataset(ds::Dataset; path = "", persist = nothing, overwrite = false, append = false, skeleton=false, backend = :all, driver = backend, max_cache = 5e8, writefac=4.0)',-1)),s[79]||(s[79]=e("p",null,[a("Saves a Dataset into a file at "),e("code",null,"path"),a(" with the format given by "),e("code",null,"driver"),a(", i.e., driver=:netcdf or driver=:zarr.")],-1)),s[80]||(s[80]=e("div",{class:"warning custom-block"},[e("p",{class:"custom-block-title"},"Warning"),e("p",null,"overwrite = true, deletes ALL your data and it will create a new file.")],-1)),s[81]||(s[81]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DatasetAPI/Datasets.jl#L627-L636",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",O,[e("summary",null,[s[82]||(s[82]=e("a",{id:"YAXArrays.Datasets.to_dataset-Tuple{Any}",href:"#YAXArrays.Datasets.to_dataset-Tuple{Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.to_dataset")],-1)),s[83]||(s[83]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[84]||(s[84]=e("p",null,'to_dataset(c;datasetaxis = "Variable", layername = "layer")',-1)),s[85]||(s[85]=e("p",null,[a(`Convert a Data Cube into a Dataset. It is possible to treat one of the Cube's axes as a "DatasetAxis" i.e. the cube will be split into different parts that become variables in the Dataset. If no such axis is specified or found, there will only be a single variable in the dataset with the name `),e("code",null,"layername")],-1)),s[86]||(s[86]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DatasetAPI/Datasets.jl#L45-L53",target:"_blank",rel:"noreferrer"},"source")],-1))]),s[168]||(s[168]=e("h2",{id:"Internal-API",tabindex:"-1"},[a("Internal API "),e("a",{class:"header-anchor",href:"#Internal-API","aria-label":'Permalink to "Internal API {#Internal-API}"'},"​")],-1)),e("details",I,[e("summary",null,[s[87]||(s[87]=e("a",{id:"YAXArrays.YAXDefaults",href:"#YAXArrays.YAXDefaults"},[e("span",{class:"jlbinding"},"YAXArrays.YAXDefaults")],-1)),s[88]||(s[88]=a()),i(t,{type:"info",class:"jlObjectType jlConstant",text:"Constant"})]),s[89]||(s[89]=l('

Default configuration for YAXArrays, has the following fields:

  • workdir[]::String = "./" The default location for temporary cubes.

  • recal[]::Bool = false set to true if you want @loadOrGenerate to always recalculate the results.

  • chunksize[]::Any = :input Set the default output chunksize.

  • max_cache[]::Float64 = 1e8 The maximum cache used by mapCube.

  • cubedir[]::"" the default location for Cube() without an argument.

  • subsetextensions::Array{Any} = [] List of registered functions, that convert subsetting input into dimension boundaries.

source

',3))]),e("details",J,[e("summary",null,[s[90]||(s[90]=e("a",{id:"YAXArrays.findAxis-Tuple{Any, Any}",href:"#YAXArrays.findAxis-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.findAxis")],-1)),s[91]||(s[91]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[92]||(s[92]=l('
julia
findAxis(desc, c)

Internal function

Extended Help

Given an Axis description and a cube return the index of the Axis.

The Axis description can be:

  • the name as a string or symbol.

  • an Axis object

source

',7))]),e("details",P,[e("summary",null,[s[93]||(s[93]=e("a",{id:"YAXArrays.getOutAxis-NTuple{5, Any}",href:"#YAXArrays.getOutAxis-NTuple{5, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.getOutAxis")],-1)),s[94]||(s[94]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[95]||(s[95]=l('
julia
getOutAxis

source

',2))]),e("details",q,[e("summary",null,[s[96]||(s[96]=e("a",{id:"YAXArrays.get_descriptor-Tuple{String}",href:"#YAXArrays.get_descriptor-Tuple{String}"},[e("span",{class:"jlbinding"},"YAXArrays.get_descriptor")],-1)),s[97]||(s[97]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[98]||(s[98]=l('
julia
get_descriptor(a)

Get the descriptor of an Axis. This is used to dispatch on the descriptor.

source

',3))]),e("details",z,[e("summary",null,[s[99]||(s[99]=e("a",{id:"YAXArrays.match_axis-Tuple{YAXArrays.ByName, Any}",href:"#YAXArrays.match_axis-Tuple{YAXArrays.ByName, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.match_axis")],-1)),s[100]||(s[100]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[101]||(s[101]=l(`
julia
match_axis

Internal function

Extended Help

Match the Axis based on the AxisDescriptor.
+open_mfdataset(DD.DimArray(files,DD.Dim{:NewDim}(["a","b","c"])))

source

`,6))]),e("details",M,[e("summary",null,[s[73]||(s[73]=e("a",{id:"YAXArrays.Datasets.savecube-Tuple{Any, AbstractString}",href:"#YAXArrays.Datasets.savecube-Tuple{Any, AbstractString}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.savecube")],-1)),s[74]||(s[74]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[75]||(s[75]=l('
julia
savecube(cube,name::String)

Save a YAXArray to the path.

Extended Help

The keyword arguments are:

  • name:

  • datasetaxis="Variable" special treatment of a categorical axis that gets written into separate zarr arrays

  • max_cache: The number of bits that are used as cache for the data handling.

  • backend: The backend, that is used to save the data. Falls back to searching the backend according to the extension of the path.

  • driver: The same setting as backend.

  • overwrite::Bool=false overwrite cube if it already exists

source

',6))]),e("details",B,[e("summary",null,[s[76]||(s[76]=e("a",{id:"YAXArrays.Datasets.savedataset-Tuple{Dataset}",href:"#YAXArrays.Datasets.savedataset-Tuple{Dataset}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.savedataset")],-1)),s[77]||(s[77]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[78]||(s[78]=e("p",null,'savedataset(ds::Dataset; path = "", persist = nothing, overwrite = false, append = false, skeleton=false, backend = :all, driver = backend, max_cache = 5e8, writefac=4.0)',-1)),s[79]||(s[79]=e("p",null,[a("Saves a Dataset into a file at "),e("code",null,"path"),a(" with the format given by "),e("code",null,"driver"),a(", i.e., driver=:netcdf or driver=:zarr.")],-1)),s[80]||(s[80]=e("div",{class:"warning custom-block"},[e("p",{class:"custom-block-title"},"Warning"),e("p",null,"overwrite = true, deletes ALL your data and it will create a new file.")],-1)),s[81]||(s[81]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DatasetAPI/Datasets.jl#L637-L646",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",O,[e("summary",null,[s[82]||(s[82]=e("a",{id:"YAXArrays.Datasets.to_dataset-Tuple{Any}",href:"#YAXArrays.Datasets.to_dataset-Tuple{Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.to_dataset")],-1)),s[83]||(s[83]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[84]||(s[84]=e("p",null,'to_dataset(c;datasetaxis = "Variable", layername = "layer")',-1)),s[85]||(s[85]=e("p",null,[a(`Convert a Data Cube into a Dataset. It is possible to treat one of the Cube's axes as a "DatasetAxis" i.e. the cube will be split into different parts that become variables in the Dataset. If no such axis is specified or found, there will only be a single variable in the dataset with the name `),e("code",null,"layername")],-1)),s[86]||(s[86]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DatasetAPI/Datasets.jl#L45-L53",target:"_blank",rel:"noreferrer"},"source")],-1))]),s[168]||(s[168]=e("h2",{id:"Internal-API",tabindex:"-1"},[a("Internal API "),e("a",{class:"header-anchor",href:"#Internal-API","aria-label":'Permalink to "Internal API {#Internal-API}"'},"​")],-1)),e("details",I,[e("summary",null,[s[87]||(s[87]=e("a",{id:"YAXArrays.YAXDefaults",href:"#YAXArrays.YAXDefaults"},[e("span",{class:"jlbinding"},"YAXArrays.YAXDefaults")],-1)),s[88]||(s[88]=a()),i(t,{type:"info",class:"jlObjectType jlConstant",text:"Constant"})]),s[89]||(s[89]=l('

Default configuration for YAXArrays, has the following fields:

  • workdir[]::String = "./" The default location for temporary cubes.

  • recal[]::Bool = false set to true if you want @loadOrGenerate to always recalculate the results.

  • chunksize[]::Any = :input Set the default output chunksize.

  • max_cache[]::Float64 = 1e8 The maximum cache used by mapCube.

  • cubedir[]::"" the default location for Cube() without an argument.

  • subsetextensions::Array{Any} = [] List of registered functions, that convert subsetting input into dimension boundaries.

source

',3))]),e("details",J,[e("summary",null,[s[90]||(s[90]=e("a",{id:"YAXArrays.findAxis-Tuple{Any, Any}",href:"#YAXArrays.findAxis-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.findAxis")],-1)),s[91]||(s[91]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[92]||(s[92]=l('
julia
findAxis(desc, c)

Internal function

Extended Help

Given an Axis description and a cube return the index of the Axis.

The Axis description can be:

  • the name as a string or symbol.

  • an Axis object

source

',7))]),e("details",P,[e("summary",null,[s[93]||(s[93]=e("a",{id:"YAXArrays.getOutAxis-NTuple{5, Any}",href:"#YAXArrays.getOutAxis-NTuple{5, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.getOutAxis")],-1)),s[94]||(s[94]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[95]||(s[95]=l('
julia
getOutAxis

source

',2))]),e("details",q,[e("summary",null,[s[96]||(s[96]=e("a",{id:"YAXArrays.get_descriptor-Tuple{String}",href:"#YAXArrays.get_descriptor-Tuple{String}"},[e("span",{class:"jlbinding"},"YAXArrays.get_descriptor")],-1)),s[97]||(s[97]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[98]||(s[98]=l('
julia
get_descriptor(a)

Get the descriptor of an Axis. This is used to dispatch on the descriptor.

source

',3))]),e("details",z,[e("summary",null,[s[99]||(s[99]=e("a",{id:"YAXArrays.match_axis-Tuple{YAXArrays.ByName, Any}",href:"#YAXArrays.match_axis-Tuple{YAXArrays.ByName, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.match_axis")],-1)),s[100]||(s[100]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[101]||(s[101]=l(`
julia
match_axis

Internal function

Extended Help

Match the Axis based on the AxisDescriptor.
 This is used to find different axes and to make certain axis description the same.
-For example to disregard differences of captialisation.

source

`,5))]),e("details",N,[e("summary",null,[s[102]||(s[102]=e("a",{id:"YAXArrays.Cubes.CleanMe",href:"#YAXArrays.Cubes.CleanMe"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.CleanMe")],-1)),s[103]||(s[103]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[104]||(s[104]=l('
julia
mutable struct CleanMe

Struct which describes data paths and their persistency. Non-persistend paths/files are removed at finalize step

source

',3))]),e("details",S,[e("summary",null,[s[105]||(s[105]=e("a",{id:"YAXArrays.Cubes.clean-Tuple{YAXArrays.Cubes.CleanMe}",href:"#YAXArrays.Cubes.clean-Tuple{YAXArrays.Cubes.CleanMe}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.clean")],-1)),s[106]||(s[106]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[107]||(s[107]=l('
julia
clean(c::CleanMe)

finalizer function for CleanMe struct. The main process removes all directories/files which are not persistent.

source

',3))]),e("details",V,[e("summary",null,[s[108]||(s[108]=e("a",{id:"YAXArrays.Cubes.copydata-Tuple{Any, Any, Any}",href:"#YAXArrays.Cubes.copydata-Tuple{Any, Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.copydata")],-1)),s[109]||(s[109]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[110]||(s[110]=l('
julia
copydata(outar, inar, copybuf)

Internal function which copies the data from the input inar into the output outar at the copybuf positions.

source

',3))]),e("details",R,[e("summary",null,[s[111]||(s[111]=e("a",{id:"YAXArrays.Cubes.optifunc-NTuple{7, Any}",href:"#YAXArrays.Cubes.optifunc-NTuple{7, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.optifunc")],-1)),s[112]||(s[112]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[113]||(s[113]=l('
julia
optifunc(s, maxbuf, incs, outcs, insize, outsize, writefac)

Internal

This function is going to be minimized to detect the best possible chunk setting for the rechunking of the data.

source

',4))]),e("details",G,[e("summary",null,[s[114]||(s[114]=e("a",{id:"YAXArrays.DAT.DATConfig",href:"#YAXArrays.DAT.DATConfig"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.DATConfig")],-1)),s[115]||(s[115]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[116]||(s[116]=l('

Configuration object of a DAT process. This holds all necessary information to perform the calculations. It contains the following fields:

  • incubes::NTuple{NIN, YAXArrays.DAT.InputCube} where NIN: The input data cubes

  • outcubes::NTuple{NOUT, YAXArrays.DAT.OutputCube} where NOUT: The output data cubes

  • allInAxes::Vector: List of all axes of the input cubes

  • LoopAxes::Vector: List of axes that are looped through

  • ispar::Bool: Flag whether the computation is parallelized

  • loopcachesize::Vector{Int64}:

  • allow_irregular_chunks::Bool:

  • max_cache::Any: Maximal size of the in memory cache

  • fu::Any: Inner function which is computed

  • inplace::Bool: Flag whether the computation happens in place

  • include_loopvars::Bool:

  • ntr::Any:

  • do_gc::Bool: Flag if GC should be called explicitly. Probably necessary for many runs in Julia 1.9

  • addargs::Any: Additional arguments for the inner function

  • kwargs::Any: Additional keyword arguments for the inner function

source

',3))]),e("details",W,[e("summary",null,[s[117]||(s[117]=e("a",{id:"YAXArrays.DAT.InputCube",href:"#YAXArrays.DAT.InputCube"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.InputCube")],-1)),s[118]||(s[118]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[119]||(s[119]=l('

Internal representation of an input cube for DAT operations

  • cube: The input data

  • desc: The input description given by the user/registration

  • axesSmall: List of axes that were actually selected through the description

  • icolon

  • colonperm

  • loopinds: Indices of loop axes that this cube does not contain, i.e. broadcasts

  • cachesize: Number of elements to keep in cache along each axis

  • window

  • iwindow

  • windowloopinds

  • iall

source

',3))]),e("details",U,[e("summary",null,[s[120]||(s[120]=e("a",{id:"YAXArrays.DAT.OutputCube",href:"#YAXArrays.DAT.OutputCube"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.OutputCube")],-1)),s[121]||(s[121]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[122]||(s[122]=l('

Internal representation of an output cube for DAT operations

Fields

  • cube: The actual outcube cube, once it is generated

  • cube_unpermuted: The unpermuted output cube

  • desc: The description of the output axes as given by users or registration

  • axesSmall: The list of output axes determined through the description

  • allAxes: List of all the axes of the cube

  • loopinds: Index of the loop axes that are broadcasted for this output cube

  • innerchunks

  • outtype: Elementtype of the outputcube

source

',4))]),e("details",$,[e("summary",null,[s[123]||(s[123]=e("a",{id:"YAXArrays.DAT.YAXColumn",href:"#YAXArrays.DAT.YAXColumn"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.YAXColumn")],-1)),s[124]||(s[124]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[125]||(s[125]=l('
julia
YAXColumn

A struct representing a single column of a YAXArray partitioned Table # Fields

  • inarBC

  • inds

source

',4))]),e("details",H,[e("summary",null,[s[126]||(s[126]=e("a",{id:"YAXArrays.DAT.cmpcachmisses-Tuple{Any, Any}",href:"#YAXArrays.DAT.cmpcachmisses-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.cmpcachmisses")],-1)),s[127]||(s[127]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[128]||(s[128]=e("p",null,"Function that compares two cache miss specifiers by their importance",-1)),s[129]||(s[129]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DAT/DAT.jl#L957-L959",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",K,[e("summary",null,[s[130]||(s[130]=e("a",{id:"YAXArrays.DAT.getFrontPerm-Tuple{Any, Any}",href:"#YAXArrays.DAT.getFrontPerm-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.getFrontPerm")],-1)),s[131]||(s[131]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[132]||(s[132]=e("p",null,"Calculate an axis permutation that brings the wanted dimensions to the front",-1)),s[133]||(s[133]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DAT/DAT.jl#L1202",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",Z,[e("summary",null,[s[134]||(s[134]=e("a",{id:"YAXArrays.DAT.getLoopCacheSize-NTuple{5, Any}",href:"#YAXArrays.DAT.getLoopCacheSize-NTuple{5, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.getLoopCacheSize")],-1)),s[135]||(s[135]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[136]||(s[136]=e("p",null,"Calculate optimal Cache size to DAT operation",-1)),s[137]||(s[137]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DAT/DAT.jl#L1056",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",Q,[e("summary",null,[s[138]||(s[138]=e("a",{id:"YAXArrays.DAT.getOuttype-Tuple{Int64, Any}",href:"#YAXArrays.DAT.getOuttype-Tuple{Int64, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.getOuttype")],-1)),s[139]||(s[139]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[140]||(s[140]=l('
julia
getOuttype(outtype, cdata)

Internal function

Get the element type for the output cube

source

',4))]),e("details",_,[e("summary",null,[s[141]||(s[141]=e("a",{id:"YAXArrays.DAT.getloopchunks-Tuple{YAXArrays.DAT.DATConfig}",href:"#YAXArrays.DAT.getloopchunks-Tuple{YAXArrays.DAT.DATConfig}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.getloopchunks")],-1)),s[142]||(s[142]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[143]||(s[143]=l('
julia
getloopchunks(dc::DATConfig)

Internal function

Returns the chunks that can be looped over toghether for all dimensions.\nThis computation of the size of the chunks is handled by [`DiskArrays.approx_chunksize`](@ref)

source

',4))]),e("details",ss,[e("summary",null,[s[144]||(s[144]=e("a",{id:"YAXArrays.DAT.permuteloopaxes-Tuple{Any}",href:"#YAXArrays.DAT.permuteloopaxes-Tuple{Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.permuteloopaxes")],-1)),s[145]||(s[145]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[146]||(s[146]=l('
julia
permuteloopaxes(dc)

Internal function

Permute the dimensions of the cube, so that the axes that are looped through are in the first positions. This is necessary for a faster looping through the data.

source

',4))]),e("details",es,[e("summary",null,[s[147]||(s[147]=e("a",{id:"YAXArrays.Cubes.setchunks-Tuple{Dataset, Any}",href:"#YAXArrays.Cubes.setchunks-Tuple{Dataset, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.setchunks")],-1)),s[148]||(s[148]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[149]||(s[149]=l('
julia
setchunks(c::Dataset,chunks)

Resets the chunks of all or a subset YAXArrays in the dataset and returns a new Dataset. Note that this will not change the chunking of the underlying data itself, it will just make the data "look" like it had a different chunking. If you need a persistent on-disk representation of this chunking, use savedataset on the resulting array. The chunks argument can take one of the following forms:

  • a NamedTuple or AbstractDict mapping from variable name to a description of the desired variable chunks

  • a NamedTuple or AbstractDict mapping from dimension name to a description of the desired variable chunks

  • a description of the desired variable chunks applied to all members of the Dataset

where a description of the desired variable chunks can take one of the following forms:

  • a DiskArrays.GridChunks object

  • a tuple specifying the chunk size along each dimension

  • an AbstractDict or NamedTuple mapping one or more axis names to chunk sizes

source

',6))]),e("details",as,[e("summary",null,[s[150]||(s[150]=e("a",{id:"YAXArrays.Datasets.collectfromhandle-Tuple{Any, Any, Any}",href:"#YAXArrays.Datasets.collectfromhandle-Tuple{Any, Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.collectfromhandle")],-1)),s[151]||(s[151]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[152]||(s[152]=e("p",null,"Extracts a YAXArray from a dataset handle that was just created from a arrayinfo",-1)),s[153]||(s[153]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DatasetAPI/Datasets.jl#L533-L535",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",ts,[e("summary",null,[s[154]||(s[154]=e("a",{id:"YAXArrays.Datasets.createdataset-Tuple{Any, Any}",href:"#YAXArrays.Datasets.createdataset-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.createdataset")],-1)),s[155]||(s[155]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[156]||(s[156]=l('

function createdataset(DS::Type,axlist; kwargs...)

Creates a new dataset with axes specified in axlist. Each axis must be a subtype of CubeAxis. A new empty Zarr array will be created and can serve as a sink for mapCube operations.

Keyword arguments

  • path="" location where the new cube is stored

  • T=Union{Float32,Missing} data type of the target cube

  • chunksize = ntuple(i->length(axlist[i]),length(axlist)) chunk sizes of the array

  • chunkoffset = ntuple(i->0,length(axlist)) offsets of the chunks

  • persist::Bool=true shall the disk data be garbage-collected when the cube goes out of scope?

  • overwrite::Bool=false overwrite cube if it already exists

  • properties=Dict{String,Any}() additional cube properties

  • globalproperties=Dict{String,Any} global attributes to be added to the dataset

  • fillvalue= T>:Missing ? defaultfillval(Base.nonmissingtype(T)) : nothing fill value

  • datasetaxis="Variable" special treatment of a categorical axis that gets written into separate zarr arrays

  • layername="layer" Fallback name of the variable stored in the dataset if no datasetaxis is found

source

',6))]),e("details",is,[e("summary",null,[s[157]||(s[157]=e("a",{id:"YAXArrays.Datasets.getarrayinfo-Tuple{Any, Any}",href:"#YAXArrays.Datasets.getarrayinfo-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.getarrayinfo")],-1)),s[158]||(s[158]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[159]||(s[159]=e("p",null,"Extract necessary information to create a YAXArrayBase dataset from a name and YAXArray pair",-1)),s[160]||(s[160]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DatasetAPI/Datasets.jl#L502-L504",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",ls,[e("summary",null,[s[161]||(s[161]=e("a",{id:"YAXArrays.Datasets.testrange-Tuple{Any}",href:"#YAXArrays.Datasets.testrange-Tuple{Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.testrange")],-1)),s[162]||(s[162]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[163]||(s[163]=e("p",null,"Test if data in x can be approximated by a step range",-1)),s[164]||(s[164]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/cac79bfc0a659c527dea616b24b98e21e2ddf0c2/src/DatasetAPI/Datasets.jl#L312",target:"_blank",rel:"noreferrer"},"source")],-1))])])}const bs=n(d,[["render",ns]]);export{hs as __pageData,bs as default}; +For example to disregard differences of captialisation.

source

`,5))]),e("details",N,[e("summary",null,[s[102]||(s[102]=e("a",{id:"YAXArrays.Cubes.CleanMe",href:"#YAXArrays.Cubes.CleanMe"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.CleanMe")],-1)),s[103]||(s[103]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[104]||(s[104]=l('
julia
mutable struct CleanMe

Struct which describes data paths and their persistency. Non-persistend paths/files are removed at finalize step

source

',3))]),e("details",S,[e("summary",null,[s[105]||(s[105]=e("a",{id:"YAXArrays.Cubes.clean-Tuple{YAXArrays.Cubes.CleanMe}",href:"#YAXArrays.Cubes.clean-Tuple{YAXArrays.Cubes.CleanMe}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.clean")],-1)),s[106]||(s[106]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[107]||(s[107]=l('
julia
clean(c::CleanMe)

finalizer function for CleanMe struct. The main process removes all directories/files which are not persistent.

source

',3))]),e("details",V,[e("summary",null,[s[108]||(s[108]=e("a",{id:"YAXArrays.Cubes.copydata-Tuple{Any, Any, Any}",href:"#YAXArrays.Cubes.copydata-Tuple{Any, Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.copydata")],-1)),s[109]||(s[109]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[110]||(s[110]=l('
julia
copydata(outar, inar, copybuf)

Internal function which copies the data from the input inar into the output outar at the copybuf positions.

source

',3))]),e("details",R,[e("summary",null,[s[111]||(s[111]=e("a",{id:"YAXArrays.Cubes.optifunc-NTuple{7, Any}",href:"#YAXArrays.Cubes.optifunc-NTuple{7, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.optifunc")],-1)),s[112]||(s[112]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[113]||(s[113]=l('
julia
optifunc(s, maxbuf, incs, outcs, insize, outsize, writefac)

Internal

This function is going to be minimized to detect the best possible chunk setting for the rechunking of the data.

source

',4))]),e("details",G,[e("summary",null,[s[114]||(s[114]=e("a",{id:"YAXArrays.DAT.DATConfig",href:"#YAXArrays.DAT.DATConfig"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.DATConfig")],-1)),s[115]||(s[115]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[116]||(s[116]=l('

Configuration object of a DAT process. This holds all necessary information to perform the calculations. It contains the following fields:

  • incubes::NTuple{NIN, YAXArrays.DAT.InputCube} where NIN: The input data cubes

  • outcubes::NTuple{NOUT, YAXArrays.DAT.OutputCube} where NOUT: The output data cubes

  • allInAxes::Vector: List of all axes of the input cubes

  • LoopAxes::Vector: List of axes that are looped through

  • ispar::Bool: Flag whether the computation is parallelized

  • loopcachesize::Vector{Int64}:

  • allow_irregular_chunks::Bool:

  • max_cache::Any: Maximal size of the in memory cache

  • fu::Any: Inner function which is computed

  • inplace::Bool: Flag whether the computation happens in place

  • include_loopvars::Bool:

  • ntr::Any:

  • do_gc::Bool: Flag if GC should be called explicitly. Probably necessary for many runs in Julia 1.9

  • addargs::Any: Additional arguments for the inner function

  • kwargs::Any: Additional keyword arguments for the inner function

source

',3))]),e("details",W,[e("summary",null,[s[117]||(s[117]=e("a",{id:"YAXArrays.DAT.InputCube",href:"#YAXArrays.DAT.InputCube"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.InputCube")],-1)),s[118]||(s[118]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[119]||(s[119]=l('

Internal representation of an input cube for DAT operations

  • cube: The input data

  • desc: The input description given by the user/registration

  • axesSmall: List of axes that were actually selected through the description

  • icolon

  • colonperm

  • loopinds: Indices of loop axes that this cube does not contain, i.e. broadcasts

  • cachesize: Number of elements to keep in cache along each axis

  • window

  • iwindow

  • windowloopinds

  • iall

source

',3))]),e("details",U,[e("summary",null,[s[120]||(s[120]=e("a",{id:"YAXArrays.DAT.OutputCube",href:"#YAXArrays.DAT.OutputCube"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.OutputCube")],-1)),s[121]||(s[121]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[122]||(s[122]=l('

Internal representation of an output cube for DAT operations

Fields

  • cube: The actual outcube cube, once it is generated

  • cube_unpermuted: The unpermuted output cube

  • desc: The description of the output axes as given by users or registration

  • axesSmall: The list of output axes determined through the description

  • allAxes: List of all the axes of the cube

  • loopinds: Index of the loop axes that are broadcasted for this output cube

  • innerchunks

  • outtype: Elementtype of the outputcube

source

',4))]),e("details",$,[e("summary",null,[s[123]||(s[123]=e("a",{id:"YAXArrays.DAT.YAXColumn",href:"#YAXArrays.DAT.YAXColumn"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.YAXColumn")],-1)),s[124]||(s[124]=a()),i(t,{type:"info",class:"jlObjectType jlType",text:"Type"})]),s[125]||(s[125]=l('
julia
YAXColumn

A struct representing a single column of a YAXArray partitioned Table # Fields

  • inarBC

  • inds

source

',4))]),e("details",H,[e("summary",null,[s[126]||(s[126]=e("a",{id:"YAXArrays.DAT.cmpcachmisses-Tuple{Any, Any}",href:"#YAXArrays.DAT.cmpcachmisses-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.cmpcachmisses")],-1)),s[127]||(s[127]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[128]||(s[128]=e("p",null,"Function that compares two cache miss specifiers by their importance",-1)),s[129]||(s[129]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DAT/DAT.jl#L957-L959",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",K,[e("summary",null,[s[130]||(s[130]=e("a",{id:"YAXArrays.DAT.getFrontPerm-Tuple{Any, Any}",href:"#YAXArrays.DAT.getFrontPerm-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.getFrontPerm")],-1)),s[131]||(s[131]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[132]||(s[132]=e("p",null,"Calculate an axis permutation that brings the wanted dimensions to the front",-1)),s[133]||(s[133]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DAT/DAT.jl#L1202",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",Z,[e("summary",null,[s[134]||(s[134]=e("a",{id:"YAXArrays.DAT.getLoopCacheSize-NTuple{5, Any}",href:"#YAXArrays.DAT.getLoopCacheSize-NTuple{5, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.getLoopCacheSize")],-1)),s[135]||(s[135]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[136]||(s[136]=e("p",null,"Calculate optimal Cache size to DAT operation",-1)),s[137]||(s[137]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DAT/DAT.jl#L1056",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",Q,[e("summary",null,[s[138]||(s[138]=e("a",{id:"YAXArrays.DAT.getOuttype-Tuple{Int64, Any}",href:"#YAXArrays.DAT.getOuttype-Tuple{Int64, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.getOuttype")],-1)),s[139]||(s[139]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[140]||(s[140]=l('
julia
getOuttype(outtype, cdata)

Internal function

Get the element type for the output cube

source

',4))]),e("details",_,[e("summary",null,[s[141]||(s[141]=e("a",{id:"YAXArrays.DAT.getloopchunks-Tuple{YAXArrays.DAT.DATConfig}",href:"#YAXArrays.DAT.getloopchunks-Tuple{YAXArrays.DAT.DATConfig}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.getloopchunks")],-1)),s[142]||(s[142]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[143]||(s[143]=l('
julia
getloopchunks(dc::DATConfig)

Internal function

Returns the chunks that can be looped over toghether for all dimensions.\nThis computation of the size of the chunks is handled by [`DiskArrays.approx_chunksize`](@ref)

source

',4))]),e("details",ss,[e("summary",null,[s[144]||(s[144]=e("a",{id:"YAXArrays.DAT.permuteloopaxes-Tuple{Any}",href:"#YAXArrays.DAT.permuteloopaxes-Tuple{Any}"},[e("span",{class:"jlbinding"},"YAXArrays.DAT.permuteloopaxes")],-1)),s[145]||(s[145]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[146]||(s[146]=l('
julia
permuteloopaxes(dc)

Internal function

Permute the dimensions of the cube, so that the axes that are looped through are in the first positions. This is necessary for a faster looping through the data.

source

',4))]),e("details",es,[e("summary",null,[s[147]||(s[147]=e("a",{id:"YAXArrays.Cubes.setchunks-Tuple{Dataset, Any}",href:"#YAXArrays.Cubes.setchunks-Tuple{Dataset, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Cubes.setchunks")],-1)),s[148]||(s[148]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[149]||(s[149]=l('
julia
setchunks(c::Dataset,chunks)

Resets the chunks of all or a subset YAXArrays in the dataset and returns a new Dataset. Note that this will not change the chunking of the underlying data itself, it will just make the data "look" like it had a different chunking. If you need a persistent on-disk representation of this chunking, use savedataset on the resulting array. The chunks argument can take one of the following forms:

  • a NamedTuple or AbstractDict mapping from variable name to a description of the desired variable chunks

  • a NamedTuple or AbstractDict mapping from dimension name to a description of the desired variable chunks

  • a description of the desired variable chunks applied to all members of the Dataset

where a description of the desired variable chunks can take one of the following forms:

  • a DiskArrays.GridChunks object

  • a tuple specifying the chunk size along each dimension

  • an AbstractDict or NamedTuple mapping one or more axis names to chunk sizes

source

',6))]),e("details",as,[e("summary",null,[s[150]||(s[150]=e("a",{id:"YAXArrays.Datasets.collectfromhandle-Tuple{Any, Any, Any}",href:"#YAXArrays.Datasets.collectfromhandle-Tuple{Any, Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.collectfromhandle")],-1)),s[151]||(s[151]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[152]||(s[152]=e("p",null,"Extracts a YAXArray from a dataset handle that was just created from a arrayinfo",-1)),s[153]||(s[153]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DatasetAPI/Datasets.jl#L543-L545",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",ts,[e("summary",null,[s[154]||(s[154]=e("a",{id:"YAXArrays.Datasets.createdataset-Tuple{Any, Any}",href:"#YAXArrays.Datasets.createdataset-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.createdataset")],-1)),s[155]||(s[155]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[156]||(s[156]=l('

function createdataset(DS::Type,axlist; kwargs...)

Creates a new dataset with axes specified in axlist. Each axis must be a subtype of CubeAxis. A new empty Zarr array will be created and can serve as a sink for mapCube operations.

Keyword arguments

  • path="" location where the new cube is stored

  • T=Union{Float32,Missing} data type of the target cube

  • chunksize = ntuple(i->length(axlist[i]),length(axlist)) chunk sizes of the array

  • chunkoffset = ntuple(i->0,length(axlist)) offsets of the chunks

  • persist::Bool=true shall the disk data be garbage-collected when the cube goes out of scope?

  • overwrite::Bool=false overwrite cube if it already exists

  • properties=Dict{String,Any}() additional cube properties

  • globalproperties=Dict{String,Any} global attributes to be added to the dataset

  • fillvalue= T>:Missing ? defaultfillval(Base.nonmissingtype(T)) : nothing fill value

  • datasetaxis="Variable" special treatment of a categorical axis that gets written into separate zarr arrays

  • layername="layer" Fallback name of the variable stored in the dataset if no datasetaxis is found

source

',6))]),e("details",is,[e("summary",null,[s[157]||(s[157]=e("a",{id:"YAXArrays.Datasets.getarrayinfo-Tuple{Any, Any}",href:"#YAXArrays.Datasets.getarrayinfo-Tuple{Any, Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.getarrayinfo")],-1)),s[158]||(s[158]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[159]||(s[159]=e("p",null,"Extract necessary information to create a YAXArrayBase dataset from a name and YAXArray pair",-1)),s[160]||(s[160]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DatasetAPI/Datasets.jl#L512-L514",target:"_blank",rel:"noreferrer"},"source")],-1))]),e("details",ls,[e("summary",null,[s[161]||(s[161]=e("a",{id:"YAXArrays.Datasets.testrange-Tuple{Any}",href:"#YAXArrays.Datasets.testrange-Tuple{Any}"},[e("span",{class:"jlbinding"},"YAXArrays.Datasets.testrange")],-1)),s[162]||(s[162]=a()),i(t,{type:"info",class:"jlObjectType jlMethod",text:"Method"})]),s[163]||(s[163]=e("p",null,"Test if data in x can be approximated by a step range",-1)),s[164]||(s[164]=e("p",null,[e("a",{href:"https://github.com/JuliaDataCubes/YAXArrays.jl/blob/718da93b23d64fe683f508a3b150160a49500eec/src/DatasetAPI/Datasets.jl#L312",target:"_blank",rel:"noreferrer"},"source")],-1))])])}const bs=n(d,[["render",ns]]);export{cs as __pageData,bs as default}; diff --git a/dev/assets/app.HXKpO_YX.js b/dev/assets/app.CalNfiaa.js similarity index 95% rename from dev/assets/app.HXKpO_YX.js rename to dev/assets/app.CalNfiaa.js index cd6d5b9d..01a1bc47 100644 --- a/dev/assets/app.HXKpO_YX.js +++ b/dev/assets/app.CalNfiaa.js @@ -1 +1 @@ -import{R as p}from"./chunks/theme.CUcjuZ66.js";import{R as o,a6 as u,a7 as c,a8 as l,a9 as f,aa as d,ab as m,ac as h,ad as g,ae as A,af as v,d as P,u as R,v as w,s as y,ag as C,ah as b,ai as E,a5 as S}from"./chunks/framework.swGcc4Ky.js";function i(e){if(e.extends){const a=i(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const s=i(p),T=P({name:"VitePressApp",setup(){const{site:e,lang:a,dir:t}=R();return w(()=>{y(()=>{document.documentElement.lang=a.value,document.documentElement.dir=t.value})}),e.value.router.prefetchLinks&&C(),b(),E(),s.setup&&s.setup(),()=>S(s.Layout)}});async function D(){globalThis.__VITEPRESS__=!0;const e=j(),a=_();a.provide(c,e);const t=l(e.route);return a.provide(f,t),a.component("Content",d),a.component("ClientOnly",m),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),s.enhanceApp&&await s.enhanceApp({app:a,router:e,siteData:h}),{app:a,router:e,data:t}}function _(){return g(T)}function j(){let e=o,a;return A(t=>{let n=v(t),r=null;return n&&(e&&(a=n),(e||a===n)&&(n=n.replace(/\.js$/,".lean.js")),r=import(n)),o&&(e=!1),r},s.NotFound)}o&&D().then(({app:e,router:a,data:t})=>{a.go().then(()=>{u(a.route,t.site),e.mount("#app")})});export{D as createApp}; +import{R as p}from"./chunks/theme.C0fR5TI8.js";import{R as o,a6 as u,a7 as c,a8 as l,a9 as f,aa as d,ab as m,ac as h,ad as g,ae as A,af as v,d as P,u as R,v as w,s as y,ag as C,ah as b,ai as E,a5 as S}from"./chunks/framework.swGcc4Ky.js";function i(e){if(e.extends){const a=i(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const s=i(p),T=P({name:"VitePressApp",setup(){const{site:e,lang:a,dir:t}=R();return w(()=>{y(()=>{document.documentElement.lang=a.value,document.documentElement.dir=t.value})}),e.value.router.prefetchLinks&&C(),b(),E(),s.setup&&s.setup(),()=>S(s.Layout)}});async function D(){globalThis.__VITEPRESS__=!0;const e=j(),a=_();a.provide(c,e);const t=l(e.route);return a.provide(f,t),a.component("Content",d),a.component("ClientOnly",m),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),s.enhanceApp&&await s.enhanceApp({app:a,router:e,siteData:h}),{app:a,router:e,data:t}}function _(){return g(T)}function j(){let e=o,a;return A(t=>{let n=v(t),r=null;return n&&(e&&(a=n),(e||a===n)&&(n=n.replace(/\.js$/,".lean.js")),r=import(n)),o&&(e=!1),r},s.NotFound)}o&&D().then(({app:e,router:a,data:t})=>{a.go().then(()=>{u(a.route,t.site),e.mount("#app")})});export{D as createApp}; diff --git a/dev/assets/chunks/@localSearchIndexroot.BVsQolaK.js b/dev/assets/chunks/@localSearchIndexroot.BVsQolaK.js deleted file mode 100644 index c6d747a2..00000000 --- a/dev/assets/chunks/@localSearchIndexroot.BVsQolaK.js +++ /dev/null @@ -1 +0,0 @@ -const e='{"documentCount":107,"nextId":107,"documentIds":{"0":"/YAXArrays.jl/dev/UserGuide/cache.html#Caching-YAXArrays","1":"/YAXArrays.jl/dev/UserGuide/chunk.html#Chunk-YAXArrays","2":"/YAXArrays.jl/dev/UserGuide/chunk.html#Chunking-YAXArrays","3":"/YAXArrays.jl/dev/UserGuide/chunk.html#Chunking-Datasets","4":"/YAXArrays.jl/dev/UserGuide/chunk.html#Set-Chunks-by-Axis","5":"/YAXArrays.jl/dev/UserGuide/chunk.html#Set-chunking-by-Variable","6":"/YAXArrays.jl/dev/UserGuide/chunk.html#Set-chunking-for-all-variables","7":"/YAXArrays.jl/dev/UserGuide/combine.html#Combine-YAXArrays","8":"/YAXArrays.jl/dev/UserGuide/combine.html#cat-along-an-existing-dimension","9":"/YAXArrays.jl/dev/UserGuide/combine.html#concatenatecubes-to-a-new-dimension","10":"/YAXArrays.jl/dev/UserGuide/compute.html#Compute-YAXArrays","11":"/YAXArrays.jl/dev/UserGuide/compute.html#Modify-elements-of-a-YAXArray","12":"/YAXArrays.jl/dev/UserGuide/compute.html#arithmetics","13":"/YAXArrays.jl/dev/UserGuide/compute.html#map","14":"/YAXArrays.jl/dev/UserGuide/compute.html#mapslices","15":"/YAXArrays.jl/dev/UserGuide/compute.html#mapCube","16":"/YAXArrays.jl/dev/UserGuide/compute.html#Operations-over-several-YAXArrays","17":"/YAXArrays.jl/dev/UserGuide/compute.html#OutDims-and-YAXArray-Properties","18":"/YAXArrays.jl/dev/UserGuide/compute.html#One-InDims-to-many-OutDims","19":"/YAXArrays.jl/dev/UserGuide/compute.html#Many-InDims-to-many-OutDims","20":"/YAXArrays.jl/dev/UserGuide/compute.html#Specify-path-in-OutDims","21":"/YAXArrays.jl/dev/UserGuide/compute.html#Different-InDims-names","22":"/YAXArrays.jl/dev/UserGuide/compute.html#Creating-a-vector-array","23":"/YAXArrays.jl/dev/UserGuide/compute.html#Distributed-Computation","24":"/YAXArrays.jl/dev/UserGuide/convert.html#Convert-YAXArrays","25":"/YAXArrays.jl/dev/UserGuide/convert.html#Convert-Base.Array","26":"/YAXArrays.jl/dev/UserGuide/convert.html#Convert-Raster","27":"/YAXArrays.jl/dev/UserGuide/convert.html#Convert-DimArray","28":"/YAXArrays.jl/dev/UserGuide/create.html#Create-YAXArrays-and-Datasets","29":"/YAXArrays.jl/dev/UserGuide/create.html#Create-a-YAXArray","30":"/YAXArrays.jl/dev/UserGuide/create.html#Create-a-Dataset","31":"/YAXArrays.jl/dev/UserGuide/faq.html#Frequently-Asked-Questions-(FAQ)","32":"/YAXArrays.jl/dev/UserGuide/faq.html#Extract-the-axes-names-from-a-Cube","33":"/YAXArrays.jl/dev/UserGuide/faq.html#rebuild","34":"/YAXArrays.jl/dev/UserGuide/faq.html#Obtain-values-from-axes-and-data-from-the-cube","35":"/YAXArrays.jl/dev/UserGuide/faq.html#How-do-I-concatenate-cubes","36":"/YAXArrays.jl/dev/UserGuide/faq.html#How-do-I-subset-a-YAXArray-(-Cube-)-or-Dataset?","37":"/YAXArrays.jl/dev/UserGuide/faq.html#Subsetting-a-YAXArray","38":"/YAXArrays.jl/dev/UserGuide/faq.html#Subsetting-a-Dataset","39":"/YAXArrays.jl/dev/UserGuide/faq.html#Subsetting-a-Dataset-whose-variables-share-all-their-dimensions","40":"/YAXArrays.jl/dev/UserGuide/faq.html#Subsetting-a-Dataset-whose-variables-share-some-but-not-all-of-their-dimensions","41":"/YAXArrays.jl/dev/UserGuide/faq.html#How-do-I-apply-map-algebra?","42":"/YAXArrays.jl/dev/UserGuide/faq.html#How-do-I-use-the-CubeTable-function?","43":"/YAXArrays.jl/dev/UserGuide/faq.html#How-do-I-assign-variable-names-to-YAXArrays-in-a-Dataset","44":"/YAXArrays.jl/dev/UserGuide/faq.html#One-variable-name","45":"/YAXArrays.jl/dev/UserGuide/faq.html#Multiple-variable-names","46":"/YAXArrays.jl/dev/UserGuide/faq.html#Ho-do-I-construct-a-Dataset-from-a-TimeArray","47":"/YAXArrays.jl/dev/UserGuide/faq.html#Create-a-YAXArray-with-unions-containing-Strings","48":"/YAXArrays.jl/dev/UserGuide/group.html#Group-YAXArrays-and-Datasets","49":"/YAXArrays.jl/dev/UserGuide/group.html#Seasonal-Averages-from-Time-Series-of-Monthly-Means","50":"/YAXArrays.jl/dev/UserGuide/group.html#Download-the-data","51":"/YAXArrays.jl/dev/UserGuide/group.html#GroupBy:-seasons","52":"/YAXArrays.jl/dev/UserGuide/group.html#dropdims","53":"/YAXArrays.jl/dev/UserGuide/group.html#seasons","54":"/YAXArrays.jl/dev/UserGuide/group.html#GroupBy:-weight","55":"/YAXArrays.jl/dev/UserGuide/group.html#weights","56":"/YAXArrays.jl/dev/UserGuide/group.html#weighted-seasons","57":"/YAXArrays.jl/dev/UserGuide/read.html#Read-YAXArrays-and-Datasets","58":"/YAXArrays.jl/dev/UserGuide/read.html#Read-Zarr","59":"/YAXArrays.jl/dev/UserGuide/read.html#Read-NetCDF","60":"/YAXArrays.jl/dev/UserGuide/read.html#Read-GDAL-(GeoTIFF,-GeoJSON)","61":"/YAXArrays.jl/dev/UserGuide/read.html#Load-data-into-memory","62":"/YAXArrays.jl/dev/UserGuide/read.html#readcubedata","63":"/YAXArrays.jl/dev/UserGuide/select.html#Select-YAXArrays-and-Datasets","64":"/YAXArrays.jl/dev/UserGuide/select.html#Select-a-YAXArray","65":"/YAXArrays.jl/dev/UserGuide/select.html#Select-elements","66":"/YAXArrays.jl/dev/UserGuide/select.html#Select-ranges","67":"/YAXArrays.jl/dev/UserGuide/select.html#Closed-and-open-intervals","68":"/YAXArrays.jl/dev/UserGuide/select.html#Get-a-dimension","69":"/YAXArrays.jl/dev/UserGuide/types.html#types","70":"/YAXArrays.jl/dev/UserGuide/types.html#yaxarray","71":"/YAXArrays.jl/dev/UserGuide/types.html#dataset","72":"/YAXArrays.jl/dev/UserGuide/types.html#(Data)-Cube","73":"/YAXArrays.jl/dev/UserGuide/types.html#dimension","74":"/YAXArrays.jl/dev/UserGuide/write.html#Write-YAXArrays-and-Datasets","75":"/YAXArrays.jl/dev/UserGuide/write.html#Write-Zarr","76":"/YAXArrays.jl/dev/UserGuide/write.html#zarr-compression","77":"/YAXArrays.jl/dev/UserGuide/write.html#Write-NetCDF","78":"/YAXArrays.jl/dev/UserGuide/write.html#netcdf-compression","79":"/YAXArrays.jl/dev/UserGuide/write.html#Overwrite-a-Dataset","80":"/YAXArrays.jl/dev/UserGuide/write.html#Append-to-a-Dataset","81":"/YAXArrays.jl/dev/UserGuide/write.html#Save-Skeleton","82":"/YAXArrays.jl/dev/UserGuide/write.html#Update-values-of-dataset","83":"/YAXArrays.jl/dev/api.html#API-Reference","84":"/YAXArrays.jl/dev/api.html#Public-API","85":"/YAXArrays.jl/dev/api.html#Internal-API","86":"/YAXArrays.jl/dev/development/contribute.html#Contribute-to-YAXArrays.jl","87":"/YAXArrays.jl/dev/development/contribute.html#Contribute-to-Documentation","88":"/YAXArrays.jl/dev/development/contribute.html#Build-docs-locally","89":"/YAXArrays.jl/dev/get_started.html#Getting-Started","90":"/YAXArrays.jl/dev/get_started.html#installation","91":"/YAXArrays.jl/dev/get_started.html#quickstart","92":"/YAXArrays.jl/dev/get_started.html#updates","93":"/YAXArrays.jl/dev/#How-to-Install-YAXArrays.jl?","94":"/YAXArrays.jl/dev/#Want-interoperability?","95":"/YAXArrays.jl/dev/tutorials/mean_seasonal_cycle.html#Mean-Seasonal-Cycle-for-a-single-pixel","96":"/YAXArrays.jl/dev/tutorials/mean_seasonal_cycle.html#Define-the-cube","97":"/YAXArrays.jl/dev/tutorials/mean_seasonal_cycle.html#Plot-results:-mean-seasonal-cycle","98":"/YAXArrays.jl/dev/tutorials/other_tutorials.html#Other-tutorials","99":"/YAXArrays.jl/dev/tutorials/other_tutorials.html#General-overview-of-the-functionality-of-YAXArrays","100":"/YAXArrays.jl/dev/tutorials/other_tutorials.html#Table-style-iteration-over-YAXArrays","101":"/YAXArrays.jl/dev/tutorials/other_tutorials.html#Combining-multiple-tiff-files-into-a-zarr-based-datacube","102":"/YAXArrays.jl/dev/tutorials/plottingmaps.html#Plotting-maps","103":"/YAXArrays.jl/dev/tutorials/plottingmaps.html#Heatmap-plot","104":"/YAXArrays.jl/dev/tutorials/plottingmaps.html#Wintri-Projection","105":"/YAXArrays.jl/dev/tutorials/plottingmaps.html#Moll-projection","106":"/YAXArrays.jl/dev/tutorials/plottingmaps.html#3D-sphere-plot"},"fieldIds":{"title":0,"titles":1,"text":2},"fieldLength":{"0":[2,1,86],"1":[2,1,58],"2":[2,2,57],"3":[2,2,9],"4":[4,4,76],"5":[4,4,76],"6":[5,4,81],"7":[2,1,31],"8":[5,2,82],"9":[5,2,91],"10":[2,1,119],"11":[5,2,30],"12":[1,2,73],"13":[1,2,121],"14":[1,2,90],"15":[1,2,22],"16":[4,3,213],"17":[4,3,100],"18":[5,7,129],"19":[5,7,99],"20":[4,7,91],"21":[3,3,151],"22":[4,3,248],"23":[2,2,138],"24":[2,1,52],"25":[3,2,86],"26":[2,2,117],"27":[2,2,123],"28":[4,1,14],"29":[3,4,108],"30":[3,4,45],"31":[5,1,19],"32":[7,5,78],"33":[1,11,92],"34":[8,5,77],"35":[5,5,89],"36":[10,5,33],"37":[3,14,146],"38":[3,14,18],"39":[9,14,69],"40":[13,14,156],"41":[7,5,115],"42":[8,5,171],"43":[11,5,1],"44":[3,15,24],"45":[3,15,59],"46":[8,5,140],"47":[7,5,81],"48":[4,1,30],"49":[8,4,35],"50":[3,4,67],"51":[2,4,137],"52":[1,6,102],"53":[1,6,49],"54":[2,4,111],"55":[1,6,85],"56":[2,6,348],"57":[4,1,14],"58":[2,4,189],"59":[2,4,253],"60":[5,4,90],"61":[4,4,42],"62":[1,8,144],"63":[4,1,165],"64":[3,4,107],"65":[2,4,118],"66":[2,4,132],"67":[4,4,145],"68":[3,4,73],"69":[1,1,16],"70":[1,1,113],"71":[1,1,78],"72":[3,1,70],"73":[1,1,32],"74":[4,1,146],"75":[2,4,19],"76":[2,5,52],"77":[2,4,20],"78":[2,5,44],"79":[3,4,77],"80":[4,4,157],"81":[2,4,155],"82":[4,4,93],"83":[2,1,10],"84":[2,2,589],"85":[2,2,462],"86":[4,1,15],"87":[3,4,40],"88":[3,5,75],"89":[2,1,1],"90":[1,2,34],"91":[1,2,197],"92":[1,2,49],"93":[6,1,37],"94":[3,1,21],"95":[7,1,73],"96":[3,7,133],"97":[5,7,48],"98":[2,1,49],"99":[6,2,12],"100":[5,2,38],"101":[9,2,1],"102":[2,1,136],"103":[2,2,21],"104":[2,1,46],"105":[2,2,33],"106":[3,2,57]},"averageFieldLength":[3.504672897196263,3.822429906542055,92.23364485981308],"storedFields":{"0":{"title":"Caching YAXArrays","titles":[]},"1":{"title":"Chunk YAXArrays","titles":[]},"2":{"title":"Chunking YAXArrays","titles":["Chunk YAXArrays"]},"3":{"title":"Chunking Datasets","titles":["Chunk YAXArrays"]},"4":{"title":"Set Chunks by Axis","titles":["Chunk YAXArrays","Chunking Datasets"]},"5":{"title":"Set chunking by Variable","titles":["Chunk YAXArrays","Chunking Datasets"]},"6":{"title":"Set chunking for all variables","titles":["Chunk YAXArrays","Chunking Datasets"]},"7":{"title":"Combine YAXArrays","titles":[]},"8":{"title":"cat along an existing dimension","titles":["Combine YAXArrays"]},"9":{"title":"concatenatecubes to a new dimension","titles":["Combine YAXArrays"]},"10":{"title":"Compute YAXArrays","titles":[]},"11":{"title":"Modify elements of a YAXArray","titles":["Compute YAXArrays"]},"12":{"title":"Arithmetics","titles":["Compute YAXArrays"]},"13":{"title":"map","titles":["Compute YAXArrays"]},"14":{"title":"mapslices","titles":["Compute YAXArrays"]},"15":{"title":"mapCube","titles":["Compute YAXArrays"]},"16":{"title":"Operations over several YAXArrays","titles":["Compute YAXArrays","mapCube"]},"17":{"title":"OutDims and YAXArray Properties","titles":["Compute YAXArrays","mapCube"]},"18":{"title":"One InDims to many OutDims","titles":["Compute YAXArrays","mapCube","OutDims and YAXArray Properties"]},"19":{"title":"Many InDims to many OutDims","titles":["Compute YAXArrays","mapCube","OutDims and YAXArray Properties"]},"20":{"title":"Specify path in OutDims","titles":["Compute YAXArrays","mapCube","OutDims and YAXArray Properties"]},"21":{"title":"Different InDims names","titles":["Compute YAXArrays","mapCube"]},"22":{"title":"Creating a vector array","titles":["Compute YAXArrays","mapCube"]},"23":{"title":"Distributed Computation","titles":["Compute YAXArrays"]},"24":{"title":"Convert YAXArrays","titles":[]},"25":{"title":"Convert Base.Array","titles":["Convert YAXArrays"]},"26":{"title":"Convert Raster","titles":["Convert YAXArrays"]},"27":{"title":"Convert DimArray","titles":["Convert YAXArrays"]},"28":{"title":"Create YAXArrays and Datasets","titles":[]},"29":{"title":"Create a YAXArray","titles":["Create YAXArrays and Datasets"]},"30":{"title":"Create a Dataset","titles":["Create YAXArrays and Datasets"]},"31":{"title":"Frequently Asked Questions (FAQ)","titles":[]},"32":{"title":"Extract the axes names from a Cube","titles":["Frequently Asked Questions (FAQ)"]},"33":{"title":"rebuild","titles":["Frequently Asked Questions (FAQ)","Extract the axes names from a Cube"]},"34":{"title":"Obtain values from axes and data from the cube","titles":["Frequently Asked Questions (FAQ)"]},"35":{"title":"How do I concatenate cubes","titles":["Frequently Asked Questions (FAQ)"]},"36":{"title":"How do I subset a YAXArray ( Cube ) or Dataset?","titles":["Frequently Asked Questions (FAQ)"]},"37":{"title":"Subsetting a YAXArray","titles":["Frequently Asked Questions (FAQ)","How do I subset a YAXArray ( Cube ) or Dataset?"]},"38":{"title":"Subsetting a Dataset","titles":["Frequently Asked Questions (FAQ)","How do I subset a YAXArray ( Cube ) or Dataset?"]},"39":{"title":"Subsetting a Dataset whose variables share all their dimensions","titles":["Frequently Asked Questions (FAQ)","How do I subset a YAXArray ( Cube ) or Dataset?","Subsetting a Dataset"]},"40":{"title":"Subsetting a Dataset whose variables share some but not all of their dimensions","titles":["Frequently Asked Questions (FAQ)","How do I subset a YAXArray ( Cube ) or Dataset?","Subsetting a Dataset"]},"41":{"title":"How do I apply map algebra?","titles":["Frequently Asked Questions (FAQ)"]},"42":{"title":"How do I use the CubeTable function?","titles":["Frequently Asked Questions (FAQ)"]},"43":{"title":"How do I assign variable names to YAXArrays in a Dataset","titles":["Frequently Asked Questions (FAQ)"]},"44":{"title":"One variable name","titles":["Frequently Asked Questions (FAQ)","How do I assign variable names to YAXArrays in a Dataset"]},"45":{"title":"Multiple variable names","titles":["Frequently Asked Questions (FAQ)","How do I assign variable names to YAXArrays in a Dataset"]},"46":{"title":"Ho do I construct a Dataset from a TimeArray","titles":["Frequently Asked Questions (FAQ)"]},"47":{"title":"Create a YAXArray with unions containing Strings","titles":["Frequently Asked Questions (FAQ)"]},"48":{"title":"Group YAXArrays and Datasets","titles":[]},"49":{"title":"Seasonal Averages from Time Series of Monthly Means","titles":["Group YAXArrays and Datasets"]},"50":{"title":"Download the data","titles":["Group YAXArrays and Datasets"]},"51":{"title":"GroupBy: seasons","titles":["Group YAXArrays and Datasets"]},"52":{"title":"dropdims","titles":["Group YAXArrays and Datasets","GroupBy: seasons"]},"53":{"title":"seasons","titles":["Group YAXArrays and Datasets","GroupBy: seasons"]},"54":{"title":"GroupBy: weight","titles":["Group YAXArrays and Datasets"]},"55":{"title":"weights","titles":["Group YAXArrays and Datasets","GroupBy: weight"]},"56":{"title":"weighted seasons","titles":["Group YAXArrays and Datasets","GroupBy: weight"]},"57":{"title":"Read YAXArrays and Datasets","titles":[]},"58":{"title":"Read Zarr","titles":["Read YAXArrays and Datasets"]},"59":{"title":"Read NetCDF","titles":["Read YAXArrays and Datasets"]},"60":{"title":"Read GDAL (GeoTIFF, GeoJSON)","titles":["Read YAXArrays and Datasets"]},"61":{"title":"Load data into memory","titles":["Read YAXArrays and Datasets"]},"62":{"title":"readcubedata","titles":["Read YAXArrays and Datasets","Load data into memory"]},"63":{"title":"Select YAXArrays and Datasets","titles":[]},"64":{"title":"Select a YAXArray","titles":["Select YAXArrays and Datasets"]},"65":{"title":"Select elements","titles":["Select YAXArrays and Datasets"]},"66":{"title":"Select ranges","titles":["Select YAXArrays and Datasets"]},"67":{"title":"Closed and open intervals","titles":["Select YAXArrays and Datasets"]},"68":{"title":"Get a dimension","titles":["Select YAXArrays and Datasets"]},"69":{"title":"Types","titles":[]},"70":{"title":"YAXArray","titles":["Types"]},"71":{"title":"Dataset","titles":["Types"]},"72":{"title":"(Data) Cube","titles":["Types"]},"73":{"title":"Dimension","titles":["Types"]},"74":{"title":"Write YAXArrays and Datasets","titles":[]},"75":{"title":"Write Zarr","titles":["Write YAXArrays and Datasets"]},"76":{"title":"zarr compression","titles":["Write YAXArrays and Datasets","Write Zarr"]},"77":{"title":"Write NetCDF","titles":["Write YAXArrays and Datasets"]},"78":{"title":"netcdf compression","titles":["Write YAXArrays and Datasets","Write NetCDF"]},"79":{"title":"Overwrite a Dataset","titles":["Write YAXArrays and Datasets"]},"80":{"title":"Append to a Dataset","titles":["Write YAXArrays and Datasets"]},"81":{"title":"Save Skeleton","titles":["Write YAXArrays and Datasets"]},"82":{"title":"Update values of dataset","titles":["Write YAXArrays and Datasets"]},"83":{"title":"API Reference","titles":[]},"84":{"title":"Public API","titles":["API Reference"]},"85":{"title":"Internal API","titles":["API Reference"]},"86":{"title":"Contribute to YAXArrays.jl","titles":[]},"87":{"title":"Contribute to Documentation","titles":["Contribute to YAXArrays.jl"]},"88":{"title":"Build docs locally","titles":["Contribute to YAXArrays.jl","Contribute to Documentation"]},"89":{"title":"Getting Started","titles":[]},"90":{"title":"Installation","titles":["Getting Started"]},"91":{"title":"Quickstart","titles":["Getting Started"]},"92":{"title":"Updates","titles":["Getting Started"]},"93":{"title":"How to Install YAXArrays.jl?","titles":[]},"94":{"title":"Want interoperability?","titles":[]},"95":{"title":"Mean Seasonal Cycle for a single pixel","titles":[]},"96":{"title":"Define the cube","titles":["Mean Seasonal Cycle for a single pixel"]},"97":{"title":"Plot results: mean seasonal cycle","titles":["Mean Seasonal Cycle for a single pixel"]},"98":{"title":"Other tutorials","titles":[]},"99":{"title":"General overview of the functionality of YAXArrays","titles":["Other tutorials"]},"100":{"title":"Table-style iteration over YAXArrays","titles":["Other tutorials"]},"101":{"title":"Combining multiple tiff files into a zarr based datacube","titles":["Other tutorials"]},"102":{"title":"Plotting maps","titles":[]},"103":{"title":"Heatmap plot","titles":["Plotting maps"]},"104":{"title":"Wintri Projection","titles":[]},"105":{"title":"Moll projection","titles":["Wintri Projection"]},"106":{"title":"3D sphere plot","titles":["Wintri Projection"]}},"dirtCount":0,"index":[["δlon",{"2":{"104":1}}],["├─────────────────────┴─────────────────────────────────────────",{"2":{"47":1}}],["├─────────────────────────┴──────────────────────────",{"2":{"37":1}}],["├─────────────────────────┴─────────────────────────────────────",{"2":{"91":1}}],["├─────────────────────────┴──────────────────────────────────────",{"2":{"33":1}}],["├─────────────────────────┴──────────────────────────────────────────────",{"2":{"34":1,"42":1}}],["├─────────────────────────┴─────────────────────────────────────────",{"2":{"19":1}}],["├─────────────────────────┴──────────────────────────────────",{"2":{"27":2}}],["├─────────────────────────┴────────────────────────────────",{"2":{"9":1}}],["├──────────────────────────┴────────────────────────────",{"2":{"26":1}}],["├──────────────────────────┴────────────────────────────────────",{"2":{"25":1}}],["├──────────────────────────┴─────────────────────────────────────────────",{"2":{"22":1,"37":1}}],["├────────────────────────────┴───────────────────────────────────────────",{"2":{"37":2}}],["├────────────────────────────┴──────────────────────────",{"2":{"26":1}}],["├─────────────────────────────┴──────────────────────────────────",{"2":{"29":1}}],["├─────────────────────────────┴──────────────────────────────────────────",{"2":{"16":1,"32":1}}],["├───────────────────────────────┴────────────────────────────────────────",{"2":{"55":1}}],["├──────────────────────────────────┴─────────────────────────────────────",{"2":{"96":1}}],["├────────────────────────────────────┴───────────────────────────────────",{"2":{"58":1}}],["├──────────────────────────────────────┴────────────────────────",{"2":{"47":1}}],["├────────────────────────────────────────",{"2":{"37":1}}],["├──────────────────────────────────────────┴─────────────────────────────",{"2":{"22":1,"42":1}}],["├─────────────────────────────────────────────┴─────────────────",{"2":{"65":1}}],["├───────────────────────────────────────────────┴────────────────────────",{"2":{"42":1,"66":1,"67":5}}],["├────────────────────────────────────────────────",{"2":{"27":1,"37":1}}],["├────────────────────────────────────────────────┴───────────────────────",{"2":{"14":1,"54":1,"59":1,"62":3,"64":2,"65":2}}],["├──────────────────────────────────────────────────┴─────────────────────",{"2":{"51":1}}],["├────────────────────────────────────────────────────",{"2":{"29":1,"33":1}}],["├────────────────────────────────────────────────────────",{"2":{"27":2}}],["├───────────────────────────────────────────────────────────",{"2":{"25":1,"47":2,"91":1}}],["├────────────────────────────────────────────────────────────",{"2":{"10":1,"12":1,"13":1,"14":2,"16":3,"17":1,"18":1,"21":2,"22":2,"29":2,"32":1,"33":3,"34":1,"37":4,"41":3,"42":3,"54":1,"62":3,"81":1,"91":1,"96":1}}],["├─────────────────────────────────────────────────────────────────",{"2":{"65":1}}],["├──────────────────────────────────────────────────────────────────",{"2":{"51":1,"54":1}}],["├─────────────────────────────────────────────────────────────────────┴",{"2":{"65":1}}],["├────────────────────────────────────────────────────────────────────────",{"2":{"51":1,"52":1,"54":1,"55":1,"56":3}}],["├────────────────────────────────────────────────────────────────────",{"2":{"10":1,"12":1,"13":1,"14":2,"16":5,"17":1,"18":1,"21":2,"22":3,"29":1,"32":1,"33":2,"34":1,"35":1,"37":4,"41":3,"42":3,"51":2,"52":1,"54":3,"55":2,"56":3,"58":1,"59":1,"62":3,"64":2,"65":2,"66":3,"67":5,"81":1,"91":1,"96":1}}],["├───────────────────────────────────────────────────────────────",{"2":{"16":2,"19":1,"35":1,"58":1,"59":1,"64":2,"65":2,"66":3,"67":5}}],["├─────────────────────────────────────────────────────────────",{"2":{"8":1}}],["├───────────────────────────────────────────────────────",{"2":{"19":1}}],["├──────────────────────────────────────────────────────",{"2":{"9":1}}],["├─────────────────────────────────────────────────────",{"2":{"8":1,"26":1}}],["├───────────────────────────────────────────────────",{"2":{"25":1,"26":2,"47":2,"91":1}}],["├─────────────────────────────────────────────────",{"2":{"9":1,"21":1}}],["├──────────────────────────────────────────────┴─────────────────────────",{"2":{"16":2,"41":1,"66":2}}],["├───────────────────────────────────────────",{"2":{"26":1}}],["├───────────────────────────────────────────┴────────────────────────────",{"2":{"14":1,"18":1,"21":1,"81":1}}],["├─────────────────────────────────────────",{"2":{"21":1}}],["├────────────────────────────────┴───────────────────────────────────────",{"2":{"35":1,"91":1}}],["├────────────────────────────────┴────────────────────────────────",{"2":{"8":1}}],["├──────────────────────────────┴─────────────────────────────────────────",{"2":{"10":1,"12":1,"13":1,"16":2,"22":1,"29":1,"41":2,"54":1}}],["├───────────────────────────┴─────────────────────────",{"2":{"21":1}}],["├───────────────────────────┴────────────────────────────────────────────",{"2":{"17":1,"21":1,"22":1,"33":2,"37":1}}],["╭─────────────────────╮",{"2":{"47":1}}],["╭──────────────────────────╮",{"2":{"22":1,"25":1,"26":1,"37":1}}],["╭────────────────────────────╮",{"2":{"26":1,"37":2}}],["╭─────────────────────────────╮",{"2":{"16":1,"29":1,"32":1}}],["╭───────────────────────────────╮",{"2":{"55":1}}],["╭──────────────────────────────────╮",{"2":{"96":1}}],["╭────────────────────────────────────╮",{"2":{"58":1}}],["╭──────────────────────────────────────╮",{"2":{"47":1}}],["╭──────────────────────────────────────────╮",{"2":{"22":1,"42":1}}],["╭─────────────────────────────────────────────╮",{"2":{"65":1}}],["╭──────────────────────────────────────────────────────────────────────────────╮",{"2":{"51":1,"52":1,"54":1,"55":1,"56":3}}],["╭──────────────────────────────────────────────────╮",{"2":{"51":1}}],["╭────────────────────────────────────────────────╮",{"2":{"14":1,"54":1,"59":1,"62":3,"64":2,"65":2}}],["╭───────────────────────────────────────────────╮",{"2":{"42":1,"66":1,"67":5}}],["╭──────────────────────────────────────────────╮",{"2":{"16":2,"41":1,"66":2}}],["╭───────────────────────────────────────────╮",{"2":{"14":1,"18":1,"21":1,"81":1}}],["╭────────────────────────────────╮",{"2":{"8":1,"35":1,"91":1}}],["╭──────────────────────────────╮",{"2":{"10":1,"12":1,"13":1,"16":2,"22":1,"29":1,"41":2,"54":1}}],["╭───────────────────────────╮",{"2":{"17":1,"21":2,"22":1,"33":2,"37":1}}],["╭─────────────────────────╮",{"2":{"9":1,"19":1,"27":2,"33":1,"34":1,"37":1,"42":1,"91":1}}],["π",{"2":{"41":2,"95":1,"97":1}}],[">var",{"2":{"96":1}}],[">dates",{"2":{"96":1}}],[">month",{"2":{"84":1}}],[">abs",{"2":{"84":1}}],[">=",{"2":{"40":4}}],[">",{"2":{"40":2,"41":2,"96":1}}],["└──────────────────────────────────────────────────────────┘",{"2":{"37":1}}],["└─────────────────────────────────────────────────────────────┘",{"2":{"26":2}}],["└──────────────────────────────────────────────────────────────────┘",{"2":{"27":2}}],["└──────────────────────────────────────────────────────────────────────┘",{"2":{"29":1,"33":1}}],["└────────────────────────────────────────────────────────────────────────────────┘",{"2":{"65":1}}],["└──────────────────────────────────────────────────────────────────────────────┘",{"2":{"10":1,"12":1,"13":1,"14":2,"16":5,"17":1,"18":1,"21":2,"22":4,"29":1,"32":1,"33":2,"34":1,"35":1,"37":4,"41":3,"42":3,"51":2,"52":1,"54":3,"55":2,"56":3,"58":1,"59":1,"62":3,"64":2,"65":2,"66":3,"67":5,"81":1,"91":1,"96":1}}],["└─────────────────────────────────────────────────────────────────────────┘",{"2":{"19":1}}],["└───────────────────────────────────────────────────────────────────────┘",{"2":{"8":1}}],["└─────────────────────────────────────────────────────────────────────┘",{"2":{"25":1,"47":2,"91":1}}],["└────────────────────────────────────────────────────────────────┘",{"2":{"9":1}}],["└───────────────────────────────────────────────────────────┘",{"2":{"21":1}}],["`diskarrays",{"2":{"85":1}}],["`ds`",{"2":{"84":1}}],["`ordereddict`",{"2":{"84":1}}],["`fun`",{"2":{"84":1}}],["`a",{"2":{"37":1}}],["`layer`",{"2":{"18":1}}],["quickstart",{"0":{"91":1}}],["query",{"2":{"63":1}}],["querying",{"2":{"62":1}}],["questions",{"0":{"31":1},"1":{"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1}}],["quot",{"2":{"16":2,"42":2,"79":2,"81":4,"84":16,"85":12}}],["jj+1",{"2":{"59":1,"63":1,"74":1,"80":1}}],["jj",{"2":{"59":1,"63":1,"74":1,"80":1}}],["joinname",{"2":{"84":1}}],["joinname=",{"2":{"84":1}}],["journal",{"2":{"59":1,"63":1,"74":1,"80":1}}],["joe",{"2":{"49":1,"56":1}}],["j",{"2":{"56":8}}],["jan",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["jl",{"0":{"86":1,"93":1},"1":{"87":1,"88":1},"2":{"26":1,"27":1,"42":1,"46":2,"50":1,"56":1,"70":1,"73":1,"86":1,"88":2,"90":1,"91":2,"92":3,"93":2,"100":1}}],["jussieu",{"2":{"59":1,"63":1,"74":1,"80":1}}],["just",{"2":{"22":1,"70":1,"72":1,"84":1,"85":2}}],["jul",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["juliaδlon",{"2":{"104":1}}],["juliaglmakie",{"2":{"103":1}}],["juliagetloopchunks",{"2":{"85":1}}],["juliagetouttype",{"2":{"85":1}}],["juliagetoutaxis",{"2":{"85":1}}],["juliaget",{"2":{"85":1}}],["juliagetaxis",{"2":{"84":1}}],["juliagettarrayaxes",{"2":{"46":1}}],["juliagen",{"2":{"16":1}}],["juliax",{"2":{"95":1}}],["juliapkg>",{"2":{"90":1,"92":1,"93":1}}],["juliapermuteloopaxes",{"2":{"85":1}}],["juliaproperties",{"2":{"19":1}}],["juliaoptifunc",{"2":{"85":1}}],["juliaopen",{"2":{"84":1}}],["juliaoutdims",{"2":{"84":1}}],["juliaoffset",{"2":{"13":1}}],["juliacopydata",{"2":{"85":1}}],["juliacollect",{"2":{"34":1,"68":1}}],["juliaclean",{"2":{"85":1}}],["juliacube",{"2":{"84":1}}],["juliacubefittable",{"2":{"84":1}}],["juliacubetable",{"2":{"84":1}}],["juliacaxes",{"2":{"84":1}}],["julian",{"2":{"76":1,"78":1}}],["juliasavecube",{"2":{"84":1}}],["juliasavedataset",{"2":{"75":1,"77":1,"79":1}}],["juliasetchunks",{"2":{"84":1,"85":1}}],["juliaseasons",{"2":{"53":1}}],["julialon",{"2":{"102":1}}],["julialookup",{"2":{"68":1}}],["julialatitudes",{"2":{"40":1}}],["juliawith",{"2":{"56":1}}],["julia>",{"2":{"56":1,"88":1,"93":2,"96":1}}],["juliaurl",{"2":{"50":1}}],["juliausing",{"2":{"0":1,"2":1,"4":1,"5":1,"6":1,"8":1,"9":1,"10":1,"16":1,"17":1,"22":1,"23":2,"25":1,"26":1,"27":1,"29":2,"32":1,"33":1,"35":1,"37":1,"39":1,"40":1,"42":2,"46":1,"48":1,"56":1,"58":1,"59":1,"60":1,"63":1,"65":1,"67":1,"74":1,"75":1,"77":1,"81":1,"91":2,"94":4,"95":1,"102":1,"106":1}}],["juliakeylist",{"2":{"45":1}}],["juliaylonlat",{"2":{"37":1}}],["juliaytime3",{"2":{"37":1}}],["juliaytime2",{"2":{"37":1}}],["juliaytime",{"2":{"37":1}}],["juliay",{"2":{"37":1}}],["juliayaxcolumn",{"2":{"85":1}}],["juliayaxarray",{"2":{"84":1}}],["juliayax",{"2":{"0":1,"46":2}}],["juliatos",{"2":{"64":2,"65":2,"66":3,"67":1,"68":1}}],["juliatempo",{"2":{"54":1}}],["juliatest",{"2":{"47":2}}],["juliat",{"2":{"37":1,"42":1,"95":1}}],["juliatspan",{"2":{"16":1}}],["juliamutable",{"2":{"85":1}}],["juliamatch",{"2":{"85":1}}],["juliamapcube",{"2":{"84":2}}],["juliamapslices",{"2":{"14":1,"23":1}}],["juliamovingwindow",{"2":{"84":1}}],["juliamy",{"2":{"59":1}}],["juliamean",{"2":{"56":1}}],["juliam2",{"2":{"25":1}}],["julia",{"2":{"24":1,"59":1,"85":1,"88":1,"90":2,"92":2,"93":2}}],["juliavector",{"2":{"22":1}}],["juliadataset",{"2":{"84":1}}],["juliadata3",{"2":{"30":1}}],["juliadim",{"2":{"27":1}}],["juliadimarray",{"2":{"22":1}}],["juliads2",{"2":{"80":1}}],["juliads",{"2":{"18":2,"20":2,"21":1,"39":1,"40":1,"58":1,"59":1,"62":2,"78":1,"81":2,"82":3}}],["juliar",{"2":{"81":1}}],["juliareadcubedata",{"2":{"62":1,"84":1}}],["juliaregions",{"2":{"22":2}}],["juliaras2",{"2":{"26":1}}],["juliarandom",{"2":{"21":2}}],["juliaindims",{"2":{"18":1,"20":1,"84":1}}],["juliaimport",{"2":{"14":1,"90":1}}],["juliajulia>",{"2":{"16":5,"32":3,"33":2,"34":1,"35":1,"41":3,"42":3,"44":1,"45":1,"46":2,"51":2,"52":1,"54":2,"55":2,"56":3,"67":4,"80":1,"81":1,"93":1,"96":2,"102":3}}],["juliaall",{"2":{"81":1}}],["juliaaxs",{"2":{"50":1}}],["juliaaxes",{"2":{"37":1}}],["juliaa2",{"2":{"12":2,"29":2,"91":1}}],["juliaa",{"2":{"2":1,"11":3}}],["juliafig",{"2":{"95":1,"97":1,"104":1,"105":1}}],["juliafindaxis",{"2":{"85":1}}],["juliafiles",{"2":{"84":2}}],["juliafittable",{"2":{"84":2}}],["juliafunction",{"2":{"16":1,"18":1,"19":1,"21":1,"51":1,"84":1,"96":1}}],["juliaf",{"2":{"2":1,"4":1,"5":1,"6":1,"16":1}}],["jun",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["∘",{"2":{"23":1}}],["|>",{"2":{"22":2}}],["⋱",{"2":{"22":1}}],["⋮",{"2":{"22":2,"68":1,"96":1}}],["^2",{"2":{"21":1}}],["⬔",{"2":{"17":1,"18":1,"35":1,"91":1}}],["92491",{"2":{"91":1}}],["928614",{"2":{"91":1}}],["926096",{"2":{"26":1}}],["986",{"2":{"56":1}}],["984803",{"2":{"22":1}}],["976187",{"2":{"91":1}}],["97649",{"2":{"56":1}}],["97047",{"2":{"56":1}}],["973332",{"2":{"26":1}}],["94534",{"2":{"56":1}}],["9404",{"2":{"51":1,"52":1}}],["9432",{"2":{"51":1,"52":1}}],["949935",{"2":{"25":1}}],["959899",{"2":{"82":2}}],["959",{"2":{"56":1}}],["95",{"2":{"40":6,"56":1}}],["902991",{"2":{"91":1}}],["902979",{"2":{"91":1}}],["90712",{"2":{"56":1}}],["90365",{"2":{"56":1}}],["90",{"2":{"40":2,"60":1,"67":5}}],["9122",{"2":{"60":1}}],["9192",{"2":{"56":1}}],["91",{"2":{"32":1,"67":5}}],["917969",{"2":{"27":1}}],["916686",{"2":{"26":1}}],["918555",{"2":{"25":1}}],["935959",{"2":{"91":1}}],["935631",{"2":{"25":1}}],["937012",{"2":{"91":1}}],["9375",{"2":{"58":2,"102":1}}],["93743",{"2":{"56":1}}],["9362",{"2":{"56":1}}],["938094",{"2":{"26":1}}],["93986",{"2":{"22":1}}],["9",{"2":{"16":14,"22":2,"34":1,"37":1,"40":6,"54":4,"66":4,"76":2,"78":1,"85":1}}],["96x71x19",{"2":{"59":1,"63":1,"74":1,"80":1}}],["96f0",{"2":{"59":1,"63":1,"74":1}}],["9682",{"2":{"51":1,"52":1}}],["960",{"2":{"17":1,"18":1,"22":1}}],["96",{"2":{"8":1,"9":1,"65":2,"80":1}}],["898926",{"2":{"82":2}}],["8984",{"2":{"56":1}}],["8901",{"2":{"60":1}}],["89",{"2":{"58":4,"59":2,"60":1,"62":3,"63":1,"64":2,"65":1,"66":1,"67":5,"68":1,"74":1,"80":1,"102":2}}],["89237",{"2":{"56":1}}],["864937",{"2":{"91":1}}],["86457",{"2":{"56":1}}],["86",{"2":{"68":1}}],["862644",{"2":{"26":1}}],["884949",{"2":{"91":1}}],["882929",{"2":{"82":2}}],["88",{"2":{"35":1,"58":4,"68":1,"91":1,"102":2}}],["889583",{"2":{"22":1}}],["81705",{"2":{"91":1}}],["812577",{"2":{"91":1}}],["811959",{"2":{"91":1}}],["81",{"2":{"29":1,"68":1}}],["81362",{"2":{"26":1}}],["853962",{"2":{"91":1}}],["858795",{"2":{"82":2}}],["858065",{"2":{"27":1}}],["85",{"2":{"68":1,"104":1,"105":1}}],["850",{"2":{"56":1}}],["85ºn",{"2":{"40":1}}],["85714",{"2":{"22":1}}],["839919",{"2":{"82":2}}],["83",{"2":{"68":1}}],["830391",{"2":{"25":1}}],["83556",{"2":{"25":1}}],["874428",{"2":{"91":1}}],["875981",{"2":{"91":1}}],["875658",{"2":{"22":1}}],["87",{"2":{"68":1}}],["87705",{"2":{"56":1}}],["872575",{"2":{"26":1}}],["870888",{"2":{"26":1}}],["870826",{"2":{"25":1}}],["841123",{"2":{"82":2}}],["84",{"2":{"60":2,"68":1}}],["845983",{"2":{"25":1}}],["840389",{"2":{"22":1}}],["825766",{"2":{"91":1}}],["828299",{"2":{"91":1}}],["820737",{"2":{"82":2}}],["82",{"2":{"68":1}}],["82421875",{"2":{"60":2}}],["824354",{"2":{"22":1}}],["829062",{"2":{"22":1}}],["8",{"2":{"16":12,"22":2,"34":1,"37":1,"59":2,"62":3,"63":1,"64":2,"74":1,"80":1,"96":1}}],["807171",{"2":{"91":1}}],["80759",{"2":{"56":1}}],["800",{"2":{"33":3,"34":1,"37":1}}],["80",{"2":{"16":1,"40":2}}],["v",{"2":{"59":1,"63":1,"74":1,"80":1}}],["v1",{"2":{"59":2,"63":2,"74":2,"80":2,"90":1}}],["v20190710",{"2":{"58":1,"102":2}}],["vol",{"2":{"59":1,"63":1,"74":1,"80":1}}],["volume",{"2":{"46":4}}],["voilà",{"2":{"46":1}}],["video",{"2":{"98":1}}],["videos",{"2":{"98":1}}],["visualization",{"2":{"42":1}}],["vice",{"2":{"24":1}}],["view",{"2":{"22":1,"91":1}}],["version",{"2":{"58":1,"59":1,"63":1,"74":1,"80":1,"84":1,"92":2,"93":1,"102":1}}],["versa",{"2":{"24":1}}],["verify",{"2":{"55":1,"82":1}}],["very",{"2":{"13":1,"42":1,"70":1}}],["vector",{"0":{"22":1},"2":{"22":4,"34":1,"47":1,"51":1,"53":1,"54":2,"55":2,"56":1,"68":1,"70":1,"84":2,"85":3}}],["val",{"2":{"34":2,"68":1}}],["vals",{"2":{"22":1}}],["value",{"2":{"12":1,"14":3,"16":2,"41":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5,"84":4,"85":1}}],["values=ds1",{"2":{"42":1}}],["values",{"0":{"34":1,"82":1},"2":{"9":1,"20":1,"21":1,"22":2,"28":1,"29":2,"32":2,"33":1,"34":1,"40":3,"42":4,"45":1,"46":2,"66":1,"68":2,"70":1,"71":1,"81":1,"82":3,"84":9,"91":1,"102":1}}],["varoables",{"2":{"84":1}}],["variant",{"2":{"58":1,"102":1}}],["variable=at",{"2":{"91":1}}],["variable",{"0":{"5":1,"43":1,"44":1,"45":1},"1":{"44":1,"45":1},"2":{"5":1,"9":3,"40":3,"46":5,"58":1,"62":2,"81":2,"84":4,"85":7,"91":3,"95":1,"96":1,"97":1,"102":1}}],["variables=at",{"2":{"41":2}}],["variables",{"0":{"6":1,"39":1,"40":1},"2":{"4":5,"5":4,"6":2,"9":2,"17":2,"18":1,"19":1,"20":1,"21":1,"24":1,"30":1,"35":2,"38":1,"39":2,"40":11,"44":1,"45":4,"46":6,"58":4,"59":1,"60":1,"61":1,"62":1,"63":1,"71":1,"72":1,"74":1,"80":4,"81":1,"84":2,"102":4}}],["varlist",{"2":{"45":2}}],["var2=var2",{"2":{"39":1}}],["var2",{"2":{"35":2,"39":3,"41":1}}],["var1=var1",{"2":{"39":1}}],["var1",{"2":{"35":2,"39":3,"41":1}}],["var",{"2":{"9":2,"95":2,"96":2,"97":2}}],["uv",{"2":{"106":1}}],["u",{"2":{"96":1}}],["up",{"2":{"84":1}}],["updates",{"0":{"92":1}}],["updated",{"2":{"82":1}}],["update",{"0":{"82":1},"2":{"82":2,"84":1}}],["updating",{"2":{"48":1,"82":1}}],["ucar",{"2":{"59":1,"63":1,"71":1,"74":1}}],["urls",{"2":{"57":1}}],["url",{"2":{"50":1,"58":1}}],["unreleased",{"2":{"93":1}}],["unpermuted",{"2":{"85":2}}],["unpractical",{"2":{"50":1}}],["underlying",{"2":{"84":1,"85":1,"92":1}}],["unlike",{"2":{"72":1}}],["unique",{"2":{"96":1}}],["unidata",{"2":{"59":1,"63":1,"71":1,"74":1}}],["unit",{"2":{"60":1}}],["units",{"2":{"58":1,"59":2,"62":6,"64":4,"65":6,"66":6,"67":10}}],["unitrange",{"2":{"51":2,"52":2,"56":6}}],["unions",{"0":{"47":1}}],["union",{"2":{"14":2,"16":4,"18":2,"20":1,"21":1,"22":1,"41":1,"42":2,"47":2,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5,"81":2,"82":1}}],["unweighted",{"2":{"51":1,"56":1}}],["unordered",{"2":{"46":4,"51":2,"52":1,"53":1,"54":2,"55":2,"56":3}}],["unnecessary",{"2":{"22":1}}],["unchanged",{"2":{"13":1}}],["usually",{"2":{"58":1,"70":2,"71":2}}],["usual",{"2":{"51":1}}],["us",{"2":{"22":1}}],["useable",{"2":{"84":1}}],["used",{"2":{"22":1,"23":1,"37":1,"63":1,"68":1,"69":1,"70":1,"73":1,"84":6,"85":3}}],["uses",{"2":{"20":1,"42":1,"59":1}}],["userguide",{"2":{"87":2}}],["users",{"2":{"85":1}}],["user",{"2":{"10":2,"12":1,"13":1,"23":1,"29":3,"30":1,"85":1}}],["use",{"0":{"42":1},"2":{"0":1,"8":1,"9":1,"10":4,"13":1,"23":2,"32":2,"37":1,"39":1,"40":1,"41":1,"42":2,"46":2,"48":1,"50":1,"52":1,"61":1,"67":2,"72":1,"76":1,"81":1,"84":4,"85":1,"93":1,"98":1,"100":1,"102":2}}],["useful",{"2":{"0":1,"72":1}}],["using",{"2":{"0":1,"8":1,"9":1,"10":1,"16":2,"17":2,"22":2,"23":7,"27":1,"32":1,"33":2,"35":1,"37":2,"39":2,"40":2,"41":1,"42":1,"46":1,"48":4,"58":2,"59":3,"60":2,"61":1,"63":2,"65":3,"66":2,"74":2,"80":1,"81":3,"92":1,"93":1,"95":2,"96":1,"102":3}}],["+proj=moll",{"2":{"105":1}}],["+",{"2":{"12":2,"13":1,"16":2,"18":2,"21":1,"95":1,"104":1}}],["kwargs",{"2":{"84":5,"85":2}}],["know",{"2":{"62":1}}],["k",{"2":{"46":5,"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5}}],["keyword",{"2":{"80":1,"84":6,"85":2}}],["key",{"2":{"48":1,"84":1}}],["keyset",{"2":{"46":1}}],["keys",{"2":{"46":7,"84":1}}],["keylist",{"2":{"45":1}}],["keeps",{"2":{"13":1}}],["keep",{"2":{"0":1,"85":1}}],["kb",{"2":{"10":1,"12":1,"13":1,"14":1,"16":2,"22":1,"26":1,"29":2,"32":1,"35":1,"37":4,"41":3,"42":1,"65":1,"66":3,"67":5,"91":1,"96":1}}],["↗",{"2":{"10":1,"12":1,"13":1,"16":2,"17":1,"18":1,"19":1,"20":1,"21":3,"22":1,"26":2,"29":3,"30":1,"32":3,"35":1,"37":5,"39":2,"41":3,"51":1,"58":2,"59":2,"62":3,"63":1,"64":2,"66":3,"67":5,"74":1,"80":2,"81":2,"91":1,"102":1}}],["047283",{"2":{"91":1}}],["0474875",{"2":{"91":1}}],["0465",{"2":{"56":1}}],["0e8",{"2":{"84":1}}],["02627341416046051",{"2":{"96":1}}],["028497582895211832",{"2":{"96":1}}],["02",{"2":{"58":1}}],["0210077",{"2":{"25":1}}],["0214057",{"2":{"25":1}}],["0f20",{"2":{"58":1,"59":2,"62":6,"64":4,"65":6,"66":6,"67":10}}],["0f32",{"2":{"16":2}}],["06183225090497175",{"2":{"96":1}}],["060422",{"2":{"91":1}}],["0693719",{"2":{"91":1}}],["0625",{"2":{"58":2,"102":1}}],["0620649",{"2":{"26":1}}],["06755",{"2":{"56":1}}],["08964458904045909",{"2":{"96":1}}],["08383207080301504",{"2":{"96":1}}],["08",{"2":{"54":1}}],["0881736",{"2":{"27":1}}],["09470732715757708",{"2":{"96":1}}],["09317591352691727",{"2":{"96":1}}],["0916764",{"2":{"91":1}}],["0972941",{"2":{"91":1}}],["09",{"2":{"54":1}}],["096862",{"2":{"27":1}}],["0ºe",{"2":{"40":1}}],["07400365941169999",{"2":{"96":1}}],["0743642",{"2":{"91":1}}],["07111923498269067",{"2":{"96":1}}],["0776029",{"2":{"91":1}}],["07",{"2":{"58":2,"102":1}}],["0702532",{"2":{"26":1}}],["0723492",{"2":{"22":1}}],["03856393968274492",{"2":{"96":1}}],["0353507",{"2":{"91":1}}],["0358348",{"2":{"25":1}}],["0302534",{"2":{"91":1}}],["03361",{"2":{"56":1}}],["03",{"2":{"26":1}}],["00997173",{"2":{"91":1}}],["00990356",{"2":{"56":1}}],["00722034",{"2":{"56":1}}],["00709111",{"2":{"56":1}}],["0063020041736240135",{"2":{"96":1}}],["00684233",{"2":{"56":1}}],["00693713",{"2":{"56":1}}],["0057",{"2":{"56":1}}],["00388",{"2":{"56":1}}],["00",{"2":{"20":4,"46":16,"54":4,"58":9,"59":8,"62":12,"63":4,"64":8,"65":8,"66":12,"67":20,"74":4,"80":4,"102":5}}],["05116592548280876",{"2":{"96":1}}],["0512364",{"2":{"91":1}}],["05345455485976908",{"2":{"96":1}}],["05344184427965779",{"2":{"96":1}}],["0537",{"2":{"51":1,"52":1}}],["05846",{"2":{"56":1}}],["0593761",{"2":{"26":1}}],["0566881",{"2":{"26":1}}],["05t00",{"2":{"20":1}}],["05",{"2":{"17":2,"18":1,"21":3,"37":3}}],["013646215450068194",{"2":{"96":1}}],["0174532925199433",{"2":{"60":1}}],["0178074",{"2":{"56":1}}],["01t03",{"2":{"58":2,"102":1}}],["01t00",{"2":{"20":1,"46":4,"58":2,"102":1}}],["0117519",{"2":{"56":1}}],["0115514",{"2":{"56":1}}],["0127077",{"2":{"56":1}}],["0123091",{"2":{"56":1}}],["0121037",{"2":{"56":1}}],["019016",{"2":{"56":1}}],["0188721",{"2":{"82":2}}],["018571",{"2":{"56":1}}],["0182373",{"2":{"56":1}}],["0180572",{"2":{"56":1}}],["0183003",{"2":{"56":1}}],["018",{"2":{"51":1,"52":1}}],["01",{"2":{"10":6,"12":3,"13":3,"14":3,"16":12,"17":6,"18":3,"20":2,"21":9,"22":9,"23":3,"29":9,"30":3,"37":22,"39":8,"40":11,"46":8,"58":5,"59":4,"62":6,"63":2,"64":4,"65":6,"66":6,"67":10,"74":2,"80":2,"95":2,"96":4,"102":5}}],["0",{"2":{"8":1,"9":1,"10":6,"11":2,"12":6,"13":6,"14":7,"16":303,"17":7,"18":7,"19":7,"20":6,"21":10,"22":75,"25":36,"26":36,"27":45,"29":12,"30":6,"33":3,"34":1,"35":9,"37":1,"40":4,"41":27,"42":11,"47":2,"54":2,"55":40,"56":19,"58":7,"59":10,"60":6,"62":12,"63":6,"64":8,"65":6,"66":14,"67":20,"68":6,"74":6,"76":1,"78":1,"79":1,"80":6,"81":1,"82":40,"84":2,"85":1,"91":80,"92":1,"95":2,"96":19,"97":1,"102":4,"104":2,"105":2,"106":2}}],["┤",{"2":{"8":2,"9":2,"10":2,"12":2,"13":2,"14":4,"16":10,"17":2,"18":2,"19":2,"21":6,"22":5,"25":2,"26":4,"27":3,"29":4,"32":2,"33":6,"34":2,"35":2,"37":10,"41":6,"42":6,"47":4,"51":4,"52":2,"54":6,"55":3,"56":6,"58":2,"59":2,"62":6,"64":4,"65":5,"66":6,"67":10,"81":2,"91":4,"96":2}}],["┐",{"2":{"8":1,"9":1,"10":1,"12":1,"13":1,"14":2,"16":5,"17":1,"18":1,"19":1,"21":3,"22":4,"25":1,"26":2,"27":2,"29":2,"32":1,"33":3,"34":1,"35":1,"37":5,"41":3,"42":3,"47":2,"51":1,"54":2,"55":1,"58":1,"59":1,"62":3,"64":2,"65":4,"66":3,"67":5,"81":1,"91":2,"96":1}}],["│",{"2":{"8":2,"9":2,"10":2,"12":2,"13":2,"14":4,"16":10,"17":2,"18":2,"19":2,"21":6,"22":8,"25":2,"26":4,"27":4,"29":4,"32":2,"33":6,"34":2,"35":2,"37":10,"41":6,"42":6,"47":4,"51":4,"52":2,"54":6,"55":4,"56":6,"58":2,"59":2,"62":6,"64":4,"65":6,"66":6,"67":10,"81":2,"91":4,"96":2}}],["720352",{"2":{"91":1}}],["720635",{"2":{"82":2}}],["72",{"2":{"68":1}}],["725765",{"2":{"27":1}}],["768363",{"2":{"91":1}}],["761553",{"2":{"82":2}}],["76",{"2":{"68":1}}],["762559",{"2":{"26":1}}],["705063",{"2":{"91":1}}],["70",{"2":{"66":3,"68":1}}],["7030",{"2":{"60":1}}],["701332",{"2":{"22":1}}],["730",{"2":{"97":1}}],["732556",{"2":{"91":1}}],["7341",{"2":{"56":1}}],["73",{"2":{"56":1,"68":1}}],["731779",{"2":{"26":1}}],["755932",{"2":{"91":1}}],["75",{"2":{"68":1}}],["7593",{"2":{"56":1}}],["75891",{"2":{"56":1}}],["75269",{"2":{"25":1}}],["752417",{"2":{"22":1}}],["77",{"2":{"68":1}}],["77687",{"2":{"56":1}}],["77587",{"2":{"56":1}}],["770949",{"2":{"26":1}}],["79",{"2":{"59":2,"62":3,"63":1,"64":2,"65":2,"66":4,"67":5,"68":1,"74":1,"80":1}}],["79502",{"2":{"56":1}}],["793913",{"2":{"27":1}}],["791138",{"2":{"27":1}}],["796375",{"2":{"26":1}}],["746804",{"2":{"91":1}}],["74",{"2":{"68":1}}],["744521",{"2":{"26":1}}],["74732",{"2":{"25":1}}],["717",{"2":{"67":5}}],["71",{"2":{"66":1,"68":1}}],["7158",{"2":{"51":1,"52":1}}],["7119",{"2":{"51":1,"52":1}}],["71314",{"2":{"26":1}}],["718667",{"2":{"26":1}}],["71429",{"2":{"22":2}}],["78",{"2":{"66":1,"68":1}}],["780824",{"2":{"27":1}}],["78467",{"2":{"25":1}}],["789891",{"2":{"25":1}}],["781773",{"2":{"22":1}}],["7",{"2":{"8":1,"16":10,"21":3,"22":1,"26":1,"29":1,"34":1,"58":1,"78":1,"102":1}}],["→",{"2":{"4":1,"5":1,"6":1,"9":1,"10":1,"12":1,"13":1,"14":1,"16":2,"17":1,"18":1,"19":1,"20":1,"21":3,"22":6,"25":1,"26":3,"27":3,"29":3,"30":1,"32":3,"33":3,"34":1,"35":1,"37":6,"39":2,"40":2,"41":3,"42":2,"45":2,"46":4,"47":2,"51":1,"58":2,"59":2,"60":1,"62":3,"63":1,"64":2,"65":1,"66":3,"67":5,"74":1,"80":2,"81":2,"91":2,"102":1}}],["↓",{"2":{"4":3,"5":3,"6":1,"8":1,"9":1,"10":1,"12":1,"13":1,"14":2,"16":5,"17":1,"18":1,"19":1,"20":1,"21":3,"22":6,"25":1,"26":3,"27":3,"29":3,"30":1,"32":3,"33":3,"34":1,"35":1,"37":6,"39":2,"40":8,"41":3,"42":3,"44":1,"45":3,"46":4,"47":2,"51":3,"52":1,"54":4,"55":2,"56":3,"58":2,"59":2,"60":1,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"74":1,"80":2,"81":2,"91":2,"96":2,"102":1}}],["438885",{"2":{"91":1}}],["4326",{"2":{"60":1}}],["43254",{"2":{"56":1}}],["4325",{"2":{"51":1,"52":1}}],["432286",{"2":{"22":1}}],["457984",{"2":{"82":2}}],["459041",{"2":{"82":2}}],["45×170×24",{"2":{"67":5}}],["456765",{"2":{"25":1}}],["48",{"2":{"91":1}}],["48367",{"2":{"56":1}}],["480",{"2":{"21":2,"42":1}}],["414041",{"2":{"82":2}}],["4198",{"2":{"56":1}}],["41241",{"2":{"56":1}}],["41049",{"2":{"56":1}}],["41634",{"2":{"56":1}}],["417937",{"2":{"22":1}}],["404819",{"2":{"91":1}}],["40",{"2":{"40":2}}],["400",{"2":{"25":1,"81":1,"95":1,"97":1}}],["44",{"2":{"37":1,"41":3}}],["471857",{"2":{"82":2}}],["47951",{"2":{"27":1}}],["475725",{"2":{"26":1}}],["472308",{"2":{"22":1}}],["497881",{"2":{"82":2}}],["497189",{"2":{"22":1}}],["49909",{"2":{"56":1}}],["4947",{"2":{"56":1}}],["492817",{"2":{"26":1}}],["4×30",{"2":{"22":1}}],["4×3×7",{"2":{"21":1}}],["4×3×2",{"2":{"19":1}}],["461652",{"2":{"91":1}}],["46506",{"2":{"56":1}}],["465103",{"2":{"22":1}}],["46",{"2":{"35":1,"91":1}}],["463503",{"2":{"22":1}}],["425153",{"2":{"27":1}}],["426519",{"2":{"25":1}}],["42857",{"2":{"22":2}}],["42",{"2":{"11":3}}],["4",{"2":{"4":4,"5":4,"16":4,"17":4,"18":2,"19":2,"20":1,"21":8,"22":9,"27":1,"34":1,"35":1,"51":2,"52":1,"53":1,"54":2,"55":2,"56":4,"81":3,"82":2,"91":3,"95":1,"97":1}}],["3d",{"0":{"106":1}}],["3hr",{"2":{"58":2,"102":3}}],["339529",{"2":{"91":1}}],["33565",{"2":{"56":1}}],["337926",{"2":{"25":1}}],["325997",{"2":{"91":1}}],["32555",{"2":{"56":1}}],["3252",{"2":{"51":1,"52":1}}],["32149",{"2":{"56":1}}],["327439",{"2":{"27":1}}],["3×3",{"2":{"47":1}}],["3×20",{"2":{"42":1}}],["384×192×251288",{"2":{"58":1}}],["3866",{"2":{"56":1}}],["38364",{"2":{"56":1}}],["3835",{"2":{"51":1,"52":1}}],["38",{"2":{"37":1,"66":3}}],["312",{"2":{"56":1}}],["31753",{"2":{"56":1}}],["3169",{"2":{"56":1}}],["3188",{"2":{"56":1}}],["31",{"2":{"37":2,"39":1,"40":1,"95":1,"96":2}}],["366",{"2":{"97":1}}],["365×1",{"2":{"96":1}}],["365",{"2":{"96":1,"97":4}}],["365971",{"2":{"27":1}}],["367809",{"2":{"82":2}}],["36126",{"2":{"56":1}}],["36142",{"2":{"56":1}}],["36836",{"2":{"56":1}}],["369",{"2":{"40":1}}],["36",{"2":{"37":1,"39":2,"40":1,"54":1}}],["3600",{"2":{"37":1,"39":2}}],["364288",{"2":{"25":1}}],["34818",{"2":{"56":1}}],["34832",{"2":{"56":1}}],["348362",{"2":{"25":1}}],["34549",{"2":{"56":1}}],["34218",{"2":{"56":1}}],["340769",{"2":{"27":1}}],["3785",{"2":{"91":1}}],["37878",{"2":{"56":1}}],["37",{"2":{"59":2,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"74":1,"80":1}}],["372",{"2":{"56":1}}],["372761",{"2":{"22":1}}],["376409",{"2":{"26":1}}],["376135",{"2":{"22":1}}],["35700351866494",{"2":{"58":4,"102":2}}],["35432",{"2":{"56":1}}],["35483",{"2":{"56":1}}],["359",{"2":{"40":1,"58":2,"59":2,"62":3,"63":1,"64":2,"65":1,"68":2,"74":1,"80":1,"102":1}}],["35",{"2":{"10":1,"12":1,"13":1,"22":1,"29":1}}],["307f8f0e584a39a050c042849004e6a2bd674f99",{"2":{"60":1}}],["3069",{"2":{"56":1}}],["30018",{"2":{"56":1}}],["30142",{"2":{"56":1}}],["30113",{"2":{"56":1}}],["30×15×10",{"2":{"16":1}}],["30×10×15",{"2":{"10":1,"12":1,"13":1,"22":1,"29":1}}],["30",{"2":{"10":3,"12":1,"13":1,"14":2,"16":5,"22":5,"23":2,"26":10,"29":4,"30":2,"56":2,"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5,"102":1}}],["393083",{"2":{"91":1}}],["395234",{"2":{"26":1}}],["39",{"2":{"10":1,"16":3,"18":1,"19":1,"33":1,"35":1,"37":1,"39":1,"40":1,"41":2,"56":1,"61":1,"62":1,"63":1,"73":1,"76":1,"84":2,"87":4,"96":3}}],["3",{"2":{"4":8,"5":8,"6":10,"10":1,"11":3,"12":3,"13":2,"16":4,"17":3,"18":1,"19":3,"20":1,"21":14,"22":6,"26":2,"27":1,"29":3,"32":5,"34":1,"37":4,"41":4,"42":5,"46":1,"47":2,"51":2,"56":31,"58":1,"59":1,"62":3,"64":2,"66":4,"67":5,"80":1,"81":3,"84":1,"91":3,"95":2}}],["zoom",{"2":{"106":1}}],["zopen",{"2":{"58":1,"82":1,"102":1}}],["zeros",{"2":{"81":3,"96":1}}],["z",{"2":{"4":2,"5":3,"6":2,"80":2}}],["zarray",{"2":{"82":1}}],["zarr",{"0":{"58":1,"75":1,"76":1,"101":1},"1":{"76":1},"2":{"0":1,"2":2,"4":2,"5":2,"6":2,"16":5,"17":1,"20":2,"23":1,"27":1,"47":1,"58":3,"75":5,"76":5,"79":3,"80":4,"81":6,"82":2,"84":2,"85":2,"94":2,"102":1}}],["xticklabelalign",{"2":{"95":1,"97":1}}],["xticklabelrotation",{"2":{"95":1,"97":1}}],["xlabel=",{"2":{"95":1,"97":1}}],["xx",{"2":{"59":1,"63":1,"74":1,"80":1}}],["xarray",{"2":{"49":1,"50":1}}],["x26",{"2":{"22":12,"40":12}}],["x3c",{"2":{"22":12,"40":4,"84":1}}],["xyz",{"2":{"21":2}}],["xy",{"2":{"19":2}}],["xyt",{"2":{"19":2,"21":2}}],["xin",{"2":{"18":8,"19":11,"21":8,"22":3,"41":3}}],["xout",{"2":{"16":2,"18":6,"19":6,"21":2,"22":3}}],["x",{"2":{"4":2,"5":3,"6":2,"13":2,"26":4,"27":3,"41":4,"47":2,"51":2,"52":1,"56":3,"60":1,"70":1,"82":2,"85":1,"91":5,"95":1,"96":6}}],["ndata",{"2":{"104":2,"105":1,"106":1}}],["ndays",{"2":{"96":4}}],["nlon",{"2":{"104":2,"105":1}}],["npy",{"2":{"95":2,"96":2}}],["nin",{"2":{"85":2}}],["ntr",{"2":{"85":1}}],["ntuple",{"2":{"85":4}}],["nthreads",{"2":{"84":2}}],["nvalid",{"2":{"84":1}}],["n",{"2":{"69":1,"84":3}}],["n256",{"2":{"56":1}}],["nan",{"2":{"50":1,"51":48,"52":48,"56":384}}],["name=cube",{"2":{"84":1}}],["named",{"2":{"63":1,"65":1,"66":1,"70":1,"84":2,"92":1}}],["namedtuple",{"2":{"18":1,"20":1,"84":1,"85":3}}],["names",{"0":{"21":1,"32":1,"43":1,"45":1},"1":{"33":1,"44":1,"45":1},"2":{"29":2,"46":1,"53":1,"70":2,"84":2,"85":1}}],["namely",{"2":{"16":1,"17":1}}],["name",{"0":{"44":1},"2":{"2":1,"18":4,"20":1,"45":1,"56":1,"58":3,"59":4,"62":12,"64":8,"65":12,"66":12,"67":20,"73":1,"81":2,"84":6,"85":5,"91":1}}],["nc",{"2":{"50":2,"59":2,"63":2,"74":2,"77":2,"78":3,"84":6}}],["number",{"2":{"49":1,"54":1,"76":1,"78":1,"84":2,"85":1,"96":1}}],["numbers",{"2":{"10":1,"91":1}}],["nout",{"2":{"85":2}}],["normal",{"2":{"84":1,"106":1}}],["north",{"2":{"60":1}}],["nometadata",{"2":{"51":3,"52":2,"54":1,"55":1,"56":10}}],["november",{"2":{"59":1,"63":1,"74":1,"80":1}}],["nov",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["nonmissingtype",{"2":{"85":1}}],["none",{"2":{"40":2,"45":1,"46":1,"58":1,"80":1,"102":1}}],["non",{"2":{"23":1,"84":1,"85":1,"95":1}}],["now",{"2":{"16":3,"18":1,"22":1,"33":1,"35":1,"37":1,"42":1,"46":1,"51":1,"52":1,"54":1,"56":1,"81":2,"82":1,"88":1}}],["no",{"2":{"14":1,"21":1,"27":1,"36":1,"76":1,"78":1,"81":1,"84":1,"85":1}}],["notice",{"2":{"76":1}}],["notation",{"2":{"37":1,"67":1}}],["nothing",{"2":{"18":1,"19":1,"21":1,"51":2,"54":2,"55":2,"56":5,"79":1,"84":1,"85":1}}],["note",{"2":{"9":1,"13":1,"16":4,"18":1,"21":1,"22":1,"33":1,"40":1,"47":1,"52":1,"59":1,"62":1,"81":1,"84":1,"85":1}}],["not",{"0":{"40":1},"2":{"0":1,"1":1,"13":1,"36":1,"40":3,"45":1,"46":2,"47":1,"50":1,"59":1,"81":2,"84":3,"85":3}}],["neighbour",{"2":{"84":1}}],["neighboring",{"2":{"13":1}}],["near",{"2":{"58":2,"67":1,"102":1}}],["needed",{"2":{"84":1}}],["need",{"2":{"45":1,"82":1,"84":1,"85":1,"87":1}}],["next",{"2":{"41":1,"42":1,"53":1,"88":2}}],["netcdf4",{"2":{"59":1}}],["netcdf",{"0":{"59":1,"77":1,"78":1},"1":{"78":1},"2":{"27":1,"47":1,"48":2,"59":4,"61":1,"63":2,"71":3,"74":2,"77":3,"78":2,"79":1,"84":2,"94":2}}],["necessary",{"2":{"16":1,"49":1,"50":1,"82":1,"85":4}}],["newdim",{"2":{"84":1}}],["new",{"0":{"9":1},"2":{"10":1,"12":1,"16":1,"29":1,"32":1,"33":3,"48":1,"50":1,"53":1,"72":1,"79":1,"80":1,"81":1,"84":5,"85":4,"87":6,"96":1}}],["bits",{"2":{"84":2}}],["big",{"2":{"70":1}}],["black",{"2":{"97":1}}],["blocks",{"2":{"84":1}}],["blosccompressor",{"2":{"76":1}}],["blue",{"2":{"60":1,"71":1}}],["bonito",{"2":{"106":1}}],["boundaries",{"2":{"85":1}}],["bounds",{"2":{"84":1}}],["bold",{"2":{"56":1}}],["bool=true",{"2":{"85":1}}],["bool=false",{"2":{"84":1,"85":1}}],["boolean",{"2":{"84":3}}],["bool",{"2":{"47":3,"85":6}}],["bwr",{"2":{"56":1}}],["b`",{"2":{"37":1}}],["broad",{"2":{"99":1}}],["broadcasts",{"2":{"85":1}}],["broadcast",{"2":{"51":1,"56":1}}],["broadcasted",{"2":{"16":2,"84":1,"85":1}}],["brown",{"2":{"97":1}}],["browser",{"2":{"88":1}}],["brightness",{"2":{"70":1,"71":1}}],["brings",{"2":{"85":1}}],["bring",{"2":{"34":1}}],["branch",{"2":{"58":1,"102":1}}],["bug",{"2":{"86":1}}],["bundle",{"2":{"71":1}}],["build",{"0":{"88":1},"2":{"32":1,"88":1}}],["but",{"0":{"40":1},"2":{"8":1,"16":2,"32":1,"33":2,"40":2,"45":1,"46":2,"59":1,"65":1,"66":1,"84":2}}],["b",{"2":{"17":2,"18":1,"19":1,"20":1,"22":13,"45":2,"67":2,"84":2}}],["backgroundcolor=",{"2":{"106":1}}],["back",{"2":{"84":1}}],["backend",{"2":{"79":2,"84":8}}],["backendlist",{"2":{"48":1,"84":1}}],["backend=",{"2":{"2":1,"16":2,"80":1}}],["based",{"0":{"101":1},"2":{"84":1,"85":1}}],["base",{"0":{"25":1},"2":{"4":4,"5":4,"6":2,"18":1,"20":1,"25":4,"29":3,"32":9,"33":6,"44":1,"45":5,"47":4,"81":6,"85":1,"91":2}}],["by=",{"2":{"42":2,"84":2}}],["bytes",{"2":{"8":1,"9":1,"14":1,"16":3,"17":1,"18":1,"19":1,"21":3,"22":1,"25":1,"27":1,"33":3,"34":1,"37":1,"42":2,"47":2,"54":1,"65":2,"78":4,"81":1,"91":1}}],["by",{"0":{"4":1,"5":1},"2":{"2":1,"10":2,"14":1,"16":1,"22":1,"28":1,"29":1,"33":1,"36":1,"37":6,"40":2,"42":1,"49":1,"53":1,"54":1,"55":1,"56":1,"58":1,"59":1,"70":3,"72":1,"73":1,"79":1,"82":2,"84":12,"85":6,"87":1,"88":1,"90":1,"96":1}}],["beware",{"2":{"98":1}}],["best",{"2":{"85":1,"100":1}}],["become",{"2":{"84":1}}],["because",{"2":{"1":1,"13":1,"14":1,"16":1}}],["before",{"2":{"81":1,"84":1,"88":1}}],["belonging",{"2":{"71":1}}],["belongs",{"2":{"22":1}}],["being",{"2":{"46":1}}],["been",{"2":{"40":1,"82":1}}],["between",{"2":{"26":1,"27":1,"37":1,"39":1,"40":2,"67":1,"76":1,"78":1,"84":1}}],["begin",{"2":{"23":1}}],["be",{"2":{"0":5,"2":1,"3":1,"4":1,"13":1,"15":1,"16":2,"22":1,"24":1,"37":1,"40":1,"41":1,"42":2,"45":1,"46":1,"50":1,"58":2,"59":1,"60":1,"61":2,"62":1,"68":1,"70":1,"72":2,"79":1,"80":1,"81":1,"84":23,"85":9,"87":1,"92":1,"93":1,"98":1,"102":1}}],["628915",{"2":{"91":1}}],["626919",{"2":{"91":1}}],["624506",{"2":{"91":1}}],["625389",{"2":{"27":1}}],["696114",{"2":{"91":1}}],["69",{"2":{"58":1}}],["69085",{"2":{"56":1}}],["600",{"2":{"95":1,"97":1,"103":1,"104":1,"105":1}}],["607478",{"2":{"91":1}}],["606561",{"2":{"91":1}}],["60265",{"2":{"58":1,"102":1}}],["60918",{"2":{"56":1}}],["60175",{"2":{"56":1}}],["647957",{"2":{"82":2}}],["64976",{"2":{"56":1}}],["642",{"2":{"50":1}}],["645758",{"2":{"25":1}}],["665833",{"2":{"91":1}}],["665723",{"2":{"25":1}}],["662295",{"2":{"27":1}}],["634856",{"2":{"91":1}}],["6326",{"2":{"60":1}}],["6378137",{"2":{"60":1}}],["63006",{"2":{"56":1}}],["630469",{"2":{"27":1}}],["63593",{"2":{"27":1}}],["655204",{"2":{"91":1}}],["65105",{"2":{"56":1}}],["658321",{"2":{"27":1}}],["652339",{"2":{"25":1}}],["6122",{"2":{"56":1}}],["61197",{"2":{"56":1}}],["611084",{"2":{"25":1}}],["619",{"2":{"51":1,"52":1}}],["617023",{"2":{"26":1}}],["6×6×25",{"2":{"26":2}}],["6×2",{"2":{"9":1}}],["673373",{"2":{"25":1}}],["671662",{"2":{"22":1}}],["672",{"2":{"21":1}}],["6720458572735374",{"2":{"11":1}}],["686278",{"2":{"27":1}}],["687891",{"2":{"26":1}}],["684389",{"2":{"22":1}}],["685454",{"2":{"22":1}}],["6",{"2":{"2":6,"4":6,"5":6,"6":6,"8":4,"9":5,"16":8,"22":1,"34":1,"37":1,"58":1,"102":1}}],["1e8",{"2":{"85":1}}],["1f2",{"2":{"47":1}}],["1992",{"2":{"84":1}}],["1991",{"2":{"84":1}}],["1990",{"2":{"84":1}}],["1984",{"2":{"60":1}}],["1983",{"2":{"54":1}}],["1980",{"2":{"54":1}}],["193109",{"2":{"26":1}}],["197238",{"2":{"25":1}}],["1921",{"2":{"82":2}}],["19241",{"2":{"56":1}}],["192",{"2":{"19":1,"104":1}}],["19",{"2":{"16":16,"66":3,"67":5}}],["18554488323324722",{"2":{"96":1}}],["18583",{"2":{"56":1}}],["183083",{"2":{"91":1}}],["18892",{"2":{"56":1}}],["18434",{"2":{"56":1}}],["180×170",{"2":{"65":1}}],["180×170×24",{"2":{"59":1,"62":3,"64":2}}],["180",{"2":{"40":2,"60":1,"67":5,"104":1}}],["180ºe",{"2":{"40":1}}],["181798",{"2":{"27":1}}],["18",{"2":{"16":18}}],["142733",{"2":{"91":1}}],["14286",{"2":{"22":1}}],["1437",{"2":{"56":1}}],["145747",{"2":{"22":1}}],["14",{"2":{"16":20,"27":1}}],["13853500608021024",{"2":{"96":1}}],["136",{"2":{"59":1,"63":1,"74":1,"80":1}}],["1363",{"2":{"51":1,"52":1}}],["13z",{"2":{"58":2,"102":1}}],["1372",{"2":{"51":1,"52":1}}],["13",{"2":{"16":20,"27":1,"40":6,"59":1,"63":1,"74":1,"80":1}}],["170",{"2":{"68":1}}],["179",{"2":{"60":1,"67":5}}],["17578125",{"2":{"60":2}}],["17593",{"2":{"22":1}}],["17434",{"2":{"56":1}}],["174934",{"2":{"25":1}}],["17852",{"2":{"56":1}}],["17863",{"2":{"56":1}}],["178603",{"2":{"22":1}}],["17647",{"2":{"56":1}}],["1762",{"2":{"51":1,"52":1}}],["17t00",{"2":{"54":1}}],["172",{"2":{"47":1}}],["17",{"2":{"14":1,"16":22,"42":1,"66":1}}],["16t00",{"2":{"59":4,"62":6,"63":2,"64":4,"65":4,"66":6,"67":10,"74":2,"80":2}}],["16t12",{"2":{"54":1}}],["1644",{"2":{"56":1}}],["16824",{"2":{"56":1}}],["16581",{"2":{"56":1}}],["165853",{"2":{"27":1}}],["16631",{"2":{"56":1}}],["166212",{"2":{"25":1}}],["16713",{"2":{"56":1}}],["167676",{"2":{"22":1}}],["16258",{"2":{"56":1}}],["162134",{"2":{"27":1}}],["169284",{"2":{"25":1}}],["16",{"2":{"10":1,"12":1,"13":1,"16":20,"22":1,"29":1,"59":2,"62":3,"63":1,"64":2,"65":4,"66":3,"67":5,"74":1,"80":1}}],["157268",{"2":{"91":1}}],["159",{"2":{"66":1}}],["15644",{"2":{"56":1}}],["15532",{"2":{"56":1}}],["151146",{"2":{"25":1}}],["152534",{"2":{"25":1}}],["15394",{"2":{"22":1}}],["15×10×30",{"2":{"16":1}}],["15×10",{"2":{"16":2}}],["15",{"2":{"10":1,"16":25,"22":6,"23":1,"27":4,"29":1,"30":1,"35":2,"42":1,"91":1}}],["128",{"2":{"106":1}}],["128204",{"2":{"25":1}}],["1242",{"2":{"56":1}}],["12575",{"2":{"56":1}}],["12568",{"2":{"26":1}}],["121",{"2":{"47":1}}],["121947",{"2":{"22":1}}],["12320189493957617",{"2":{"96":1}}],["123",{"2":{"17":1,"21":2}}],["1200",{"2":{"103":1,"104":1,"105":1}}],["120997",{"2":{"22":1}}],["120",{"2":{"16":1}}],["12",{"2":{"8":4,"16":20,"27":1,"37":10,"39":3,"40":4,"59":2,"62":3,"63":1,"64":2,"65":2,"66":3,"67":5,"74":1,"80":1,"95":1,"96":2}}],["1=5",{"2":{"2":1}}],["1159914",{"2":{"78":1}}],["119",{"2":{"65":1}}],["1181",{"2":{"56":1}}],["113553",{"2":{"55":3}}],["112319",{"2":{"55":12}}],["114815",{"2":{"55":6}}],["11",{"2":{"2":6,"4":6,"5":6,"6":6,"8":1,"16":18,"27":1,"51":4,"52":4,"56":4,"59":2,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"74":1,"80":1}}],["1",{"2":{"2":12,"4":19,"5":20,"6":22,"8":5,"9":3,"10":8,"11":3,"12":7,"13":5,"14":6,"16":24,"17":10,"18":9,"19":8,"20":5,"21":17,"22":34,"23":3,"25":1,"26":7,"27":6,"29":15,"30":4,"32":3,"33":3,"34":8,"35":8,"37":23,"39":10,"40":8,"41":15,"42":14,"44":1,"45":3,"46":1,"47":5,"51":4,"52":2,"54":6,"55":10,"56":54,"58":4,"59":12,"62":12,"63":4,"64":8,"65":13,"66":18,"67":15,"68":2,"74":4,"80":11,"81":2,"82":2,"85":1,"91":11,"95":2,"96":5,"97":5,"102":3,"104":4,"105":2,"106":5}}],["1095",{"2":{"96":1}}],["10989",{"2":{"55":6}}],["10mb",{"2":{"84":2}}],["1083",{"2":{"56":1}}],["108696",{"2":{"55":6}}],["103704",{"2":{"55":3}}],["100",{"2":{"40":13}}],["1000",{"2":{"0":1,"104":1,"105":1}}],["10×170×24",{"2":{"66":1}}],["10×10×24",{"2":{"66":2}}],["10×10×8",{"2":{"37":1}}],["10×10×12",{"2":{"37":1}}],["10×10×36",{"2":{"37":1}}],["10×10×5",{"2":{"32":1}}],["10×10",{"2":{"33":3,"34":1,"37":1}}],["10×15×20",{"2":{"41":1}}],["10×15",{"2":{"14":1,"22":2,"42":1,"91":1}}],["10×20×5",{"2":{"29":1}}],["10x15",{"2":{"22":1}}],["101524",{"2":{"22":1}}],["10",{"2":{"2":14,"4":16,"5":18,"6":17,"10":3,"12":1,"13":1,"14":1,"16":21,"22":15,"23":3,"25":2,"27":4,"29":6,"30":2,"32":8,"33":12,"34":5,"35":4,"37":16,"39":10,"41":3,"42":2,"44":2,"45":4,"58":1,"59":2,"62":3,"64":2,"65":3,"66":6,"67":5,"80":2,"90":1,"91":3}}],["garbage",{"2":{"85":1}}],["gc",{"2":{"85":2}}],["gt",{"2":{"84":1,"85":3,"88":1}}],["gdalworkshop",{"2":{"60":1}}],["gdal",{"0":{"60":1},"2":{"60":1}}],["gb",{"2":{"58":1}}],["gn",{"2":{"58":1,"102":2}}],["gs",{"2":{"58":1,"102":2}}],["ggplot2",{"2":{"56":1}}],["github",{"2":{"50":2,"60":1,"86":1}}],["gives",{"2":{"22":1}}],["given",{"2":{"2":1,"22":2,"70":1,"72":1,"79":1,"84":6,"85":3,"91":1}}],["glob",{"2":{"84":1}}],["globalproperties=dict",{"2":{"85":1}}],["global",{"2":{"84":1,"85":1}}],["glmakie",{"2":{"42":2,"94":1,"102":2}}],["glue",{"2":{"8":1}}],["gradient",{"2":{"103":1,"104":1,"105":1,"106":1}}],["gradually",{"2":{"81":1}}],["grey25",{"2":{"106":1}}],["grey15",{"2":{"42":1,"56":1}}],["greenwich",{"2":{"60":1}}],["green",{"2":{"60":1,"71":1}}],["grouped",{"2":{"84":1}}],["groups",{"2":{"55":1}}],["groupby",{"0":{"51":1,"54":1},"1":{"52":1,"53":1,"55":1,"56":1},"2":{"48":1,"50":1,"51":6,"52":1,"53":1,"54":3,"55":3,"56":3,"84":1,"96":1}}],["group",{"0":{"48":1},"1":{"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1},"2":{"51":1,"53":1,"54":2,"71":1,"84":3}}],["grouping",{"2":{"42":2,"53":2}}],["grid=false",{"2":{"56":1}}],["grid",{"2":{"23":1,"70":1,"84":1}}],["gridchunks",{"2":{"2":3,"4":1,"5":1,"6":1,"84":1,"85":1}}],["go",{"2":{"88":2}}],["going",{"2":{"85":1}}],["good",{"2":{"56":1}}],["goal",{"2":{"21":1,"33":1,"49":1}}],["goes",{"2":{"16":2,"84":1,"85":1}}],["guide",{"2":{"10":2,"12":1,"13":1,"23":1,"29":3,"30":1}}],["gen",{"2":{"16":6}}],["general",{"0":{"99":1},"2":{"84":1,"93":1}}],["generated",{"2":{"59":1,"63":1,"74":1,"80":1,"85":1}}],["generate",{"2":{"16":2,"37":1,"39":1,"40":1,"84":1,"88":1}}],["generic",{"2":{"16":2,"18":1,"19":1,"21":1,"29":1,"84":1}}],["getting",{"0":{"89":1},"1":{"90":1,"91":1,"92":1}}],["gettarrayaxes",{"2":{"46":1}}],["getarrayinfo",{"2":{"85":1}}],["getaxis",{"2":{"34":1,"42":2,"84":1}}],["getloopchunks",{"2":{"85":1}}],["getloopcachesize",{"2":{"85":1}}],["getouttype",{"2":{"85":1}}],["getoutaxis",{"2":{"85":1}}],["getfrontperm",{"2":{"85":1}}],["gets",{"2":{"84":1,"85":1}}],["get",{"0":{"68":1},"2":{"10":1,"18":1,"32":1,"50":1,"54":1,"64":1,"66":1,"68":1,"85":3,"91":1,"96":1,"102":1}}],["geoaxis",{"2":{"104":1,"105":1}}],["geometrybasics",{"2":{"102":1}}],["geomakie",{"2":{"94":1,"102":1,"104":2,"105":1}}],["geogcs",{"2":{"60":1}}],["geojson",{"0":{"60":1}}],["geotiff",{"0":{"60":1}}],["geo",{"2":{"1":1}}],["g",{"2":{"7":1,"10":1,"11":1,"13":1,"16":4,"23":1,"29":1,"51":26,"52":2,"53":2,"54":2,"55":1,"56":18,"68":1,"70":1,"73":1,"84":5,"102":2}}],["2π",{"2":{"95":1}}],["2×3",{"2":{"91":1}}],["2×2×3",{"2":{"4":1,"5":1,"6":1}}],["2×2",{"2":{"2":3,"47":1}}],["2x2l31",{"2":{"59":1,"63":1,"74":1,"80":1}}],["2f0",{"2":{"47":1}}],["2963858",{"2":{"78":1}}],["298",{"2":{"60":1}}],["29816",{"2":{"56":1}}],["29473",{"2":{"56":1}}],["29564",{"2":{"56":1}}],["299637",{"2":{"26":1}}],["29",{"2":{"26":2}}],["283788",{"2":{"91":1}}],["28422753251364",{"2":{"58":4,"102":2}}],["28008",{"2":{"56":1}}],["2894",{"2":{"56":1}}],["288",{"2":{"54":1}}],["2818",{"2":{"51":1,"52":1}}],["28",{"2":{"26":2,"37":1,"51":3,"52":3,"56":3}}],["28571",{"2":{"22":2}}],["2857142857142857",{"2":{"10":1,"12":1,"13":1,"14":1,"22":3,"29":2,"30":1,"35":1,"41":3,"42":1,"91":1}}],["2747",{"2":{"56":1}}],["273",{"2":{"54":1}}],["276",{"2":{"54":2}}],["270",{"2":{"54":1}}],["275×205×9",{"2":{"51":4}}],["271209",{"2":{"27":1}}],["27",{"2":{"26":2,"51":1,"52":1,"56":1}}],["2d",{"2":{"19":5,"20":3,"21":2}}],["265107",{"2":{"91":1}}],["265797",{"2":{"25":1}}],["26274",{"2":{"56":1}}],["268675",{"2":{"26":1}}],["26",{"2":{"16":2,"26":2,"58":2,"102":1}}],["25526503219661817",{"2":{"96":1}}],["258509",{"2":{"91":1}}],["257223563",{"2":{"60":1}}],["25153",{"2":{"56":1}}],["25",{"2":{"16":4,"26":10,"37":1,"95":1}}],["245867",{"2":{"91":1}}],["24375",{"2":{"56":1}}],["2434",{"2":{"56":1}}],["241882",{"2":{"25":1}}],["24",{"2":{"16":6,"42":1,"65":2}}],["240588",{"2":{"91":1}}],["240",{"2":{"14":1,"16":1,"27":1}}],["235899",{"2":{"91":1}}],["235707",{"2":{"91":1}}],["234116",{"2":{"91":1}}],["237824",{"2":{"27":1}}],["23",{"2":{"16":8,"41":3,"56":1,"59":2,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"74":1,"80":1}}],["223574",{"2":{"82":2}}],["22211",{"2":{"56":1}}],["229281",{"2":{"27":1}}],["225542",{"2":{"26":1}}],["22",{"2":{"16":10}}],["21t06",{"2":{"58":2,"102":1}}],["21t19",{"2":{"46":4}}],["2101",{"2":{"58":2,"102":1}}],["21056",{"2":{"26":1}}],["21699",{"2":{"56":1}}],["21209",{"2":{"56":1}}],["215988",{"2":{"27":1}}],["215973",{"2":{"26":1}}],["21",{"2":{"16":12,"51":8,"52":8,"56":8}}],["2=10",{"2":{"2":1}}],["2",{"2":{"2":3,"4":8,"5":9,"6":10,"8":1,"9":1,"11":3,"12":2,"13":1,"14":1,"17":1,"18":2,"19":2,"20":1,"22":9,"23":1,"25":2,"27":3,"29":1,"32":3,"33":6,"34":3,"37":1,"42":6,"45":4,"46":1,"47":8,"51":1,"52":1,"56":40,"58":3,"59":3,"62":6,"63":1,"64":4,"65":2,"66":2,"67":5,"68":2,"74":1,"80":2,"81":2,"84":2,"91":5,"102":3,"104":2,"106":1}}],["2003",{"2":{"59":1,"63":1,"74":1,"80":1}}],["2004",{"2":{"59":1,"63":1,"74":1,"80":1}}],["2005",{"2":{"59":2,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"74":1,"80":1}}],["2002",{"2":{"59":3,"62":3,"63":2,"64":2,"65":2,"66":3,"67":5,"74":2,"80":1}}],["2001",{"2":{"59":3,"62":3,"63":2,"64":2,"65":3,"66":3,"67":5,"74":2,"80":1}}],["2000",{"2":{"26":4}}],["2019",{"2":{"58":2,"102":1}}],["2015",{"2":{"58":2,"59":1,"63":1,"74":1,"80":1,"102":2}}],["20×10×15",{"2":{"41":2}}],["20×10×15×2",{"2":{"35":1,"91":1}}],["20ºn",{"2":{"40":1}}],["203714",{"2":{"26":1}}],["2023",{"2":{"95":1,"96":2}}],["2021",{"2":{"37":9,"95":1,"96":2,"97":1}}],["2020",{"2":{"37":5,"39":3,"40":4,"46":8,"72":1}}],["2024",{"2":{"26":4}}],["2022",{"2":{"10":4,"12":2,"13":2,"14":2,"16":8,"17":4,"18":2,"20":2,"21":6,"22":6,"23":2,"29":6,"30":2,"37":5,"39":3,"40":4,"97":1}}],["20",{"2":{"2":7,"4":10,"5":10,"6":10,"16":14,"29":2,"35":4,"40":2,"41":3,"42":1,"56":1,"80":2,"91":3}}],["542309",{"2":{"91":1}}],["540514",{"2":{"26":1}}],["55",{"2":{"96":1}}],["552072",{"2":{"91":1}}],["551732",{"2":{"22":1}}],["515079",{"2":{"91":1}}],["5173",{"2":{"88":1}}],["514979",{"2":{"22":1}}],["5e8",{"2":{"79":1,"84":1}}],["5743",{"2":{"56":1}}],["57873",{"2":{"56":1}}],["57695",{"2":{"56":1}}],["57143",{"2":{"22":2}}],["56632",{"2":{"56":1}}],["561549",{"2":{"26":1}}],["52908",{"2":{"91":1}}],["520406",{"2":{"82":2}}],["520744",{"2":{"27":1}}],["52419",{"2":{"56":1}}],["521769",{"2":{"27":1}}],["521991",{"2":{"26":1}}],["522262",{"2":{"27":1}}],["59212",{"2":{"56":1}}],["59085",{"2":{"56":1}}],["594514",{"2":{"25":1}}],["595405",{"2":{"22":1}}],["5×4",{"2":{"82":2}}],["5×4×5",{"2":{"81":1}}],["5×4×3",{"2":{"21":2}}],["5×4×3×2",{"2":{"17":1,"18":1}}],["5×6×36",{"2":{"37":1}}],["5×6",{"2":{"27":2}}],["5×10",{"2":{"25":2}}],["507176",{"2":{"91":1}}],["508557",{"2":{"22":1}}],["50089",{"2":{"56":1}}],["500",{"2":{"0":1,"56":1,"106":2}}],["500mb",{"2":{"0":2}}],["531092",{"2":{"91":1}}],["53",{"2":{"65":1}}],["536273",{"2":{"27":1}}],["536399",{"2":{"22":1}}],["538981",{"2":{"22":1}}],["587477",{"2":{"91":1}}],["5843",{"2":{"51":1,"52":1}}],["581312",{"2":{"25":1}}],["58",{"2":{"16":2}}],["5",{"2":{"2":7,"4":16,"5":18,"6":7,"10":2,"12":3,"13":2,"14":1,"16":6,"17":2,"21":4,"22":10,"23":1,"25":2,"27":4,"29":5,"30":1,"32":4,"34":1,"35":2,"37":3,"39":4,"41":3,"42":2,"45":4,"56":5,"59":4,"62":6,"63":2,"64":4,"65":3,"66":10,"67":10,"68":19,"74":2,"80":4,"81":6,"82":3,"91":2,"92":1,"97":2,"106":2}}],["rotate",{"2":{"106":1}}],["row",{"2":{"73":1,"84":1}}],["rowgap",{"2":{"56":1}}],["right",{"2":{"95":1,"97":1}}],["rights",{"2":{"82":1}}],["r",{"2":{"81":1}}],["r1i1p1f1",{"2":{"58":2,"102":3}}],["running",{"2":{"88":1}}],["run",{"2":{"23":1,"88":3,"93":2}}],["runs",{"2":{"13":1,"85":1}}],["ram",{"2":{"61":1}}],["race",{"2":{"59":1}}],["rafaqz",{"2":{"50":1}}],["raw",{"2":{"50":1,"60":1}}],["rasm",{"2":{"50":2}}],["ras",{"2":{"26":3}}],["rasters",{"2":{"26":2}}],["raster",{"0":{"26":1},"2":{"22":11,"26":5}}],["ranges",{"0":{"66":1},"2":{"34":1,"63":1}}],["range",{"2":{"10":2,"16":2,"17":2,"22":2,"23":2,"29":2,"35":3,"37":1,"85":1,"91":3,"95":1}}],["randn",{"2":{"95":1}}],["random",{"2":{"17":2,"40":2,"46":3,"91":1}}],["rand",{"2":{"2":1,"4":3,"5":3,"6":3,"8":2,"9":2,"10":1,"17":1,"19":1,"21":3,"22":1,"23":1,"25":1,"26":1,"27":1,"29":2,"30":1,"32":1,"33":2,"35":2,"40":3,"42":1,"44":1,"45":3,"80":1,"82":1,"91":2}}],["relational",{"2":{"70":1}}],["related",{"2":{"50":1}}],["recommend",{"2":{"92":1}}],["recommended",{"2":{"67":1}}],["rechunking",{"2":{"85":1}}],["recalculate",{"2":{"85":1}}],["recal",{"2":{"85":1}}],["recently",{"2":{"0":1}}],["reentrantlock",{"2":{"59":1}}],["rewrote",{"2":{"58":1,"59":1,"63":1,"74":1,"80":1,"102":1}}],["realization",{"2":{"59":1,"63":1,"74":1,"80":1}}],["realm",{"2":{"58":1,"102":1}}],["readcubedata",{"0":{"62":1},"2":{"40":2,"61":1,"62":1,"84":1}}],["read",{"0":{"57":1,"58":1,"59":1,"60":1},"1":{"58":1,"59":1,"60":1,"61":1,"62":1},"2":{"1":1,"40":1,"50":1,"57":1,"60":1,"66":1,"84":1}}],["red",{"2":{"56":1,"60":1,"71":1}}],["reduce",{"2":{"10":1,"14":1,"19":1}}],["reverse",{"2":{"56":1}}],["reverseordered",{"2":{"9":1,"60":1,"91":1}}],["rename",{"2":{"45":1}}],["resets",{"2":{"84":1,"85":1}}],["respectively",{"2":{"71":1}}],["reshape",{"2":{"37":1,"39":2}}],["result",{"2":{"34":1,"42":1}}],["resulting",{"2":{"8":1,"9":1,"14":1,"84":1,"85":1}}],["results",{"0":{"97":1},"2":{"2":1,"5":1,"56":2,"84":1,"85":1}}],["references",{"2":{"59":1,"63":1,"74":1,"80":1}}],["reference",{"0":{"83":1},"1":{"84":1,"85":1},"2":{"46":1}}],["ref",{"2":{"35":1,"84":1,"85":1}}],["rebuild",{"0":{"33":1},"2":{"32":1,"33":2,"46":2,"50":1}}],["repeat",{"2":{"95":1}}],["repl",{"2":{"90":1,"93":1}}],["replace",{"2":{"23":1,"50":1,"106":1}}],["repository",{"2":{"86":1,"98":1}}],["reports",{"2":{"86":1}}],["reproduces",{"2":{"49":1}}],["represented",{"2":{"84":1,"100":1}}],["represents",{"2":{"71":1}}],["representing",{"2":{"22":2,"85":1}}],["representation",{"2":{"1":1,"84":2,"85":3}}],["re",{"2":{"22":1}}],["registry",{"2":{"93":1}}],["registration",{"2":{"85":2}}],["registered",{"2":{"85":1,"93":1}}],["regions",{"2":{"22":8}}],["region",{"2":{"22":12}}],["regular",{"2":{"4":4,"5":4,"6":2,"8":1,"9":1,"10":3,"12":3,"13":3,"14":3,"16":9,"17":3,"18":3,"19":2,"20":2,"21":9,"22":8,"25":2,"26":6,"27":4,"29":9,"30":3,"32":9,"33":6,"34":2,"35":3,"37":14,"39":6,"40":4,"41":9,"42":3,"44":1,"45":5,"47":4,"51":2,"52":2,"56":6,"58":2,"59":4,"60":2,"62":6,"63":2,"64":4,"65":2,"66":3,"67":10,"68":2,"74":2,"80":5,"81":6,"91":5,"96":1,"102":1}}],["regularchunks",{"2":{"2":6,"4":3,"5":3,"6":3}}],["returned",{"2":{"84":1}}],["returns",{"2":{"84":5,"85":2}}],["return",{"2":{"18":1,"19":1,"21":2,"22":4,"51":1,"84":1,"85":1,"96":1}}],["requests",{"2":{"86":1}}],["requested",{"2":{"13":1}}],["requirements",{"2":{"59":1,"63":1,"74":1,"80":1}}],["required",{"2":{"37":1}}],["requires",{"2":{"16":1}}],["removes",{"2":{"85":1}}],["remove",{"2":{"52":1}}],["removed",{"2":{"15":1,"85":1}}],["remote",{"2":{"0":1}}],["http",{"2":{"88":1}}],["https",{"2":{"50":2,"59":1,"60":1,"63":1,"71":1,"74":1}}],["html",{"2":{"71":1}}],["hdf5",{"2":{"59":1}}],["hr",{"2":{"58":1,"102":2}}],["history",{"2":{"58":2,"59":2,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"74":1,"80":1,"102":1}}],["hidedecorations",{"2":{"56":1}}],["highclip",{"2":{"56":4}}],["high",{"2":{"46":4}}],["hm",{"2":{"56":8}}],["hold",{"2":{"84":1}}],["holds",{"2":{"84":1,"85":1}}],["ho",{"0":{"46":1}}],["however",{"2":{"24":1,"37":1}}],["how",{"0":{"35":1,"36":1,"41":1,"42":1,"43":1,"93":1},"1":{"37":1,"38":1,"39":1,"40":1,"44":1,"45":1},"2":{"6":1,"7":1,"10":1,"17":2,"18":1,"24":1,"28":1,"31":1,"42":1,"57":1,"62":3,"82":1,"84":1,"98":1,"100":1}}],["happens",{"2":{"85":1}}],["had",{"2":{"82":1,"84":1,"85":1}}],["hard",{"2":{"62":1}}],["hamman",{"2":{"49":1,"56":1}}],["handled",{"2":{"85":1}}],["handle",{"2":{"70":1,"85":1}}],["handling",{"2":{"9":1,"84":1}}],["handy",{"2":{"42":1}}],["has",{"2":{"8":1,"9":1,"22":1,"26":1,"27":1,"40":1,"49":1,"52":1,"85":1}}],["half",{"2":{"8":5}}],["have",{"2":{"6":1,"9":1,"22":1,"29":1,"38":1,"40":2,"72":1,"84":3}}],["having",{"2":{"1":1,"22":1}}],["help",{"2":{"84":1,"85":2}}],["height",{"2":{"58":2,"102":1}}],["heatmap",{"0":{"103":1},"2":{"42":1,"56":3,"103":1}}],["hereby",{"2":{"22":1}}],["here",{"2":{"8":1,"9":1,"13":1,"16":2,"17":1,"21":1,"22":1,"36":1,"42":1,"66":1,"81":1,"87":2}}],["hence",{"2":{"1":1}}],["yet",{"2":{"84":1}}],["yeesian",{"2":{"60":1}}],["years",{"2":{"37":1,"95":1,"96":1}}],["year",{"2":{"8":4,"97":1}}],["yyyy",{"2":{"59":2,"63":2,"74":2,"80":2}}],["ylabel=",{"2":{"95":1,"97":1}}],["ylabel",{"2":{"56":3}}],["yasxa",{"2":{"40":6}}],["yaxcolumn",{"2":{"85":1}}],["yaxconvert",{"2":{"27":2}}],["yaxdefaults",{"2":{"85":1}}],["yaxarraybase",{"2":{"27":1,"84":1,"85":1}}],["yaxarray",{"0":{"11":1,"17":1,"29":1,"36":1,"37":1,"47":1,"64":1,"70":1},"1":{"18":1,"19":1,"20":1,"37":1,"38":1,"39":1,"40":1},"2":{"2":1,"4":4,"5":4,"6":4,"7":1,"8":3,"9":3,"10":2,"12":1,"13":1,"14":2,"16":8,"17":2,"18":1,"19":2,"20":1,"21":6,"22":3,"23":1,"25":4,"26":3,"27":5,"29":5,"30":2,"32":3,"33":5,"34":1,"35":3,"36":1,"37":15,"39":4,"40":6,"41":3,"42":4,"44":2,"45":4,"46":4,"47":4,"50":2,"51":7,"52":1,"54":9,"55":1,"56":3,"58":2,"59":2,"60":1,"62":3,"63":2,"64":2,"65":3,"66":3,"67":5,"70":1,"72":1,"74":1,"75":1,"77":1,"80":2,"81":4,"84":10,"85":3,"91":5,"96":2,"100":1,"102":1}}],["yaxarrays",{"0":{"0":1,"1":1,"2":1,"7":1,"10":1,"16":1,"24":1,"28":1,"43":1,"48":1,"57":1,"63":1,"74":1,"86":1,"93":1,"99":1,"100":1},"1":{"2":1,"3":1,"4":1,"5":1,"6":1,"8":1,"9":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"25":1,"26":1,"27":1,"29":1,"30":1,"44":1,"45":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"58":1,"59":1,"60":1,"61":1,"62":1,"64":1,"65":1,"66":1,"67":1,"68":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"82":1,"87":1,"88":1},"2":{"0":3,"2":1,"4":1,"5":1,"6":1,"8":1,"9":1,"10":2,"16":4,"17":1,"22":1,"23":2,"24":2,"25":1,"29":1,"32":1,"33":1,"35":1,"36":1,"37":1,"38":1,"39":2,"40":4,"44":1,"45":1,"46":2,"48":1,"57":1,"58":1,"59":1,"60":2,"63":1,"69":1,"71":1,"74":1,"79":1,"81":1,"84":28,"85":28,"86":1,"88":1,"90":3,"91":3,"92":2,"93":4,"96":1,"98":1,"99":1,"102":1}}],["yax",{"2":{"0":1,"17":1,"18":1,"19":1,"20":3,"21":4,"33":1,"46":3,"47":2}}],["y",{"2":{"4":2,"5":3,"6":2,"26":4,"27":3,"37":4,"41":4,"51":2,"52":1,"56":3,"60":1,"70":1,"91":5}}],["you",{"2":{"1":1,"23":1,"36":1,"40":3,"45":2,"61":1,"62":1,"76":1,"84":1,"85":2,"87":1,"88":2,"90":2,"92":1,"93":3,"98":3,"100":2}}],["yourself",{"2":{"88":1}}],["your",{"2":{"1":2,"40":2,"59":1,"79":2,"81":1,"84":1,"87":4,"88":4}}],["circshift",{"2":{"104":1}}],["ct1",{"2":{"102":4,"103":1}}],["cycle",{"0":{"95":1,"97":1},"1":{"96":1,"97":1},"2":{"96":4}}],["cycle=12",{"2":{"51":2,"52":1,"54":2,"55":2,"56":3}}],["cdata",{"2":{"85":1}}],["center",{"2":{"84":1,"95":1,"97":1}}],["certain",{"2":{"63":2,"85":1}}],["cell",{"2":{"58":2,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5,"84":1}}],["cf",{"2":{"58":2,"59":2,"63":2,"74":2,"80":2,"102":2}}],["cftime",{"2":{"51":2,"54":5,"55":2,"56":2,"59":6,"62":9,"63":3,"64":6,"65":7,"66":9,"67":15,"74":3,"80":3}}],["cmpcachmisses",{"2":{"85":1}}],["cm4",{"2":{"59":4,"63":4,"74":4,"80":4}}],["cmip",{"2":{"58":1,"102":1}}],["cmip6",{"2":{"58":3,"102":6}}],["cmor",{"2":{"58":2,"59":3,"62":3,"63":2,"64":2,"65":3,"66":3,"67":5,"74":2,"80":2,"102":1}}],["c54",{"2":{"56":1}}],["cb",{"2":{"56":1}}],["cbar",{"2":{"42":1}}],["cgrad",{"2":{"42":1}}],["cl",{"2":{"104":1,"105":1}}],["cl=lines",{"2":{"104":1,"105":1}}],["clean",{"2":{"85":1}}],["cleanme",{"2":{"85":4}}],["cleaner",{"2":{"84":2}}],["clevel=n",{"2":{"76":1}}],["climate",{"2":{"59":1,"63":1,"74":1,"80":1}}],["closedinterval",{"2":{"67":1}}],["closed",{"0":{"67":1},"2":{"67":3}}],["close",{"2":{"46":4}}],["cloud",{"2":{"11":1,"58":1}}],["classes=classes",{"2":{"42":1}}],["classes",{"2":{"42":8}}],["classification",{"2":{"42":2}}],["class",{"2":{"42":3}}],["clustermanagers",{"2":{"23":2}}],["cluster",{"2":{"23":1}}],["cpus",{"2":{"23":1}}],["cpu",{"2":{"23":1}}],["c",{"2":{"22":11,"32":5,"33":7,"34":3,"42":2,"45":2,"71":1,"76":1,"78":4,"84":5,"85":3,"96":4,"102":2}}],["custom",{"2":{"29":1,"84":1}}],["current",{"2":{"22":2,"71":1,"84":1,"97":1}}],["currently",{"2":{"16":1,"46":1,"50":1,"98":1}}],["cubeaxis",{"2":{"85":1}}],["cubeaxes",{"2":{"84":1}}],["cubedir",{"2":{"85":1}}],["cube2",{"2":{"84":1}}],["cube1",{"2":{"84":1}}],["cubelist",{"2":{"84":1}}],["cubefittable",{"2":{"42":2,"84":1}}],["cubetable",{"0":{"42":1},"2":{"42":3,"84":3}}],["cubes",{"0":{"35":1},"2":{"9":2,"17":1,"21":1,"35":2,"40":1,"41":2,"42":1,"64":1,"72":1,"84":18,"85":9}}],["cube",{"0":{"32":1,"34":1,"36":1,"72":1,"96":1},"1":{"33":1,"37":1,"38":1,"39":1,"40":1},"2":{"2":1,"4":1,"5":1,"6":1,"16":11,"17":2,"19":2,"21":2,"32":1,"34":1,"36":2,"40":1,"41":1,"42":2,"50":1,"72":3,"81":1,"84":34,"85":19,"100":1}}],["chose",{"2":{"71":1}}],["child",{"2":{"58":1,"102":1}}],["check",{"2":{"16":1,"81":1,"92":1}}],["changed",{"2":{"92":1,"98":1}}],["changes",{"2":{"62":1}}],["change",{"2":{"10":1,"84":1,"85":1}}],["chunkoffset",{"2":{"85":1}}],["chunksize`",{"2":{"85":1}}],["chunksizes",{"2":{"84":2}}],["chunksize",{"2":{"84":1,"85":3}}],["chunks",{"0":{"4":1},"2":{"2":5,"4":1,"5":1,"6":2,"84":4,"85":11}}],["chunked",{"2":{"2":5}}],["chunking",{"0":{"2":1,"3":1,"5":1,"6":1},"1":{"4":1,"5":1,"6":1},"2":{"1":1,"5":1,"84":4,"85":3}}],["chunk",{"0":{"1":1},"1":{"2":1,"3":1,"4":1,"5":1,"6":1},"2":{"1":1,"2":1,"4":1,"5":1,"84":4,"85":4}}],["criteria",{"2":{"42":1}}],["creation",{"2":{"47":1}}],["creating",{"0":{"22":1},"2":{"10":1,"33":1,"37":1,"81":1,"87":1}}],["createdataset",{"2":{"85":2}}],["created",{"2":{"85":2}}],["creates",{"2":{"42":1,"84":2,"85":1}}],["create",{"0":{"28":1,"29":1,"30":1,"47":1},"1":{"29":1,"30":1},"2":{"10":1,"16":1,"22":2,"28":1,"29":1,"33":1,"35":1,"37":2,"42":1,"46":1,"50":1,"54":1,"74":1,"79":1,"81":3,"84":1,"85":1,"91":1,"95":1}}],["crucial",{"2":{"1":1}}],["coastlines",{"2":{"104":3,"105":1}}],["cosd",{"2":{"84":1}}],["country",{"2":{"84":4}}],["country=cube2",{"2":{"84":1}}],["could",{"2":{"33":1,"46":1,"61":1}}],["copies",{"2":{"85":1}}],["copied",{"2":{"81":1}}],["copybuf",{"2":{"85":2}}],["copydata",{"2":{"85":1}}],["copy",{"2":{"32":1,"84":1,"88":1}}],["coordinates",{"2":{"58":1}}],["college",{"2":{"98":1}}],["collected",{"2":{"85":1}}],["collectfromhandle",{"2":{"85":1}}],["collection",{"2":{"31":1,"70":1}}],["collect",{"2":{"25":1,"34":3,"96":1}}],["colonperm",{"2":{"85":1}}],["color=",{"2":{"97":3}}],["color",{"2":{"95":1,"104":1,"105":1,"106":1}}],["colormap=",{"2":{"56":1}}],["colormap=makie",{"2":{"42":1}}],["colormap",{"2":{"56":3,"103":1,"104":1,"105":1,"106":1}}],["colorrange=",{"2":{"56":1}}],["colorrange",{"2":{"56":3}}],["colorbar",{"2":{"42":1,"56":2}}],["column",{"2":{"73":1,"85":1}}],["colgap",{"2":{"56":1}}],["colnames",{"2":{"46":1}}],["configuration",{"2":{"85":2}}],["concatenating",{"2":{"84":1}}],["concatenates",{"2":{"84":2}}],["concatenate",{"0":{"35":1},"2":{"35":2,"84":2}}],["concatenatecubes",{"0":{"9":1},"2":{"9":2,"35":2,"84":2}}],["concrete",{"2":{"84":2}}],["contributing",{"2":{"87":1}}],["contribute",{"0":{"86":1,"87":1},"1":{"87":1,"88":2}}],["contrast",{"2":{"84":1}}],["content",{"2":{"84":1}}],["contact",{"2":{"59":1,"63":1,"74":1,"80":1}}],["contains",{"2":{"67":1,"84":1,"85":1}}],["contain",{"2":{"58":1,"59":1,"85":1}}],["containing",{"0":{"47":1},"2":{"8":1,"42":1,"71":1,"72":1,"84":1}}],["continue",{"2":{"51":1}}],["consolidated=true",{"2":{"58":1,"102":1}}],["constructor",{"2":{"84":1}}],["constructs",{"2":{"84":1}}],["construct",{"0":{"46":1},"2":{"84":2}}],["consistent",{"2":{"58":1,"102":1}}],["consisting",{"2":{"8":1}}],["considering",{"2":{"49":1}}],["considered",{"2":{"42":1}}],["consider",{"2":{"17":1,"19":1,"21":1,"33":1}}],["convinient",{"2":{"31":1}}],["conventions",{"2":{"59":1,"63":1,"74":1,"80":1}}],["convenient",{"2":{"23":1}}],["conversion",{"2":{"24":1,"26":1,"27":1}}],["conversions",{"2":{"24":1}}],["converted",{"2":{"72":1}}],["convert",{"0":{"24":1,"25":1,"26":1,"27":1},"1":{"25":1,"26":1,"27":1},"2":{"24":1,"25":2,"27":2,"84":1,"85":1}}],["corresponding",{"2":{"7":1,"21":2,"22":2,"72":1,"84":1}}],["combining",{"0":{"101":1}}],["combined",{"2":{"9":2,"72":2}}],["combine",{"0":{"7":1},"1":{"8":1,"9":1},"2":{"7":1,"8":1,"9":1,"100":1}}],["command",{"2":{"93":2}}],["comment",{"2":{"58":1}}],["common",{"2":{"40":5,"84":1}}],["com",{"2":{"50":2,"60":1}}],["compiler",{"2":{"92":1}}],["compuation",{"2":{"84":1}}],["computing",{"2":{"42":1}}],["computations",{"2":{"13":1,"41":1}}],["computation",{"0":{"23":1},"2":{"13":1,"70":1,"84":3,"85":3}}],["computed",{"2":{"85":1}}],["compute",{"0":{"10":1},"1":{"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1},"2":{"96":1}}],["compares",{"2":{"85":1}}],["comparing",{"2":{"78":1}}],["compatible",{"2":{"60":1}}],["compress",{"2":{"78":2}}],["compress=n",{"2":{"78":1}}],["compressors",{"2":{"76":1}}],["compressor=compression",{"2":{"76":1}}],["compression",{"0":{"76":1,"78":1},"2":{"76":5,"78":4}}],["completely",{"2":{"61":1}}],["complexity",{"2":{"41":1}}],["complex",{"2":{"10":2,"91":1}}],["comply",{"2":{"59":1,"63":1,"74":1,"80":1}}],["comes",{"2":{"1":1}}],["code",{"2":{"6":1,"13":1,"23":2,"31":1,"46":1,"59":2}}],["captialisation",{"2":{"85":1}}],["cameracontrols",{"2":{"106":1}}],["came",{"2":{"72":1}}],["cairomakie",{"2":{"56":1,"95":2}}],["caxes",{"2":{"32":2,"84":2}}],["car",{"2":{"22":1}}],["cartesianindex",{"2":{"22":11}}],["caluclate",{"2":{"84":1}}],["calculations",{"2":{"56":1,"85":1}}],["calculating",{"2":{"14":1,"84":1}}],["calculates",{"2":{"84":1}}],["calculated",{"2":{"42":2,"51":1}}],["calculate",{"2":{"14":1,"22":1,"42":2,"48":1,"49":2,"51":1,"56":1,"85":2,"96":1}}],["calling",{"2":{"56":1}}],["called",{"2":{"16":1,"70":3,"85":1}}],["call",{"2":{"1":1,"23":1}}],["case",{"2":{"13":1,"19":1,"40":1,"53":1,"58":1,"62":1}}],["cases",{"2":{"0":1,"61":1,"67":1,"98":1}}],["cataxis",{"2":{"84":2}}],["categoricalaxis",{"2":{"84":1}}],["categorical",{"2":{"9":1,"17":1,"18":1,"19":1,"22":1,"35":1,"42":1,"46":4,"51":2,"52":1,"53":1,"54":2,"55":2,"56":3,"84":1,"85":1,"91":1}}],["cat",{"0":{"8":1},"2":{"8":2}}],["cache=1gb```",{"2":{"84":1}}],["cache=1e9",{"2":{"16":2}}],["cache=",{"2":{"84":1}}],["cache=5",{"2":{"84":1}}],["cache=yaxdefaults",{"2":{"84":1}}],["caches",{"2":{"0":1}}],["cachesize",{"2":{"0":2,"85":1}}],["cache",{"2":{"0":6,"79":1,"84":4,"85":7}}],["caching",{"0":{"0":1}}],["can",{"2":{"0":5,"2":1,"3":1,"13":2,"14":1,"16":3,"20":1,"22":1,"23":3,"29":2,"35":1,"36":1,"38":1,"40":1,"41":1,"42":2,"46":1,"52":1,"56":1,"58":2,"59":1,"60":1,"61":1,"68":1,"70":3,"71":2,"72":1,"80":1,"81":1,"82":1,"84":13,"85":6,"87":1,"90":2,"93":2,"98":2}}],["msc",{"2":{"96":3,"97":2}}],["mscarray",{"2":{"96":2}}],["md",{"2":{"87":2}}],["mfdataset",{"2":{"84":5}}],["mpi",{"2":{"58":1,"102":2}}],["m",{"2":{"25":2}}],["miss",{"2":{"85":1}}],["missing",{"2":{"14":2,"16":6,"18":1,"21":1,"22":2,"41":1,"42":2,"59":12,"62":6,"64":4,"65":6,"66":6,"67":10,"81":3,"82":1,"84":2,"85":2,"106":1}}],["minimized",{"2":{"85":1}}],["minutes",{"2":{"59":1,"62":3,"64":2,"65":3,"66":3,"67":5}}],["might",{"2":{"24":1,"61":1,"98":1}}],["mix",{"2":{"21":2}}],["mm",{"2":{"20":3,"59":2,"63":2,"74":2,"80":2}}],["mymean",{"2":{"23":4}}],["my",{"2":{"16":2,"59":1}}],["mahecha",{"2":{"72":1}}],["manager",{"2":{"90":1}}],["manual",{"2":{"59":1}}],["many",{"0":{"18":1,"19":2},"2":{"18":2,"19":2,"20":4,"62":1,"70":1,"85":1}}],["mar",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["marketdata",{"2":{"46":2}}],["master",{"2":{"50":1,"93":1}}],["mask",{"2":{"42":2}}],["makie",{"2":{"56":1,"106":1}}],["making",{"2":{"11":1,"59":1,"63":1}}],["make",{"2":{"39":1,"40":2,"81":1,"84":1,"85":2,"88":1,"106":1}}],["main",{"2":{"36":1,"85":1}}],["machine",{"2":{"23":1,"70":1}}],["matching",{"2":{"91":1}}],["match",{"2":{"85":2}}],["matched",{"2":{"84":1}}],["matches",{"2":{"20":1}}],["mat",{"2":{"22":4}}],["matrix",{"2":{"16":2,"22":1,"25":1,"46":1,"52":1,"56":2,"70":1,"82":2,"96":1}}],["maximal",{"2":{"85":1}}],["maximum",{"2":{"41":1,"84":1,"85":1}}],["maxbuf",{"2":{"85":1}}],["max",{"2":{"16":2,"76":1,"78":1,"79":1,"84":7,"85":2}}],["maxsize",{"2":{"0":2}}],["may",{"2":{"10":1,"15":1,"51":4,"52":2,"53":1,"54":4,"55":4,"56":6,"58":1,"59":1,"92":1}}],["maps",{"0":{"102":1},"1":{"103":1}}],["mapslice",{"2":{"23":1}}],["mapslices",{"0":{"14":1},"2":{"10":1,"13":1,"14":1,"23":1,"41":1,"96":1}}],["mapped",{"2":{"84":1}}],["mapping",{"2":{"84":1,"85":3}}],["mapcube",{"0":{"15":1},"1":{"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1},"2":{"10":1,"13":1,"15":1,"16":4,"18":1,"20":1,"21":2,"22":2,"23":3,"84":5,"85":2}}],["map",{"0":{"13":1,"41":1},"2":{"10":1,"13":2,"21":1,"22":3,"23":3,"41":4,"42":1,"51":2,"55":1,"56":1,"84":2,"91":1,"96":2}}],["moll",{"0":{"105":1}}],["mowingwindow",{"2":{"84":1}}],["module",{"2":{"84":1}}],["model",{"2":{"59":1,"63":1,"71":2,"74":1,"80":1}}],["modification",{"2":{"11":1,"23":1}}],["modify",{"0":{"11":1}}],["monthday",{"2":{"96":4}}],["monthly",{"0":{"49":1}}],["month",{"2":{"37":7,"39":3,"40":4,"49":1,"51":4,"52":1,"53":1,"54":5,"55":2,"56":3,"84":1,"96":2}}],["moment",{"2":{"27":1}}],["movingwindow",{"2":{"21":1,"84":4}}],["more",{"2":{"9":1,"10":1,"36":1,"41":1,"42":1,"66":1,"67":1,"72":1,"76":1,"79":1,"84":3,"85":1,"91":1}}],["most",{"2":{"1":1,"15":1,"24":1}}],["mesh",{"2":{"106":2}}],["merely",{"2":{"81":1}}],["measured",{"2":{"71":1,"72":1}}],["measure",{"2":{"70":1}}],["measures",{"2":{"58":1}}],["means",{"0":{"49":1},"2":{"14":1,"84":1}}],["mean",{"0":{"95":1,"97":1},"1":{"96":1,"97":1},"2":{"10":1,"14":3,"23":4,"42":4,"51":10,"52":2,"53":1,"56":2,"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5,"84":1,"96":5}}],["meter",{"2":{"58":1}}],["method",{"2":{"16":2,"18":1,"19":1,"21":1,"84":1}}],["methods",{"2":{"7":1,"23":1,"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5}}],["metadata",{"2":{"8":1,"9":1,"10":1,"12":1,"13":1,"14":2,"16":5,"17":1,"18":1,"19":1,"21":3,"22":3,"24":1,"25":1,"26":2,"27":3,"29":2,"32":1,"33":3,"34":1,"35":1,"37":5,"41":3,"42":3,"47":2,"51":2,"52":1,"54":3,"55":2,"56":3,"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5,"81":2,"84":1,"91":3,"96":1}}],["members",{"2":{"85":1}}],["member",{"2":{"6":1}}],["memory",{"0":{"61":1},"1":{"62":1},"2":{"1":1,"8":1,"10":1,"12":1,"13":1,"14":2,"16":3,"17":1,"18":1,"19":1,"21":3,"22":3,"24":3,"25":1,"26":1,"27":1,"29":2,"32":1,"33":3,"34":1,"37":5,"40":4,"41":3,"42":3,"47":2,"50":1,"54":1,"61":1,"62":4,"70":1,"81":2,"84":2,"85":1,"91":2,"96":1}}],["multi",{"2":{"17":2,"21":2}}],["multiplying",{"2":{"41":1}}],["multiply",{"2":{"10":1,"41":1}}],["multiple",{"0":{"45":1,"101":1},"2":{"7":1,"21":1,"23":1,"58":1,"59":1,"70":1,"84":1}}],["must",{"2":{"0":1,"72":1,"84":1,"85":1}}],["mb",{"2":{"0":1,"59":1,"62":3,"64":2}}],["pkg",{"2":{"90":2,"93":2,"94":8}}],["pkg>",{"2":{"88":1,"93":1}}],["purple",{"2":{"95":1}}],["purpose",{"2":{"31":1,"41":1}}],["pull",{"2":{"86":1}}],["public",{"0":{"84":1}}],["published",{"2":{"56":1}}],["pydata",{"2":{"50":1}}],["p",{"2":{"40":10,"59":1,"63":1,"74":1,"80":1}}],["picture",{"2":{"70":1,"71":1}}],["pieces",{"2":{"31":1}}],["pixel",{"0":{"95":1},"1":{"96":1,"97":1},"2":{"21":1,"23":2}}],["post=getpostfunction",{"2":{"84":1}}],["positions",{"2":{"85":2}}],["position",{"2":{"70":1}}],["positional",{"2":{"65":1,"66":1}}],["possible",{"2":{"23":2,"24":1,"35":1,"47":1,"81":1,"84":3,"85":1}}],["pos",{"2":{"22":2}}],["point3f",{"2":{"106":1}}],["point",{"2":{"22":3,"58":1,"91":1}}],["points",{"2":{"4":4,"5":4,"6":2,"8":1,"9":1,"10":3,"12":3,"13":3,"14":4,"16":9,"17":3,"18":3,"19":2,"20":3,"21":9,"22":16,"23":1,"25":2,"26":6,"27":4,"29":9,"30":3,"32":9,"33":6,"34":2,"35":3,"37":14,"39":6,"40":21,"41":9,"42":5,"44":1,"45":5,"46":4,"47":4,"51":3,"52":2,"54":2,"55":1,"56":7,"58":6,"59":6,"60":2,"62":9,"63":3,"64":6,"65":4,"66":9,"67":16,"68":2,"70":2,"71":1,"74":3,"80":6,"81":6,"91":5,"96":1,"102":3}}],["plt",{"2":{"103":1}}],["place",{"2":{"85":1}}],["please",{"2":{"59":1,"76":1}}],["plots",{"2":{"106":1}}],["plot",{"0":{"97":1,"103":1,"106":1},"2":{"56":2}}],["plotting",{"0":{"102":1},"1":{"103":1},"2":{"0":1,"94":1}}],["plus",{"2":{"18":3,"50":1,"84":1}}],["page",{"2":{"106":1}}],["paste",{"2":{"88":1}}],["pass",{"2":{"84":1}}],["passed",{"2":{"84":4}}],["passing",{"2":{"21":1,"84":3}}],["pair",{"2":{"85":1}}],["pairs",{"2":{"18":1,"20":1}}],["partitioned",{"2":{"85":1}}],["participate",{"2":{"84":1}}],["particular",{"2":{"73":1}}],["parts",{"2":{"84":1}}],["parent",{"2":{"58":1,"102":1}}],["parallelized",{"2":{"85":1}}],["parallelisation",{"2":{"84":1}}],["parallel",{"2":{"23":1,"70":1}}],["package",{"2":{"23":1,"66":1,"68":1,"83":1,"90":1,"94":1}}],["packages",{"2":{"16":1,"24":1}}],["paths",{"2":{"84":1,"85":2}}],["path=",{"2":{"16":2,"58":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"85":1}}],["path=f",{"2":{"4":1,"5":1,"6":1}}],["path",{"0":{"20":1},"2":{"0":1,"20":1,"50":2,"58":3,"59":2,"60":2,"63":2,"74":2,"79":3,"84":4,"88":1}}],["pr",{"2":{"88":1}}],["println",{"2":{"78":1}}],["printed",{"2":{"46":2}}],["primem",{"2":{"60":1}}],["prior",{"2":{"1":1}}],["props",{"2":{"91":2}}],["properly",{"2":{"49":1}}],["properties=dict",{"2":{"85":1}}],["properties=properties",{"2":{"18":2}}],["properties",{"0":{"17":1},"1":{"18":1,"19":1,"20":1},"2":{"10":2,"17":2,"18":2,"19":1,"20":2,"21":2,"23":2,"29":3,"30":3,"50":1,"56":1,"58":1,"59":1,"60":1,"63":1,"74":1,"80":1,"84":5,"85":1,"102":1}}],["probably",{"2":{"85":1}}],["provide",{"2":{"84":1}}],["provides",{"2":{"70":1,"99":1}}],["provided",{"2":{"36":1,"81":1,"84":2}}],["process",{"2":{"70":1,"85":2}}],["processed",{"2":{"13":1}}],["projection",{"0":{"104":1,"105":1},"1":{"105":1,"106":1},"2":{"60":1}}],["progressmeter",{"2":{"84":1}}],["progress",{"2":{"50":1,"98":1,"100":1}}],["product",{"2":{"22":1}}],["pressed",{"2":{"93":1}}],["pressing",{"2":{"90":1}}],["pre",{"2":{"84":2}}],["previous",{"2":{"56":1,"79":1,"81":1,"84":1}}],["previously",{"2":{"42":1}}],["prepared",{"2":{"59":1,"63":1,"74":1,"80":1}}],["prep",{"2":{"9":2}}],["precipitation",{"2":{"9":2,"71":1,"72":1,"91":2}}],["permute",{"2":{"85":1}}],["permuteloopaxes",{"2":{"85":1}}],["permutation",{"2":{"85":1}}],["persistend",{"2":{"85":1}}],["persistency",{"2":{"85":1}}],["persistent",{"2":{"84":1,"85":2}}],["persist",{"2":{"79":1,"84":1,"85":1}}],["perform",{"2":{"85":1}}],["performed",{"2":{"13":2}}],["performing",{"2":{"10":1}}],["per",{"2":{"7":1,"14":1,"51":1,"54":1,"55":1}}],["=interval",{"2":{"67":2}}],["===",{"2":{"46":1}}],["==",{"2":{"12":1,"46":1,"96":1}}],["=>nan",{"2":{"106":1}}],["=>",{"2":{"10":2,"12":1,"13":1,"16":2,"17":2,"18":3,"19":2,"20":1,"21":2,"22":5,"23":1,"29":3,"30":3,"44":1,"45":1,"46":5,"50":1,"51":5,"52":1,"54":3,"55":2,"56":3,"58":20,"59":20,"60":1,"62":30,"63":10,"64":20,"65":30,"66":30,"67":50,"74":10,"80":10,"91":6,"102":10}}],["=>2",{"2":{"4":1}}],["=>10",{"2":{"4":1}}],["=>5",{"2":{"4":1,"5":1}}],["=",{"2":{"0":5,"2":4,"4":9,"5":15,"6":9,"8":5,"9":5,"10":4,"11":1,"12":1,"13":1,"16":14,"17":4,"18":14,"19":7,"20":11,"21":12,"22":16,"23":5,"25":3,"26":8,"27":4,"29":5,"30":4,"32":1,"33":3,"35":6,"37":7,"39":6,"40":17,"42":7,"44":1,"45":3,"46":7,"47":4,"50":8,"51":16,"52":1,"53":1,"54":4,"55":1,"56":22,"58":2,"59":3,"60":2,"62":1,"63":2,"64":2,"65":6,"66":6,"67":3,"74":2,"76":2,"78":3,"79":8,"80":2,"81":4,"82":5,"84":13,"85":7,"91":5,"95":10,"96":11,"97":5,"102":8,"103":5,"104":7,"105":5,"106":6}}],["dc",{"2":{"85":2}}],["dkrz",{"2":{"58":1,"102":2}}],["dufresne",{"2":{"59":1,"63":1,"74":1,"80":1}}],["due",{"2":{"53":1}}],["dummy",{"2":{"35":1,"37":1,"95":1,"96":1}}],["during",{"2":{"22":1,"23":1,"24":1}}],["dd",{"2":{"32":1,"84":5,"96":1}}],["d",{"2":{"22":5,"46":5,"56":3,"96":1}}],["drop",{"2":{"56":1}}],["dropdims",{"0":{"52":1},"2":{"51":2,"52":2,"56":1}}],["drivers",{"2":{"84":1}}],["driver",{"2":{"48":1,"79":2,"84":6}}],["driver=",{"2":{"4":1,"5":1,"6":1,"75":2,"76":1,"77":2,"78":1,"79":3,"80":1,"81":2,"84":3}}],["drei",{"2":{"19":2}}],["dash",{"2":{"97":1}}],["danger",{"2":{"79":1}}],["daysinmonth",{"2":{"51":1,"54":1}}],["days",{"2":{"49":1,"51":2,"53":1,"54":2,"55":2}}],["dayofyear",{"2":{"16":1}}],["day",{"2":{"10":2,"12":1,"13":1,"14":1,"16":4,"17":2,"18":1,"21":3,"22":3,"23":1,"29":3,"30":1,"95":1,"96":4,"97":1}}],["datconfig",{"2":{"85":2}}],["datset",{"2":{"84":1}}],["dat",{"2":{"84":8,"85":16}}],["datum",{"2":{"60":1}}],["datetime360day",{"2":{"59":6,"62":9,"63":3,"64":6,"65":7,"66":9,"67":15,"74":3,"80":3}}],["datetimenoleap",{"2":{"51":2,"54":5,"55":2,"56":2}}],["datetime",{"2":{"20":1,"46":5,"58":2,"102":1}}],["date",{"2":{"10":5,"12":3,"13":3,"14":3,"16":12,"17":5,"18":3,"21":8,"22":11,"23":3,"29":8,"30":3,"37":24,"39":8,"40":11,"70":1,"95":2,"96":5,"102":1}}],["datesid",{"2":{"96":2}}],["dates",{"2":{"10":2,"12":1,"13":1,"14":1,"16":5,"17":2,"18":1,"21":2,"22":3,"23":1,"29":3,"30":1,"37":8,"39":4,"40":5,"48":1,"72":1,"95":1,"96":2,"102":1}}],["data=cube1",{"2":{"84":1}}],["databases",{"2":{"70":1}}],["dataframe",{"2":{"42":1,"84":1}}],["dataframes",{"2":{"42":1}}],["datacubes",{"2":{"84":1}}],["datacube",{"0":{"101":1},"2":{"42":2,"81":1,"84":1}}],["datatypes",{"2":{"36":1}}],["data1",{"2":{"35":2}}],["data3",{"2":{"30":1}}],["data2",{"2":{"29":2,"35":2}}],["datasetaxis",{"2":{"84":2,"85":1}}],["datasetaxis=",{"2":{"84":1,"85":1}}],["dataset",{"0":{"30":1,"36":1,"38":1,"39":1,"40":1,"43":1,"46":1,"71":1,"79":1,"80":1,"82":1},"1":{"37":1,"38":1,"39":2,"40":2,"44":1,"45":1},"2":{"0":3,"3":1,"4":4,"5":2,"6":3,"9":1,"10":1,"18":1,"20":2,"24":1,"30":2,"38":1,"39":3,"40":5,"44":2,"45":3,"46":5,"58":3,"59":3,"60":3,"63":3,"64":1,"71":3,"72":2,"74":3,"75":1,"76":1,"77":1,"78":1,"79":3,"80":4,"81":2,"82":2,"84":19,"85":9,"102":2}}],["datasets",{"0":{"3":1,"28":1,"48":1,"57":1,"63":1,"74":1},"1":{"4":1,"5":1,"6":1,"29":1,"30":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"58":1,"59":1,"60":1,"61":1,"62":1,"64":1,"65":1,"66":1,"67":1,"68":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"82":1},"2":{"0":2,"24":1,"28":1,"40":1,"57":1,"61":1,"79":1,"84":9,"85":4,"100":1}}],["data",{"0":{"34":1,"50":1,"61":1,"72":1},"1":{"62":1},"2":{"0":3,"1":2,"7":1,"8":2,"9":1,"10":3,"11":1,"12":1,"13":1,"14":2,"16":9,"17":3,"18":1,"19":1,"21":6,"22":4,"23":2,"25":2,"26":2,"27":1,"29":2,"32":1,"33":3,"34":2,"35":1,"37":6,"39":1,"40":2,"41":3,"42":5,"50":8,"54":1,"58":3,"59":7,"62":6,"63":3,"64":4,"65":6,"66":6,"67":10,"69":1,"70":3,"71":2,"72":3,"74":3,"79":2,"80":3,"81":4,"82":1,"84":20,"85":12,"91":6,"92":1,"95":2,"96":2,"100":4,"102":5,"104":1}}],["dev",{"2":{"88":1}}],["dependencies",{"2":{"88":1}}],["depth",{"2":{"21":8}}],["detect",{"2":{"84":1,"85":1}}],["determined",{"2":{"85":1}}],["determines",{"2":{"84":1}}],["determine",{"2":{"1":1,"62":1,"84":1}}],["deletes",{"2":{"79":1,"84":1}}],["delete",{"2":{"79":2,"81":1}}],["denoting",{"2":{"84":1}}],["dense",{"2":{"70":1}}],["denvil",{"2":{"59":2,"63":2,"74":2,"80":2}}],["degree",{"2":{"60":1}}],["degc",{"2":{"59":1,"62":3,"64":2,"65":3,"66":3,"67":5}}],["dec",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["defaultfillval",{"2":{"85":1}}],["defaults",{"2":{"84":7}}],["default",{"2":{"18":1,"78":3,"81":1,"84":1,"85":4}}],["definition",{"2":{"72":1}}],["definitions",{"2":{"17":1,"19":1}}],["defining",{"2":{"23":1}}],["defines",{"2":{"84":1}}],["defined",{"2":{"18":1,"26":1,"27":1,"42":1,"56":1,"68":1,"70":1,"73":1,"81":1,"91":1}}],["define",{"0":{"96":1},"2":{"16":2,"18":1,"37":1,"42":1,"56":1,"84":2,"95":1}}],["deal",{"2":{"17":1}}],["dest",{"2":{"105":1}}],["desc",{"2":{"84":3,"85":3}}],["descriptor",{"2":{"85":4}}],["descriptors",{"2":{"84":2}}],["descriptions",{"2":{"84":1}}],["description",{"2":{"17":2,"19":2,"21":2,"36":1,"84":4,"85":11}}],["described",{"2":{"100":1}}],["describe",{"2":{"84":2}}],["describes",{"2":{"7":1,"10":1,"24":1,"28":1,"57":1,"67":1,"69":1,"83":1,"85":1}}],["describing",{"2":{"84":1}}],["designed",{"2":{"24":2,"70":1}}],["desired",{"2":{"16":1,"85":4}}],["demand",{"2":{"13":1}}],["diverging",{"2":{"56":1}}],["divided",{"2":{"41":1}}],["differing",{"2":{"84":1}}],["difference",{"2":{"56":1}}],["differences",{"2":{"46":1,"51":1,"56":1,"85":1}}],["different",{"0":{"21":1},"2":{"9":2,"16":1,"17":2,"23":1,"32":1,"33":1,"45":1,"49":1,"71":1,"84":3,"85":2,"98":1}}],["diff",{"2":{"51":2,"56":3}}],["directory",{"2":{"58":1,"75":2,"77":2}}],["directories",{"2":{"57":1,"85":1}}],["direct",{"2":{"46":1}}],["directly",{"2":{"16":1,"20":1,"27":1,"28":1,"29":1,"82":2}}],["dictionary",{"2":{"71":1,"84":3}}],["dict",{"2":{"4":1,"5":1,"8":1,"9":1,"10":2,"12":1,"13":1,"14":2,"16":5,"17":2,"18":3,"19":2,"20":1,"21":4,"22":4,"23":1,"25":1,"26":2,"27":3,"29":4,"30":2,"32":1,"33":3,"34":1,"35":1,"37":5,"41":3,"42":3,"46":2,"47":2,"51":3,"52":2,"54":4,"55":3,"56":3,"58":2,"59":2,"60":1,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"74":1,"80":1,"81":1,"84":3,"91":3,"96":1,"102":1}}],["dimvector",{"2":{"84":1}}],["dime",{"2":{"58":1}}],["dimensionaldata",{"2":{"22":1,"27":2,"32":1,"33":1,"37":1,"39":1,"40":1,"46":1,"48":1,"50":1,"51":16,"52":10,"54":6,"55":6,"56":39,"66":1,"67":2,"68":3,"70":1,"73":1,"91":1,"92":3,"94":1,"96":1,"102":1}}],["dimensional",{"2":{"17":2,"19":2,"21":2,"69":1,"70":2,"84":1}}],["dimensions",{"0":{"39":1,"40":1},"2":{"9":1,"10":1,"13":1,"15":1,"16":2,"20":1,"21":1,"22":2,"23":1,"29":2,"33":1,"35":1,"38":1,"40":3,"41":2,"45":1,"50":1,"51":16,"52":10,"54":6,"55":6,"56":39,"62":1,"63":1,"68":2,"70":3,"71":1,"84":8,"85":3,"91":3,"92":1}}],["dimension",{"0":{"8":1,"9":1,"68":1,"73":1},"2":{"2":1,"8":2,"9":1,"10":1,"14":2,"16":3,"18":1,"19":1,"22":3,"37":1,"40":1,"52":1,"53":1,"56":1,"66":1,"68":1,"70":1,"72":1,"73":1,"84":7,"85":3,"91":1}}],["dimgroupbyarray",{"2":{"51":1,"54":1}}],["dimarray",{"0":{"27":1},"2":{"22":3,"27":6,"51":1,"52":1,"54":1,"55":2,"56":3,"70":1,"84":2}}],["dims=2",{"2":{"96":1}}],["dims=",{"2":{"14":2,"23":1,"41":1,"51":5,"52":1,"54":1,"56":1}}],["dims",{"2":{"8":3,"9":1,"10":1,"12":1,"13":1,"14":2,"16":5,"17":1,"18":1,"19":1,"21":3,"22":4,"25":1,"26":3,"27":2,"29":2,"32":3,"33":4,"34":1,"35":1,"37":5,"41":3,"42":3,"46":1,"47":2,"50":1,"51":6,"52":1,"54":5,"55":2,"56":5,"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5,"81":1,"91":2,"96":1}}],["dim",{"2":{"2":2,"4":7,"5":8,"6":2,"8":2,"9":3,"10":3,"16":3,"17":4,"21":6,"22":4,"23":3,"25":2,"27":2,"29":7,"32":9,"33":6,"34":3,"35":4,"37":3,"39":3,"40":2,"44":1,"45":5,"46":2,"47":4,"51":2,"52":2,"56":6,"80":3,"81":6,"84":1,"91":4,"96":1}}],["disregard",{"2":{"85":1}}],["dispatch",{"2":{"85":1}}],["displayed",{"2":{"62":1}}],["discribe",{"2":{"84":2}}],["discussion",{"2":{"76":1}}],["distribute",{"2":{"23":1}}],["distributed",{"0":{"23":1},"2":{"0":1,"23":2}}],["diskarray",{"2":{"84":1}}],["diskarrays",{"2":{"2":9,"4":4,"5":4,"6":4,"84":2,"85":1}}],["disk",{"2":{"1":1,"16":1,"20":1,"27":1,"70":1,"81":3,"82":2,"84":1,"85":2}}],["dodgerblue",{"2":{"97":1}}],["documenter",{"2":{"106":1}}],["documentation",{"0":{"87":1},"1":{"88":1}}],["doc",{"2":{"79":1}}],["docstring",{"2":{"84":1}}],["docs",{"0":{"88":1},"2":{"71":1,"87":2,"88":6,"92":1}}],["don",{"2":{"76":1}}],["done",{"2":{"33":1,"41":1,"56":1,"61":1,"87":2}}],["download",{"0":{"50":1},"2":{"50":1,"59":2,"60":2,"63":2,"74":2}}],["downloads",{"2":{"48":1,"50":1,"59":1,"60":1,"63":1,"74":1}}],["doing",{"2":{"23":1,"32":1,"34":1,"88":1}}],["does",{"2":{"23":1,"81":1,"84":2,"85":1}}],["dot",{"2":{"21":1,"97":1}}],["do",{"0":{"35":1,"36":1,"41":1,"42":1,"43":1,"46":1},"1":{"37":1,"38":1,"39":1,"40":1,"44":1,"45":1},"2":{"1":1,"13":1,"16":1,"22":3,"23":1,"31":2,"41":1,"49":1,"56":1,"81":1,"82":1,"85":1,"88":1,"90":1}}],["dsw",{"2":{"51":2,"56":2}}],["dsfinal",{"2":{"35":1,"41":2,"42":2}}],["ds2",{"2":{"35":3,"41":1,"80":1}}],["ds1",{"2":{"35":3,"41":3,"42":1}}],["dschunked",{"2":{"4":3,"5":3,"6":3}}],["ds",{"2":{"0":3,"4":2,"5":2,"6":2,"30":1,"39":2,"40":12,"44":1,"45":1,"46":2,"50":5,"51":10,"54":1,"56":3,"58":1,"59":2,"60":1,"62":3,"63":1,"64":2,"74":1,"75":3,"76":2,"77":3,"78":7,"79":3,"80":2,"81":1,"82":5,"84":3,"85":1,"106":2}}],["wglmakie",{"2":{"106":2}}],["wgs",{"2":{"60":3}}],["would",{"2":{"84":2}}],["world",{"2":{"60":2}}],["workdir",{"2":{"85":1}}],["worker",{"2":{"84":1}}],["workers",{"2":{"84":1}}],["workflow",{"2":{"61":1}}],["workflows",{"2":{"1":1}}],["work",{"2":{"24":2,"50":1,"69":1,"84":1,"98":2,"100":1}}],["workload",{"2":{"23":1}}],["working",{"2":{"16":1,"82":1}}],["works",{"2":{"6":1,"34":1,"39":1,"40":1,"81":1}}],["written",{"2":{"84":1,"85":1}}],["writing",{"2":{"82":1}}],["writefac",{"2":{"85":1}}],["writefac=4",{"2":{"79":1,"84":1}}],["writes",{"2":{"84":1}}],["write",{"0":{"74":1,"75":1,"77":1},"1":{"75":1,"76":2,"77":1,"78":2,"79":1,"80":1,"81":1,"82":1},"2":{"81":1,"84":2}}],["wrapping",{"2":{"53":1,"68":2}}],["wrapped",{"2":{"16":1}}],["wrap",{"2":{"0":1,"84":1}}],["www",{"2":{"59":1,"63":1,"74":1}}],["w",{"2":{"56":2,"82":2}}],["was",{"2":{"20":1,"22":1,"23":1,"85":1}}],["way",{"2":{"15":1,"24":1,"32":1}}],["warning",{"2":{"11":1,"24":1,"32":1,"40":1,"45":1,"47":1,"50":1,"79":1,"81":1,"84":1}}],["wanted",{"2":{"85":1}}],["wants",{"2":{"81":1}}],["want",{"0":{"94":1},"2":{"0":1,"1":1,"61":1,"72":1,"85":1,"88":1,"93":1,"100":1}}],["white",{"2":{"104":1,"105":1}}],["while",{"2":{"81":1}}],["which",{"2":{"9":1,"16":1,"22":2,"33":1,"40":2,"56":1,"59":1,"62":1,"64":1,"67":1,"68":1,"72":3,"84":5,"85":4,"100":1}}],["whose",{"0":{"39":1,"40":1}}],["whole",{"2":{"8":3}}],["whether",{"2":{"85":2}}],["when",{"2":{"1":1,"6":1,"13":1,"62":1,"72":1,"84":3,"85":1}}],["whereas",{"2":{"70":1}}],["where",{"2":{"0":1,"23":1,"40":4,"49":1,"67":1,"82":1,"84":1,"85":4}}],["wintri",{"0":{"104":1},"1":{"105":1,"106":1}}],["windowloopinds",{"2":{"85":1}}],["window",{"2":{"84":1,"85":1}}],["without",{"2":{"85":1}}],["within",{"2":{"66":1}}],["with",{"0":{"47":1},"2":{"4":1,"5":1,"8":1,"10":1,"12":1,"13":1,"16":7,"17":3,"18":2,"19":2,"21":3,"22":4,"23":2,"24":1,"29":3,"32":1,"33":1,"40":6,"41":2,"42":3,"45":2,"46":3,"47":1,"51":3,"52":1,"54":2,"55":2,"56":5,"58":3,"59":2,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"69":1,"71":1,"74":1,"76":1,"78":1,"79":1,"80":2,"81":2,"82":1,"84":11,"85":1,"87":1,"91":4,"92":3,"98":1,"100":1,"102":2,"104":1}}],["will",{"2":{"0":1,"1":1,"4":1,"5":1,"13":1,"16":3,"17":2,"18":1,"19":1,"22":1,"36":1,"40":1,"41":2,"42":2,"45":2,"46":1,"48":1,"53":2,"59":1,"79":3,"81":3,"82":1,"84":12,"85":3,"100":1}}],["wether",{"2":{"84":1}}],["weight=",{"2":{"84":1}}],["weight=nothing",{"2":{"84":1}}],["weight",{"0":{"54":1},"1":{"55":1,"56":1},"2":{"53":1,"55":1,"56":1}}],["weights",{"0":{"55":1},"2":{"51":3,"55":2,"56":1}}],["weightedmean",{"2":{"84":1}}],["weighted",{"0":{"56":1},"2":{"42":1,"49":1,"51":8,"56":8,"84":3}}],["well",{"2":{"42":1,"46":1,"81":1,"84":1}}],["welcome",{"2":{"6":1,"86":1}}],["were",{"2":{"13":2,"67":1,"85":1,"95":1}}],["we",{"2":{"0":1,"8":2,"9":1,"13":2,"14":1,"16":5,"17":3,"18":1,"19":1,"20":1,"22":5,"23":2,"29":2,"33":1,"35":1,"36":1,"37":1,"38":1,"40":2,"41":2,"42":5,"46":4,"51":1,"52":1,"53":2,"56":1,"58":1,"66":1,"72":1,"81":3,"82":4,"92":2,"95":1,"102":1}}],["oob",{"2":{"84":1}}],["o1",{"2":{"59":2,"63":2,"74":2,"80":1}}],["ocean",{"2":{"59":1,"63":1,"74":1,"80":1}}],["oct",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["occuring",{"2":{"4":1}}],["o",{"2":{"50":4,"56":4,"84":5}}],["ohlcv",{"2":{"46":3}}],["ouput",{"2":{"88":1}}],["our",{"2":{"41":1,"42":1,"96":1}}],["outcube",{"2":{"85":1}}],["outcubes",{"2":{"85":1}}],["outcs",{"2":{"85":1}}],["outsize",{"2":{"85":1}}],["outar",{"2":{"85":2}}],["out",{"2":{"50":1,"84":2,"85":1}}],["outtype",{"2":{"16":2,"84":1,"85":2}}],["outdims=outdims",{"2":{"22":1,"23":1}}],["outdims",{"0":{"17":1,"18":1,"19":1,"20":1},"1":{"18":1,"19":1,"20":1},"2":{"16":4,"18":12,"19":2,"20":11,"21":3,"84":6}}],["outputcube",{"2":{"85":3}}],["outputs",{"2":{"16":1,"18":2,"21":1}}],["output",{"2":{"6":1,"16":3,"17":1,"18":1,"22":1,"23":3,"59":1,"63":1,"74":1,"80":1,"84":11,"85":9,"106":1}}],["optimal",{"2":{"85":1}}],["optifunc",{"2":{"85":1}}],["optionally",{"2":{"84":1}}],["option",{"2":{"37":1,"39":1,"76":1}}],["options",{"2":{"34":1}}],["operates",{"2":{"84":1}}],["operate",{"2":{"21":1}}],["operation",{"2":{"21":1,"85":1}}],["operations",{"0":{"16":1},"2":{"10":1,"51":1,"84":2,"85":3}}],["operating",{"2":{"19":1}}],["opens",{"2":{"84":1}}],["openinterval",{"2":{"67":1}}],["open",{"0":{"67":1},"2":{"0":2,"18":1,"20":2,"46":4,"58":2,"59":2,"60":1,"63":2,"67":2,"74":1,"76":1,"80":1,"82":6,"84":7,"102":1}}],["obj",{"2":{"42":2,"95":1,"97":1}}],["objects",{"2":{"84":2}}],["object",{"2":{"11":1,"58":1,"84":5,"85":3}}],["obtain",{"0":{"34":1},"2":{"46":1,"53":1}}],["omit",{"2":{"23":1}}],["otherwise",{"2":{"84":1}}],["others",{"2":{"21":1,"46":1}}],["other",{"0":{"98":1},"1":{"99":1,"100":1,"101":1},"2":{"20":1,"24":1,"61":1,"98":1,"100":1}}],["overview",{"0":{"99":1},"2":{"98":1,"99":1}}],["overwrite",{"0":{"79":1},"2":{"79":3,"84":4,"85":2}}],["overwrite=true",{"2":{"16":2,"79":2,"81":3}}],["over",{"0":{"16":1,"100":1},"2":{"10":1,"15":1,"21":1,"23":1,"56":1,"84":8,"85":1,"100":1}}],["ormax",{"2":{"84":1}}],["orca2",{"2":{"59":1,"63":1,"74":1,"80":1}}],["orangered",{"2":{"42":1}}],["ordered",{"2":{"70":1,"71":1}}],["ordereddict",{"2":{"22":1}}],["orderedcollections",{"2":{"22":1}}],["order",{"2":{"16":1,"49":1,"82":1}}],["original",{"2":{"59":2,"62":6,"64":4,"65":6,"66":6,"67":10}}],["originates",{"2":{"9":1}}],["origin",{"2":{"10":2,"12":1,"13":1,"23":1,"29":3,"30":1,"91":2}}],["or",{"0":{"36":1},"1":{"37":1,"38":1,"39":1,"40":1},"2":{"1":2,"6":1,"10":1,"13":2,"15":1,"27":1,"33":1,"38":1,"47":2,"58":1,"61":1,"63":2,"70":3,"73":2,"76":1,"79":1,"84":22,"85":7,"90":1,"91":2,"93":1}}],["once",{"2":{"56":1,"72":1,"85":1,"87":1}}],["onlinestat",{"2":{"84":2}}],["onlinestats",{"2":{"42":2}}],["only",{"2":{"6":1,"13":1,"14":1,"16":1,"20":1,"22":1,"24":1,"29":2,"41":1,"59":1,"81":1,"84":2}}],["on",{"2":{"1":2,"6":1,"7":1,"10":2,"13":2,"16":1,"23":2,"31":1,"59":2,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"70":1,"74":1,"76":1,"80":1,"81":1,"84":5,"85":4}}],["ones",{"2":{"17":1,"33":1}}],["oneto",{"2":{"4":4,"5":4,"6":2,"25":2,"29":3,"32":9,"33":6,"44":1,"45":5,"47":4,"81":6,"91":2}}],["one",{"0":{"18":1,"44":1},"2":{"0":1,"7":1,"8":2,"14":2,"18":15,"19":5,"20":6,"21":2,"22":2,"42":1,"46":1,"52":1,"59":1,"70":2,"71":1,"81":2,"84":9,"85":3,"98":1}}],["own",{"2":{"0":1,"59":1}}],["offline=true",{"2":{"106":1}}],["offsets",{"2":{"85":1}}],["offset",{"2":{"13":1}}],["often",{"2":{"7":1}}],["of",{"0":{"11":1,"40":1,"49":1,"82":1,"99":2},"2":{"0":2,"1":1,"6":1,"8":3,"9":1,"10":2,"11":1,"12":1,"13":2,"14":1,"15":1,"22":7,"23":3,"24":1,"26":1,"27":1,"31":3,"32":3,"36":1,"37":2,"38":1,"39":1,"40":2,"41":1,"42":1,"49":1,"50":1,"54":1,"59":1,"62":1,"63":3,"64":1,"66":1,"68":1,"70":7,"71":1,"72":2,"73":2,"74":1,"80":1,"81":1,"82":1,"83":1,"84":53,"85":42,"91":1,"92":2,"96":2,"97":1,"98":1,"99":1}}],["eo",{"2":{"98":1}}],["esdltutorials",{"2":{"98":1}}],["esm1",{"2":{"58":1,"102":2}}],["eltype",{"2":{"91":1}}],["elementtype",{"2":{"85":1}}],["element",{"2":{"8":1,"9":1,"10":2,"13":2,"14":1,"16":3,"22":2,"34":1,"42":1,"51":2,"52":1,"53":1,"54":7,"55":2,"56":3,"65":2,"68":1,"71":1,"72":2,"84":1,"85":1,"96":1}}],["elements",{"0":{"11":1,"65":1},"2":{"8":1,"12":1,"13":2,"23":1,"63":1,"70":1,"84":1,"85":1}}],["empty",{"2":{"85":1}}],["embeds",{"2":{"84":1}}],["either",{"2":{"84":2}}],["error",{"2":{"79":1}}],["epsg",{"2":{"60":5}}],["et",{"2":{"59":1,"63":1,"72":1,"74":1,"80":1}}],["edu",{"2":{"59":1,"63":1,"71":1,"74":1}}],["equivalent",{"2":{"56":1,"68":1}}],["equally",{"2":{"0":1}}],["effectively",{"2":{"41":1}}],["env",{"2":{"88":1}}],["ensure",{"2":{"59":1}}],["enabling",{"2":{"29":1}}],["enter",{"2":{"90":1}}],["entire",{"2":{"22":1,"24":1,"75":1,"77":1}}],["entries",{"2":{"22":1,"46":1,"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5,"82":1,"84":1,"91":1}}],["entry",{"2":{"10":1,"12":1,"13":1,"16":2,"17":1,"18":1,"19":1,"21":1,"29":2,"51":2,"52":1,"54":2,"55":2,"56":3,"84":1,"87":3}}],["enumerate",{"2":{"22":2,"56":2}}],["end",{"2":{"13":1,"16":1,"18":1,"19":2,"21":2,"22":4,"23":2,"41":1,"51":2,"56":2,"59":1,"96":2,"106":1}}],["exist",{"2":{"84":1}}],["exists",{"2":{"79":1,"84":1,"85":1}}],["existing",{"0":{"8":1},"2":{"79":1,"80":1}}],["exportable=true",{"2":{"106":1}}],["expression",{"2":{"84":1}}],["experiment",{"2":{"59":3,"63":3,"74":3,"80":3}}],["explicitly",{"2":{"13":1,"33":1,"36":1,"85":1}}],["executes",{"2":{"84":1}}],["execute",{"2":{"23":1}}],["external",{"2":{"58":1,"102":1}}],["extension",{"2":{"84":2}}],["extent",{"2":{"26":2}}],["extended",{"2":{"16":1,"84":1,"85":2}}],["extracts",{"2":{"85":1}}],["extract",{"0":{"32":1},"1":{"33":1},"2":{"85":1}}],["extracted",{"2":{"21":1}}],["extra",{"2":{"23":1}}],["exactly",{"2":{"5":1,"34":1,"46":1}}],["examples",{"2":{"6":1,"34":2,"48":1,"59":1,"63":1,"74":1,"87":1}}],["example",{"2":{"0":1,"1":1,"5":1,"10":1,"17":1,"21":1,"23":2,"33":1,"39":1,"40":1,"41":1,"42":1,"49":1,"59":1,"61":1,"63":2,"70":2,"71":1,"72":1,"74":2,"84":4,"85":1,"87":2,"91":2}}],["e",{"2":{"7":1,"8":1,"10":1,"11":1,"13":1,"22":2,"23":1,"26":1,"27":1,"29":1,"37":1,"59":1,"68":1,"70":1,"73":1,"79":1,"84":6,"85":1,"88":1,"91":1}}],["east",{"2":{"60":1}}],["easier",{"2":{"29":1,"63":1}}],["easily",{"2":{"0":1,"23":1}}],["easy",{"2":{"26":1,"27":1}}],["each",{"2":{"4":1,"5":1,"10":1,"13":1,"20":1,"22":5,"23":2,"41":2,"42":2,"49":1,"53":1,"62":1,"71":1,"73":1,"84":3,"85":3,"91":1}}],["everywhere",{"2":{"23":2}}],["every",{"2":{"0":1,"10":1,"13":1,"84":1}}],["features",{"2":{"99":1}}],["feel",{"2":{"76":1}}],["feb",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["frame",{"2":{"100":1}}],["frames",{"2":{"70":1}}],["front",{"2":{"85":1}}],["from",{"0":{"32":1,"34":2,"46":1,"49":1},"1":{"33":1},"2":{"0":1,"8":1,"9":1,"24":1,"32":1,"33":1,"34":4,"40":3,"46":2,"62":1,"67":1,"72":2,"82":1,"84":6,"85":6,"91":1,"96":1}}],["free",{"2":{"76":1}}],["frequently",{"0":{"31":1},"1":{"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1}}],["fr",{"2":{"59":1,"63":1,"74":1,"80":1}}],["fallback",{"2":{"85":1}}],["falls",{"2":{"84":1}}],["false",{"2":{"18":1,"20":1,"47":1,"79":2,"84":3,"85":1}}],["fails",{"2":{"84":1}}],["faq",{"0":{"31":1},"1":{"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1}}],["faster",{"2":{"85":1}}],["fastest",{"2":{"1":1}}],["fast",{"2":{"1":1,"13":1}}],["f2mix",{"2":{"19":3}}],["f2",{"2":{"18":3}}],["f1",{"2":{"18":2,"19":1}}],["fu",{"2":{"85":1}}],["funtion",{"2":{"96":1}}],["fun",{"2":{"84":4}}],["functionality",{"0":{"99":1}}],["functions",{"2":{"10":2,"21":1,"70":2,"83":1,"84":1,"85":1}}],["function",{"0":{"42":1},"2":{"0":1,"1":1,"13":2,"15":1,"16":6,"17":1,"18":2,"19":2,"21":5,"23":6,"32":2,"35":1,"41":1,"42":1,"46":1,"48":1,"51":1,"53":1,"56":1,"61":1,"67":1,"81":1,"84":22,"85":13}}],["future",{"2":{"50":1}}],["further",{"2":{"13":1,"98":1}}],["flag",{"2":{"85":3}}],["flat",{"2":{"18":4,"19":2,"20":2}}],["float32",{"2":{"16":6,"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5,"81":2,"82":4,"85":1}}],["float64",{"2":{"8":1,"9":1,"10":3,"12":3,"13":3,"14":4,"17":2,"18":2,"19":2,"20":2,"21":3,"22":9,"25":2,"26":2,"27":4,"29":6,"30":2,"32":1,"33":3,"35":4,"41":12,"42":5,"46":2,"51":3,"52":2,"55":3,"56":6,"58":4,"59":4,"60":2,"62":6,"63":2,"64":4,"65":2,"66":6,"67":10,"68":3,"74":2,"80":2,"84":1,"85":1,"91":7,"96":2,"102":2}}],["flexible",{"2":{"9":1,"15":1}}],["folder",{"2":{"88":1}}],["follow",{"2":{"88":1,"98":1}}],["follows",{"2":{"16":2,"19":1,"21":1,"51":1,"56":1,"82":1}}],["following",{"2":{"2":1,"5":1,"6":1,"16":1,"17":1,"18":1,"21":1,"23":1,"33":1,"48":1,"49":1,"50":1,"84":2,"85":4,"93":2,"94":1,"98":1}}],["found",{"2":{"84":1,"85":1}}],["fourth",{"2":{"59":2,"63":2,"74":2,"80":2}}],["fontsize=24",{"2":{"103":1}}],["fontsize=18",{"2":{"56":1}}],["font=",{"2":{"56":1}}],["forwarded",{"2":{"84":1}}],["forwardordered",{"2":{"4":4,"5":4,"6":2,"8":1,"9":1,"10":3,"12":3,"13":3,"14":3,"16":9,"17":4,"18":4,"19":3,"20":3,"21":9,"22":9,"25":2,"26":6,"27":4,"29":9,"30":3,"32":9,"33":6,"34":2,"35":4,"37":14,"39":6,"40":10,"41":9,"42":5,"44":1,"45":5,"46":4,"47":4,"51":3,"52":2,"54":2,"55":1,"56":7,"58":6,"59":6,"60":1,"62":9,"63":3,"64":6,"65":4,"66":9,"67":15,"68":2,"74":3,"80":6,"81":6,"91":5,"96":1,"102":3}}],["force",{"2":{"84":1}}],["forcing",{"2":{"58":1,"102":1}}],["forms",{"2":{"84":1,"85":2}}],["format",{"2":{"76":1,"78":1,"79":1,"84":1,"96":1}}],["formal",{"2":{"72":1}}],["former",{"2":{"32":1}}],["for",{"0":{"6":1,"95":1},"1":{"96":1,"97":1},"2":{"0":2,"1":3,"4":1,"5":1,"6":1,"20":1,"22":4,"23":1,"37":1,"39":2,"40":2,"41":4,"42":6,"46":5,"50":1,"54":1,"56":3,"59":2,"61":2,"62":1,"63":1,"67":1,"68":1,"70":4,"71":3,"72":1,"74":1,"79":1,"80":1,"81":2,"84":20,"85":16,"94":1,"95":1,"96":2,"98":1}}],["f",{"2":{"2":2,"16":3}}],["field",{"2":{"84":1}}],["fields",{"2":{"42":1,"84":1,"85":4}}],["figure=",{"2":{"97":1}}],["figure",{"2":{"56":2,"95":1,"97":1,"103":1,"104":1,"105":1,"106":1}}],["fig",{"2":{"42":3,"56":8,"95":1,"97":1,"103":2,"104":2,"105":2,"106":3}}],["filterig",{"2":{"96":1}}],["filter",{"2":{"84":2}}],["fillarrays",{"2":{"81":3}}],["fill",{"2":{"81":1,"84":1,"85":1}}],["fillvalue=",{"2":{"85":1}}],["fillvalue",{"2":{"50":3,"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5}}],["filling",{"2":{"28":1,"29":1}}],["filename",{"2":{"50":2,"84":1}}],["files",{"0":{"101":1},"2":{"7":1,"57":1,"60":1,"84":5,"85":2,"88":1}}],["file",{"2":{"2":1,"7":1,"27":1,"40":1,"59":2,"78":3,"79":2,"81":1,"84":2,"87":4}}],["findaxis",{"2":{"85":1}}],["findall",{"2":{"22":1,"96":1}}],["find",{"2":{"36":1,"85":1,"98":1}}],["finalizer",{"2":{"85":1}}],["finalize",{"2":{"85":1}}],["finally",{"2":{"22":1,"84":1}}],["final",{"2":{"21":1,"22":1}}],["firstly",{"2":{"37":1}}],["first",{"2":{"8":4,"16":3,"18":1,"22":1,"42":1,"45":1,"56":1,"82":1,"84":4,"85":1,"87":1,"91":1,"102":1}}],["fitting",{"2":{"84":1}}],["fittable",{"2":{"84":2}}],["fitcube",{"2":{"42":2}}],["fitsym",{"2":{"84":4}}],["fits",{"2":{"24":1}}],["fit",{"2":{"1":1,"61":1,"70":1}}],["t=union",{"2":{"85":1}}],["typing",{"2":{"90":1}}],["typically",{"2":{"84":1}}],["type",{"2":{"33":1,"47":1,"70":1,"72":1,"84":8,"85":3,"91":1,"92":1}}],["types",{"0":{"69":1},"1":{"70":1,"71":1,"72":1,"73":1},"2":{"24":2,"26":1,"27":1,"47":1,"65":1,"71":1,"84":2,"92":1}}],["tutorial",{"2":{"98":2,"99":1,"100":1}}],["tutorials",{"0":{"98":1},"1":{"99":1,"100":1,"101":1},"2":{"67":1,"98":3}}],["turn",{"2":{"84":1}}],["tuple",{"2":{"2":3,"4":1,"5":1,"6":1,"18":1,"20":1,"51":2,"52":1,"54":2,"55":2,"56":4,"84":5,"85":1}}],["tbl",{"2":{"42":2}}],["target",{"2":{"85":1}}],["tab",{"2":{"84":4}}],["tables",{"2":{"100":1}}],["tableaggregator",{"2":{"84":1}}],["table",{"0":{"100":1},"2":{"42":2,"58":1,"59":2,"63":2,"74":2,"80":2,"84":4,"85":1,"102":1}}],["tas",{"2":{"58":5,"102":5}}],["tair",{"2":{"56":1,"84":1}}],["ta",{"2":{"46":3}}],["takes",{"2":{"84":4}}],["taken",{"2":{"40":2}}],["take",{"2":{"16":1,"84":1,"85":2,"88":1}}],["treat",{"2":{"84":1}}],["treatment",{"2":{"84":1,"85":1}}],["treated",{"2":{"58":1}}],["tries",{"2":{"84":1}}],["translate",{"2":{"104":1,"105":1}}],["transformed",{"2":{"59":1,"63":1,"74":1,"80":1}}],["transformations",{"2":{"104":1}}],["transformation",{"2":{"22":1}}],["transform",{"2":{"22":2}}],["track",{"2":{"84":1}}],["true",{"2":{"12":1,"47":1,"61":1,"79":1,"81":1,"84":4,"85":1,"106":1}}],["tip",{"2":{"92":1}}],["tidy",{"2":{"84":1}}],["ticks",{"2":{"70":1}}],["ticks=false",{"2":{"56":1}}],["tick",{"2":{"68":1,"73":1,"91":1}}],["tiff",{"0":{"101":1}}],["tif",{"2":{"60":2,"94":1}}],["title",{"2":{"56":1,"59":1,"63":1,"74":1,"80":1,"87":1}}],["ti=at",{"2":{"56":3}}],["ti=>cyclicbins",{"2":{"51":2,"52":1,"54":2,"55":2,"56":3}}],["ti",{"2":{"20":1,"26":4,"51":15,"52":2,"53":1,"54":8,"55":3,"56":6,"58":2,"59":2,"62":3,"63":1,"64":2,"65":2,"66":3,"67":5,"74":1,"80":1,"84":2,"102":2}}],["time1",{"2":{"65":2}}],["timearray",{"0":{"46":1},"2":{"46":3}}],["time=1",{"2":{"91":1}}],["time=date",{"2":{"37":1}}],["time=at",{"2":{"37":1}}],["time=between",{"2":{"37":1}}],["time",{"0":{"49":1},"2":{"1":1,"7":1,"8":4,"9":3,"10":3,"12":1,"13":1,"14":7,"16":14,"17":2,"18":4,"19":1,"20":4,"21":10,"22":8,"23":5,"26":2,"29":3,"30":1,"35":2,"37":8,"39":4,"40":7,"41":4,"42":3,"46":5,"52":1,"53":1,"56":1,"58":2,"59":2,"62":3,"64":2,"65":4,"66":3,"67":5,"70":2,"71":1,"84":4,"91":4,"95":1,"96":4,"102":2}}],["timestamp",{"2":{"46":1}}],["timestep",{"2":{"42":1}}],["timeseries",{"2":{"46":3}}],["times",{"2":{"0":1}}],["tesselation",{"2":{"106":1}}],["testrange",{"2":{"85":1}}],["test1",{"2":{"47":1}}],["test2",{"2":{"47":2}}],["test",{"2":{"17":4,"18":1,"19":3,"20":4,"21":4,"47":3,"85":1,"102":1}}],["terminal",{"2":{"88":1}}],["text",{"2":{"87":1}}],["tensors",{"2":{"70":1}}],["tell",{"2":{"36":1}}],["temporary",{"2":{"85":1}}],["temporal",{"2":{"41":1,"48":1,"70":1}}],["tempo",{"2":{"51":6,"54":4,"55":1}}],["temp",{"2":{"9":2}}],["temperature=temperature",{"2":{"40":1}}],["temperature",{"2":{"9":2,"40":4,"56":2,"58":3,"59":2,"62":6,"64":5,"65":6,"66":6,"67":10,"70":1,"71":1,"72":1,"91":4}}],["tempname",{"2":{"2":1,"4":1,"5":1,"6":1}}],["tspan",{"2":{"16":1}}],["t",{"2":{"16":4,"37":1,"39":2,"40":2,"42":3,"59":1,"62":4,"64":2,"65":3,"66":3,"67":5,"76":1,"84":1,"85":2,"95":1,"96":1}}],["two",{"2":{"8":1,"9":1,"18":8,"19":4,"20":3,"21":2,"34":2,"35":1,"70":1,"85":1}}],["toghether",{"2":{"85":1}}],["together",{"2":{"46":1,"72":1}}],["touches",{"2":{"67":1}}],["tolerances",{"2":{"66":1}}],["tos",{"2":{"59":5,"62":6,"63":2,"64":4,"65":4,"66":3,"67":9,"68":2,"74":2,"75":2,"77":2,"80":1}}],["top",{"2":{"56":1}}],["too",{"2":{"40":1,"70":1,"84":1}}],["todo",{"2":{"21":1,"96":1}}],["toy",{"2":{"21":1,"81":1}}],["to",{"0":{"9":1,"18":1,"19":1,"43":1,"80":1,"86":1,"87":1,"93":1},"1":{"44":1,"45":1,"87":1,"88":2},"2":{"0":4,"1":4,"3":1,"4":1,"6":2,"7":1,"8":1,"9":1,"10":8,"12":1,"15":1,"16":2,"17":1,"18":2,"19":1,"20":4,"21":3,"22":2,"23":6,"24":3,"25":2,"27":3,"28":1,"31":2,"32":2,"34":3,"35":1,"37":2,"39":2,"40":6,"41":1,"42":1,"45":2,"46":2,"47":1,"48":1,"49":3,"50":2,"52":1,"53":1,"56":1,"57":1,"58":3,"59":2,"61":1,"62":2,"63":3,"67":1,"68":1,"69":1,"70":5,"71":3,"72":2,"73":2,"74":1,"75":2,"76":2,"77":2,"78":2,"79":1,"80":2,"81":4,"82":3,"84":49,"85":19,"87":2,"88":3,"92":2,"93":1,"98":1,"100":3,"102":2,"106":1}}],["though",{"2":{"81":1}}],["those",{"2":{"11":1,"24":1,"26":1,"27":1,"45":1,"71":1,"82":1}}],["through",{"2":{"84":5,"85":5,"90":1}}],["thrown",{"2":{"79":1}}],["three",{"2":{"36":1,"71":1,"95":1}}],["threaded",{"2":{"59":1}}],["threads",{"2":{"59":2,"84":2}}],["thread",{"2":{"23":1,"59":3}}],["than",{"2":{"24":1,"36":1,"41":1,"42":1}}],["that",{"2":{"0":1,"9":2,"10":1,"13":1,"16":5,"20":1,"21":1,"22":2,"23":1,"24":1,"33":1,"35":1,"38":1,"40":2,"42":1,"46":1,"47":1,"49":1,"52":1,"55":1,"59":2,"61":1,"68":1,"70":1,"71":2,"73":1,"81":2,"84":13,"85":13,"98":1,"100":1}}],["things",{"2":{"31":1}}],["think",{"2":{"1":1}}],["thinking",{"2":{"1":1}}],["this",{"2":{"0":1,"1":1,"4":1,"7":1,"10":1,"13":2,"16":4,"17":1,"19":2,"22":3,"23":1,"24":1,"28":1,"31":1,"34":1,"39":1,"40":2,"41":2,"42":2,"45":1,"46":1,"49":1,"53":2,"57":1,"58":1,"59":1,"61":1,"62":2,"67":1,"69":1,"72":1,"76":1,"82":2,"83":2,"84":7,"85":10,"87":1,"88":2,"99":1,"100":1}}],["they",{"2":{"46":4,"62":1}}],["their",{"0":{"39":1,"40":1},"2":{"38":1,"40":1,"47":1,"70":1,"84":3,"85":2}}],["then",{"2":{"21":2,"22":2,"33":1,"41":1,"46":1,"81":1,"82":1,"88":2,"90":1}}],["thereby",{"2":{"84":1}}],["therefore",{"2":{"42":1,"92":1}}],["there",{"2":{"14":2,"21":1,"27":1,"34":1,"46":2,"62":1,"84":1}}],["theme",{"2":{"56":2}}],["them",{"2":{"7":1,"10":1,"36":1,"61":1,"82":1,"84":1}}],["these",{"2":{"0":1,"6":1,"34":1,"36":1,"47":1,"68":1,"70":1}}],["the",{"0":{"32":1,"34":1,"42":1,"50":1,"96":1,"99":1},"1":{"33":1},"2":{"0":5,"1":4,"2":3,"4":1,"5":4,"6":4,"8":6,"9":3,"10":1,"11":1,"13":3,"14":2,"15":1,"16":12,"17":3,"18":5,"19":2,"20":3,"21":10,"22":14,"23":7,"24":2,"27":1,"29":3,"31":1,"32":3,"33":5,"34":3,"35":2,"36":2,"37":9,"39":3,"40":10,"41":3,"42":10,"45":1,"46":7,"48":2,"49":5,"50":4,"51":2,"52":1,"53":2,"54":2,"55":2,"56":9,"59":2,"61":3,"62":6,"63":1,"64":5,"65":3,"66":5,"67":6,"68":1,"69":1,"70":5,"71":4,"72":4,"78":1,"79":3,"80":1,"81":10,"82":2,"84":122,"85":83,"86":1,"87":1,"88":6,"90":2,"91":6,"92":8,"93":5,"94":1,"95":1,"96":4,"98":6,"99":1,"100":5,"102":1}}],["switched",{"2":{"92":1}}],["syntax",{"2":{"92":1,"98":1}}],["system",{"2":{"88":1}}],["symbol",{"2":{"10":1,"12":1,"13":1,"18":1,"20":1,"29":2,"46":5,"51":4,"52":2,"53":2,"54":4,"55":4,"56":6,"84":3,"85":1}}],["src",{"2":{"87":1}}],["sres",{"2":{"59":2,"63":2,"74":2,"80":2}}],["skipped",{"2":{"84":1}}],["skip",{"2":{"84":1}}],["skipmissing",{"2":{"23":1,"41":1}}],["skeleton=a",{"2":{"81":1}}],["skeleton=true",{"2":{"81":2}}],["skeleton=false",{"2":{"79":1,"84":1}}],["skeleton",{"0":{"81":1},"2":{"81":8,"82":4}}],["ssp585",{"2":{"58":1,"102":2}}],["snow3",{"2":{"42":1}}],["snippet",{"2":{"6":1}}],["small",{"2":{"31":1,"46":1}}],["slightly",{"2":{"98":1}}],["slicing",{"2":{"16":1}}],["slices",{"2":{"84":3}}],["slice",{"2":{"16":1,"102":4,"103":1}}],["slow",{"2":{"40":1,"84":1}}],["slurmmanager",{"2":{"23":1}}],["shinclude",{"2":{"88":1}}],["shdocs>",{"2":{"88":1}}],["shnpm",{"2":{"88":2}}],["shouldn",{"2":{"62":1}}],["should",{"2":{"37":1,"46":1,"50":1,"61":1,"62":1,"84":3,"85":1,"87":1,"88":1,"93":1}}],["showprog",{"2":{"84":1}}],["shown",{"2":{"62":1,"84":1}}],["shows",{"2":{"56":1}}],["showing",{"2":{"46":1}}],["show",{"2":{"23":1,"82":1,"106":1}}],["shading=false",{"2":{"104":1,"105":1,"106":1}}],["shall",{"2":{"84":5,"85":1}}],["shares",{"2":{"40":1}}],["share",{"0":{"39":1,"40":1},"2":{"38":1,"40":1,"71":1,"84":1}}],["shared",{"2":{"4":1,"5":1,"6":1,"20":1,"30":1,"35":1,"39":2,"40":3,"44":1,"45":1,"46":2,"58":1,"59":1,"60":1,"63":1,"74":1,"80":1,"81":1,"102":1}}],["shape",{"2":{"6":1}}],["scene",{"2":{"106":3}}],["scenariomip",{"2":{"58":1,"102":2}}],["scenarios",{"2":{"17":1,"102":1}}],["scripts",{"2":{"88":1}}],["scope",{"2":{"84":1,"85":1}}],["scalar",{"2":{"58":1}}],["scattered",{"2":{"7":1}}],["sure",{"2":{"106":1}}],["surface",{"2":{"56":2,"58":2,"59":2,"62":6,"64":5,"65":6,"66":6,"67":10,"104":1,"105":1}}],["such",{"2":{"62":1,"67":1,"84":1,"92":1}}],["subcubes",{"2":{"84":1}}],["subtype",{"2":{"70":1,"85":1,"92":1}}],["subtables",{"2":{"42":1}}],["subsetextensions",{"2":{"85":1}}],["subsetcube",{"2":{"84":1}}],["subseting",{"2":{"68":1}}],["subsetting",{"0":{"37":1,"38":1,"39":1,"40":1},"1":{"39":1,"40":1},"2":{"58":1,"59":1,"85":1,"96":1}}],["subset",{"0":{"36":1},"1":{"37":1,"38":1,"39":1,"40":1},"2":{"37":5,"40":4,"63":1,"66":1,"84":1,"85":1,"102":1}}],["subsets",{"2":{"15":1,"73":1}}],["subsequent",{"2":{"17":1}}],["supposed",{"2":{"84":1}}],["support",{"2":{"27":1,"46":1}}],["supertype",{"2":{"26":1,"27":1}}],["summarysize",{"2":{"47":2}}],["sum",{"2":{"18":1,"19":1,"21":1,"22":2,"41":1,"51":4,"54":2,"55":4,"56":2}}],["suggestions",{"2":{"6":1}}],["s",{"2":{"10":1,"16":3,"18":1,"19":1,"21":2,"33":1,"35":1,"37":1,"39":1,"40":2,"56":7,"61":1,"63":1,"73":1,"81":1,"84":2,"85":1,"94":1,"96":1}}],["style",{"0":{"100":1}}],["st",{"2":{"92":1}}],["stdzero",{"2":{"84":1}}],["stock3",{"2":{"46":4}}],["stock2",{"2":{"46":4}}],["stock1",{"2":{"46":4}}],["stocks",{"2":{"46":7}}],["storing",{"2":{"71":1}}],["storage",{"2":{"11":1,"58":1}}],["stored",{"2":{"70":3,"85":2}}],["stores",{"2":{"70":1,"84":1}}],["store",{"2":{"0":1,"58":4,"70":1,"71":1,"102":2}}],["struct",{"2":{"84":1,"85":4}}],["structures",{"2":{"69":1}}],["structure",{"2":{"33":2,"46":1,"72":1}}],["strings",{"0":{"47":1}}],["string",{"2":{"8":1,"9":2,"10":1,"12":1,"13":1,"14":2,"16":5,"17":3,"18":4,"19":3,"20":1,"21":4,"22":6,"25":1,"26":2,"27":3,"29":3,"32":1,"33":3,"34":1,"35":2,"37":5,"41":3,"42":3,"47":5,"51":1,"52":1,"54":2,"55":1,"56":1,"58":2,"59":2,"60":1,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"74":1,"79":1,"80":1,"81":1,"84":6,"85":4,"91":4,"96":1,"102":1}}],["stable",{"2":{"92":1}}],["stat",{"2":{"78":2}}],["status",{"2":{"62":2}}],["statistics",{"2":{"14":1,"23":1,"42":3,"48":1,"95":1}}],["standard",{"2":{"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5}}],["standards",{"2":{"58":1,"59":1,"63":1,"74":1,"80":1,"102":1}}],["stack",{"2":{"47":1}}],["started",{"0":{"89":1},"1":{"90":1,"91":1,"92":1}}],["start=12",{"2":{"51":2,"52":1,"54":2,"55":2,"56":3}}],["start=december",{"2":{"51":3,"54":1}}],["start",{"2":{"10":1,"37":1,"76":1,"82":1}}],["still",{"2":{"8":1,"22":1,"71":1,"98":1}}],["step=3",{"2":{"51":2,"52":1,"54":2,"55":2,"56":3}}],["steps",{"2":{"10":1,"14":1,"56":1,"84":1,"88":1}}],["step",{"2":{"7":1,"14":1,"20":1,"41":2,"84":1,"85":2,"102":1}}],["sphere",{"0":{"106":1},"2":{"106":3}}],["spheroid",{"2":{"60":1}}],["split",{"2":{"84":1}}],["splitted",{"2":{"2":1}}],["special",{"2":{"65":1,"84":1,"85":1}}],["specifiers",{"2":{"85":1}}],["specifier",{"2":{"84":1}}],["specifies",{"2":{"84":3}}],["specified",{"2":{"84":8,"85":1}}],["specific",{"2":{"37":1,"84":2}}],["specifying",{"2":{"84":2,"85":1}}],["specify",{"0":{"20":1},"2":{"17":1,"29":1,"84":1}}],["specs",{"2":{"58":1,"102":1}}],["spectral",{"2":{"56":1}}],["sparse",{"2":{"70":1}}],["spatio",{"2":{"41":1}}],["spatial",{"2":{"1":1,"14":1,"22":5,"23":1,"48":1,"70":1}}],["span",{"2":{"37":1,"95":1}}],["space",{"2":{"1":1,"16":1}}],["safe",{"2":{"59":2}}],["sampled",{"2":{"4":4,"5":4,"6":2,"8":1,"9":1,"10":3,"12":3,"13":3,"14":3,"16":9,"17":3,"18":3,"19":2,"20":3,"21":9,"22":8,"25":2,"26":6,"27":4,"29":9,"30":3,"32":9,"33":6,"34":2,"35":3,"37":14,"39":6,"40":10,"41":9,"42":5,"44":1,"45":5,"46":4,"47":4,"51":3,"52":2,"54":2,"55":1,"56":7,"58":6,"59":6,"60":2,"62":9,"63":3,"64":6,"65":4,"66":9,"67":15,"68":2,"74":3,"80":6,"81":6,"91":5,"96":1,"102":3}}],["same",{"2":{"0":1,"2":1,"5":1,"6":1,"9":1,"16":1,"20":1,"21":1,"22":2,"26":1,"27":1,"33":2,"34":2,"35":1,"40":1,"45":1,"46":2,"61":1,"64":1,"65":1,"66":1,"70":1,"71":3,"72":2,"84":1,"85":1,"88":1}}],["saves",{"2":{"79":1,"84":1}}],["save",{"0":{"81":1},"2":{"12":1,"27":1,"45":1,"47":1,"75":2,"76":1,"77":2,"78":1,"81":1,"84":2}}],["savecube",{"2":{"2":1,"75":1,"77":1,"81":1,"84":2}}],["savedataset",{"2":{"4":1,"5":1,"6":1,"76":1,"78":1,"79":2,"80":1,"81":2,"84":2,"85":1}}],["saved",{"2":{"2":1,"11":1,"20":1,"78":1,"79":1}}],["saving",{"2":{"1":1,"4":1,"5":1,"6":1,"16":1}}],["serve",{"2":{"85":1}}],["series",{"0":{"49":1},"2":{"23":1}}],["sequence",{"2":{"70":1}}],["seaborn",{"2":{"103":1,"104":1,"105":1,"106":1}}],["searching",{"2":{"84":1}}],["search",{"2":{"84":1}}],["sea",{"2":{"59":3,"62":6,"63":1,"64":5,"65":6,"66":6,"67":10,"74":1,"80":1}}],["season",{"2":{"51":1,"54":2,"55":1}}],["seasons",{"0":{"51":1,"53":1,"56":1},"1":{"52":1,"53":1},"2":{"51":9,"54":1,"56":5}}],["seasonal",{"0":{"49":1,"95":1,"97":1},"1":{"96":1,"97":1},"2":{"49":1,"55":1,"56":1,"95":1,"96":4}}],["sebastien",{"2":{"59":2,"63":2,"74":2,"80":2}}],["separate",{"2":{"84":1,"85":1}}],["separated",{"2":{"71":1}}],["separately",{"2":{"5":1,"22":1,"23":1}}],["sep",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["selected",{"2":{"85":1,"95":1}}],["select",{"0":{"63":1,"64":1,"65":1,"66":1},"1":{"64":1,"65":1,"66":1,"67":1,"68":1},"2":{"40":1,"63":1}}],["selectors",{"2":{"67":1}}],["selector",{"2":{"40":1,"66":1}}],["selection",{"2":{"40":2}}],["selecting",{"2":{"37":1,"39":1,"40":1}}],["seed",{"2":{"17":1,"21":2}}],["see",{"2":{"16":1,"18":1,"67":1,"84":1,"92":1}}],["second",{"2":{"8":3,"18":1,"19":1,"84":1}}],["section",{"2":{"7":1,"10":1,"24":1,"28":1,"31":1,"46":1,"57":1,"69":1,"83":1}}],["setting",{"2":{"79":1,"84":1,"85":1}}],["sets",{"2":{"6":1,"50":1}}],["set",{"0":{"4":1,"5":1,"6":1},"2":{"4":1,"5":1,"19":2,"22":1,"58":1,"79":1,"84":1,"85":2,"88":1}}],["setchunks",{"2":{"1":1,"2":2,"3":1,"4":1,"5":1,"6":1,"84":1,"85":1}}],["several",{"0":{"16":1},"2":{"0":1,"16":1,"35":1,"38":1}}],["significant",{"2":{"76":1}}],["sin",{"2":{"95":1}}],["sink",{"2":{"85":1}}],["since",{"2":{"62":1,"93":1}}],["single",{"0":{"95":1},"1":{"96":1,"97":1},"2":{"0":1,"7":1,"8":1,"59":1,"72":1,"75":1,"77":1,"84":6,"85":1}}],["simulate",{"2":{"46":1}}],["simplicity",{"2":{"95":1}}],["simply",{"2":{"23":1,"47":1,"82":1,"88":1,"93":1}}],["simple",{"2":{"16":1,"31":1,"91":1}}],["situations",{"2":{"1":1}}],["size=",{"2":{"104":1,"105":1,"106":1}}],["sizes",{"2":{"2":1,"84":2,"85":2}}],["size",{"2":{"0":1,"1":1,"4":1,"5":1,"8":1,"9":1,"10":1,"12":1,"13":1,"14":2,"16":5,"17":1,"18":1,"19":1,"21":3,"22":2,"25":1,"26":1,"27":1,"29":2,"32":1,"33":3,"34":1,"35":1,"37":5,"41":3,"42":3,"54":1,"56":1,"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5,"78":4,"81":1,"82":1,"84":3,"85":4,"91":3,"95":1,"96":2,"97":1,"103":1}}],["sosstsst",{"2":{"59":1,"62":3,"64":2,"65":3,"66":3,"67":5}}],["software",{"2":{"59":1,"63":1,"74":1}}],["sort",{"2":{"22":1}}],["so",{"2":{"2":1,"23":1,"36":1,"40":1,"84":1,"85":1}}],["source",{"2":{"0":2,"59":1,"63":1,"74":1,"79":1,"80":1,"84":25,"85":24}}],["sometimes",{"2":{"81":1,"100":1}}],["some",{"0":{"40":1},"2":{"0":1,"11":1,"38":1,"40":1,"41":1,"46":2,"56":1,"84":1,"95":1,"104":1}}],["advance",{"2":{"62":1}}],["addargs",{"2":{"84":3,"85":1}}],["adds",{"2":{"70":2,"73":1}}],["addprocs",{"2":{"23":2}}],["addition",{"2":{"22":1,"24":1,"70":1}}],["additional",{"2":{"4":3,"5":3,"9":1,"16":1,"21":1,"40":10,"45":4,"46":4,"58":2,"80":3,"84":4,"85":3,"102":2}}],["added",{"2":{"15":1,"80":1,"84":1,"85":1}}],["add",{"2":{"6":1,"10":1,"12":1,"41":1,"59":1,"87":2,"90":2,"93":3,"94":4,"104":1}}],["again",{"2":{"79":1,"82":1}}],["agreement",{"2":{"56":1}}],["aggregation",{"2":{"23":1}}],["aggregate",{"2":{"22":1}}],["air",{"2":{"56":2,"58":3}}],["authority",{"2":{"60":5}}],["auto",{"2":{"18":1,"20":1,"84":1}}],["aug",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["api",{"0":{"83":1,"84":1,"85":1},"1":{"84":1,"85":1}}],["apr",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["appropriate",{"2":{"87":1}}],["approximated",{"2":{"85":1}}],["approx",{"2":{"84":1,"85":1}}],["approach",{"2":{"9":1}}],["append=true",{"2":{"80":2}}],["append",{"0":{"80":1},"2":{"79":1,"84":1}}],["apply",{"0":{"41":1},"2":{"10":2,"13":1,"15":1,"21":1,"23":1,"56":1,"96":1}}],["application",{"2":{"21":1}}],["applications",{"2":{"0":1}}],["applies",{"2":{"13":1}}],["applied",{"2":{"0":1,"3":1,"4":1,"22":1,"84":2,"85":1}}],["a3",{"2":{"30":4}}],["a2",{"2":{"29":1,"30":3,"59":2,"63":2,"74":2,"80":2,"91":1}}],["a1",{"2":{"29":1}}],["able",{"2":{"45":1}}],["abstractstring",{"2":{"84":1}}],["abstractdict",{"2":{"84":1,"85":3}}],["abstractdimarray",{"2":{"26":1,"27":1,"70":1}}],["abs",{"2":{"21":1}}],["about",{"2":{"1":2,"36":1,"66":1,"91":1,"99":1}}],["above",{"2":{"0":1,"5":1,"16":1,"81":1,"90":1}}],["atol",{"2":{"66":1}}],["atmosphere",{"2":{"59":1,"63":1,"74":1,"80":1}}],["atmos",{"2":{"58":1,"102":1}}],["attributes",{"2":{"56":1,"84":1,"85":1}}],["at",{"2":{"21":1,"22":4,"27":1,"40":1,"46":3,"56":1,"59":3,"62":3,"63":1,"64":2,"65":6,"66":7,"67":5,"71":1,"72":2,"74":1,"79":2,"80":1,"84":3,"85":2,"86":1,"87":2,"88":2,"91":1,"98":2}}],["after",{"2":{"14":1,"16":1,"60":1,"84":3}}],["asaxisarray",{"2":{"84":1}}],["assemble",{"2":{"91":1}}],["assessment",{"2":{"59":2,"63":2,"74":2,"80":2}}],["associated",{"2":{"84":1}}],["assign",{"0":{"43":1},"1":{"44":1,"45":1}}],["aspect=dataaspect",{"2":{"56":1,"103":1}}],["asked",{"0":{"31":1},"1":{"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1}}],["as",{"2":{"5":1,"12":1,"16":5,"18":1,"19":1,"21":1,"22":1,"23":1,"26":1,"27":2,"33":2,"34":1,"40":1,"42":1,"46":2,"51":2,"56":1,"58":1,"59":1,"60":1,"61":1,"64":1,"67":1,"68":1,"70":1,"73":1,"81":1,"82":1,"84":11,"85":3,"92":1,"100":1,"102":1}}],["axs",{"2":{"50":1,"56":9}}],["ax",{"2":{"42":1,"95":3,"97":3,"103":1,"104":3,"105":3,"106":5}}],["axlist",{"2":{"10":2,"17":2,"19":1,"21":4,"22":2,"23":2,"29":2,"30":1,"35":3,"85":5,"91":3}}],["axessmall",{"2":{"85":2}}],["axes",{"0":{"32":1,"34":1},"1":{"33":1},"2":{"4":4,"5":4,"6":1,"20":1,"29":1,"30":1,"32":2,"33":1,"34":2,"37":2,"39":5,"40":13,"44":1,"45":5,"46":8,"58":3,"59":1,"60":1,"63":2,"70":2,"74":1,"80":4,"81":1,"84":15,"85":11,"91":1,"96":2,"102":3}}],["axislegend",{"2":{"97":1}}],["axis=false",{"2":{"106":1}}],["axis=",{"2":{"95":1}}],["axisdescriptor",{"2":{"85":1}}],["axisdesc",{"2":{"84":3}}],["axis",{"0":{"4":1},"2":{"4":1,"9":2,"16":3,"34":1,"37":1,"39":1,"40":7,"46":1,"56":1,"60":2,"68":1,"73":1,"81":1,"84":16,"85":14,"91":1,"97":1,"102":1,"103":1}}],["always",{"2":{"84":2,"85":1,"86":1,"92":1}}],["already",{"2":{"62":1,"79":1,"84":1,"85":1}}],["al",{"2":{"59":1,"63":1,"72":1,"74":1,"80":1}}],["alternatives",{"2":{"84":1}}],["alternatively",{"2":{"0":1,"2":1,"84":2,"90":1}}],["altered",{"2":{"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5}}],["although",{"2":{"46":1,"47":1,"67":1}}],["algebraofgraphics",{"2":{"94":1}}],["algebra",{"0":{"41":1},"2":{"41":1}}],["along",{"0":{"8":1},"2":{"8":1,"16":1,"84":6,"85":2,"98":1}}],["allaxes",{"2":{"85":1}}],["allinaxes",{"2":{"85":1}}],["allmissing",{"2":{"84":1}}],["allocate",{"2":{"81":1}}],["allocation",{"2":{"22":1}}],["allow",{"2":{"85":1}}],["allowed",{"2":{"47":1}}],["allowing",{"2":{"26":1,"27":1,"71":1}}],["allows",{"2":{"23":1}}],["all",{"0":{"6":1,"39":1,"40":1},"2":{"4":1,"6":2,"10":1,"12":1,"13":1,"14":2,"22":1,"23":4,"38":1,"40":2,"46":3,"56":2,"60":1,"67":1,"70":1,"72":2,"79":3,"81":1,"83":1,"84":6,"85":7,"88":1}}],["also",{"2":{"2":1,"3":1,"14":1,"21":1,"23":1,"29":1,"32":1,"40":1,"42":1,"70":2,"71":1,"76":1,"81":2,"84":1,"90":1}}],["annual",{"2":{"84":1}}],["analog",{"2":{"71":1}}],["analyzing",{"2":{"1":1}}],["anchor",{"2":{"21":1}}],["another",{"2":{"16":1,"40":1}}],["anynymous",{"2":{"84":1}}],["anyocean",{"2":{"84":1}}],["anymissing",{"2":{"84":1}}],["anymore",{"2":{"21":1}}],["any",{"2":{"8":1,"9":1,"10":1,"11":1,"14":2,"16":5,"18":3,"20":1,"21":2,"22":4,"25":1,"26":2,"27":3,"29":1,"32":1,"33":3,"34":1,"35":1,"37":6,"41":3,"42":3,"47":4,"51":3,"52":2,"54":4,"55":3,"56":3,"58":2,"59":3,"60":1,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"74":1,"80":1,"81":1,"84":4,"85":9,"91":1,"96":1,"102":1}}],["an",{"0":{"8":1},"2":{"9":1,"10":4,"12":1,"13":1,"15":1,"23":2,"33":1,"34":1,"39":1,"40":1,"42":1,"47":1,"61":1,"63":3,"66":1,"70":1,"71":1,"73":1,"74":1,"75":1,"76":1,"77":1,"79":1,"80":1,"84":19,"85":8}}],["and",{"0":{"17":1,"28":1,"34":1,"48":1,"57":1,"63":1,"67":1,"74":1},"1":{"18":1,"19":1,"20":1,"29":1,"30":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"58":1,"59":1,"60":1,"61":1,"62":1,"64":1,"65":1,"66":1,"67":1,"68":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"82":1},"2":{"0":1,"2":1,"5":1,"6":1,"7":1,"8":1,"12":1,"16":4,"17":2,"18":2,"20":2,"21":4,"22":2,"24":1,"28":1,"29":1,"32":1,"35":1,"37":1,"40":6,"41":1,"42":6,"46":5,"48":1,"49":1,"51":1,"56":1,"57":2,"58":1,"59":1,"62":1,"63":1,"67":1,"70":5,"71":3,"72":2,"74":1,"76":2,"78":1,"79":1,"80":1,"81":3,"82":1,"84":19,"85":6,"86":1,"88":4,"90":1,"91":2,"95":1,"102":1,"104":1}}],["available",{"2":{"67":2,"81":1,"83":1,"84":2,"90":1}}],["avariable",{"2":{"0":1}}],["avoid",{"2":{"59":1}}],["avoids",{"2":{"22":1}}],["avoided",{"2":{"0":1}}],["averaging",{"2":{"14":1}}],["averages",{"0":{"49":1},"2":{"48":1}}],["average",{"2":{"14":1,"49":2}}],["arg",{"2":{"84":1}}],["argument",{"2":{"23":1,"81":1,"84":4,"85":2}}],["arguments",{"2":{"21":1,"56":1,"84":11,"85":3}}],["artype",{"2":{"84":2}}],["archgdaldatasets",{"2":{"60":1}}],["archgdal",{"2":{"60":2,"94":1}}],["arr2",{"2":{"27":1}}],["arr",{"2":{"22":7,"27":2}}],["arrayinfo",{"2":{"85":1}}],["arrays",{"2":{"6":1,"7":1,"8":2,"9":1,"11":1,"28":1,"30":2,"58":2,"59":2,"69":1,"70":4,"71":3,"72":3,"84":2,"85":1}}],["array",{"0":{"22":1,"25":1},"2":{"0":1,"1":1,"8":2,"9":2,"10":3,"12":2,"13":2,"15":1,"18":1,"20":1,"22":8,"25":2,"34":1,"51":1,"56":1,"63":1,"70":4,"71":1,"72":1,"73":2,"81":5,"82":5,"84":10,"85":4,"91":3}}],["arbitrary",{"2":{"16":1}}],["arithmetics",{"0":{"12":1},"2":{"10":1}}],["areas",{"2":{"84":1}}],["area",{"2":{"58":2,"84":1}}],["areacella",{"2":{"58":2,"102":1}}],["are",{"2":{"0":1,"11":1,"18":1,"19":1,"24":3,"34":1,"36":1,"40":1,"46":3,"56":2,"62":2,"63":1,"67":1,"68":1,"70":3,"71":2,"72":3,"81":1,"84":11,"85":6,"86":1,"88":1,"98":2,"100":1}}],["according",{"2":{"84":1}}],["access",{"2":{"1":2,"13":1,"29":1,"70":1,"73":1}}],["accessed",{"2":{"0":2,"58":1,"59":2}}],["activate",{"2":{"42":1,"88":2,"95":1,"103":1,"106":1}}],["actually",{"2":{"85":1}}],["actual",{"2":{"13":1,"59":1,"81":1,"85":1,"91":1}}],["achieves",{"2":{"33":1}}],["achieved",{"2":{"0":1}}],["across",{"2":{"0":1,"7":1,"16":1,"70":3}}],["a",{"0":{"9":1,"11":1,"22":1,"29":1,"30":1,"32":1,"36":1,"37":1,"38":1,"39":1,"40":1,"43":1,"46":2,"47":1,"64":1,"68":1,"79":1,"80":1,"95":1,"101":1},"1":{"33":1,"37":1,"38":1,"39":2,"40":2,"44":1,"45":1,"96":1,"97":1},"2":{"0":4,"2":7,"3":1,"4":1,"7":1,"8":1,"9":2,"10":3,"11":1,"12":4,"13":2,"14":2,"15":1,"16":5,"17":2,"18":1,"19":2,"20":1,"22":75,"23":11,"25":2,"26":5,"27":8,"29":1,"31":1,"32":2,"33":2,"34":1,"36":4,"37":3,"38":1,"40":2,"42":3,"44":2,"45":2,"46":4,"49":1,"54":1,"56":2,"58":6,"59":4,"60":1,"66":2,"67":4,"68":1,"70":12,"71":4,"72":8,"73":1,"75":3,"76":3,"77":3,"78":1,"79":4,"81":5,"84":64,"85":31,"87":2,"88":2,"91":4,"92":1,"99":1,"100":1}}],["iall",{"2":{"85":1}}],["iwindow",{"2":{"85":1}}],["icolon",{"2":{"85":1}}],["icefire",{"2":{"103":1,"104":1,"105":1,"106":1}}],["ice",{"2":{"59":1,"63":1,"74":1,"80":1}}],["ipcc",{"2":{"59":3,"63":3,"74":3,"80":3}}],["ipsl",{"2":{"59":6,"63":6,"74":6,"80":6}}],["idx",{"2":{"96":3}}],["identical",{"2":{"84":1}}],["id",{"2":{"58":2,"59":2,"63":2,"74":2,"80":2,"102":2}}],["irregular",{"2":{"20":1,"40":6,"42":2,"46":4,"51":1,"54":2,"55":1,"56":1,"58":4,"59":2,"62":3,"63":1,"64":2,"65":2,"66":6,"67":5,"74":1,"80":1,"85":1,"102":2}}],["illustrate",{"2":{"17":1}}],["immutable",{"2":{"11":1}}],["improving",{"2":{"92":1}}],["improvement",{"2":{"76":1}}],["improve",{"2":{"6":1}}],["implementing",{"2":{"84":1}}],["importance",{"2":{"85":1}}],["important",{"2":{"1":1}}],["impossible",{"2":{"11":1}}],["i",{"0":{"35":1,"36":1,"41":1,"42":1,"43":1,"46":1},"1":{"37":1,"38":1,"39":1,"40":1,"44":1,"45":1},"2":{"8":1,"22":3,"26":1,"27":1,"37":1,"56":2,"59":2,"79":1,"84":7,"85":4,"88":2,"91":1,"96":3}}],["ispar",{"2":{"84":1,"85":1}}],["ismissing",{"2":{"81":1}}],["issue",{"2":{"76":1}}],["issues",{"2":{"50":1}}],["isequal",{"2":{"22":1}}],["is",{"2":{"1":2,"2":1,"6":1,"7":1,"9":1,"13":1,"14":2,"15":1,"16":4,"21":2,"22":2,"23":3,"24":1,"27":1,"31":1,"33":2,"35":1,"36":1,"40":2,"41":1,"42":4,"46":2,"47":2,"49":2,"50":2,"51":1,"55":1,"59":2,"62":2,"64":1,"67":2,"68":1,"70":4,"71":1,"72":2,"73":1,"81":4,"82":1,"84":12,"85":10,"87":1,"90":1,"92":1,"93":1,"98":1,"100":1}}],["if",{"2":{"0":1,"18":1,"19":1,"24":1,"40":3,"76":1,"79":1,"81":2,"84":12,"85":6,"88":1,"93":1,"98":1}}],["inline",{"2":{"106":2}}],["incubes",{"2":{"85":1}}],["incs",{"2":{"85":1}}],["include",{"2":{"84":2,"85":1}}],["included",{"2":{"67":1}}],["inarbc",{"2":{"85":1}}],["inar",{"2":{"85":2}}],["inplace",{"2":{"84":3,"85":1}}],["inputcube",{"2":{"85":2}}],["inputs",{"2":{"18":1}}],["input",{"2":{"16":1,"17":1,"18":1,"20":1,"23":2,"42":1,"84":13,"85":8}}],["innerchunks",{"2":{"85":1}}],["inner",{"2":{"84":9,"85":3}}],["installed",{"2":{"92":1}}],["installation",{"0":{"90":1}}],["install",{"0":{"93":1},"2":{"88":1,"90":1,"94":1}}],["instead",{"2":{"8":1,"9":1,"13":1,"32":1,"37":1,"67":1,"70":1}}],["insize",{"2":{"85":1}}],["inside",{"2":{"84":3}}],["initialization",{"2":{"58":1,"102":1}}],["initially",{"2":{"22":1}}],["inds",{"2":{"85":1}}],["indeed",{"2":{"82":1}}],["indexing",{"2":{"65":2,"66":2,"82":1,"92":1}}],["index",{"2":{"58":2,"85":2,"102":2}}],["independently",{"2":{"46":1}}],["indices",{"2":{"85":1,"96":1}}],["indicate",{"2":{"84":1}}],["indicating",{"2":{"9":1,"22":1,"84":1}}],["indims=indims",{"2":{"22":1,"23":1}}],["indims",{"0":{"18":1,"19":1,"21":1},"2":{"16":8,"18":4,"20":7,"21":3,"84":7}}],["individually",{"2":{"13":2}}],["individual",{"2":{"0":1,"58":1,"59":1}}],["information",{"2":{"62":1,"79":1,"85":2}}],["info",{"2":{"16":2,"27":1,"32":1,"48":1,"59":11,"78":4,"81":1,"92":1}}],["introducing",{"2":{"72":1}}],["int",{"2":{"33":1,"47":1,"96":3}}],["interoperability",{"0":{"94":1}}],["internal",{"0":{"85":1},"2":{"85":9}}],["internally",{"2":{"71":1}}],["interface",{"2":{"84":2,"100":1}}],["interested",{"2":{"98":1}}],["interest",{"2":{"62":1}}],["interval",{"2":{"59":1,"62":3,"64":2,"65":3,"66":4,"67":6}}],["intervalsets",{"2":{"67":1}}],["intervals",{"0":{"67":1},"2":{"37":1}}],["interactive",{"2":{"0":1}}],["integer",{"2":{"29":1,"65":1,"66":1,"70":1}}],["int64",{"2":{"4":4,"5":4,"6":2,"8":1,"9":1,"16":8,"17":1,"18":1,"19":1,"21":7,"25":2,"26":6,"27":2,"29":3,"32":9,"33":7,"34":4,"37":15,"39":4,"40":7,"42":3,"44":1,"45":5,"47":5,"51":6,"52":6,"54":4,"56":18,"80":3,"81":6,"85":1,"91":2}}],["into",{"0":{"61":1,"101":1},"1":{"62":1},"2":{"0":1,"1":1,"2":1,"7":1,"8":1,"16":1,"22":1,"24":2,"27":1,"40":4,"47":1,"57":1,"61":1,"72":2,"79":1,"82":1,"84":6,"85":3,"88":1,"106":1}}],["in",{"0":{"20":1,"43":1},"1":{"44":1,"45":1},"2":{"0":5,"1":1,"2":1,"4":2,"5":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":2,"14":4,"16":5,"17":1,"18":2,"19":2,"21":5,"22":8,"23":3,"24":2,"25":1,"26":2,"27":2,"29":2,"32":1,"33":3,"34":2,"37":5,"38":1,"40":1,"41":3,"42":5,"46":4,"47":2,"49":2,"50":2,"53":3,"54":1,"56":4,"58":2,"59":4,"61":1,"62":9,"64":2,"65":3,"66":4,"67":7,"68":1,"69":1,"70":5,"71":1,"72":2,"81":2,"82":1,"84":15,"85":9,"88":2,"90":1,"91":4,"93":2,"96":2,"98":3,"100":4,"102":1}}],["iter",{"2":{"84":1}}],["iterate",{"2":{"100":1}}],["iteration",{"0":{"100":1}}],["iterator",{"2":{"42":1}}],["iterators",{"2":{"22":1}}],["iterable",{"2":{"42":2,"84":2}}],["itself",{"2":{"84":1,"85":1}}],["its",{"2":{"0":1}}],["it",{"2":{"0":2,"1":3,"12":1,"16":1,"18":1,"20":1,"23":2,"32":1,"34":1,"35":1,"40":2,"42":2,"46":2,"47":1,"52":1,"54":1,"56":1,"59":1,"63":1,"70":2,"71":1,"73":1,"78":1,"79":1,"81":2,"82":1,"84":10,"85":5,"88":1,"90":1}}],["lscene",{"2":{"106":1}}],["lmdz",{"2":{"59":1,"63":1,"74":1,"80":1}}],["link",{"2":{"87":1}}],["linewidth=0",{"2":{"104":1,"105":1}}],["linewidth=2",{"2":{"97":2}}],["linewidth=1",{"2":{"95":1,"97":1}}],["linestyle=",{"2":{"97":2}}],["lines",{"2":{"95":1,"97":3}}],["line",{"2":{"42":1}}],["lim",{"2":{"59":1,"63":1,"74":1,"80":1}}],["libraries",{"2":{"37":1,"70":1}}],["libray",{"2":{"36":1}}],["little",{"2":{"23":1}}],["list",{"2":{"22":1,"46":5,"84":7,"85":6}}],["like",{"2":{"0":1,"42":1,"46":1,"84":2,"85":1,"87":1}}],["learn",{"2":{"100":1}}],["learning",{"2":{"70":1,"98":1}}],["leap",{"2":{"95":1}}],["least",{"2":{"40":1,"46":1,"84":1}}],["length",{"2":{"51":2,"52":1,"54":3,"84":1,"85":3}}],["length=20",{"2":{"35":1,"91":1}}],["length=365",{"2":{"95":1}}],["length=3",{"2":{"17":1}}],["length=4",{"2":{"17":1}}],["length=15",{"2":{"10":1,"22":1,"23":1,"29":1,"35":1,"91":1}}],["length=10",{"2":{"10":1,"22":1,"23":1,"29":1,"35":1,"91":1}}],["level",{"2":{"21":1,"46":1,"76":1,"78":1,"87":1,"88":1}}],["left",{"2":{"14":2}}],["let",{"2":{"10":1,"16":2,"18":1,"19":1,"33":1,"35":1,"37":1,"39":1,"40":1,"56":1,"61":1,"63":1,"96":1}}],["loopinds",{"2":{"85":2}}],["looping",{"2":{"84":1,"85":1}}],["loopcachesize",{"2":{"85":1}}],["loopchunksize",{"2":{"84":1}}],["loopaxes",{"2":{"85":1}}],["loopvars",{"2":{"84":1,"85":1}}],["loops",{"2":{"84":1}}],["loop",{"2":{"84":1,"85":2}}],["looped",{"2":{"84":3,"85":3}}],["look",{"2":{"79":1,"84":1,"85":1,"87":1,"88":1}}],["lookups",{"2":{"51":15,"52":10,"54":5,"55":5,"56":38,"68":3}}],["lookup",{"2":{"51":1,"53":1,"102":3}}],["looks",{"2":{"42":1,"46":1}}],["located",{"2":{"98":1}}],["locate",{"2":{"88":1}}],["location",{"2":{"85":3}}],["locations",{"2":{"71":1,"72":1}}],["localhost",{"2":{"88":1}}],["locally",{"0":{"88":1},"2":{"88":1}}],["local",{"2":{"23":1,"58":1}}],["lock",{"2":{"59":3}}],["locks",{"2":{"59":1}}],["lowclip",{"2":{"56":4}}],["low",{"2":{"46":4}}],["lost",{"2":{"24":1}}],["lo",{"2":{"16":4}}],["loadorgenerate",{"2":{"85":1}}],["loading",{"2":{"60":1,"62":1,"82":1}}],["load",{"0":{"61":1},"1":{"62":1},"2":{"16":1,"37":1,"40":2,"61":1,"62":1,"70":1}}],["loaded",{"2":{"8":1,"9":1,"10":1,"12":1,"13":1,"14":2,"16":5,"17":1,"18":1,"19":1,"21":3,"22":2,"25":1,"26":1,"27":1,"29":2,"32":1,"33":3,"34":1,"35":1,"37":5,"40":2,"41":3,"42":3,"47":2,"54":1,"58":1,"59":1,"62":8,"64":2,"65":3,"66":3,"67":5,"81":1,"91":2,"96":1}}],["long",{"2":{"56":1,"58":1,"59":1,"62":4,"64":2,"65":3,"66":3,"67":5}}],["longitudes=longitudes",{"2":{"40":1}}],["longitudes",{"2":{"40":12}}],["longitude",{"2":{"21":1,"37":1,"60":1,"91":2}}],["lonlat",{"2":{"39":1}}],["lon=1",{"2":{"37":1,"39":1}}],["lon",{"2":{"10":2,"12":1,"13":1,"14":2,"16":10,"17":2,"18":1,"19":1,"20":1,"21":5,"22":12,"23":1,"26":2,"29":3,"30":1,"35":2,"37":7,"39":3,"41":4,"42":3,"58":2,"59":2,"62":3,"63":1,"64":2,"65":3,"66":6,"67":10,"68":2,"74":1,"80":1,"102":2,"104":3}}],["lazy",{"2":{"84":1}}],["lazily",{"2":{"9":1,"13":1,"16":2,"35":1,"58":1,"59":1,"62":1,"64":2,"65":3,"66":3,"67":5}}],["layername",{"2":{"84":2}}],["layername=",{"2":{"81":2,"85":1}}],["layer",{"2":{"81":1,"84":1,"85":1}}],["layout",{"2":{"56":2}}],["labelled",{"2":{"84":1}}],["labels",{"2":{"56":1,"68":1,"72":1,"73":1}}],["label=false",{"2":{"56":1}}],["label=",{"2":{"56":1,"97":3}}],["label=cb",{"2":{"56":1}}],["label",{"2":{"56":3,"58":1,"102":1}}],["last",{"2":{"16":1,"23":1}}],["la",{"2":{"16":4}}],["latest",{"2":{"92":1,"93":1}}],["later",{"2":{"18":1}}],["lat=5",{"2":{"37":1,"39":1}}],["latitudes=latitudes",{"2":{"40":1}}],["latitudes",{"2":{"40":11}}],["latitude",{"2":{"21":1,"37":1,"60":1,"91":2}}],["lat",{"2":{"10":2,"12":1,"13":1,"14":2,"16":7,"17":2,"18":1,"19":1,"20":1,"21":5,"22":12,"23":1,"26":2,"29":3,"30":1,"35":2,"37":7,"39":3,"41":4,"42":3,"58":2,"59":2,"62":3,"63":1,"64":2,"65":3,"66":5,"67":5,"68":1,"74":1,"80":1,"84":1,"102":3,"104":1,"105":1}}],["larger",{"2":{"24":1}}],["large",{"2":{"0":2,"24":1,"50":1,"70":1}}]],"serializationVersion":2}';export{e as default}; diff --git a/dev/assets/chunks/@localSearchIndexroot.BaJs6gCP.js b/dev/assets/chunks/@localSearchIndexroot.BaJs6gCP.js new file mode 100644 index 00000000..d14782b8 --- /dev/null +++ b/dev/assets/chunks/@localSearchIndexroot.BaJs6gCP.js @@ -0,0 +1 @@ +const e='{"documentCount":107,"nextId":107,"documentIds":{"0":"/YAXArrays.jl/dev/UserGuide/cache.html#Caching-YAXArrays","1":"/YAXArrays.jl/dev/UserGuide/chunk.html#Chunk-YAXArrays","2":"/YAXArrays.jl/dev/UserGuide/chunk.html#Chunking-YAXArrays","3":"/YAXArrays.jl/dev/UserGuide/chunk.html#Chunking-Datasets","4":"/YAXArrays.jl/dev/UserGuide/chunk.html#Set-Chunks-by-Axis","5":"/YAXArrays.jl/dev/UserGuide/chunk.html#Set-chunking-by-Variable","6":"/YAXArrays.jl/dev/UserGuide/chunk.html#Set-chunking-for-all-variables","7":"/YAXArrays.jl/dev/UserGuide/combine.html#Combine-YAXArrays","8":"/YAXArrays.jl/dev/UserGuide/combine.html#cat-along-an-existing-dimension","9":"/YAXArrays.jl/dev/UserGuide/combine.html#concatenatecubes-to-a-new-dimension","10":"/YAXArrays.jl/dev/UserGuide/compute.html#Compute-YAXArrays","11":"/YAXArrays.jl/dev/UserGuide/compute.html#Modify-elements-of-a-YAXArray","12":"/YAXArrays.jl/dev/UserGuide/compute.html#arithmetics","13":"/YAXArrays.jl/dev/UserGuide/compute.html#map","14":"/YAXArrays.jl/dev/UserGuide/compute.html#mapslices","15":"/YAXArrays.jl/dev/UserGuide/compute.html#mapCube","16":"/YAXArrays.jl/dev/UserGuide/compute.html#Operations-over-several-YAXArrays","17":"/YAXArrays.jl/dev/UserGuide/compute.html#OutDims-and-YAXArray-Properties","18":"/YAXArrays.jl/dev/UserGuide/compute.html#One-InDims-to-many-OutDims","19":"/YAXArrays.jl/dev/UserGuide/compute.html#Many-InDims-to-many-OutDims","20":"/YAXArrays.jl/dev/UserGuide/compute.html#Specify-path-in-OutDims","21":"/YAXArrays.jl/dev/UserGuide/compute.html#Different-InDims-names","22":"/YAXArrays.jl/dev/UserGuide/compute.html#Creating-a-vector-array","23":"/YAXArrays.jl/dev/UserGuide/compute.html#Distributed-Computation","24":"/YAXArrays.jl/dev/UserGuide/convert.html#Convert-YAXArrays","25":"/YAXArrays.jl/dev/UserGuide/convert.html#Convert-Base.Array","26":"/YAXArrays.jl/dev/UserGuide/convert.html#Convert-Raster","27":"/YAXArrays.jl/dev/UserGuide/convert.html#Convert-DimArray","28":"/YAXArrays.jl/dev/UserGuide/create.html#Create-YAXArrays-and-Datasets","29":"/YAXArrays.jl/dev/UserGuide/create.html#Create-a-YAXArray","30":"/YAXArrays.jl/dev/UserGuide/create.html#Create-a-Dataset","31":"/YAXArrays.jl/dev/UserGuide/faq.html#Frequently-Asked-Questions-(FAQ)","32":"/YAXArrays.jl/dev/UserGuide/faq.html#Extract-the-axes-names-from-a-Cube","33":"/YAXArrays.jl/dev/UserGuide/faq.html#rebuild","34":"/YAXArrays.jl/dev/UserGuide/faq.html#Obtain-values-from-axes-and-data-from-the-cube","35":"/YAXArrays.jl/dev/UserGuide/faq.html#How-do-I-concatenate-cubes","36":"/YAXArrays.jl/dev/UserGuide/faq.html#How-do-I-subset-a-YAXArray-(-Cube-)-or-Dataset?","37":"/YAXArrays.jl/dev/UserGuide/faq.html#Subsetting-a-YAXArray","38":"/YAXArrays.jl/dev/UserGuide/faq.html#Subsetting-a-Dataset","39":"/YAXArrays.jl/dev/UserGuide/faq.html#Subsetting-a-Dataset-whose-variables-share-all-their-dimensions","40":"/YAXArrays.jl/dev/UserGuide/faq.html#Subsetting-a-Dataset-whose-variables-share-some-but-not-all-of-their-dimensions","41":"/YAXArrays.jl/dev/UserGuide/faq.html#How-do-I-apply-map-algebra?","42":"/YAXArrays.jl/dev/UserGuide/faq.html#How-do-I-use-the-CubeTable-function?","43":"/YAXArrays.jl/dev/UserGuide/faq.html#How-do-I-assign-variable-names-to-YAXArrays-in-a-Dataset","44":"/YAXArrays.jl/dev/UserGuide/faq.html#One-variable-name","45":"/YAXArrays.jl/dev/UserGuide/faq.html#Multiple-variable-names","46":"/YAXArrays.jl/dev/UserGuide/faq.html#Ho-do-I-construct-a-Dataset-from-a-TimeArray","47":"/YAXArrays.jl/dev/UserGuide/faq.html#Create-a-YAXArray-with-unions-containing-Strings","48":"/YAXArrays.jl/dev/UserGuide/group.html#Group-YAXArrays-and-Datasets","49":"/YAXArrays.jl/dev/UserGuide/group.html#Seasonal-Averages-from-Time-Series-of-Monthly-Means","50":"/YAXArrays.jl/dev/UserGuide/group.html#Download-the-data","51":"/YAXArrays.jl/dev/UserGuide/group.html#GroupBy:-seasons","52":"/YAXArrays.jl/dev/UserGuide/group.html#dropdims","53":"/YAXArrays.jl/dev/UserGuide/group.html#seasons","54":"/YAXArrays.jl/dev/UserGuide/group.html#GroupBy:-weight","55":"/YAXArrays.jl/dev/UserGuide/group.html#weights","56":"/YAXArrays.jl/dev/UserGuide/group.html#weighted-seasons","57":"/YAXArrays.jl/dev/UserGuide/read.html#Read-YAXArrays-and-Datasets","58":"/YAXArrays.jl/dev/UserGuide/read.html#Read-Zarr","59":"/YAXArrays.jl/dev/UserGuide/read.html#Read-NetCDF","60":"/YAXArrays.jl/dev/UserGuide/read.html#Read-GDAL-(GeoTIFF,-GeoJSON)","61":"/YAXArrays.jl/dev/UserGuide/read.html#Load-data-into-memory","62":"/YAXArrays.jl/dev/UserGuide/read.html#readcubedata","63":"/YAXArrays.jl/dev/UserGuide/select.html#Select-YAXArrays-and-Datasets","64":"/YAXArrays.jl/dev/UserGuide/select.html#Select-a-YAXArray","65":"/YAXArrays.jl/dev/UserGuide/select.html#Select-elements","66":"/YAXArrays.jl/dev/UserGuide/select.html#Select-ranges","67":"/YAXArrays.jl/dev/UserGuide/select.html#Closed-and-open-intervals","68":"/YAXArrays.jl/dev/UserGuide/select.html#Get-a-dimension","69":"/YAXArrays.jl/dev/UserGuide/write.html#Write-YAXArrays-and-Datasets","70":"/YAXArrays.jl/dev/UserGuide/write.html#Write-Zarr","71":"/YAXArrays.jl/dev/UserGuide/write.html#zarr-compression","72":"/YAXArrays.jl/dev/UserGuide/write.html#Write-NetCDF","73":"/YAXArrays.jl/dev/UserGuide/write.html#netcdf-compression","74":"/YAXArrays.jl/dev/UserGuide/write.html#Overwrite-a-Dataset","75":"/YAXArrays.jl/dev/UserGuide/write.html#Append-to-a-Dataset","76":"/YAXArrays.jl/dev/UserGuide/write.html#Save-Skeleton","77":"/YAXArrays.jl/dev/UserGuide/write.html#Update-values-of-dataset","78":"/YAXArrays.jl/dev/api.html#API-Reference","79":"/YAXArrays.jl/dev/api.html#Public-API","80":"/YAXArrays.jl/dev/api.html#Internal-API","81":"/YAXArrays.jl/dev/UserGuide/types.html#types","82":"/YAXArrays.jl/dev/UserGuide/types.html#yaxarray","83":"/YAXArrays.jl/dev/UserGuide/types.html#dataset","84":"/YAXArrays.jl/dev/UserGuide/types.html#(Data)-Cube","85":"/YAXArrays.jl/dev/UserGuide/types.html#dimension","86":"/YAXArrays.jl/dev/development/contribute.html#Contribute-to-YAXArrays.jl","87":"/YAXArrays.jl/dev/development/contribute.html#Contribute-to-Documentation","88":"/YAXArrays.jl/dev/development/contribute.html#Build-docs-locally","89":"/YAXArrays.jl/dev/#How-to-Install-YAXArrays.jl?","90":"/YAXArrays.jl/dev/#Want-interoperability?","91":"/YAXArrays.jl/dev/get_started.html#Getting-Started","92":"/YAXArrays.jl/dev/get_started.html#installation","93":"/YAXArrays.jl/dev/get_started.html#quickstart","94":"/YAXArrays.jl/dev/get_started.html#updates","95":"/YAXArrays.jl/dev/tutorials/mean_seasonal_cycle.html#Mean-Seasonal-Cycle-for-a-single-pixel","96":"/YAXArrays.jl/dev/tutorials/mean_seasonal_cycle.html#Define-the-cube","97":"/YAXArrays.jl/dev/tutorials/mean_seasonal_cycle.html#Plot-results:-mean-seasonal-cycle","98":"/YAXArrays.jl/dev/tutorials/other_tutorials.html#Other-tutorials","99":"/YAXArrays.jl/dev/tutorials/other_tutorials.html#General-overview-of-the-functionality-of-YAXArrays","100":"/YAXArrays.jl/dev/tutorials/other_tutorials.html#Table-style-iteration-over-YAXArrays","101":"/YAXArrays.jl/dev/tutorials/other_tutorials.html#Combining-multiple-tiff-files-into-a-zarr-based-datacube","102":"/YAXArrays.jl/dev/tutorials/plottingmaps.html#Plotting-maps","103":"/YAXArrays.jl/dev/tutorials/plottingmaps.html#Heatmap-plot","104":"/YAXArrays.jl/dev/tutorials/plottingmaps.html#Wintri-Projection","105":"/YAXArrays.jl/dev/tutorials/plottingmaps.html#Moll-projection","106":"/YAXArrays.jl/dev/tutorials/plottingmaps.html#3D-sphere-plot"},"fieldIds":{"title":0,"titles":1,"text":2},"fieldLength":{"0":[2,1,86],"1":[2,1,58],"2":[2,2,57],"3":[2,2,9],"4":[4,4,76],"5":[4,4,76],"6":[5,4,81],"7":[2,1,31],"8":[5,2,82],"9":[5,2,91],"10":[2,1,119],"11":[5,2,30],"12":[1,2,73],"13":[1,2,121],"14":[1,2,90],"15":[1,2,22],"16":[4,3,213],"17":[4,3,100],"18":[5,7,129],"19":[5,7,99],"20":[4,7,91],"21":[3,3,151],"22":[4,3,248],"23":[2,2,138],"24":[2,1,52],"25":[3,2,86],"26":[2,2,117],"27":[2,2,123],"28":[4,1,14],"29":[3,4,108],"30":[3,4,45],"31":[5,1,19],"32":[7,5,78],"33":[1,11,92],"34":[8,5,77],"35":[5,5,89],"36":[10,5,33],"37":[3,14,146],"38":[3,14,18],"39":[9,14,69],"40":[13,14,156],"41":[7,5,115],"42":[8,5,171],"43":[11,5,1],"44":[3,15,24],"45":[3,15,59],"46":[8,5,140],"47":[7,5,81],"48":[4,1,30],"49":[8,4,35],"50":[3,4,67],"51":[2,4,137],"52":[1,6,102],"53":[1,6,49],"54":[2,4,111],"55":[1,6,85],"56":[2,6,348],"57":[4,1,14],"58":[2,4,189],"59":[2,4,253],"60":[5,4,90],"61":[4,4,42],"62":[1,8,144],"63":[4,1,165],"64":[3,4,107],"65":[2,4,118],"66":[2,4,132],"67":[4,4,145],"68":[3,4,73],"69":[4,1,146],"70":[2,4,19],"71":[2,5,52],"72":[2,4,20],"73":[2,5,44],"74":[3,4,77],"75":[4,4,157],"76":[2,4,155],"77":[4,4,93],"78":[2,1,10],"79":[2,2,589],"80":[2,2,462],"81":[1,1,16],"82":[1,1,113],"83":[1,1,78],"84":[3,1,70],"85":[1,1,32],"86":[4,1,15],"87":[3,4,40],"88":[3,5,75],"89":[6,1,37],"90":[3,1,21],"91":[2,1,1],"92":[1,2,34],"93":[1,2,197],"94":[1,2,49],"95":[7,1,73],"96":[3,7,133],"97":[5,7,48],"98":[2,1,49],"99":[6,2,12],"100":[5,2,38],"101":[9,2,1],"102":[2,1,136],"103":[2,2,21],"104":[2,1,46],"105":[2,2,33],"106":[3,2,57]},"averageFieldLength":[3.504672897196263,3.822429906542055,92.23364485981307],"storedFields":{"0":{"title":"Caching YAXArrays","titles":[]},"1":{"title":"Chunk YAXArrays","titles":[]},"2":{"title":"Chunking YAXArrays","titles":["Chunk YAXArrays"]},"3":{"title":"Chunking Datasets","titles":["Chunk YAXArrays"]},"4":{"title":"Set Chunks by Axis","titles":["Chunk YAXArrays","Chunking Datasets"]},"5":{"title":"Set chunking by Variable","titles":["Chunk YAXArrays","Chunking Datasets"]},"6":{"title":"Set chunking for all variables","titles":["Chunk YAXArrays","Chunking Datasets"]},"7":{"title":"Combine YAXArrays","titles":[]},"8":{"title":"cat along an existing dimension","titles":["Combine YAXArrays"]},"9":{"title":"concatenatecubes to a new dimension","titles":["Combine YAXArrays"]},"10":{"title":"Compute YAXArrays","titles":[]},"11":{"title":"Modify elements of a YAXArray","titles":["Compute YAXArrays"]},"12":{"title":"Arithmetics","titles":["Compute YAXArrays"]},"13":{"title":"map","titles":["Compute YAXArrays"]},"14":{"title":"mapslices","titles":["Compute YAXArrays"]},"15":{"title":"mapCube","titles":["Compute YAXArrays"]},"16":{"title":"Operations over several YAXArrays","titles":["Compute YAXArrays","mapCube"]},"17":{"title":"OutDims and YAXArray Properties","titles":["Compute YAXArrays","mapCube"]},"18":{"title":"One InDims to many OutDims","titles":["Compute YAXArrays","mapCube","OutDims and YAXArray Properties"]},"19":{"title":"Many InDims to many OutDims","titles":["Compute YAXArrays","mapCube","OutDims and YAXArray Properties"]},"20":{"title":"Specify path in OutDims","titles":["Compute YAXArrays","mapCube","OutDims and YAXArray Properties"]},"21":{"title":"Different InDims names","titles":["Compute YAXArrays","mapCube"]},"22":{"title":"Creating a vector array","titles":["Compute YAXArrays","mapCube"]},"23":{"title":"Distributed Computation","titles":["Compute YAXArrays"]},"24":{"title":"Convert YAXArrays","titles":[]},"25":{"title":"Convert Base.Array","titles":["Convert YAXArrays"]},"26":{"title":"Convert Raster","titles":["Convert YAXArrays"]},"27":{"title":"Convert DimArray","titles":["Convert YAXArrays"]},"28":{"title":"Create YAXArrays and Datasets","titles":[]},"29":{"title":"Create a YAXArray","titles":["Create YAXArrays and Datasets"]},"30":{"title":"Create a Dataset","titles":["Create YAXArrays and Datasets"]},"31":{"title":"Frequently Asked Questions (FAQ)","titles":[]},"32":{"title":"Extract the axes names from a Cube","titles":["Frequently Asked Questions (FAQ)"]},"33":{"title":"rebuild","titles":["Frequently Asked Questions (FAQ)","Extract the axes names from a Cube"]},"34":{"title":"Obtain values from axes and data from the cube","titles":["Frequently Asked Questions (FAQ)"]},"35":{"title":"How do I concatenate cubes","titles":["Frequently Asked Questions (FAQ)"]},"36":{"title":"How do I subset a YAXArray ( Cube ) or Dataset?","titles":["Frequently Asked Questions (FAQ)"]},"37":{"title":"Subsetting a YAXArray","titles":["Frequently Asked Questions (FAQ)","How do I subset a YAXArray ( Cube ) or Dataset?"]},"38":{"title":"Subsetting a Dataset","titles":["Frequently Asked Questions (FAQ)","How do I subset a YAXArray ( Cube ) or Dataset?"]},"39":{"title":"Subsetting a Dataset whose variables share all their dimensions","titles":["Frequently Asked Questions (FAQ)","How do I subset a YAXArray ( Cube ) or Dataset?","Subsetting a Dataset"]},"40":{"title":"Subsetting a Dataset whose variables share some but not all of their dimensions","titles":["Frequently Asked Questions (FAQ)","How do I subset a YAXArray ( Cube ) or Dataset?","Subsetting a Dataset"]},"41":{"title":"How do I apply map algebra?","titles":["Frequently Asked Questions (FAQ)"]},"42":{"title":"How do I use the CubeTable function?","titles":["Frequently Asked Questions (FAQ)"]},"43":{"title":"How do I assign variable names to YAXArrays in a Dataset","titles":["Frequently Asked Questions (FAQ)"]},"44":{"title":"One variable name","titles":["Frequently Asked Questions (FAQ)","How do I assign variable names to YAXArrays in a Dataset"]},"45":{"title":"Multiple variable names","titles":["Frequently Asked Questions (FAQ)","How do I assign variable names to YAXArrays in a Dataset"]},"46":{"title":"Ho do I construct a Dataset from a TimeArray","titles":["Frequently Asked Questions (FAQ)"]},"47":{"title":"Create a YAXArray with unions containing Strings","titles":["Frequently Asked Questions (FAQ)"]},"48":{"title":"Group YAXArrays and Datasets","titles":[]},"49":{"title":"Seasonal Averages from Time Series of Monthly Means","titles":["Group YAXArrays and Datasets"]},"50":{"title":"Download the data","titles":["Group YAXArrays and Datasets"]},"51":{"title":"GroupBy: seasons","titles":["Group YAXArrays and Datasets"]},"52":{"title":"dropdims","titles":["Group YAXArrays and Datasets","GroupBy: seasons"]},"53":{"title":"seasons","titles":["Group YAXArrays and Datasets","GroupBy: seasons"]},"54":{"title":"GroupBy: weight","titles":["Group YAXArrays and Datasets"]},"55":{"title":"weights","titles":["Group YAXArrays and Datasets","GroupBy: weight"]},"56":{"title":"weighted seasons","titles":["Group YAXArrays and Datasets","GroupBy: weight"]},"57":{"title":"Read YAXArrays and Datasets","titles":[]},"58":{"title":"Read Zarr","titles":["Read YAXArrays and Datasets"]},"59":{"title":"Read NetCDF","titles":["Read YAXArrays and Datasets"]},"60":{"title":"Read GDAL (GeoTIFF, GeoJSON)","titles":["Read YAXArrays and Datasets"]},"61":{"title":"Load data into memory","titles":["Read YAXArrays and Datasets"]},"62":{"title":"readcubedata","titles":["Read YAXArrays and Datasets","Load data into memory"]},"63":{"title":"Select YAXArrays and Datasets","titles":[]},"64":{"title":"Select a YAXArray","titles":["Select YAXArrays and Datasets"]},"65":{"title":"Select elements","titles":["Select YAXArrays and Datasets"]},"66":{"title":"Select ranges","titles":["Select YAXArrays and Datasets"]},"67":{"title":"Closed and open intervals","titles":["Select YAXArrays and Datasets"]},"68":{"title":"Get a dimension","titles":["Select YAXArrays and Datasets"]},"69":{"title":"Write YAXArrays and Datasets","titles":[]},"70":{"title":"Write Zarr","titles":["Write YAXArrays and Datasets"]},"71":{"title":"zarr compression","titles":["Write YAXArrays and Datasets","Write Zarr"]},"72":{"title":"Write NetCDF","titles":["Write YAXArrays and Datasets"]},"73":{"title":"netcdf compression","titles":["Write YAXArrays and Datasets","Write NetCDF"]},"74":{"title":"Overwrite a Dataset","titles":["Write YAXArrays and Datasets"]},"75":{"title":"Append to a Dataset","titles":["Write YAXArrays and Datasets"]},"76":{"title":"Save Skeleton","titles":["Write YAXArrays and Datasets"]},"77":{"title":"Update values of dataset","titles":["Write YAXArrays and Datasets"]},"78":{"title":"API Reference","titles":[]},"79":{"title":"Public API","titles":["API Reference"]},"80":{"title":"Internal API","titles":["API Reference"]},"81":{"title":"Types","titles":[]},"82":{"title":"YAXArray","titles":["Types"]},"83":{"title":"Dataset","titles":["Types"]},"84":{"title":"(Data) Cube","titles":["Types"]},"85":{"title":"Dimension","titles":["Types"]},"86":{"title":"Contribute to YAXArrays.jl","titles":[]},"87":{"title":"Contribute to Documentation","titles":["Contribute to YAXArrays.jl"]},"88":{"title":"Build docs locally","titles":["Contribute to YAXArrays.jl","Contribute to Documentation"]},"89":{"title":"How to Install YAXArrays.jl?","titles":[]},"90":{"title":"Want interoperability?","titles":[]},"91":{"title":"Getting Started","titles":[]},"92":{"title":"Installation","titles":["Getting Started"]},"93":{"title":"Quickstart","titles":["Getting Started"]},"94":{"title":"Updates","titles":["Getting Started"]},"95":{"title":"Mean Seasonal Cycle for a single pixel","titles":[]},"96":{"title":"Define the cube","titles":["Mean Seasonal Cycle for a single pixel"]},"97":{"title":"Plot results: mean seasonal cycle","titles":["Mean Seasonal Cycle for a single pixel"]},"98":{"title":"Other tutorials","titles":[]},"99":{"title":"General overview of the functionality of YAXArrays","titles":["Other tutorials"]},"100":{"title":"Table-style iteration over YAXArrays","titles":["Other tutorials"]},"101":{"title":"Combining multiple tiff files into a zarr based datacube","titles":["Other tutorials"]},"102":{"title":"Plotting maps","titles":[]},"103":{"title":"Heatmap plot","titles":["Plotting maps"]},"104":{"title":"Wintri Projection","titles":[]},"105":{"title":"Moll projection","titles":["Wintri Projection"]},"106":{"title":"3D sphere plot","titles":["Wintri Projection"]}},"dirtCount":0,"index":[["δlon",{"2":{"104":1}}],["├─────────────────────┴─────────────────────────────────────────",{"2":{"47":1}}],["├─────────────────────────┴──────────────────────────",{"2":{"37":1}}],["├─────────────────────────┴─────────────────────────────────────",{"2":{"93":1}}],["├─────────────────────────┴──────────────────────────────────────",{"2":{"33":1}}],["├─────────────────────────┴──────────────────────────────────────────────",{"2":{"34":1,"42":1}}],["├─────────────────────────┴─────────────────────────────────────────",{"2":{"19":1}}],["├─────────────────────────┴──────────────────────────────────",{"2":{"27":2}}],["├─────────────────────────┴────────────────────────────────",{"2":{"9":1}}],["├──────────────────────────┴────────────────────────────",{"2":{"26":1}}],["├──────────────────────────┴────────────────────────────────────",{"2":{"25":1}}],["├──────────────────────────┴─────────────────────────────────────────────",{"2":{"22":1,"37":1}}],["├────────────────────────────┴───────────────────────────────────────────",{"2":{"37":2}}],["├────────────────────────────┴──────────────────────────",{"2":{"26":1}}],["├─────────────────────────────┴──────────────────────────────────",{"2":{"29":1}}],["├─────────────────────────────┴──────────────────────────────────────────",{"2":{"16":1,"32":1}}],["├───────────────────────────────┴────────────────────────────────────────",{"2":{"55":1}}],["├──────────────────────────────────┴─────────────────────────────────────",{"2":{"96":1}}],["├────────────────────────────────────┴───────────────────────────────────",{"2":{"58":1}}],["├──────────────────────────────────────┴────────────────────────",{"2":{"47":1}}],["├────────────────────────────────────────",{"2":{"37":1}}],["├──────────────────────────────────────────┴─────────────────────────────",{"2":{"22":1,"42":1}}],["├─────────────────────────────────────────────┴─────────────────",{"2":{"65":1}}],["├───────────────────────────────────────────────┴────────────────────────",{"2":{"42":1,"66":1,"67":5}}],["├────────────────────────────────────────────────",{"2":{"27":1,"37":1}}],["├────────────────────────────────────────────────┴───────────────────────",{"2":{"14":1,"54":1,"59":1,"62":3,"64":2,"65":2}}],["├──────────────────────────────────────────────────┴─────────────────────",{"2":{"51":1}}],["├────────────────────────────────────────────────────",{"2":{"29":1,"33":1}}],["├────────────────────────────────────────────────────────",{"2":{"27":2}}],["├───────────────────────────────────────────────────────────",{"2":{"25":1,"47":2,"93":1}}],["├────────────────────────────────────────────────────────────",{"2":{"10":1,"12":1,"13":1,"14":2,"16":3,"17":1,"18":1,"21":2,"22":2,"29":2,"32":1,"33":3,"34":1,"37":4,"41":3,"42":3,"54":1,"62":3,"76":1,"93":1,"96":1}}],["├─────────────────────────────────────────────────────────────────",{"2":{"65":1}}],["├──────────────────────────────────────────────────────────────────",{"2":{"51":1,"54":1}}],["├─────────────────────────────────────────────────────────────────────┴",{"2":{"65":1}}],["├────────────────────────────────────────────────────────────────────────",{"2":{"51":1,"52":1,"54":1,"55":1,"56":3}}],["├────────────────────────────────────────────────────────────────────",{"2":{"10":1,"12":1,"13":1,"14":2,"16":5,"17":1,"18":1,"21":2,"22":3,"29":1,"32":1,"33":2,"34":1,"35":1,"37":4,"41":3,"42":3,"51":2,"52":1,"54":3,"55":2,"56":3,"58":1,"59":1,"62":3,"64":2,"65":2,"66":3,"67":5,"76":1,"93":1,"96":1}}],["├───────────────────────────────────────────────────────────────",{"2":{"16":2,"19":1,"35":1,"58":1,"59":1,"64":2,"65":2,"66":3,"67":5}}],["├─────────────────────────────────────────────────────────────",{"2":{"8":1}}],["├───────────────────────────────────────────────────────",{"2":{"19":1}}],["├──────────────────────────────────────────────────────",{"2":{"9":1}}],["├─────────────────────────────────────────────────────",{"2":{"8":1,"26":1}}],["├───────────────────────────────────────────────────",{"2":{"25":1,"26":2,"47":2,"93":1}}],["├─────────────────────────────────────────────────",{"2":{"9":1,"21":1}}],["├──────────────────────────────────────────────┴─────────────────────────",{"2":{"16":2,"41":1,"66":2}}],["├───────────────────────────────────────────",{"2":{"26":1}}],["├───────────────────────────────────────────┴────────────────────────────",{"2":{"14":1,"18":1,"21":1,"76":1}}],["├─────────────────────────────────────────",{"2":{"21":1}}],["├────────────────────────────────┴───────────────────────────────────────",{"2":{"35":1,"93":1}}],["├────────────────────────────────┴────────────────────────────────",{"2":{"8":1}}],["├──────────────────────────────┴─────────────────────────────────────────",{"2":{"10":1,"12":1,"13":1,"16":2,"22":1,"29":1,"41":2,"54":1}}],["├───────────────────────────┴─────────────────────────",{"2":{"21":1}}],["├───────────────────────────┴────────────────────────────────────────────",{"2":{"17":1,"21":1,"22":1,"33":2,"37":1}}],["╭─────────────────────╮",{"2":{"47":1}}],["╭──────────────────────────╮",{"2":{"22":1,"25":1,"26":1,"37":1}}],["╭────────────────────────────╮",{"2":{"26":1,"37":2}}],["╭─────────────────────────────╮",{"2":{"16":1,"29":1,"32":1}}],["╭───────────────────────────────╮",{"2":{"55":1}}],["╭──────────────────────────────────╮",{"2":{"96":1}}],["╭────────────────────────────────────╮",{"2":{"58":1}}],["╭──────────────────────────────────────╮",{"2":{"47":1}}],["╭──────────────────────────────────────────╮",{"2":{"22":1,"42":1}}],["╭─────────────────────────────────────────────╮",{"2":{"65":1}}],["╭──────────────────────────────────────────────────────────────────────────────╮",{"2":{"51":1,"52":1,"54":1,"55":1,"56":3}}],["╭──────────────────────────────────────────────────╮",{"2":{"51":1}}],["╭────────────────────────────────────────────────╮",{"2":{"14":1,"54":1,"59":1,"62":3,"64":2,"65":2}}],["╭───────────────────────────────────────────────╮",{"2":{"42":1,"66":1,"67":5}}],["╭──────────────────────────────────────────────╮",{"2":{"16":2,"41":1,"66":2}}],["╭───────────────────────────────────────────╮",{"2":{"14":1,"18":1,"21":1,"76":1}}],["╭────────────────────────────────╮",{"2":{"8":1,"35":1,"93":1}}],["╭──────────────────────────────╮",{"2":{"10":1,"12":1,"13":1,"16":2,"22":1,"29":1,"41":2,"54":1}}],["╭───────────────────────────╮",{"2":{"17":1,"21":2,"22":1,"33":2,"37":1}}],["╭─────────────────────────╮",{"2":{"9":1,"19":1,"27":2,"33":1,"34":1,"37":1,"42":1,"93":1}}],["π",{"2":{"41":2,"95":1,"97":1}}],[">var",{"2":{"96":1}}],[">dates",{"2":{"96":1}}],[">month",{"2":{"79":1}}],[">abs",{"2":{"79":1}}],[">=",{"2":{"40":4}}],[">",{"2":{"40":2,"41":2,"96":1}}],["└──────────────────────────────────────────────────────────┘",{"2":{"37":1}}],["└─────────────────────────────────────────────────────────────┘",{"2":{"26":2}}],["└──────────────────────────────────────────────────────────────────┘",{"2":{"27":2}}],["└──────────────────────────────────────────────────────────────────────┘",{"2":{"29":1,"33":1}}],["└────────────────────────────────────────────────────────────────────────────────┘",{"2":{"65":1}}],["└──────────────────────────────────────────────────────────────────────────────┘",{"2":{"10":1,"12":1,"13":1,"14":2,"16":5,"17":1,"18":1,"21":2,"22":4,"29":1,"32":1,"33":2,"34":1,"35":1,"37":4,"41":3,"42":3,"51":2,"52":1,"54":3,"55":2,"56":3,"58":1,"59":1,"62":3,"64":2,"65":2,"66":3,"67":5,"76":1,"93":1,"96":1}}],["└─────────────────────────────────────────────────────────────────────────┘",{"2":{"19":1}}],["└───────────────────────────────────────────────────────────────────────┘",{"2":{"8":1}}],["└─────────────────────────────────────────────────────────────────────┘",{"2":{"25":1,"47":2,"93":1}}],["└────────────────────────────────────────────────────────────────┘",{"2":{"9":1}}],["└───────────────────────────────────────────────────────────┘",{"2":{"21":1}}],["`diskarrays",{"2":{"80":1}}],["`ds`",{"2":{"79":1}}],["`ordereddict`",{"2":{"79":1}}],["`fun`",{"2":{"79":1}}],["`a",{"2":{"37":1}}],["`layer`",{"2":{"18":1}}],["quickstart",{"0":{"93":1}}],["query",{"2":{"63":1}}],["querying",{"2":{"62":1}}],["questions",{"0":{"31":1},"1":{"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1}}],["quot",{"2":{"16":2,"42":2,"74":2,"76":4,"79":16,"80":12}}],["jj+1",{"2":{"59":1,"63":1,"69":1,"75":1}}],["jj",{"2":{"59":1,"63":1,"69":1,"75":1}}],["joinname",{"2":{"79":1}}],["joinname=",{"2":{"79":1}}],["journal",{"2":{"59":1,"63":1,"69":1,"75":1}}],["joe",{"2":{"49":1,"56":1}}],["j",{"2":{"56":8}}],["jan",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["jl",{"0":{"86":1,"89":1},"1":{"87":1,"88":1},"2":{"26":1,"27":1,"42":1,"46":2,"50":1,"56":1,"82":1,"85":1,"86":1,"88":2,"89":2,"92":1,"93":2,"94":3,"100":1}}],["jussieu",{"2":{"59":1,"63":1,"69":1,"75":1}}],["just",{"2":{"22":1,"79":1,"80":2,"82":1,"84":1}}],["jul",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["juliaδlon",{"2":{"104":1}}],["juliaglmakie",{"2":{"103":1}}],["juliagetloopchunks",{"2":{"80":1}}],["juliagetouttype",{"2":{"80":1}}],["juliagetoutaxis",{"2":{"80":1}}],["juliaget",{"2":{"80":1}}],["juliagetaxis",{"2":{"79":1}}],["juliagettarrayaxes",{"2":{"46":1}}],["juliagen",{"2":{"16":1}}],["juliax",{"2":{"95":1}}],["juliapkg>",{"2":{"89":1,"92":1,"94":1}}],["juliapermuteloopaxes",{"2":{"80":1}}],["juliaproperties",{"2":{"19":1}}],["juliaoptifunc",{"2":{"80":1}}],["juliaopen",{"2":{"79":1}}],["juliaoutdims",{"2":{"79":1}}],["juliaoffset",{"2":{"13":1}}],["juliacopydata",{"2":{"80":1}}],["juliacollect",{"2":{"34":1,"68":1}}],["juliaclean",{"2":{"80":1}}],["juliacube",{"2":{"79":1}}],["juliacubefittable",{"2":{"79":1}}],["juliacubetable",{"2":{"79":1}}],["juliacaxes",{"2":{"79":1}}],["julian",{"2":{"71":1,"73":1}}],["juliasavecube",{"2":{"79":1}}],["juliasavedataset",{"2":{"70":1,"72":1,"74":1}}],["juliasetchunks",{"2":{"79":1,"80":1}}],["juliaseasons",{"2":{"53":1}}],["julialon",{"2":{"102":1}}],["julialookup",{"2":{"68":1}}],["julialatitudes",{"2":{"40":1}}],["juliawith",{"2":{"56":1}}],["julia>",{"2":{"56":1,"88":1,"89":2,"96":1}}],["juliaurl",{"2":{"50":1}}],["juliausing",{"2":{"0":1,"2":1,"4":1,"5":1,"6":1,"8":1,"9":1,"10":1,"16":1,"17":1,"22":1,"23":2,"25":1,"26":1,"27":1,"29":2,"32":1,"33":1,"35":1,"37":1,"39":1,"40":1,"42":2,"46":1,"48":1,"56":1,"58":1,"59":1,"60":1,"63":1,"65":1,"67":1,"69":1,"70":1,"72":1,"76":1,"90":4,"93":2,"95":1,"102":1,"106":1}}],["juliakeylist",{"2":{"45":1}}],["juliaylonlat",{"2":{"37":1}}],["juliaytime3",{"2":{"37":1}}],["juliaytime2",{"2":{"37":1}}],["juliaytime",{"2":{"37":1}}],["juliay",{"2":{"37":1}}],["juliayaxcolumn",{"2":{"80":1}}],["juliayaxarray",{"2":{"79":1}}],["juliayax",{"2":{"0":1,"46":2}}],["juliatos",{"2":{"64":2,"65":2,"66":3,"67":1,"68":1}}],["juliatempo",{"2":{"54":1}}],["juliatest",{"2":{"47":2}}],["juliat",{"2":{"37":1,"42":1,"95":1}}],["juliatspan",{"2":{"16":1}}],["juliamutable",{"2":{"80":1}}],["juliamatch",{"2":{"80":1}}],["juliamapcube",{"2":{"79":2}}],["juliamapslices",{"2":{"14":1,"23":1}}],["juliamovingwindow",{"2":{"79":1}}],["juliamy",{"2":{"59":1}}],["juliamean",{"2":{"56":1}}],["juliam2",{"2":{"25":1}}],["julia",{"2":{"24":1,"59":1,"80":1,"88":1,"89":2,"92":2,"94":2}}],["juliavector",{"2":{"22":1}}],["juliadataset",{"2":{"79":1}}],["juliadata3",{"2":{"30":1}}],["juliadim",{"2":{"27":1}}],["juliadimarray",{"2":{"22":1}}],["juliads2",{"2":{"75":1}}],["juliads",{"2":{"18":2,"20":2,"21":1,"39":1,"40":1,"58":1,"59":1,"62":2,"73":1,"76":2,"77":3}}],["juliar",{"2":{"76":1}}],["juliareadcubedata",{"2":{"62":1,"79":1}}],["juliaregions",{"2":{"22":2}}],["juliaras2",{"2":{"26":1}}],["juliarandom",{"2":{"21":2}}],["juliaindims",{"2":{"18":1,"20":1,"79":1}}],["juliaimport",{"2":{"14":1,"92":1}}],["juliajulia>",{"2":{"16":5,"32":3,"33":2,"34":1,"35":1,"41":3,"42":3,"44":1,"45":1,"46":2,"51":2,"52":1,"54":2,"55":2,"56":3,"67":4,"75":1,"76":1,"89":1,"96":2,"102":3}}],["juliaall",{"2":{"76":1}}],["juliaaxs",{"2":{"50":1}}],["juliaaxes",{"2":{"37":1}}],["juliaa2",{"2":{"12":2,"29":2,"93":1}}],["juliaa",{"2":{"2":1,"11":3}}],["juliafig",{"2":{"95":1,"97":1,"104":1,"105":1}}],["juliafindaxis",{"2":{"80":1}}],["juliafiles",{"2":{"79":2}}],["juliafittable",{"2":{"79":2}}],["juliafunction",{"2":{"16":1,"18":1,"19":1,"21":1,"51":1,"79":1,"96":1}}],["juliaf",{"2":{"2":1,"4":1,"5":1,"6":1,"16":1}}],["jun",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["∘",{"2":{"23":1}}],["|>",{"2":{"22":2}}],["⋱",{"2":{"22":1}}],["⋮",{"2":{"22":2,"68":1,"96":1}}],["^2",{"2":{"21":1}}],["⬔",{"2":{"17":1,"18":1,"35":1,"93":1}}],["92491",{"2":{"93":1}}],["928614",{"2":{"93":1}}],["926096",{"2":{"26":1}}],["986",{"2":{"56":1}}],["984803",{"2":{"22":1}}],["976187",{"2":{"93":1}}],["97649",{"2":{"56":1}}],["97047",{"2":{"56":1}}],["973332",{"2":{"26":1}}],["94534",{"2":{"56":1}}],["9404",{"2":{"51":1,"52":1}}],["9432",{"2":{"51":1,"52":1}}],["949935",{"2":{"25":1}}],["959899",{"2":{"77":2}}],["959",{"2":{"56":1}}],["95",{"2":{"40":6,"56":1}}],["902991",{"2":{"93":1}}],["902979",{"2":{"93":1}}],["90712",{"2":{"56":1}}],["90365",{"2":{"56":1}}],["90",{"2":{"40":2,"60":1,"67":5}}],["9122",{"2":{"60":1}}],["9192",{"2":{"56":1}}],["91",{"2":{"32":1,"67":5}}],["917969",{"2":{"27":1}}],["916686",{"2":{"26":1}}],["918555",{"2":{"25":1}}],["935959",{"2":{"93":1}}],["935631",{"2":{"25":1}}],["937012",{"2":{"93":1}}],["9375",{"2":{"58":2,"102":1}}],["93743",{"2":{"56":1}}],["9362",{"2":{"56":1}}],["938094",{"2":{"26":1}}],["93986",{"2":{"22":1}}],["9",{"2":{"16":14,"22":2,"34":1,"37":1,"40":6,"54":4,"66":4,"71":2,"73":1,"80":1}}],["96x71x19",{"2":{"59":1,"63":1,"69":1,"75":1}}],["96f0",{"2":{"59":1,"63":1,"69":1}}],["9682",{"2":{"51":1,"52":1}}],["960",{"2":{"17":1,"18":1,"22":1}}],["96",{"2":{"8":1,"9":1,"65":2,"75":1}}],["898926",{"2":{"77":2}}],["8984",{"2":{"56":1}}],["8901",{"2":{"60":1}}],["89",{"2":{"58":4,"59":2,"60":1,"62":3,"63":1,"64":2,"65":1,"66":1,"67":5,"68":1,"69":1,"75":1,"102":2}}],["89237",{"2":{"56":1}}],["864937",{"2":{"93":1}}],["86457",{"2":{"56":1}}],["86",{"2":{"68":1}}],["862644",{"2":{"26":1}}],["884949",{"2":{"93":1}}],["882929",{"2":{"77":2}}],["88",{"2":{"35":1,"58":4,"68":1,"93":1,"102":2}}],["889583",{"2":{"22":1}}],["81705",{"2":{"93":1}}],["812577",{"2":{"93":1}}],["811959",{"2":{"93":1}}],["81",{"2":{"29":1,"68":1}}],["81362",{"2":{"26":1}}],["853962",{"2":{"93":1}}],["858795",{"2":{"77":2}}],["858065",{"2":{"27":1}}],["85",{"2":{"68":1,"104":1,"105":1}}],["850",{"2":{"56":1}}],["85ºn",{"2":{"40":1}}],["85714",{"2":{"22":1}}],["839919",{"2":{"77":2}}],["83",{"2":{"68":1}}],["830391",{"2":{"25":1}}],["83556",{"2":{"25":1}}],["874428",{"2":{"93":1}}],["875981",{"2":{"93":1}}],["875658",{"2":{"22":1}}],["87",{"2":{"68":1}}],["87705",{"2":{"56":1}}],["872575",{"2":{"26":1}}],["870888",{"2":{"26":1}}],["870826",{"2":{"25":1}}],["841123",{"2":{"77":2}}],["84",{"2":{"60":2,"68":1}}],["845983",{"2":{"25":1}}],["840389",{"2":{"22":1}}],["825766",{"2":{"93":1}}],["828299",{"2":{"93":1}}],["820737",{"2":{"77":2}}],["82",{"2":{"68":1}}],["82421875",{"2":{"60":2}}],["824354",{"2":{"22":1}}],["829062",{"2":{"22":1}}],["8",{"2":{"16":12,"22":2,"34":1,"37":1,"59":2,"62":3,"63":1,"64":2,"69":1,"75":1,"96":1}}],["807171",{"2":{"93":1}}],["80759",{"2":{"56":1}}],["800",{"2":{"33":3,"34":1,"37":1}}],["80",{"2":{"16":1,"40":2}}],["v",{"2":{"59":1,"63":1,"69":1,"75":1}}],["v1",{"2":{"59":2,"63":2,"69":2,"75":2,"92":1}}],["v20190710",{"2":{"58":1,"102":2}}],["vol",{"2":{"59":1,"63":1,"69":1,"75":1}}],["volume",{"2":{"46":4}}],["voilà",{"2":{"46":1}}],["video",{"2":{"98":1}}],["videos",{"2":{"98":1}}],["visualization",{"2":{"42":1}}],["vice",{"2":{"24":1}}],["view",{"2":{"22":1,"93":1}}],["version",{"2":{"58":1,"59":1,"63":1,"69":1,"75":1,"79":1,"89":1,"94":2,"102":1}}],["versa",{"2":{"24":1}}],["verify",{"2":{"55":1,"77":1}}],["very",{"2":{"13":1,"42":1,"82":1}}],["vector",{"0":{"22":1},"2":{"22":4,"34":1,"47":1,"51":1,"53":1,"54":2,"55":2,"56":1,"68":1,"79":2,"80":3,"82":1}}],["val",{"2":{"34":2,"68":1}}],["vals",{"2":{"22":1}}],["value",{"2":{"12":1,"14":3,"16":2,"41":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5,"79":4,"80":1}}],["values=ds1",{"2":{"42":1}}],["values",{"0":{"34":1,"77":1},"2":{"9":1,"20":1,"21":1,"22":2,"28":1,"29":2,"32":2,"33":1,"34":1,"40":3,"42":4,"45":1,"46":2,"66":1,"68":2,"76":1,"77":3,"79":9,"82":1,"83":1,"93":1,"102":1}}],["varoables",{"2":{"79":1}}],["variant",{"2":{"58":1,"102":1}}],["variable=at",{"2":{"93":1}}],["variable",{"0":{"5":1,"43":1,"44":1,"45":1},"1":{"44":1,"45":1},"2":{"5":1,"9":3,"40":3,"46":5,"58":1,"62":2,"76":2,"79":4,"80":7,"93":3,"95":1,"96":1,"97":1,"102":1}}],["variables=at",{"2":{"41":2}}],["variables",{"0":{"6":1,"39":1,"40":1},"2":{"4":5,"5":4,"6":2,"9":2,"17":2,"18":1,"19":1,"20":1,"21":1,"24":1,"30":1,"35":2,"38":1,"39":2,"40":11,"44":1,"45":4,"46":6,"58":4,"59":1,"60":1,"61":1,"62":1,"63":1,"69":1,"75":4,"76":1,"79":2,"83":1,"84":1,"102":4}}],["varlist",{"2":{"45":2}}],["var2=var2",{"2":{"39":1}}],["var2",{"2":{"35":2,"39":3,"41":1}}],["var1=var1",{"2":{"39":1}}],["var1",{"2":{"35":2,"39":3,"41":1}}],["var",{"2":{"9":2,"95":2,"96":2,"97":2}}],["uv",{"2":{"106":1}}],["u",{"2":{"96":1}}],["up",{"2":{"79":1}}],["updates",{"0":{"94":1}}],["updated",{"2":{"77":1}}],["update",{"0":{"77":1},"2":{"77":2,"79":1}}],["updating",{"2":{"48":1,"77":1}}],["ucar",{"2":{"59":1,"63":1,"69":1,"83":1}}],["urls",{"2":{"57":1}}],["url",{"2":{"50":1,"58":1}}],["unreleased",{"2":{"89":1}}],["unlike",{"2":{"84":1}}],["unpermuted",{"2":{"80":2}}],["unpractical",{"2":{"50":1}}],["underlying",{"2":{"79":1,"80":1,"94":1}}],["unique",{"2":{"96":1}}],["unidata",{"2":{"59":1,"63":1,"69":1,"83":1}}],["unit",{"2":{"60":1}}],["units",{"2":{"58":1,"59":2,"62":6,"64":4,"65":6,"66":6,"67":10}}],["unitrange",{"2":{"51":2,"52":2,"56":6}}],["unions",{"0":{"47":1}}],["union",{"2":{"14":2,"16":4,"18":2,"20":1,"21":1,"22":1,"41":1,"42":2,"47":2,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5,"76":2,"77":1}}],["unweighted",{"2":{"51":1,"56":1}}],["unordered",{"2":{"46":4,"51":2,"52":1,"53":1,"54":2,"55":2,"56":3}}],["unnecessary",{"2":{"22":1}}],["unchanged",{"2":{"13":1}}],["usually",{"2":{"58":1,"82":2,"83":2}}],["usual",{"2":{"51":1}}],["us",{"2":{"22":1}}],["useable",{"2":{"79":1}}],["used",{"2":{"22":1,"23":1,"37":1,"63":1,"68":1,"79":6,"80":3,"81":1,"82":1,"85":1}}],["uses",{"2":{"20":1,"42":1,"59":1}}],["userguide",{"2":{"87":2}}],["users",{"2":{"80":1}}],["user",{"2":{"10":2,"12":1,"13":1,"23":1,"29":3,"30":1,"80":1}}],["use",{"0":{"42":1},"2":{"0":1,"8":1,"9":1,"10":4,"13":1,"23":2,"32":2,"37":1,"39":1,"40":1,"41":1,"42":2,"46":2,"48":1,"50":1,"52":1,"61":1,"67":2,"71":1,"76":1,"79":4,"80":1,"84":1,"89":1,"98":1,"100":1,"102":2}}],["useful",{"2":{"0":1,"84":1}}],["using",{"2":{"0":1,"8":1,"9":1,"10":1,"16":2,"17":2,"22":2,"23":7,"27":1,"32":1,"33":2,"35":1,"37":2,"39":2,"40":2,"41":1,"42":1,"46":1,"48":4,"58":2,"59":3,"60":2,"61":1,"63":2,"65":3,"66":2,"69":2,"75":1,"76":3,"89":1,"94":1,"95":2,"96":1,"102":3}}],["+proj=moll",{"2":{"105":1}}],["+",{"2":{"12":2,"13":1,"16":2,"18":2,"21":1,"95":1,"104":1}}],["kwargs",{"2":{"79":5,"80":2}}],["know",{"2":{"62":1}}],["k",{"2":{"46":5,"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5}}],["keyword",{"2":{"75":1,"79":6,"80":2}}],["key",{"2":{"48":1,"79":1}}],["keyset",{"2":{"46":1}}],["keys",{"2":{"46":7,"79":1}}],["keylist",{"2":{"45":1}}],["keeps",{"2":{"13":1}}],["keep",{"2":{"0":1,"80":1}}],["kb",{"2":{"10":1,"12":1,"13":1,"14":1,"16":2,"22":1,"26":1,"29":2,"32":1,"35":1,"37":4,"41":3,"42":1,"65":1,"66":3,"67":5,"93":1,"96":1}}],["↗",{"2":{"10":1,"12":1,"13":1,"16":2,"17":1,"18":1,"19":1,"20":1,"21":3,"22":1,"26":2,"29":3,"30":1,"32":3,"35":1,"37":5,"39":2,"41":3,"51":1,"58":2,"59":2,"62":3,"63":1,"64":2,"66":3,"67":5,"69":1,"75":2,"76":2,"93":1,"102":1}}],["047283",{"2":{"93":1}}],["0474875",{"2":{"93":1}}],["0465",{"2":{"56":1}}],["0e8",{"2":{"79":1}}],["02627341416046051",{"2":{"96":1}}],["028497582895211832",{"2":{"96":1}}],["02",{"2":{"58":1}}],["0210077",{"2":{"25":1}}],["0214057",{"2":{"25":1}}],["0f20",{"2":{"58":1,"59":2,"62":6,"64":4,"65":6,"66":6,"67":10}}],["0f32",{"2":{"16":2}}],["06183225090497175",{"2":{"96":1}}],["060422",{"2":{"93":1}}],["0693719",{"2":{"93":1}}],["0625",{"2":{"58":2,"102":1}}],["0620649",{"2":{"26":1}}],["06755",{"2":{"56":1}}],["08964458904045909",{"2":{"96":1}}],["08383207080301504",{"2":{"96":1}}],["08",{"2":{"54":1}}],["0881736",{"2":{"27":1}}],["09470732715757708",{"2":{"96":1}}],["09317591352691727",{"2":{"96":1}}],["0916764",{"2":{"93":1}}],["0972941",{"2":{"93":1}}],["09",{"2":{"54":1}}],["096862",{"2":{"27":1}}],["0ºe",{"2":{"40":1}}],["07400365941169999",{"2":{"96":1}}],["0743642",{"2":{"93":1}}],["07111923498269067",{"2":{"96":1}}],["0776029",{"2":{"93":1}}],["07",{"2":{"58":2,"102":1}}],["0702532",{"2":{"26":1}}],["0723492",{"2":{"22":1}}],["03856393968274492",{"2":{"96":1}}],["0353507",{"2":{"93":1}}],["0358348",{"2":{"25":1}}],["0302534",{"2":{"93":1}}],["03361",{"2":{"56":1}}],["03",{"2":{"26":1}}],["00997173",{"2":{"93":1}}],["00990356",{"2":{"56":1}}],["00722034",{"2":{"56":1}}],["00709111",{"2":{"56":1}}],["0063020041736240135",{"2":{"96":1}}],["00684233",{"2":{"56":1}}],["00693713",{"2":{"56":1}}],["0057",{"2":{"56":1}}],["00388",{"2":{"56":1}}],["00",{"2":{"20":4,"46":16,"54":4,"58":9,"59":8,"62":12,"63":4,"64":8,"65":8,"66":12,"67":20,"69":4,"75":4,"102":5}}],["05116592548280876",{"2":{"96":1}}],["0512364",{"2":{"93":1}}],["05345455485976908",{"2":{"96":1}}],["05344184427965779",{"2":{"96":1}}],["0537",{"2":{"51":1,"52":1}}],["05846",{"2":{"56":1}}],["0593761",{"2":{"26":1}}],["0566881",{"2":{"26":1}}],["05t00",{"2":{"20":1}}],["05",{"2":{"17":2,"18":1,"21":3,"37":3}}],["013646215450068194",{"2":{"96":1}}],["0174532925199433",{"2":{"60":1}}],["0178074",{"2":{"56":1}}],["01t03",{"2":{"58":2,"102":1}}],["01t00",{"2":{"20":1,"46":4,"58":2,"102":1}}],["0117519",{"2":{"56":1}}],["0115514",{"2":{"56":1}}],["0127077",{"2":{"56":1}}],["0123091",{"2":{"56":1}}],["0121037",{"2":{"56":1}}],["019016",{"2":{"56":1}}],["0188721",{"2":{"77":2}}],["018571",{"2":{"56":1}}],["0182373",{"2":{"56":1}}],["0180572",{"2":{"56":1}}],["0183003",{"2":{"56":1}}],["018",{"2":{"51":1,"52":1}}],["01",{"2":{"10":6,"12":3,"13":3,"14":3,"16":12,"17":6,"18":3,"20":2,"21":9,"22":9,"23":3,"29":9,"30":3,"37":22,"39":8,"40":11,"46":8,"58":5,"59":4,"62":6,"63":2,"64":4,"65":6,"66":6,"67":10,"69":2,"75":2,"95":2,"96":4,"102":5}}],["0",{"2":{"8":1,"9":1,"10":6,"11":2,"12":6,"13":6,"14":7,"16":303,"17":7,"18":7,"19":7,"20":6,"21":10,"22":75,"25":36,"26":36,"27":45,"29":12,"30":6,"33":3,"34":1,"35":9,"37":1,"40":4,"41":27,"42":11,"47":2,"54":2,"55":40,"56":19,"58":7,"59":10,"60":6,"62":12,"63":6,"64":8,"65":6,"66":14,"67":20,"68":6,"69":6,"71":1,"73":1,"74":1,"75":6,"76":1,"77":40,"79":2,"80":1,"93":80,"94":1,"95":2,"96":19,"97":1,"102":4,"104":2,"105":2,"106":2}}],["┤",{"2":{"8":2,"9":2,"10":2,"12":2,"13":2,"14":4,"16":10,"17":2,"18":2,"19":2,"21":6,"22":5,"25":2,"26":4,"27":3,"29":4,"32":2,"33":6,"34":2,"35":2,"37":10,"41":6,"42":6,"47":4,"51":4,"52":2,"54":6,"55":3,"56":6,"58":2,"59":2,"62":6,"64":4,"65":5,"66":6,"67":10,"76":2,"93":4,"96":2}}],["┐",{"2":{"8":1,"9":1,"10":1,"12":1,"13":1,"14":2,"16":5,"17":1,"18":1,"19":1,"21":3,"22":4,"25":1,"26":2,"27":2,"29":2,"32":1,"33":3,"34":1,"35":1,"37":5,"41":3,"42":3,"47":2,"51":1,"54":2,"55":1,"58":1,"59":1,"62":3,"64":2,"65":4,"66":3,"67":5,"76":1,"93":2,"96":1}}],["│",{"2":{"8":2,"9":2,"10":2,"12":2,"13":2,"14":4,"16":10,"17":2,"18":2,"19":2,"21":6,"22":8,"25":2,"26":4,"27":4,"29":4,"32":2,"33":6,"34":2,"35":2,"37":10,"41":6,"42":6,"47":4,"51":4,"52":2,"54":6,"55":4,"56":6,"58":2,"59":2,"62":6,"64":4,"65":6,"66":6,"67":10,"76":2,"93":4,"96":2}}],["720352",{"2":{"93":1}}],["720635",{"2":{"77":2}}],["72",{"2":{"68":1}}],["725765",{"2":{"27":1}}],["768363",{"2":{"93":1}}],["761553",{"2":{"77":2}}],["76",{"2":{"68":1}}],["762559",{"2":{"26":1}}],["705063",{"2":{"93":1}}],["70",{"2":{"66":3,"68":1}}],["7030",{"2":{"60":1}}],["701332",{"2":{"22":1}}],["730",{"2":{"97":1}}],["732556",{"2":{"93":1}}],["7341",{"2":{"56":1}}],["73",{"2":{"56":1,"68":1}}],["731779",{"2":{"26":1}}],["755932",{"2":{"93":1}}],["75",{"2":{"68":1}}],["7593",{"2":{"56":1}}],["75891",{"2":{"56":1}}],["75269",{"2":{"25":1}}],["752417",{"2":{"22":1}}],["77",{"2":{"68":1}}],["77687",{"2":{"56":1}}],["77587",{"2":{"56":1}}],["770949",{"2":{"26":1}}],["79",{"2":{"59":2,"62":3,"63":1,"64":2,"65":2,"66":4,"67":5,"68":1,"69":1,"75":1}}],["79502",{"2":{"56":1}}],["793913",{"2":{"27":1}}],["791138",{"2":{"27":1}}],["796375",{"2":{"26":1}}],["746804",{"2":{"93":1}}],["74",{"2":{"68":1}}],["744521",{"2":{"26":1}}],["74732",{"2":{"25":1}}],["717",{"2":{"67":5}}],["71",{"2":{"66":1,"68":1}}],["7158",{"2":{"51":1,"52":1}}],["7119",{"2":{"51":1,"52":1}}],["71314",{"2":{"26":1}}],["718667",{"2":{"26":1}}],["71429",{"2":{"22":2}}],["78",{"2":{"66":1,"68":1}}],["780824",{"2":{"27":1}}],["78467",{"2":{"25":1}}],["789891",{"2":{"25":1}}],["781773",{"2":{"22":1}}],["7",{"2":{"8":1,"16":10,"21":3,"22":1,"26":1,"29":1,"34":1,"58":1,"73":1,"102":1}}],["→",{"2":{"4":1,"5":1,"6":1,"9":1,"10":1,"12":1,"13":1,"14":1,"16":2,"17":1,"18":1,"19":1,"20":1,"21":3,"22":6,"25":1,"26":3,"27":3,"29":3,"30":1,"32":3,"33":3,"34":1,"35":1,"37":6,"39":2,"40":2,"41":3,"42":2,"45":2,"46":4,"47":2,"51":1,"58":2,"59":2,"60":1,"62":3,"63":1,"64":2,"65":1,"66":3,"67":5,"69":1,"75":2,"76":2,"93":2,"102":1}}],["↓",{"2":{"4":3,"5":3,"6":1,"8":1,"9":1,"10":1,"12":1,"13":1,"14":2,"16":5,"17":1,"18":1,"19":1,"20":1,"21":3,"22":6,"25":1,"26":3,"27":3,"29":3,"30":1,"32":3,"33":3,"34":1,"35":1,"37":6,"39":2,"40":8,"41":3,"42":3,"44":1,"45":3,"46":4,"47":2,"51":3,"52":1,"54":4,"55":2,"56":3,"58":2,"59":2,"60":1,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"69":1,"75":2,"76":2,"93":2,"96":2,"102":1}}],["438885",{"2":{"93":1}}],["4326",{"2":{"60":1}}],["43254",{"2":{"56":1}}],["4325",{"2":{"51":1,"52":1}}],["432286",{"2":{"22":1}}],["457984",{"2":{"77":2}}],["459041",{"2":{"77":2}}],["45×170×24",{"2":{"67":5}}],["456765",{"2":{"25":1}}],["48",{"2":{"93":1}}],["48367",{"2":{"56":1}}],["480",{"2":{"21":2,"42":1}}],["414041",{"2":{"77":2}}],["4198",{"2":{"56":1}}],["41241",{"2":{"56":1}}],["41049",{"2":{"56":1}}],["41634",{"2":{"56":1}}],["417937",{"2":{"22":1}}],["404819",{"2":{"93":1}}],["40",{"2":{"40":2}}],["400",{"2":{"25":1,"76":1,"95":1,"97":1}}],["44",{"2":{"37":1,"41":3}}],["471857",{"2":{"77":2}}],["47951",{"2":{"27":1}}],["475725",{"2":{"26":1}}],["472308",{"2":{"22":1}}],["497881",{"2":{"77":2}}],["497189",{"2":{"22":1}}],["49909",{"2":{"56":1}}],["4947",{"2":{"56":1}}],["492817",{"2":{"26":1}}],["4×30",{"2":{"22":1}}],["4×3×7",{"2":{"21":1}}],["4×3×2",{"2":{"19":1}}],["461652",{"2":{"93":1}}],["46506",{"2":{"56":1}}],["465103",{"2":{"22":1}}],["46",{"2":{"35":1,"93":1}}],["463503",{"2":{"22":1}}],["425153",{"2":{"27":1}}],["426519",{"2":{"25":1}}],["42857",{"2":{"22":2}}],["42",{"2":{"11":3}}],["4",{"2":{"4":4,"5":4,"16":4,"17":4,"18":2,"19":2,"20":1,"21":8,"22":9,"27":1,"34":1,"35":1,"51":2,"52":1,"53":1,"54":2,"55":2,"56":4,"76":3,"77":2,"93":3,"95":1,"97":1}}],["3d",{"0":{"106":1}}],["3hr",{"2":{"58":2,"102":3}}],["339529",{"2":{"93":1}}],["33565",{"2":{"56":1}}],["337926",{"2":{"25":1}}],["325997",{"2":{"93":1}}],["32555",{"2":{"56":1}}],["3252",{"2":{"51":1,"52":1}}],["32149",{"2":{"56":1}}],["327439",{"2":{"27":1}}],["3×3",{"2":{"47":1}}],["3×20",{"2":{"42":1}}],["384×192×251288",{"2":{"58":1}}],["3866",{"2":{"56":1}}],["38364",{"2":{"56":1}}],["3835",{"2":{"51":1,"52":1}}],["38",{"2":{"37":1,"66":3}}],["312",{"2":{"56":1}}],["31753",{"2":{"56":1}}],["3169",{"2":{"56":1}}],["3188",{"2":{"56":1}}],["31",{"2":{"37":2,"39":1,"40":1,"95":1,"96":2}}],["366",{"2":{"97":1}}],["365×1",{"2":{"96":1}}],["365",{"2":{"96":1,"97":4}}],["365971",{"2":{"27":1}}],["367809",{"2":{"77":2}}],["36126",{"2":{"56":1}}],["36142",{"2":{"56":1}}],["36836",{"2":{"56":1}}],["369",{"2":{"40":1}}],["36",{"2":{"37":1,"39":2,"40":1,"54":1}}],["3600",{"2":{"37":1,"39":2}}],["364288",{"2":{"25":1}}],["34818",{"2":{"56":1}}],["34832",{"2":{"56":1}}],["348362",{"2":{"25":1}}],["34549",{"2":{"56":1}}],["34218",{"2":{"56":1}}],["340769",{"2":{"27":1}}],["3785",{"2":{"93":1}}],["37878",{"2":{"56":1}}],["37",{"2":{"59":2,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"69":1,"75":1}}],["372",{"2":{"56":1}}],["372761",{"2":{"22":1}}],["376409",{"2":{"26":1}}],["376135",{"2":{"22":1}}],["35700351866494",{"2":{"58":4,"102":2}}],["35432",{"2":{"56":1}}],["35483",{"2":{"56":1}}],["359",{"2":{"40":1,"58":2,"59":2,"62":3,"63":1,"64":2,"65":1,"68":2,"69":1,"75":1,"102":1}}],["35",{"2":{"10":1,"12":1,"13":1,"22":1,"29":1}}],["307f8f0e584a39a050c042849004e6a2bd674f99",{"2":{"60":1}}],["3069",{"2":{"56":1}}],["30018",{"2":{"56":1}}],["30142",{"2":{"56":1}}],["30113",{"2":{"56":1}}],["30×15×10",{"2":{"16":1}}],["30×10×15",{"2":{"10":1,"12":1,"13":1,"22":1,"29":1}}],["30",{"2":{"10":3,"12":1,"13":1,"14":2,"16":5,"22":5,"23":2,"26":10,"29":4,"30":2,"56":2,"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5,"102":1}}],["393083",{"2":{"93":1}}],["395234",{"2":{"26":1}}],["39",{"2":{"10":1,"16":3,"18":1,"19":1,"33":1,"35":1,"37":1,"39":1,"40":1,"41":2,"56":1,"61":1,"62":1,"63":1,"71":1,"79":2,"85":1,"87":4,"96":3}}],["3",{"2":{"4":8,"5":8,"6":10,"10":1,"11":3,"12":3,"13":2,"16":4,"17":3,"18":1,"19":3,"20":1,"21":14,"22":6,"26":2,"27":1,"29":3,"32":5,"34":1,"37":4,"41":4,"42":5,"46":1,"47":2,"51":2,"56":31,"58":1,"59":1,"62":3,"64":2,"66":4,"67":5,"75":1,"76":3,"79":1,"93":3,"95":2}}],["zoom",{"2":{"106":1}}],["zopen",{"2":{"58":1,"77":1,"102":1}}],["zeros",{"2":{"76":3,"96":1}}],["z",{"2":{"4":2,"5":3,"6":2,"75":2}}],["zarray",{"2":{"77":1}}],["zarr",{"0":{"58":1,"70":1,"71":1,"101":1},"1":{"71":1},"2":{"0":1,"2":2,"4":2,"5":2,"6":2,"16":5,"17":1,"20":2,"23":1,"27":1,"47":1,"58":3,"70":5,"71":5,"74":3,"75":4,"76":6,"77":2,"79":2,"80":2,"90":2,"102":1}}],["xticklabelalign",{"2":{"95":1,"97":1}}],["xticklabelrotation",{"2":{"95":1,"97":1}}],["xlabel=",{"2":{"95":1,"97":1}}],["xx",{"2":{"59":1,"63":1,"69":1,"75":1}}],["xarray",{"2":{"49":1,"50":1}}],["x26",{"2":{"22":12,"40":12}}],["x3c",{"2":{"22":12,"40":4,"79":1}}],["xyz",{"2":{"21":2}}],["xy",{"2":{"19":2}}],["xyt",{"2":{"19":2,"21":2}}],["xin",{"2":{"18":8,"19":11,"21":8,"22":3,"41":3}}],["xout",{"2":{"16":2,"18":6,"19":6,"21":2,"22":3}}],["x",{"2":{"4":2,"5":3,"6":2,"13":2,"26":4,"27":3,"41":4,"47":2,"51":2,"52":1,"56":3,"60":1,"77":2,"80":1,"82":1,"93":5,"95":1,"96":6}}],["ndata",{"2":{"104":2,"105":1,"106":1}}],["ndays",{"2":{"96":4}}],["nlon",{"2":{"104":2,"105":1}}],["npy",{"2":{"95":2,"96":2}}],["nin",{"2":{"80":2}}],["ntr",{"2":{"80":1}}],["ntuple",{"2":{"80":4}}],["nthreads",{"2":{"79":2}}],["nvalid",{"2":{"79":1}}],["n",{"2":{"79":3,"81":1}}],["n256",{"2":{"56":1}}],["nan",{"2":{"50":1,"51":48,"52":48,"56":384}}],["name=cube",{"2":{"79":1}}],["named",{"2":{"63":1,"65":1,"66":1,"79":2,"82":1,"94":1}}],["namedtuple",{"2":{"18":1,"20":1,"79":1,"80":3}}],["names",{"0":{"21":1,"32":1,"43":1,"45":1},"1":{"33":1,"44":1,"45":1},"2":{"29":2,"46":1,"53":1,"79":2,"80":1,"82":2}}],["namely",{"2":{"16":1,"17":1}}],["name",{"0":{"44":1},"2":{"2":1,"18":4,"20":1,"45":1,"56":1,"58":3,"59":4,"62":12,"64":8,"65":12,"66":12,"67":20,"76":2,"79":6,"80":5,"85":1,"93":1}}],["nc",{"2":{"50":2,"59":2,"63":2,"69":2,"72":2,"73":3,"79":6}}],["number",{"2":{"49":1,"54":1,"71":1,"73":1,"79":2,"80":1,"96":1}}],["numbers",{"2":{"10":1,"93":1}}],["nout",{"2":{"80":2}}],["normal",{"2":{"79":1,"106":1}}],["north",{"2":{"60":1}}],["nometadata",{"2":{"51":3,"52":2,"54":1,"55":1,"56":10}}],["november",{"2":{"59":1,"63":1,"69":1,"75":1}}],["nov",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["nonmissingtype",{"2":{"80":1}}],["none",{"2":{"40":2,"45":1,"46":1,"58":1,"75":1,"102":1}}],["non",{"2":{"23":1,"79":1,"80":1,"95":1}}],["now",{"2":{"16":3,"18":1,"22":1,"33":1,"35":1,"37":1,"42":1,"46":1,"51":1,"52":1,"54":1,"56":1,"76":2,"77":1,"88":1}}],["no",{"2":{"14":1,"21":1,"27":1,"36":1,"71":1,"73":1,"76":1,"79":1,"80":1}}],["notice",{"2":{"71":1}}],["notation",{"2":{"37":1,"67":1}}],["nothing",{"2":{"18":1,"19":1,"21":1,"51":2,"54":2,"55":2,"56":5,"74":1,"79":1,"80":1}}],["note",{"2":{"9":1,"13":1,"16":4,"18":1,"21":1,"22":1,"33":1,"40":1,"47":1,"52":1,"59":1,"62":1,"76":1,"79":1,"80":1}}],["not",{"0":{"40":1},"2":{"0":1,"1":1,"13":1,"36":1,"40":3,"45":1,"46":2,"47":1,"50":1,"59":1,"76":2,"79":3,"80":3}}],["neighbour",{"2":{"79":1}}],["neighboring",{"2":{"13":1}}],["near",{"2":{"58":2,"67":1,"102":1}}],["needed",{"2":{"79":1}}],["need",{"2":{"45":1,"77":1,"79":1,"80":1,"87":1}}],["next",{"2":{"41":1,"42":1,"53":1,"88":2}}],["netcdf4",{"2":{"59":1}}],["netcdf",{"0":{"59":1,"72":1,"73":1},"1":{"73":1},"2":{"27":1,"47":1,"48":2,"59":4,"61":1,"63":2,"69":2,"72":3,"73":2,"74":1,"79":2,"83":3,"90":2}}],["necessary",{"2":{"16":1,"49":1,"50":1,"77":1,"80":4}}],["newdim",{"2":{"79":1}}],["new",{"0":{"9":1},"2":{"10":1,"12":1,"16":1,"29":1,"32":1,"33":3,"48":1,"50":1,"53":1,"74":1,"75":1,"76":1,"79":5,"80":4,"84":1,"87":6,"96":1}}],["big",{"2":{"82":1}}],["bits",{"2":{"79":2}}],["black",{"2":{"97":1}}],["blocks",{"2":{"79":1}}],["blosccompressor",{"2":{"71":1}}],["blue",{"2":{"60":1,"83":1}}],["bonito",{"2":{"106":1}}],["boundaries",{"2":{"80":1}}],["bounds",{"2":{"79":1}}],["bold",{"2":{"56":1}}],["bool=true",{"2":{"80":1}}],["bool=false",{"2":{"79":1,"80":1}}],["boolean",{"2":{"79":3}}],["bool",{"2":{"47":3,"80":6}}],["bwr",{"2":{"56":1}}],["b`",{"2":{"37":1}}],["broad",{"2":{"99":1}}],["broadcasts",{"2":{"80":1}}],["broadcast",{"2":{"51":1,"56":1}}],["broadcasted",{"2":{"16":2,"79":1,"80":1}}],["brown",{"2":{"97":1}}],["browser",{"2":{"88":1}}],["brightness",{"2":{"82":1,"83":1}}],["brings",{"2":{"80":1}}],["bring",{"2":{"34":1}}],["branch",{"2":{"58":1,"102":1}}],["bug",{"2":{"86":1}}],["bundle",{"2":{"83":1}}],["build",{"0":{"88":1},"2":{"32":1,"88":1}}],["but",{"0":{"40":1},"2":{"8":1,"16":2,"32":1,"33":2,"40":2,"45":1,"46":2,"59":1,"65":1,"66":1,"79":2}}],["b",{"2":{"17":2,"18":1,"19":1,"20":1,"22":13,"45":2,"67":2,"79":2}}],["backgroundcolor=",{"2":{"106":1}}],["back",{"2":{"79":1}}],["backend",{"2":{"74":2,"79":8}}],["backendlist",{"2":{"48":1,"79":1}}],["backend=",{"2":{"2":1,"16":2,"75":1}}],["based",{"0":{"101":1},"2":{"79":1,"80":1}}],["base",{"0":{"25":1},"2":{"4":4,"5":4,"6":2,"18":1,"20":1,"25":4,"29":3,"32":9,"33":6,"44":1,"45":5,"47":4,"76":6,"80":1,"93":2}}],["by=",{"2":{"42":2,"79":2}}],["bytes",{"2":{"8":1,"9":1,"14":1,"16":3,"17":1,"18":1,"19":1,"21":3,"22":1,"25":1,"27":1,"33":3,"34":1,"37":1,"42":2,"47":2,"54":1,"65":2,"73":4,"76":1,"93":1}}],["by",{"0":{"4":1,"5":1},"2":{"2":1,"10":2,"14":1,"16":1,"22":1,"28":1,"29":1,"33":1,"36":1,"37":6,"40":2,"42":1,"49":1,"53":1,"54":1,"55":1,"56":1,"58":1,"59":1,"74":1,"77":2,"79":12,"80":6,"82":3,"84":1,"85":1,"87":1,"88":1,"92":1,"96":1}}],["beware",{"2":{"98":1}}],["belonging",{"2":{"83":1}}],["belongs",{"2":{"22":1}}],["best",{"2":{"80":1,"100":1}}],["become",{"2":{"79":1}}],["because",{"2":{"1":1,"13":1,"14":1,"16":1}}],["before",{"2":{"76":1,"79":1,"88":1}}],["being",{"2":{"46":1}}],["been",{"2":{"40":1,"77":1}}],["between",{"2":{"26":1,"27":1,"37":1,"39":1,"40":2,"67":1,"71":1,"73":1,"79":1}}],["begin",{"2":{"23":1}}],["be",{"2":{"0":5,"2":1,"3":1,"4":1,"13":1,"15":1,"16":2,"22":1,"24":1,"37":1,"40":1,"41":1,"42":2,"45":1,"46":1,"50":1,"58":2,"59":1,"60":1,"61":2,"62":1,"68":1,"74":1,"75":1,"76":1,"79":23,"80":9,"82":1,"84":2,"87":1,"89":1,"94":1,"98":1,"102":1}}],["628915",{"2":{"93":1}}],["626919",{"2":{"93":1}}],["624506",{"2":{"93":1}}],["625389",{"2":{"27":1}}],["696114",{"2":{"93":1}}],["69",{"2":{"58":1}}],["69085",{"2":{"56":1}}],["600",{"2":{"95":1,"97":1,"103":1,"104":1,"105":1}}],["607478",{"2":{"93":1}}],["606561",{"2":{"93":1}}],["60265",{"2":{"58":1,"102":1}}],["60918",{"2":{"56":1}}],["60175",{"2":{"56":1}}],["647957",{"2":{"77":2}}],["64976",{"2":{"56":1}}],["642",{"2":{"50":1}}],["645758",{"2":{"25":1}}],["665833",{"2":{"93":1}}],["665723",{"2":{"25":1}}],["662295",{"2":{"27":1}}],["634856",{"2":{"93":1}}],["6326",{"2":{"60":1}}],["6378137",{"2":{"60":1}}],["63006",{"2":{"56":1}}],["630469",{"2":{"27":1}}],["63593",{"2":{"27":1}}],["655204",{"2":{"93":1}}],["65105",{"2":{"56":1}}],["658321",{"2":{"27":1}}],["652339",{"2":{"25":1}}],["6122",{"2":{"56":1}}],["61197",{"2":{"56":1}}],["611084",{"2":{"25":1}}],["619",{"2":{"51":1,"52":1}}],["617023",{"2":{"26":1}}],["6×6×25",{"2":{"26":2}}],["6×2",{"2":{"9":1}}],["673373",{"2":{"25":1}}],["671662",{"2":{"22":1}}],["672",{"2":{"21":1}}],["686278",{"2":{"27":1}}],["687891",{"2":{"26":1}}],["684389",{"2":{"22":1}}],["685454",{"2":{"22":1}}],["6",{"2":{"2":6,"4":6,"5":6,"6":6,"8":4,"9":5,"16":8,"22":1,"34":1,"37":1,"58":1,"102":1}}],["1e8",{"2":{"80":1}}],["1f2",{"2":{"47":1}}],["1992",{"2":{"79":1}}],["1991",{"2":{"79":1}}],["1990",{"2":{"79":1}}],["1984",{"2":{"60":1}}],["1983",{"2":{"54":1}}],["1980",{"2":{"54":1}}],["193109",{"2":{"26":1}}],["197238",{"2":{"25":1}}],["1921",{"2":{"77":2}}],["19241",{"2":{"56":1}}],["192",{"2":{"19":1,"104":1}}],["19",{"2":{"16":16,"66":3,"67":5}}],["18554488323324722",{"2":{"96":1}}],["18583",{"2":{"56":1}}],["183083",{"2":{"93":1}}],["18892",{"2":{"56":1}}],["18434",{"2":{"56":1}}],["180×170",{"2":{"65":1}}],["180×170×24",{"2":{"59":1,"62":3,"64":2}}],["180",{"2":{"40":2,"60":1,"67":5,"104":1}}],["180ºe",{"2":{"40":1}}],["181798",{"2":{"27":1}}],["18",{"2":{"16":18}}],["142733",{"2":{"93":1}}],["14286",{"2":{"22":1}}],["1437",{"2":{"56":1}}],["145747",{"2":{"22":1}}],["14",{"2":{"16":20,"27":1}}],["13853500608021024",{"2":{"96":1}}],["136",{"2":{"59":1,"63":1,"69":1,"75":1}}],["1363",{"2":{"51":1,"52":1}}],["13z",{"2":{"58":2,"102":1}}],["1372",{"2":{"51":1,"52":1}}],["13",{"2":{"16":20,"27":1,"40":6,"59":1,"63":1,"69":1,"75":1}}],["170",{"2":{"68":1}}],["179",{"2":{"60":1,"67":5}}],["17578125",{"2":{"60":2}}],["17593",{"2":{"22":1}}],["17434",{"2":{"56":1}}],["174934",{"2":{"25":1}}],["17852",{"2":{"56":1}}],["17863",{"2":{"56":1}}],["178603",{"2":{"22":1}}],["17647",{"2":{"56":1}}],["1762",{"2":{"51":1,"52":1}}],["17t00",{"2":{"54":1}}],["172",{"2":{"47":1}}],["17",{"2":{"14":1,"16":22,"42":1,"66":1}}],["16t00",{"2":{"59":4,"62":6,"63":2,"64":4,"65":4,"66":6,"67":10,"69":2,"75":2}}],["16t12",{"2":{"54":1}}],["1644",{"2":{"56":1}}],["16824",{"2":{"56":1}}],["16581",{"2":{"56":1}}],["165853",{"2":{"27":1}}],["16631",{"2":{"56":1}}],["166212",{"2":{"25":1}}],["16713",{"2":{"56":1}}],["167676",{"2":{"22":1}}],["16258",{"2":{"56":1}}],["162134",{"2":{"27":1}}],["169284",{"2":{"25":1}}],["16",{"2":{"10":1,"12":1,"13":1,"16":20,"22":1,"29":1,"59":2,"62":3,"63":1,"64":2,"65":4,"66":3,"67":5,"69":1,"75":1}}],["157268",{"2":{"93":1}}],["159",{"2":{"66":1}}],["15644",{"2":{"56":1}}],["15532",{"2":{"56":1}}],["151146",{"2":{"25":1}}],["152534",{"2":{"25":1}}],["15394",{"2":{"22":1}}],["15×10×30",{"2":{"16":1}}],["15×10",{"2":{"16":2}}],["15",{"2":{"10":1,"16":25,"22":6,"23":1,"27":4,"29":1,"30":1,"35":2,"42":1,"93":1}}],["128",{"2":{"106":1}}],["128204",{"2":{"25":1}}],["1242",{"2":{"56":1}}],["12575",{"2":{"56":1}}],["12568",{"2":{"26":1}}],["121",{"2":{"47":1}}],["121947",{"2":{"22":1}}],["12320189493957617",{"2":{"96":1}}],["123",{"2":{"17":1,"21":2}}],["1200",{"2":{"103":1,"104":1,"105":1}}],["120997",{"2":{"22":1}}],["120",{"2":{"16":1}}],["12",{"2":{"8":4,"16":20,"27":1,"37":10,"39":3,"40":4,"59":2,"62":3,"63":1,"64":2,"65":2,"66":3,"67":5,"69":1,"75":1,"95":1,"96":2}}],["1=5",{"2":{"2":1}}],["1159914",{"2":{"73":1}}],["119",{"2":{"65":1}}],["1181",{"2":{"56":1}}],["113553",{"2":{"55":3}}],["112319",{"2":{"55":12}}],["114815",{"2":{"55":6}}],["11",{"2":{"2":6,"4":6,"5":6,"6":6,"8":1,"16":18,"27":1,"51":4,"52":4,"56":4,"59":2,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"69":1,"75":1}}],["1",{"2":{"2":12,"4":19,"5":20,"6":22,"8":5,"9":3,"10":8,"11":3,"12":7,"13":5,"14":6,"16":24,"17":10,"18":9,"19":8,"20":5,"21":17,"22":34,"23":3,"25":1,"26":7,"27":6,"29":15,"30":4,"32":3,"33":3,"34":8,"35":8,"37":23,"39":10,"40":8,"41":15,"42":14,"44":1,"45":3,"46":1,"47":5,"51":4,"52":2,"54":6,"55":10,"56":54,"58":4,"59":12,"62":12,"63":4,"64":8,"65":13,"66":18,"67":15,"68":2,"69":4,"75":11,"76":2,"77":2,"80":1,"93":11,"95":2,"96":5,"97":5,"102":3,"104":4,"105":2,"106":5}}],["1095",{"2":{"96":1}}],["10989",{"2":{"55":6}}],["10mb",{"2":{"79":2}}],["1083",{"2":{"56":1}}],["108696",{"2":{"55":6}}],["103704",{"2":{"55":3}}],["100",{"2":{"40":13}}],["1000",{"2":{"0":1,"104":1,"105":1}}],["10×170×24",{"2":{"66":1}}],["10×10×24",{"2":{"66":2}}],["10×10×8",{"2":{"37":1}}],["10×10×12",{"2":{"37":1}}],["10×10×36",{"2":{"37":1}}],["10×10×5",{"2":{"32":1}}],["10×10",{"2":{"33":3,"34":1,"37":1}}],["10×15×20",{"2":{"41":1}}],["10×15",{"2":{"14":1,"22":2,"42":1,"93":1}}],["10×20×5",{"2":{"29":1}}],["10x15",{"2":{"22":1}}],["101524",{"2":{"22":1}}],["10",{"2":{"2":14,"4":16,"5":18,"6":17,"10":3,"12":1,"13":1,"14":1,"16":21,"22":15,"23":3,"25":2,"27":4,"29":6,"30":2,"32":8,"33":12,"34":5,"35":4,"37":16,"39":10,"41":3,"42":2,"44":2,"45":4,"58":1,"59":2,"62":3,"64":2,"65":3,"66":6,"67":5,"75":2,"92":1,"93":3}}],["garbage",{"2":{"80":1}}],["gc",{"2":{"80":2}}],["gt",{"2":{"79":1,"80":3,"88":1}}],["gdalworkshop",{"2":{"60":1}}],["gdal",{"0":{"60":1},"2":{"60":1}}],["gb",{"2":{"58":1}}],["gn",{"2":{"58":1,"102":2}}],["gs",{"2":{"58":1,"102":2}}],["ggplot2",{"2":{"56":1}}],["github",{"2":{"50":2,"60":1,"86":1}}],["gives",{"2":{"22":1}}],["given",{"2":{"2":1,"22":2,"74":1,"79":6,"80":3,"82":1,"84":1,"93":1}}],["glob",{"2":{"79":1}}],["globalproperties=dict",{"2":{"80":1}}],["global",{"2":{"79":1,"80":1}}],["glmakie",{"2":{"42":2,"90":1,"102":2}}],["glue",{"2":{"8":1}}],["gradient",{"2":{"103":1,"104":1,"105":1,"106":1}}],["gradually",{"2":{"76":1}}],["grey25",{"2":{"106":1}}],["grey15",{"2":{"42":1,"56":1}}],["greenwich",{"2":{"60":1}}],["green",{"2":{"60":1,"83":1}}],["grouped",{"2":{"79":1}}],["groups",{"2":{"55":1}}],["groupby",{"0":{"51":1,"54":1},"1":{"52":1,"53":1,"55":1,"56":1},"2":{"48":1,"50":1,"51":6,"52":1,"53":1,"54":3,"55":3,"56":3,"79":1,"96":1}}],["group",{"0":{"48":1},"1":{"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1},"2":{"51":1,"53":1,"54":2,"79":3,"83":1}}],["grouping",{"2":{"42":2,"53":2}}],["grid=false",{"2":{"56":1}}],["grid",{"2":{"23":1,"79":1,"82":1}}],["gridchunks",{"2":{"2":3,"4":1,"5":1,"6":1,"79":1,"80":1}}],["go",{"2":{"88":2}}],["going",{"2":{"80":1}}],["good",{"2":{"56":1}}],["goal",{"2":{"21":1,"33":1,"49":1}}],["goes",{"2":{"16":2,"79":1,"80":1}}],["guide",{"2":{"10":2,"12":1,"13":1,"23":1,"29":3,"30":1}}],["gen",{"2":{"16":6}}],["general",{"0":{"99":1},"2":{"79":1,"89":1}}],["generated",{"2":{"59":1,"63":1,"69":1,"75":1,"80":1}}],["generate",{"2":{"16":2,"37":1,"39":1,"40":1,"79":1,"88":1}}],["generic",{"2":{"16":2,"18":1,"19":1,"21":1,"29":1,"79":1}}],["getting",{"0":{"91":1},"1":{"92":1,"93":1,"94":1}}],["gettarrayaxes",{"2":{"46":1}}],["getarrayinfo",{"2":{"80":1}}],["getaxis",{"2":{"34":1,"42":2,"79":1}}],["getloopchunks",{"2":{"80":1}}],["getloopcachesize",{"2":{"80":1}}],["getouttype",{"2":{"80":1}}],["getoutaxis",{"2":{"80":1}}],["getfrontperm",{"2":{"80":1}}],["gets",{"2":{"79":1,"80":1}}],["get",{"0":{"68":1},"2":{"10":1,"18":1,"32":1,"50":1,"54":1,"64":1,"66":1,"68":1,"80":3,"93":1,"96":1,"102":1}}],["geoaxis",{"2":{"104":1,"105":1}}],["geometrybasics",{"2":{"102":1}}],["geomakie",{"2":{"90":1,"102":1,"104":2,"105":1}}],["geogcs",{"2":{"60":1}}],["geojson",{"0":{"60":1}}],["geotiff",{"0":{"60":1}}],["geo",{"2":{"1":1}}],["g",{"2":{"7":1,"10":1,"11":1,"13":1,"16":4,"23":1,"29":1,"51":26,"52":2,"53":2,"54":2,"55":1,"56":18,"68":1,"79":5,"82":1,"85":1,"102":2}}],["2π",{"2":{"95":1}}],["2×3",{"2":{"93":1}}],["2×2×3",{"2":{"4":1,"5":1,"6":1}}],["2×2",{"2":{"2":3,"47":1}}],["2x2l31",{"2":{"59":1,"63":1,"69":1,"75":1}}],["2f0",{"2":{"47":1}}],["2963858",{"2":{"73":1}}],["298",{"2":{"60":1}}],["29816",{"2":{"56":1}}],["29473",{"2":{"56":1}}],["29564",{"2":{"56":1}}],["299637",{"2":{"26":1}}],["29",{"2":{"26":2}}],["283788",{"2":{"93":1}}],["28422753251364",{"2":{"58":4,"102":2}}],["28008",{"2":{"56":1}}],["2894",{"2":{"56":1}}],["288",{"2":{"54":1}}],["2818",{"2":{"51":1,"52":1}}],["28",{"2":{"26":2,"37":1,"51":3,"52":3,"56":3}}],["28571",{"2":{"22":2}}],["2857142857142857",{"2":{"10":1,"12":1,"13":1,"14":1,"22":3,"29":2,"30":1,"35":1,"41":3,"42":1,"93":1}}],["2747",{"2":{"56":1}}],["273",{"2":{"54":1}}],["276",{"2":{"54":2}}],["270",{"2":{"54":1}}],["275×205×9",{"2":{"51":4}}],["271209",{"2":{"27":1}}],["27",{"2":{"26":2,"51":1,"52":1,"56":1}}],["2d",{"2":{"19":5,"20":3,"21":2}}],["265107",{"2":{"93":1}}],["265797",{"2":{"25":1}}],["26274",{"2":{"56":1}}],["268675",{"2":{"26":1}}],["26",{"2":{"16":2,"26":2,"58":2,"102":1}}],["25526503219661817",{"2":{"96":1}}],["258509",{"2":{"93":1}}],["257223563",{"2":{"60":1}}],["25153",{"2":{"56":1}}],["25",{"2":{"16":4,"26":10,"37":1,"95":1}}],["245867",{"2":{"93":1}}],["24375",{"2":{"56":1}}],["2434",{"2":{"56":1}}],["241882",{"2":{"25":1}}],["24",{"2":{"16":6,"42":1,"65":2}}],["240588",{"2":{"93":1}}],["240",{"2":{"14":1,"16":1,"27":1}}],["235899",{"2":{"93":1}}],["235707",{"2":{"93":1}}],["234116",{"2":{"93":1}}],["237824",{"2":{"27":1}}],["23",{"2":{"16":8,"41":3,"56":1,"59":2,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"69":1,"75":1}}],["223574",{"2":{"77":2}}],["22211",{"2":{"56":1}}],["229281",{"2":{"27":1}}],["225542",{"2":{"26":1}}],["22",{"2":{"16":10}}],["21t06",{"2":{"58":2,"102":1}}],["21t19",{"2":{"46":4}}],["2101",{"2":{"58":2,"102":1}}],["21056",{"2":{"26":1}}],["21699",{"2":{"56":1}}],["21209",{"2":{"56":1}}],["215988",{"2":{"27":1}}],["215973",{"2":{"26":1}}],["21",{"2":{"16":12,"51":8,"52":8,"56":8}}],["2=10",{"2":{"2":1}}],["2",{"2":{"2":3,"4":8,"5":9,"6":10,"8":1,"9":1,"11":3,"12":2,"13":1,"14":1,"17":1,"18":2,"19":2,"20":1,"22":9,"23":1,"25":2,"27":3,"29":1,"32":3,"33":6,"34":3,"37":1,"42":6,"45":4,"46":1,"47":8,"51":1,"52":1,"56":40,"58":3,"59":3,"62":6,"63":1,"64":4,"65":2,"66":2,"67":5,"68":2,"69":1,"75":2,"76":2,"79":2,"93":5,"102":3,"104":2,"106":1}}],["2003",{"2":{"59":1,"63":1,"69":1,"75":1}}],["2004",{"2":{"59":1,"63":1,"69":1,"75":1}}],["2005",{"2":{"59":2,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"69":1,"75":1}}],["2002",{"2":{"59":3,"62":3,"63":2,"64":2,"65":2,"66":3,"67":5,"69":2,"75":1}}],["2001",{"2":{"59":3,"62":3,"63":2,"64":2,"65":3,"66":3,"67":5,"69":2,"75":1}}],["2000",{"2":{"26":4}}],["2019",{"2":{"58":2,"102":1}}],["2015",{"2":{"58":2,"59":1,"63":1,"69":1,"75":1,"102":2}}],["20×10×15",{"2":{"41":2}}],["20×10×15×2",{"2":{"35":1,"93":1}}],["20ºn",{"2":{"40":1}}],["203714",{"2":{"26":1}}],["2023",{"2":{"95":1,"96":2}}],["2021",{"2":{"37":9,"95":1,"96":2,"97":1}}],["2020",{"2":{"37":5,"39":3,"40":4,"46":8,"84":1}}],["2024",{"2":{"26":4}}],["2022",{"2":{"10":4,"12":2,"13":2,"14":2,"16":8,"17":4,"18":2,"20":2,"21":6,"22":6,"23":2,"29":6,"30":2,"37":5,"39":3,"40":4,"97":1}}],["20",{"2":{"2":7,"4":10,"5":10,"6":10,"16":14,"29":2,"35":4,"40":2,"41":3,"42":1,"56":1,"75":2,"93":3}}],["542309",{"2":{"93":1}}],["540514",{"2":{"26":1}}],["55",{"2":{"96":1}}],["552072",{"2":{"93":1}}],["551732",{"2":{"22":1}}],["515079",{"2":{"93":1}}],["5173",{"2":{"88":1}}],["514979",{"2":{"22":1}}],["5e8",{"2":{"74":1,"79":1}}],["5743",{"2":{"56":1}}],["57873",{"2":{"56":1}}],["57695",{"2":{"56":1}}],["57143",{"2":{"22":2}}],["56632",{"2":{"56":1}}],["561549",{"2":{"26":1}}],["52908",{"2":{"93":1}}],["520406",{"2":{"77":2}}],["520744",{"2":{"27":1}}],["52419",{"2":{"56":1}}],["521769",{"2":{"27":1}}],["521991",{"2":{"26":1}}],["522262",{"2":{"27":1}}],["59212",{"2":{"56":1}}],["59085",{"2":{"56":1}}],["594514",{"2":{"25":1}}],["595405",{"2":{"22":1}}],["5×4",{"2":{"77":2}}],["5×4×5",{"2":{"76":1}}],["5×4×3",{"2":{"21":2}}],["5×4×3×2",{"2":{"17":1,"18":1}}],["5×6×36",{"2":{"37":1}}],["5×6",{"2":{"27":2}}],["5×10",{"2":{"25":2}}],["507176",{"2":{"93":1}}],["508557",{"2":{"22":1}}],["50089",{"2":{"56":1}}],["500",{"2":{"0":1,"56":1,"106":2}}],["500mb",{"2":{"0":2}}],["531092",{"2":{"93":1}}],["53",{"2":{"65":1}}],["536273",{"2":{"27":1}}],["536399",{"2":{"22":1}}],["538981",{"2":{"22":1}}],["587477",{"2":{"93":1}}],["5843",{"2":{"51":1,"52":1}}],["581312",{"2":{"25":1}}],["58",{"2":{"16":2}}],["5837743112480992",{"2":{"11":1}}],["5",{"2":{"2":7,"4":16,"5":18,"6":7,"10":2,"12":3,"13":2,"14":1,"16":6,"17":2,"21":4,"22":10,"23":1,"25":2,"27":4,"29":5,"30":1,"32":4,"34":1,"35":2,"37":3,"39":4,"41":3,"42":2,"45":4,"56":5,"59":4,"62":6,"63":2,"64":4,"65":3,"66":10,"67":10,"68":19,"69":2,"75":4,"76":6,"77":3,"93":2,"94":1,"97":2,"106":2}}],["rotate",{"2":{"106":1}}],["row",{"2":{"79":1,"85":1}}],["rowgap",{"2":{"56":1}}],["right",{"2":{"95":1,"97":1}}],["rights",{"2":{"77":1}}],["r",{"2":{"76":1}}],["r1i1p1f1",{"2":{"58":2,"102":3}}],["running",{"2":{"88":1}}],["run",{"2":{"23":1,"88":3,"89":2}}],["runs",{"2":{"13":1,"80":1}}],["ram",{"2":{"61":1}}],["race",{"2":{"59":1}}],["rafaqz",{"2":{"50":1}}],["raw",{"2":{"50":1,"60":1}}],["rasm",{"2":{"50":2}}],["ras",{"2":{"26":3}}],["rasters",{"2":{"26":2}}],["raster",{"0":{"26":1},"2":{"22":11,"26":5}}],["ranges",{"0":{"66":1},"2":{"34":1,"63":1}}],["range",{"2":{"10":2,"16":2,"17":2,"22":2,"23":2,"29":2,"35":3,"37":1,"80":1,"93":3,"95":1}}],["randn",{"2":{"95":1}}],["random",{"2":{"17":2,"40":2,"46":3,"93":1}}],["rand",{"2":{"2":1,"4":3,"5":3,"6":3,"8":2,"9":2,"10":1,"17":1,"19":1,"21":3,"22":1,"23":1,"25":1,"26":1,"27":1,"29":2,"30":1,"32":1,"33":2,"35":2,"40":3,"42":1,"44":1,"45":3,"75":1,"77":1,"93":2}}],["relational",{"2":{"82":1}}],["related",{"2":{"50":1}}],["recommend",{"2":{"94":1}}],["recommended",{"2":{"67":1}}],["rechunking",{"2":{"80":1}}],["recalculate",{"2":{"80":1}}],["recal",{"2":{"80":1}}],["recently",{"2":{"0":1}}],["reentrantlock",{"2":{"59":1}}],["rewrote",{"2":{"58":1,"59":1,"63":1,"69":1,"75":1,"102":1}}],["realization",{"2":{"59":1,"63":1,"69":1,"75":1}}],["realm",{"2":{"58":1,"102":1}}],["readcubedata",{"0":{"62":1},"2":{"40":2,"61":1,"62":1,"79":1}}],["read",{"0":{"57":1,"58":1,"59":1,"60":1},"1":{"58":1,"59":1,"60":1,"61":1,"62":1},"2":{"1":1,"40":1,"50":1,"57":1,"60":1,"66":1,"79":1}}],["red",{"2":{"56":1,"60":1,"83":1}}],["reduce",{"2":{"10":1,"14":1,"19":1}}],["reverse",{"2":{"56":1}}],["reverseordered",{"2":{"9":1,"60":1,"93":1}}],["rename",{"2":{"45":1}}],["respectively",{"2":{"83":1}}],["resets",{"2":{"79":1,"80":1}}],["reshape",{"2":{"37":1,"39":2}}],["result",{"2":{"34":1,"42":1}}],["resulting",{"2":{"8":1,"9":1,"14":1,"79":1,"80":1}}],["results",{"0":{"97":1},"2":{"2":1,"5":1,"56":2,"79":1,"80":1}}],["references",{"2":{"59":1,"63":1,"69":1,"75":1}}],["reference",{"0":{"78":1},"1":{"79":1,"80":1},"2":{"46":1}}],["ref",{"2":{"35":1,"79":1,"80":1}}],["rebuild",{"0":{"33":1},"2":{"32":1,"33":2,"46":2,"50":1}}],["repeat",{"2":{"95":1}}],["repl",{"2":{"89":1,"92":1}}],["replace",{"2":{"23":1,"50":1,"106":1}}],["repository",{"2":{"86":1,"98":1}}],["reports",{"2":{"86":1}}],["reproduces",{"2":{"49":1}}],["represents",{"2":{"83":1}}],["represented",{"2":{"79":1,"100":1}}],["representing",{"2":{"22":2,"80":1}}],["representation",{"2":{"1":1,"79":2,"80":3}}],["re",{"2":{"22":1}}],["registry",{"2":{"89":1}}],["registration",{"2":{"80":2}}],["registered",{"2":{"80":1,"89":1}}],["regions",{"2":{"22":8}}],["region",{"2":{"22":12}}],["regular",{"2":{"4":4,"5":4,"6":2,"8":1,"9":1,"10":3,"12":3,"13":3,"14":3,"16":9,"17":3,"18":3,"19":2,"20":2,"21":9,"22":8,"25":2,"26":6,"27":4,"29":9,"30":3,"32":9,"33":6,"34":2,"35":3,"37":14,"39":6,"40":4,"41":9,"42":3,"44":1,"45":5,"47":4,"51":2,"52":2,"56":6,"58":2,"59":4,"60":2,"62":6,"63":2,"64":4,"65":2,"66":3,"67":10,"68":2,"69":2,"75":5,"76":6,"93":5,"96":1,"102":1}}],["regularchunks",{"2":{"2":6,"4":3,"5":3,"6":3}}],["returned",{"2":{"79":1}}],["returns",{"2":{"79":5,"80":2}}],["return",{"2":{"18":1,"19":1,"21":2,"22":4,"51":1,"79":1,"80":1,"96":1}}],["requests",{"2":{"86":1}}],["requested",{"2":{"13":1}}],["requirements",{"2":{"59":1,"63":1,"69":1,"75":1}}],["required",{"2":{"37":1}}],["requires",{"2":{"16":1}}],["removes",{"2":{"80":1}}],["remove",{"2":{"52":1}}],["removed",{"2":{"15":1,"80":1}}],["remote",{"2":{"0":1}}],["http",{"2":{"88":1}}],["https",{"2":{"50":2,"59":1,"60":1,"63":1,"69":1,"83":1}}],["html",{"2":{"83":1}}],["hdf5",{"2":{"59":1}}],["hr",{"2":{"58":1,"102":2}}],["history",{"2":{"58":2,"59":2,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"69":1,"75":1,"102":1}}],["hidedecorations",{"2":{"56":1}}],["highclip",{"2":{"56":4}}],["high",{"2":{"46":4}}],["hm",{"2":{"56":8}}],["hold",{"2":{"79":1}}],["holds",{"2":{"79":1,"80":1}}],["ho",{"0":{"46":1}}],["however",{"2":{"24":1,"37":1}}],["how",{"0":{"35":1,"36":1,"41":1,"42":1,"43":1,"89":1},"1":{"37":1,"38":1,"39":1,"40":1,"44":1,"45":1},"2":{"6":1,"7":1,"10":1,"17":2,"18":1,"24":1,"28":1,"31":1,"42":1,"57":1,"62":3,"77":1,"79":1,"98":1,"100":1}}],["happens",{"2":{"80":1}}],["had",{"2":{"77":1,"79":1,"80":1}}],["hard",{"2":{"62":1}}],["hamman",{"2":{"49":1,"56":1}}],["handle",{"2":{"80":1,"82":1}}],["handled",{"2":{"80":1}}],["handling",{"2":{"9":1,"79":1}}],["handy",{"2":{"42":1}}],["has",{"2":{"8":1,"9":1,"22":1,"26":1,"27":1,"40":1,"49":1,"52":1,"80":1}}],["half",{"2":{"8":5}}],["have",{"2":{"6":1,"9":1,"22":1,"29":1,"38":1,"40":2,"79":3,"84":1}}],["having",{"2":{"1":1,"22":1}}],["help",{"2":{"79":1,"80":2}}],["height",{"2":{"58":2,"102":1}}],["heatmap",{"0":{"103":1},"2":{"42":1,"56":3,"103":1}}],["hereby",{"2":{"22":1}}],["here",{"2":{"8":1,"9":1,"13":1,"16":2,"17":1,"21":1,"22":1,"36":1,"42":1,"66":1,"76":1,"87":2}}],["hence",{"2":{"1":1}}],["yet",{"2":{"79":1}}],["yeesian",{"2":{"60":1}}],["years",{"2":{"37":1,"95":1,"96":1}}],["year",{"2":{"8":4,"97":1}}],["yyyy",{"2":{"59":2,"63":2,"69":2,"75":2}}],["ylabel=",{"2":{"95":1,"97":1}}],["ylabel",{"2":{"56":3}}],["yasxa",{"2":{"40":6}}],["yaxcolumn",{"2":{"80":1}}],["yaxconvert",{"2":{"27":2}}],["yaxdefaults",{"2":{"80":1}}],["yaxarraybase",{"2":{"27":1,"79":1,"80":1}}],["yaxarray",{"0":{"11":1,"17":1,"29":1,"36":1,"37":1,"47":1,"64":1,"82":1},"1":{"18":1,"19":1,"20":1,"37":1,"38":1,"39":1,"40":1},"2":{"2":1,"4":4,"5":4,"6":4,"7":1,"8":3,"9":3,"10":2,"12":1,"13":1,"14":2,"16":8,"17":2,"18":1,"19":2,"20":1,"21":6,"22":3,"23":1,"25":4,"26":3,"27":5,"29":5,"30":2,"32":3,"33":5,"34":1,"35":3,"36":1,"37":15,"39":4,"40":6,"41":3,"42":4,"44":2,"45":4,"46":4,"47":4,"50":2,"51":7,"52":1,"54":9,"55":1,"56":3,"58":2,"59":2,"60":1,"62":3,"63":2,"64":2,"65":3,"66":3,"67":5,"69":1,"70":1,"72":1,"75":2,"76":4,"79":10,"80":3,"82":1,"84":1,"93":5,"96":2,"100":1,"102":1}}],["yaxarrays",{"0":{"0":1,"1":1,"2":1,"7":1,"10":1,"16":1,"24":1,"28":1,"43":1,"48":1,"57":1,"63":1,"69":1,"86":1,"89":1,"99":1,"100":1},"1":{"2":1,"3":1,"4":1,"5":1,"6":1,"8":1,"9":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"25":1,"26":1,"27":1,"29":1,"30":1,"44":1,"45":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"58":1,"59":1,"60":1,"61":1,"62":1,"64":1,"65":1,"66":1,"67":1,"68":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"87":1,"88":1},"2":{"0":3,"2":1,"4":1,"5":1,"6":1,"8":1,"9":1,"10":2,"16":4,"17":1,"22":1,"23":2,"24":2,"25":1,"29":1,"32":1,"33":1,"35":1,"36":1,"37":1,"38":1,"39":2,"40":4,"44":1,"45":1,"46":2,"48":1,"57":1,"58":1,"59":1,"60":2,"63":1,"69":1,"74":1,"76":1,"79":28,"80":28,"81":1,"83":1,"86":1,"88":1,"89":4,"92":3,"93":3,"94":2,"96":1,"98":1,"99":1,"102":1}}],["yax",{"2":{"0":1,"17":1,"18":1,"19":1,"20":3,"21":4,"33":1,"46":3,"47":2}}],["y",{"2":{"4":2,"5":3,"6":2,"26":4,"27":3,"37":4,"41":4,"51":2,"52":1,"56":3,"60":1,"82":1,"93":5}}],["you",{"2":{"1":1,"23":1,"36":1,"40":3,"45":2,"61":1,"62":1,"71":1,"79":1,"80":2,"87":1,"88":2,"89":3,"92":2,"94":1,"98":3,"100":2}}],["yourself",{"2":{"88":1}}],["your",{"2":{"1":2,"40":2,"59":1,"74":2,"76":1,"79":1,"87":4,"88":4}}],["circshift",{"2":{"104":1}}],["ct1",{"2":{"102":4,"103":1}}],["cycle",{"0":{"95":1,"97":1},"1":{"96":1,"97":1},"2":{"96":4}}],["cycle=12",{"2":{"51":2,"52":1,"54":2,"55":2,"56":3}}],["cdata",{"2":{"80":1}}],["center",{"2":{"79":1,"95":1,"97":1}}],["certain",{"2":{"63":2,"80":1}}],["cell",{"2":{"58":2,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5,"79":1}}],["cf",{"2":{"58":2,"59":2,"63":2,"69":2,"75":2,"102":2}}],["cftime",{"2":{"51":2,"54":5,"55":2,"56":2,"59":6,"62":9,"63":3,"64":6,"65":7,"66":9,"67":15,"69":3,"75":3}}],["cmpcachmisses",{"2":{"80":1}}],["cm4",{"2":{"59":4,"63":4,"69":4,"75":4}}],["cmip",{"2":{"58":1,"102":1}}],["cmip6",{"2":{"58":3,"102":6}}],["cmor",{"2":{"58":2,"59":3,"62":3,"63":2,"64":2,"65":3,"66":3,"67":5,"69":2,"75":2,"102":1}}],["c54",{"2":{"56":1}}],["cb",{"2":{"56":1}}],["cbar",{"2":{"42":1}}],["cgrad",{"2":{"42":1}}],["cl",{"2":{"104":1,"105":1}}],["cl=lines",{"2":{"104":1,"105":1}}],["clean",{"2":{"80":1}}],["cleanme",{"2":{"80":4}}],["cleaner",{"2":{"79":2}}],["clevel=n",{"2":{"71":1}}],["climate",{"2":{"59":1,"63":1,"69":1,"75":1}}],["closedinterval",{"2":{"67":1}}],["closed",{"0":{"67":1},"2":{"67":3}}],["close",{"2":{"46":4}}],["cloud",{"2":{"11":1,"58":1}}],["classes=classes",{"2":{"42":1}}],["classes",{"2":{"42":8}}],["classification",{"2":{"42":2}}],["class",{"2":{"42":3}}],["clustermanagers",{"2":{"23":2}}],["cluster",{"2":{"23":1}}],["cpus",{"2":{"23":1}}],["cpu",{"2":{"23":1}}],["c",{"2":{"22":11,"32":5,"33":7,"34":3,"42":2,"45":2,"71":1,"73":4,"79":5,"80":3,"83":1,"96":4,"102":2}}],["custom",{"2":{"29":1,"79":1}}],["current",{"2":{"22":2,"79":1,"83":1,"97":1}}],["currently",{"2":{"16":1,"46":1,"50":1,"98":1}}],["cubeaxis",{"2":{"80":1}}],["cubeaxes",{"2":{"79":1}}],["cubedir",{"2":{"80":1}}],["cube2",{"2":{"79":1}}],["cube1",{"2":{"79":1}}],["cubelist",{"2":{"79":1}}],["cubefittable",{"2":{"42":2,"79":1}}],["cubetable",{"0":{"42":1},"2":{"42":3,"79":3}}],["cubes",{"0":{"35":1},"2":{"9":2,"17":1,"21":1,"35":2,"40":1,"41":2,"42":1,"64":1,"79":18,"80":9,"84":1}}],["cube",{"0":{"32":1,"34":1,"36":1,"84":1,"96":1},"1":{"33":1,"37":1,"38":1,"39":1,"40":1},"2":{"2":1,"4":1,"5":1,"6":1,"16":11,"17":2,"19":2,"21":2,"32":1,"34":1,"36":2,"40":1,"41":1,"42":2,"50":1,"76":1,"79":34,"80":19,"84":3,"100":1}}],["chose",{"2":{"83":1}}],["child",{"2":{"58":1,"102":1}}],["check",{"2":{"16":1,"76":1,"94":1}}],["changed",{"2":{"94":1,"98":1}}],["changes",{"2":{"62":1}}],["change",{"2":{"10":1,"79":1,"80":1}}],["chunkoffset",{"2":{"80":1}}],["chunksize`",{"2":{"80":1}}],["chunksizes",{"2":{"79":2}}],["chunksize",{"2":{"79":1,"80":3}}],["chunks",{"0":{"4":1},"2":{"2":5,"4":1,"5":1,"6":2,"79":4,"80":11}}],["chunked",{"2":{"2":5}}],["chunking",{"0":{"2":1,"3":1,"5":1,"6":1},"1":{"4":1,"5":1,"6":1},"2":{"1":1,"5":1,"79":4,"80":3}}],["chunk",{"0":{"1":1},"1":{"2":1,"3":1,"4":1,"5":1,"6":1},"2":{"1":1,"2":1,"4":1,"5":1,"79":4,"80":4}}],["criteria",{"2":{"42":1}}],["creation",{"2":{"47":1}}],["creating",{"0":{"22":1},"2":{"10":1,"33":1,"37":1,"76":1,"87":1}}],["createdataset",{"2":{"80":2}}],["created",{"2":{"80":2}}],["creates",{"2":{"42":1,"79":2,"80":1}}],["create",{"0":{"28":1,"29":1,"30":1,"47":1},"1":{"29":1,"30":1},"2":{"10":1,"16":1,"22":2,"28":1,"29":1,"33":1,"35":1,"37":2,"42":1,"46":1,"50":1,"54":1,"69":1,"74":1,"76":3,"79":1,"80":1,"93":1,"95":1}}],["crucial",{"2":{"1":1}}],["coastlines",{"2":{"104":3,"105":1}}],["cosd",{"2":{"79":1}}],["country",{"2":{"79":4}}],["country=cube2",{"2":{"79":1}}],["could",{"2":{"33":1,"46":1,"61":1}}],["copies",{"2":{"80":1}}],["copied",{"2":{"76":1}}],["copybuf",{"2":{"80":2}}],["copydata",{"2":{"80":1}}],["copy",{"2":{"32":1,"79":1,"88":1}}],["coordinates",{"2":{"58":1}}],["college",{"2":{"98":1}}],["collected",{"2":{"80":1}}],["collectfromhandle",{"2":{"80":1}}],["collection",{"2":{"31":1,"82":1}}],["collect",{"2":{"25":1,"34":3,"96":1}}],["column",{"2":{"80":1,"85":1}}],["colonperm",{"2":{"80":1}}],["color=",{"2":{"97":3}}],["color",{"2":{"95":1,"104":1,"105":1,"106":1}}],["colormap=",{"2":{"56":1}}],["colormap=makie",{"2":{"42":1}}],["colormap",{"2":{"56":3,"103":1,"104":1,"105":1,"106":1}}],["colorrange=",{"2":{"56":1}}],["colorrange",{"2":{"56":3}}],["colorbar",{"2":{"42":1,"56":2}}],["colgap",{"2":{"56":1}}],["colnames",{"2":{"46":1}}],["configuration",{"2":{"80":2}}],["concatenating",{"2":{"79":1}}],["concatenates",{"2":{"79":2}}],["concatenate",{"0":{"35":1},"2":{"35":2,"79":2}}],["concatenatecubes",{"0":{"9":1},"2":{"9":2,"35":2,"79":2}}],["concrete",{"2":{"79":2}}],["contributing",{"2":{"87":1}}],["contribute",{"0":{"86":1,"87":1},"1":{"87":1,"88":2}}],["contrast",{"2":{"79":1}}],["content",{"2":{"79":1}}],["contact",{"2":{"59":1,"63":1,"69":1,"75":1}}],["contains",{"2":{"67":1,"79":1,"80":1}}],["contain",{"2":{"58":1,"59":1,"80":1}}],["containing",{"0":{"47":1},"2":{"8":1,"42":1,"79":1,"83":1,"84":1}}],["continue",{"2":{"51":1}}],["consolidated=true",{"2":{"58":1,"102":1}}],["constructor",{"2":{"79":1}}],["constructs",{"2":{"79":1}}],["construct",{"0":{"46":1},"2":{"79":2}}],["consistent",{"2":{"58":1,"102":1}}],["consisting",{"2":{"8":1}}],["considering",{"2":{"49":1}}],["considered",{"2":{"42":1}}],["consider",{"2":{"17":1,"19":1,"21":1,"33":1}}],["convinient",{"2":{"31":1}}],["conventions",{"2":{"59":1,"63":1,"69":1,"75":1}}],["convenient",{"2":{"23":1}}],["conversion",{"2":{"24":1,"26":1,"27":1}}],["conversions",{"2":{"24":1}}],["converted",{"2":{"84":1}}],["convert",{"0":{"24":1,"25":1,"26":1,"27":1},"1":{"25":1,"26":1,"27":1},"2":{"24":1,"25":2,"27":2,"79":1,"80":1}}],["corresponding",{"2":{"7":1,"21":2,"22":2,"79":1,"84":1}}],["combining",{"0":{"101":1}}],["combined",{"2":{"9":2,"84":2}}],["combine",{"0":{"7":1},"1":{"8":1,"9":1},"2":{"7":1,"8":1,"9":1,"100":1}}],["command",{"2":{"89":2}}],["comment",{"2":{"58":1}}],["common",{"2":{"40":5,"79":1}}],["com",{"2":{"50":2,"60":1}}],["compiler",{"2":{"94":1}}],["compuation",{"2":{"79":1}}],["computing",{"2":{"42":1}}],["computations",{"2":{"13":1,"41":1}}],["computation",{"0":{"23":1},"2":{"13":1,"79":3,"80":3,"82":1}}],["computed",{"2":{"80":1}}],["compute",{"0":{"10":1},"1":{"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1},"2":{"96":1}}],["compares",{"2":{"80":1}}],["comparing",{"2":{"73":1}}],["compatible",{"2":{"60":1}}],["compress",{"2":{"73":2}}],["compress=n",{"2":{"73":1}}],["compressors",{"2":{"71":1}}],["compressor=compression",{"2":{"71":1}}],["compression",{"0":{"71":1,"73":1},"2":{"71":5,"73":4}}],["completely",{"2":{"61":1}}],["complexity",{"2":{"41":1}}],["complex",{"2":{"10":2,"93":1}}],["comply",{"2":{"59":1,"63":1,"69":1,"75":1}}],["comes",{"2":{"1":1}}],["code",{"2":{"6":1,"13":1,"23":2,"31":1,"46":1,"59":2}}],["cameracontrols",{"2":{"106":1}}],["came",{"2":{"84":1}}],["captialisation",{"2":{"80":1}}],["cairomakie",{"2":{"56":1,"95":2}}],["caxes",{"2":{"32":2,"79":2}}],["car",{"2":{"22":1}}],["cartesianindex",{"2":{"22":11}}],["caluclate",{"2":{"79":1}}],["calculations",{"2":{"56":1,"80":1}}],["calculating",{"2":{"14":1,"79":1}}],["calculates",{"2":{"79":1}}],["calculated",{"2":{"42":2,"51":1}}],["calculate",{"2":{"14":1,"22":1,"42":2,"48":1,"49":2,"51":1,"56":1,"80":2,"96":1}}],["calling",{"2":{"56":1}}],["called",{"2":{"16":1,"80":1,"82":3}}],["call",{"2":{"1":1,"23":1}}],["case",{"2":{"13":1,"19":1,"40":1,"53":1,"58":1,"62":1}}],["cases",{"2":{"0":1,"61":1,"67":1,"98":1}}],["cataxis",{"2":{"79":2}}],["categoricalaxis",{"2":{"79":1}}],["categorical",{"2":{"9":1,"17":1,"18":1,"19":1,"22":1,"35":1,"42":1,"46":4,"51":2,"52":1,"53":1,"54":2,"55":2,"56":3,"79":1,"80":1,"93":1}}],["cat",{"0":{"8":1},"2":{"8":2}}],["cache=1gb```",{"2":{"79":1}}],["cache=1e9",{"2":{"16":2}}],["cache=",{"2":{"79":1}}],["cache=5",{"2":{"79":1}}],["cache=yaxdefaults",{"2":{"79":1}}],["caches",{"2":{"0":1}}],["cachesize",{"2":{"0":2,"80":1}}],["cache",{"2":{"0":6,"74":1,"79":4,"80":7}}],["caching",{"0":{"0":1}}],["can",{"2":{"0":5,"2":1,"3":1,"13":2,"14":1,"16":3,"20":1,"22":1,"23":3,"29":2,"35":1,"36":1,"38":1,"40":1,"41":1,"42":2,"46":1,"52":1,"56":1,"58":2,"59":1,"60":1,"61":1,"68":1,"75":1,"76":1,"77":1,"79":13,"80":6,"82":3,"83":2,"84":1,"87":1,"89":2,"92":2,"98":2}}],["msc",{"2":{"96":3,"97":2}}],["mscarray",{"2":{"96":2}}],["md",{"2":{"87":2}}],["mfdataset",{"2":{"79":5}}],["mpi",{"2":{"58":1,"102":2}}],["m",{"2":{"25":2}}],["miss",{"2":{"80":1}}],["missing",{"2":{"14":2,"16":6,"18":1,"21":1,"22":2,"41":1,"42":2,"59":12,"62":6,"64":4,"65":6,"66":6,"67":10,"76":3,"77":1,"79":2,"80":2,"106":1}}],["minimized",{"2":{"80":1}}],["minutes",{"2":{"59":1,"62":3,"64":2,"65":3,"66":3,"67":5}}],["might",{"2":{"24":1,"61":1,"98":1}}],["mix",{"2":{"21":2}}],["mm",{"2":{"20":3,"59":2,"63":2,"69":2,"75":2}}],["mymean",{"2":{"23":4}}],["my",{"2":{"16":2,"59":1}}],["mahecha",{"2":{"84":1}}],["manager",{"2":{"92":1}}],["manual",{"2":{"59":1}}],["many",{"0":{"18":1,"19":2},"2":{"18":2,"19":2,"20":4,"62":1,"80":1,"82":1}}],["mar",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["marketdata",{"2":{"46":2}}],["master",{"2":{"50":1,"89":1}}],["mask",{"2":{"42":2}}],["makie",{"2":{"56":1,"106":1}}],["making",{"2":{"11":1,"59":1,"63":1}}],["make",{"2":{"39":1,"40":2,"76":1,"79":1,"80":2,"88":1,"106":1}}],["main",{"2":{"36":1,"80":1}}],["machine",{"2":{"23":1,"82":1}}],["matching",{"2":{"93":1}}],["match",{"2":{"80":2}}],["matched",{"2":{"79":1}}],["matches",{"2":{"20":1}}],["mat",{"2":{"22":4}}],["matrix",{"2":{"16":2,"22":1,"25":1,"46":1,"52":1,"56":2,"77":2,"82":1,"96":1}}],["maximal",{"2":{"80":1}}],["maximum",{"2":{"41":1,"79":1,"80":1}}],["maxbuf",{"2":{"80":1}}],["max",{"2":{"16":2,"71":1,"73":1,"74":1,"79":7,"80":2}}],["maxsize",{"2":{"0":2}}],["may",{"2":{"10":1,"15":1,"51":4,"52":2,"53":1,"54":4,"55":4,"56":6,"58":1,"59":1,"94":1}}],["maps",{"0":{"102":1},"1":{"103":1}}],["mapslice",{"2":{"23":1}}],["mapslices",{"0":{"14":1},"2":{"10":1,"13":1,"14":1,"23":1,"41":1,"96":1}}],["mapped",{"2":{"79":1}}],["mapping",{"2":{"79":1,"80":3}}],["mapcube",{"0":{"15":1},"1":{"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1},"2":{"10":1,"13":1,"15":1,"16":4,"18":1,"20":1,"21":2,"22":2,"23":3,"79":5,"80":2}}],["map",{"0":{"13":1,"41":1},"2":{"10":1,"13":2,"21":1,"22":3,"23":3,"41":4,"42":1,"51":2,"55":1,"56":1,"79":2,"93":1,"96":2}}],["moll",{"0":{"105":1}}],["mowingwindow",{"2":{"79":1}}],["module",{"2":{"79":1}}],["model",{"2":{"59":1,"63":1,"69":1,"75":1,"83":2}}],["modification",{"2":{"11":1,"23":1}}],["modify",{"0":{"11":1}}],["monthday",{"2":{"96":4}}],["monthly",{"0":{"49":1}}],["month",{"2":{"37":7,"39":3,"40":4,"49":1,"51":4,"52":1,"53":1,"54":5,"55":2,"56":3,"79":1,"96":2}}],["moment",{"2":{"27":1}}],["movingwindow",{"2":{"21":1,"79":4}}],["more",{"2":{"9":1,"10":1,"36":1,"41":1,"42":1,"66":1,"67":1,"71":1,"74":1,"79":3,"80":1,"84":1,"93":1}}],["most",{"2":{"1":1,"15":1,"24":1}}],["mesh",{"2":{"106":2}}],["merely",{"2":{"76":1}}],["measured",{"2":{"83":1,"84":1}}],["measure",{"2":{"82":1}}],["measures",{"2":{"58":1}}],["means",{"0":{"49":1},"2":{"14":1,"79":1}}],["mean",{"0":{"95":1,"97":1},"1":{"96":1,"97":1},"2":{"10":1,"14":3,"23":4,"42":4,"51":10,"52":2,"53":1,"56":2,"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5,"79":1,"96":5}}],["meter",{"2":{"58":1}}],["method",{"2":{"16":2,"18":1,"19":1,"21":1,"79":1}}],["methods",{"2":{"7":1,"23":1,"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5}}],["metadata",{"2":{"8":1,"9":1,"10":1,"12":1,"13":1,"14":2,"16":5,"17":1,"18":1,"19":1,"21":3,"22":3,"24":1,"25":1,"26":2,"27":3,"29":2,"32":1,"33":3,"34":1,"35":1,"37":5,"41":3,"42":3,"47":2,"51":2,"52":1,"54":3,"55":2,"56":3,"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5,"76":2,"79":1,"93":3,"96":1}}],["members",{"2":{"80":1}}],["member",{"2":{"6":1}}],["memory",{"0":{"61":1},"1":{"62":1},"2":{"1":1,"8":1,"10":1,"12":1,"13":1,"14":2,"16":3,"17":1,"18":1,"19":1,"21":3,"22":3,"24":3,"25":1,"26":1,"27":1,"29":2,"32":1,"33":3,"34":1,"37":5,"40":4,"41":3,"42":3,"47":2,"50":1,"54":1,"61":1,"62":4,"76":2,"79":2,"80":1,"82":1,"93":2,"96":1}}],["multi",{"2":{"17":2,"21":2}}],["multiplying",{"2":{"41":1}}],["multiply",{"2":{"10":1,"41":1}}],["multiple",{"0":{"45":1,"101":1},"2":{"7":1,"21":1,"23":1,"58":1,"59":1,"79":1,"82":1}}],["must",{"2":{"0":1,"79":1,"80":1,"84":1}}],["mb",{"2":{"0":1,"59":1,"62":3,"64":2}}],["pkg",{"2":{"89":2,"90":8,"92":2}}],["pkg>",{"2":{"88":1,"89":1}}],["purple",{"2":{"95":1}}],["purpose",{"2":{"31":1,"41":1}}],["pull",{"2":{"86":1}}],["public",{"0":{"79":1}}],["published",{"2":{"56":1}}],["pydata",{"2":{"50":1}}],["p",{"2":{"40":10,"59":1,"63":1,"69":1,"75":1}}],["picture",{"2":{"82":1,"83":1}}],["pieces",{"2":{"31":1}}],["pixel",{"0":{"95":1},"1":{"96":1,"97":1},"2":{"21":1,"23":2}}],["position",{"2":{"82":1}}],["positions",{"2":{"80":2}}],["positional",{"2":{"65":1,"66":1}}],["post=getpostfunction",{"2":{"79":1}}],["possible",{"2":{"23":2,"24":1,"35":1,"47":1,"76":1,"79":3,"80":1}}],["pos",{"2":{"22":2}}],["point3f",{"2":{"106":1}}],["point",{"2":{"22":3,"58":1,"93":1}}],["points",{"2":{"4":4,"5":4,"6":2,"8":1,"9":1,"10":3,"12":3,"13":3,"14":4,"16":9,"17":3,"18":3,"19":2,"20":3,"21":9,"22":16,"23":1,"25":2,"26":6,"27":4,"29":9,"30":3,"32":9,"33":6,"34":2,"35":3,"37":14,"39":6,"40":21,"41":9,"42":5,"44":1,"45":5,"46":4,"47":4,"51":3,"52":2,"54":2,"55":1,"56":7,"58":6,"59":6,"60":2,"62":9,"63":3,"64":6,"65":4,"66":9,"67":16,"68":2,"69":3,"75":6,"76":6,"82":2,"83":1,"93":5,"96":1,"102":3}}],["plt",{"2":{"103":1}}],["place",{"2":{"80":1}}],["please",{"2":{"59":1,"71":1}}],["plots",{"2":{"106":1}}],["plot",{"0":{"97":1,"103":1,"106":1},"2":{"56":2}}],["plotting",{"0":{"102":1},"1":{"103":1},"2":{"0":1,"90":1}}],["plus",{"2":{"18":3,"50":1,"79":1}}],["page",{"2":{"106":1}}],["paste",{"2":{"88":1}}],["pass",{"2":{"79":1}}],["passed",{"2":{"79":4}}],["passing",{"2":{"21":1,"79":3}}],["pair",{"2":{"80":1}}],["pairs",{"2":{"18":1,"20":1}}],["particular",{"2":{"85":1}}],["participate",{"2":{"79":1}}],["partitioned",{"2":{"80":1}}],["parts",{"2":{"79":1}}],["parent",{"2":{"58":1,"102":1}}],["parallelized",{"2":{"80":1}}],["parallelisation",{"2":{"79":1}}],["parallel",{"2":{"23":1,"82":1}}],["package",{"2":{"23":1,"66":1,"68":1,"78":1,"90":1,"92":1}}],["packages",{"2":{"16":1,"24":1}}],["paths",{"2":{"79":1,"80":2}}],["path=",{"2":{"16":2,"58":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"80":1}}],["path=f",{"2":{"4":1,"5":1,"6":1}}],["path",{"0":{"20":1},"2":{"0":1,"20":1,"50":2,"58":3,"59":2,"60":2,"63":2,"69":2,"74":3,"79":4,"88":1}}],["pr",{"2":{"88":1}}],["println",{"2":{"73":1}}],["printed",{"2":{"46":2}}],["primem",{"2":{"60":1}}],["prior",{"2":{"1":1}}],["props",{"2":{"93":2}}],["properly",{"2":{"49":1}}],["properties=dict",{"2":{"80":1}}],["properties=properties",{"2":{"18":2}}],["properties",{"0":{"17":1},"1":{"18":1,"19":1,"20":1},"2":{"10":2,"17":2,"18":2,"19":1,"20":2,"21":2,"23":2,"29":3,"30":3,"50":1,"56":1,"58":1,"59":1,"60":1,"63":1,"69":1,"75":1,"79":5,"80":1,"102":1}}],["probably",{"2":{"80":1}}],["process",{"2":{"80":2,"82":1}}],["processed",{"2":{"13":1}}],["provides",{"2":{"82":1,"99":1}}],["provide",{"2":{"79":1}}],["provided",{"2":{"36":1,"76":1,"79":2}}],["projection",{"0":{"104":1,"105":1},"1":{"105":1,"106":1},"2":{"60":1}}],["progressmeter",{"2":{"79":1}}],["progress",{"2":{"50":1,"98":1,"100":1}}],["product",{"2":{"22":1}}],["pressing",{"2":{"92":1}}],["pressed",{"2":{"89":1}}],["pre",{"2":{"79":2}}],["previous",{"2":{"56":1,"74":1,"76":1,"79":1}}],["previously",{"2":{"42":1}}],["prepared",{"2":{"59":1,"63":1,"69":1,"75":1}}],["prep",{"2":{"9":2}}],["precipitation",{"2":{"9":2,"83":1,"84":1,"93":2}}],["permute",{"2":{"80":1}}],["permuteloopaxes",{"2":{"80":1}}],["permutation",{"2":{"80":1}}],["persistend",{"2":{"80":1}}],["persistency",{"2":{"80":1}}],["persistent",{"2":{"79":1,"80":2}}],["persist",{"2":{"74":1,"79":1,"80":1}}],["perform",{"2":{"80":1}}],["performed",{"2":{"13":2}}],["performing",{"2":{"10":1}}],["per",{"2":{"7":1,"14":1,"51":1,"54":1,"55":1}}],["=interval",{"2":{"67":2}}],["===",{"2":{"46":1}}],["==",{"2":{"12":1,"46":1,"96":1}}],["=>nan",{"2":{"106":1}}],["=>",{"2":{"10":2,"12":1,"13":1,"16":2,"17":2,"18":3,"19":2,"20":1,"21":2,"22":5,"23":1,"29":3,"30":3,"44":1,"45":1,"46":5,"50":1,"51":5,"52":1,"54":3,"55":2,"56":3,"58":20,"59":20,"60":1,"62":30,"63":10,"64":20,"65":30,"66":30,"67":50,"69":10,"75":10,"93":6,"102":10}}],["=>2",{"2":{"4":1}}],["=>10",{"2":{"4":1}}],["=>5",{"2":{"4":1,"5":1}}],["=",{"2":{"0":5,"2":4,"4":9,"5":15,"6":9,"8":5,"9":5,"10":4,"11":1,"12":1,"13":1,"16":14,"17":4,"18":14,"19":7,"20":11,"21":12,"22":16,"23":5,"25":3,"26":8,"27":4,"29":5,"30":4,"32":1,"33":3,"35":6,"37":7,"39":6,"40":17,"42":7,"44":1,"45":3,"46":7,"47":4,"50":8,"51":16,"52":1,"53":1,"54":4,"55":1,"56":22,"58":2,"59":3,"60":2,"62":1,"63":2,"64":2,"65":6,"66":6,"67":3,"69":2,"71":2,"73":3,"74":8,"75":2,"76":4,"77":5,"79":13,"80":7,"93":5,"95":10,"96":11,"97":5,"102":8,"103":5,"104":7,"105":5,"106":6}}],["dc",{"2":{"80":2}}],["dkrz",{"2":{"58":1,"102":2}}],["dufresne",{"2":{"59":1,"63":1,"69":1,"75":1}}],["due",{"2":{"53":1}}],["dummy",{"2":{"35":1,"37":1,"95":1,"96":1}}],["during",{"2":{"22":1,"23":1,"24":1}}],["dd",{"2":{"32":1,"79":5,"96":1}}],["d",{"2":{"22":5,"46":5,"56":3,"96":1}}],["drop",{"2":{"56":1}}],["dropdims",{"0":{"52":1},"2":{"51":2,"52":2,"56":1}}],["drivers",{"2":{"79":1}}],["driver",{"2":{"48":1,"74":2,"79":6}}],["driver=",{"2":{"4":1,"5":1,"6":1,"70":2,"71":1,"72":2,"73":1,"74":3,"75":1,"76":2,"79":3}}],["drei",{"2":{"19":2}}],["dash",{"2":{"97":1}}],["danger",{"2":{"74":1}}],["daysinmonth",{"2":{"51":1,"54":1}}],["days",{"2":{"49":1,"51":2,"53":1,"54":2,"55":2}}],["dayofyear",{"2":{"16":1}}],["day",{"2":{"10":2,"12":1,"13":1,"14":1,"16":4,"17":2,"18":1,"21":3,"22":3,"23":1,"29":3,"30":1,"95":1,"96":4,"97":1}}],["datconfig",{"2":{"80":2}}],["datset",{"2":{"79":1}}],["dat",{"2":{"79":8,"80":16}}],["datum",{"2":{"60":1}}],["datetime360day",{"2":{"59":6,"62":9,"63":3,"64":6,"65":7,"66":9,"67":15,"69":3,"75":3}}],["datetimenoleap",{"2":{"51":2,"54":5,"55":2,"56":2}}],["datetime",{"2":{"20":1,"46":5,"58":2,"102":1}}],["date",{"2":{"10":5,"12":3,"13":3,"14":3,"16":12,"17":5,"18":3,"21":8,"22":11,"23":3,"29":8,"30":3,"37":24,"39":8,"40":11,"82":1,"95":2,"96":5,"102":1}}],["datesid",{"2":{"96":2}}],["dates",{"2":{"10":2,"12":1,"13":1,"14":1,"16":5,"17":2,"18":1,"21":2,"22":3,"23":1,"29":3,"30":1,"37":8,"39":4,"40":5,"48":1,"84":1,"95":1,"96":2,"102":1}}],["databases",{"2":{"82":1}}],["data=cube1",{"2":{"79":1}}],["dataframe",{"2":{"42":1,"79":1}}],["dataframes",{"2":{"42":1}}],["datacubes",{"2":{"79":1}}],["datacube",{"0":{"101":1},"2":{"42":2,"76":1,"79":1}}],["datatypes",{"2":{"36":1}}],["data1",{"2":{"35":2}}],["data3",{"2":{"30":1}}],["data2",{"2":{"29":2,"35":2}}],["datasetaxis",{"2":{"79":2,"80":1}}],["datasetaxis=",{"2":{"79":1,"80":1}}],["dataset",{"0":{"30":1,"36":1,"38":1,"39":1,"40":1,"43":1,"46":1,"74":1,"75":1,"77":1,"83":1},"1":{"37":1,"38":1,"39":2,"40":2,"44":1,"45":1},"2":{"0":3,"3":1,"4":4,"5":2,"6":3,"9":1,"10":1,"18":1,"20":2,"24":1,"30":2,"38":1,"39":3,"40":5,"44":2,"45":3,"46":5,"58":3,"59":3,"60":3,"63":3,"64":1,"69":3,"70":1,"71":1,"72":1,"73":1,"74":3,"75":4,"76":2,"77":2,"79":19,"80":9,"83":3,"84":2,"102":2}}],["datasets",{"0":{"3":1,"28":1,"48":1,"57":1,"63":1,"69":1},"1":{"4":1,"5":1,"6":1,"29":1,"30":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"58":1,"59":1,"60":1,"61":1,"62":1,"64":1,"65":1,"66":1,"67":1,"68":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1},"2":{"0":2,"24":1,"28":1,"40":1,"57":1,"61":1,"74":1,"79":9,"80":4,"100":1}}],["data",{"0":{"34":1,"50":1,"61":1,"84":1},"1":{"62":1},"2":{"0":3,"1":2,"7":1,"8":2,"9":1,"10":3,"11":1,"12":1,"13":1,"14":2,"16":9,"17":3,"18":1,"19":1,"21":6,"22":4,"23":2,"25":2,"26":2,"27":1,"29":2,"32":1,"33":3,"34":2,"35":1,"37":6,"39":1,"40":2,"41":3,"42":5,"50":8,"54":1,"58":3,"59":7,"62":6,"63":3,"64":4,"65":6,"66":6,"67":10,"69":3,"74":2,"75":3,"76":4,"77":1,"79":20,"80":12,"81":1,"82":3,"83":2,"84":3,"93":6,"94":1,"95":2,"96":2,"100":4,"102":5,"104":1}}],["dev",{"2":{"88":1}}],["dependencies",{"2":{"88":1}}],["depth",{"2":{"21":8}}],["detect",{"2":{"79":1,"80":1}}],["determined",{"2":{"80":1}}],["determines",{"2":{"79":1}}],["determine",{"2":{"1":1,"62":1,"79":1}}],["dense",{"2":{"82":1}}],["denoting",{"2":{"79":1}}],["denvil",{"2":{"59":2,"63":2,"69":2,"75":2}}],["deletes",{"2":{"74":1,"79":1}}],["delete",{"2":{"74":2,"76":1}}],["degree",{"2":{"60":1}}],["degc",{"2":{"59":1,"62":3,"64":2,"65":3,"66":3,"67":5}}],["dec",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["defaultfillval",{"2":{"80":1}}],["defaults",{"2":{"79":7}}],["default",{"2":{"18":1,"73":3,"76":1,"79":1,"80":4}}],["definition",{"2":{"84":1}}],["definitions",{"2":{"17":1,"19":1}}],["defining",{"2":{"23":1}}],["defines",{"2":{"79":1}}],["defined",{"2":{"18":1,"26":1,"27":1,"42":1,"56":1,"68":1,"76":1,"82":1,"85":1,"93":1}}],["define",{"0":{"96":1},"2":{"16":2,"18":1,"37":1,"42":1,"56":1,"79":2,"95":1}}],["deal",{"2":{"17":1}}],["dest",{"2":{"105":1}}],["desc",{"2":{"79":3,"80":3}}],["descriptor",{"2":{"80":4}}],["descriptors",{"2":{"79":2}}],["descriptions",{"2":{"79":1}}],["description",{"2":{"17":2,"19":2,"21":2,"36":1,"79":4,"80":11}}],["described",{"2":{"100":1}}],["describe",{"2":{"79":2}}],["describes",{"2":{"7":1,"10":1,"24":1,"28":1,"57":1,"67":1,"78":1,"80":1,"81":1}}],["describing",{"2":{"79":1}}],["designed",{"2":{"24":2,"82":1}}],["desired",{"2":{"16":1,"80":4}}],["demand",{"2":{"13":1}}],["diverging",{"2":{"56":1}}],["divided",{"2":{"41":1}}],["differing",{"2":{"79":1}}],["difference",{"2":{"56":1}}],["differences",{"2":{"46":1,"51":1,"56":1,"80":1}}],["different",{"0":{"21":1},"2":{"9":2,"16":1,"17":2,"23":1,"32":1,"33":1,"45":1,"49":1,"79":3,"80":2,"83":1,"98":1}}],["diff",{"2":{"51":2,"56":3}}],["directory",{"2":{"58":1,"70":2,"72":2}}],["directories",{"2":{"57":1,"80":1}}],["direct",{"2":{"46":1}}],["directly",{"2":{"16":1,"20":1,"27":1,"28":1,"29":1,"77":2}}],["dictionary",{"2":{"79":3,"83":1}}],["dict",{"2":{"4":1,"5":1,"8":1,"9":1,"10":2,"12":1,"13":1,"14":2,"16":5,"17":2,"18":3,"19":2,"20":1,"21":4,"22":4,"23":1,"25":1,"26":2,"27":3,"29":4,"30":2,"32":1,"33":3,"34":1,"35":1,"37":5,"41":3,"42":3,"46":2,"47":2,"51":3,"52":2,"54":4,"55":3,"56":3,"58":2,"59":2,"60":1,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"69":1,"75":1,"76":1,"79":3,"93":3,"96":1,"102":1}}],["dimvector",{"2":{"79":1}}],["dime",{"2":{"58":1}}],["dimensionaldata",{"2":{"22":1,"27":2,"32":1,"33":1,"37":1,"39":1,"40":1,"46":1,"48":1,"50":1,"51":16,"52":10,"54":6,"55":6,"56":39,"66":1,"67":2,"68":3,"82":1,"85":1,"90":1,"93":1,"94":3,"96":1,"102":1}}],["dimensional",{"2":{"17":2,"19":2,"21":2,"79":1,"81":1,"82":2}}],["dimensions",{"0":{"39":1,"40":1},"2":{"9":1,"10":1,"13":1,"15":1,"16":2,"20":1,"21":1,"22":2,"23":1,"29":2,"33":1,"35":1,"38":1,"40":3,"41":2,"45":1,"50":1,"51":16,"52":10,"54":6,"55":6,"56":39,"62":1,"63":1,"68":2,"79":8,"80":3,"82":3,"83":1,"93":3,"94":1}}],["dimension",{"0":{"8":1,"9":1,"68":1,"85":1},"2":{"2":1,"8":2,"9":1,"10":1,"14":2,"16":3,"18":1,"19":1,"22":3,"37":1,"40":1,"52":1,"53":1,"56":1,"66":1,"68":1,"79":7,"80":3,"82":1,"84":1,"85":1,"93":1}}],["dimgroupbyarray",{"2":{"51":1,"54":1}}],["dimarray",{"0":{"27":1},"2":{"22":3,"27":6,"51":1,"52":1,"54":1,"55":2,"56":3,"79":2,"82":1}}],["dims=2",{"2":{"96":1}}],["dims=",{"2":{"14":2,"23":1,"41":1,"51":5,"52":1,"54":1,"56":1}}],["dims",{"2":{"8":3,"9":1,"10":1,"12":1,"13":1,"14":2,"16":5,"17":1,"18":1,"19":1,"21":3,"22":4,"25":1,"26":3,"27":2,"29":2,"32":3,"33":4,"34":1,"35":1,"37":5,"41":3,"42":3,"46":1,"47":2,"50":1,"51":6,"52":1,"54":5,"55":2,"56":5,"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5,"76":1,"93":2,"96":1}}],["dim",{"2":{"2":2,"4":7,"5":8,"6":2,"8":2,"9":3,"10":3,"16":3,"17":4,"21":6,"22":4,"23":3,"25":2,"27":2,"29":7,"32":9,"33":6,"34":3,"35":4,"37":3,"39":3,"40":2,"44":1,"45":5,"46":2,"47":4,"51":2,"52":2,"56":6,"75":3,"76":6,"79":1,"93":4,"96":1}}],["disregard",{"2":{"80":1}}],["dispatch",{"2":{"80":1}}],["displayed",{"2":{"62":1}}],["discribe",{"2":{"79":2}}],["discussion",{"2":{"71":1}}],["distribute",{"2":{"23":1}}],["distributed",{"0":{"23":1},"2":{"0":1,"23":2}}],["diskarray",{"2":{"79":1}}],["diskarrays",{"2":{"2":9,"4":4,"5":4,"6":4,"79":2,"80":1}}],["disk",{"2":{"1":1,"16":1,"20":1,"27":1,"76":3,"77":2,"79":1,"80":2,"82":1}}],["dodgerblue",{"2":{"97":1}}],["documenter",{"2":{"106":1}}],["documentation",{"0":{"87":1},"1":{"88":1}}],["docs",{"0":{"88":1},"2":{"83":1,"87":2,"88":6,"94":1}}],["docstring",{"2":{"79":1}}],["doc",{"2":{"74":1}}],["don",{"2":{"71":1}}],["done",{"2":{"33":1,"41":1,"56":1,"61":1,"87":2}}],["download",{"0":{"50":1},"2":{"50":1,"59":2,"60":2,"63":2,"69":2}}],["downloads",{"2":{"48":1,"50":1,"59":1,"60":1,"63":1,"69":1}}],["doing",{"2":{"23":1,"32":1,"34":1,"88":1}}],["does",{"2":{"23":1,"76":1,"79":2,"80":1}}],["dot",{"2":{"21":1,"97":1}}],["do",{"0":{"35":1,"36":1,"41":1,"42":1,"43":1,"46":1},"1":{"37":1,"38":1,"39":1,"40":1,"44":1,"45":1},"2":{"1":1,"13":1,"16":1,"22":3,"23":1,"31":2,"41":1,"49":1,"56":1,"76":1,"77":1,"80":1,"88":1,"92":1}}],["dsw",{"2":{"51":2,"56":2}}],["dsfinal",{"2":{"35":1,"41":2,"42":2}}],["ds2",{"2":{"35":3,"41":1,"75":1}}],["ds1",{"2":{"35":3,"41":3,"42":1}}],["dschunked",{"2":{"4":3,"5":3,"6":3}}],["ds",{"2":{"0":3,"4":2,"5":2,"6":2,"30":1,"39":2,"40":12,"44":1,"45":1,"46":2,"50":5,"51":10,"54":1,"56":3,"58":1,"59":2,"60":1,"62":3,"63":1,"64":2,"69":1,"70":3,"71":2,"72":3,"73":7,"74":3,"75":2,"76":1,"77":5,"79":3,"80":1,"106":2}}],["wglmakie",{"2":{"106":2}}],["wgs",{"2":{"60":3}}],["would",{"2":{"79":2}}],["world",{"2":{"60":2}}],["workdir",{"2":{"80":1}}],["worker",{"2":{"79":1}}],["workers",{"2":{"79":1}}],["workflow",{"2":{"61":1}}],["workflows",{"2":{"1":1}}],["work",{"2":{"24":2,"50":1,"79":1,"81":1,"98":2,"100":1}}],["workload",{"2":{"23":1}}],["working",{"2":{"16":1,"77":1}}],["works",{"2":{"6":1,"34":1,"39":1,"40":1,"76":1}}],["written",{"2":{"79":1,"80":1}}],["writing",{"2":{"77":1}}],["writefac",{"2":{"80":1}}],["writefac=4",{"2":{"74":1,"79":1}}],["writes",{"2":{"79":1}}],["write",{"0":{"69":1,"70":1,"72":1},"1":{"70":1,"71":2,"72":1,"73":2,"74":1,"75":1,"76":1,"77":1},"2":{"76":1,"79":2}}],["wrapping",{"2":{"53":1,"68":2}}],["wrapped",{"2":{"16":1}}],["wrap",{"2":{"0":1,"79":1}}],["www",{"2":{"59":1,"63":1,"69":1}}],["w",{"2":{"56":2,"77":2}}],["was",{"2":{"20":1,"22":1,"23":1,"80":1}}],["way",{"2":{"15":1,"24":1,"32":1}}],["warning",{"2":{"11":1,"24":1,"32":1,"40":1,"45":1,"47":1,"50":1,"74":1,"76":1,"79":1}}],["wanted",{"2":{"80":1}}],["wants",{"2":{"76":1}}],["want",{"0":{"90":1},"2":{"0":1,"1":1,"61":1,"80":1,"84":1,"88":1,"89":1,"100":1}}],["white",{"2":{"104":1,"105":1}}],["while",{"2":{"76":1}}],["which",{"2":{"9":1,"16":1,"22":2,"33":1,"40":2,"56":1,"59":1,"62":1,"64":1,"67":1,"68":1,"79":5,"80":4,"84":3,"100":1}}],["whose",{"0":{"39":1,"40":1}}],["whole",{"2":{"8":3}}],["whether",{"2":{"80":2}}],["when",{"2":{"1":1,"6":1,"13":1,"62":1,"79":3,"80":1,"84":1}}],["whereas",{"2":{"82":1}}],["where",{"2":{"0":1,"23":1,"40":4,"49":1,"67":1,"77":1,"79":1,"80":4}}],["wintri",{"0":{"104":1},"1":{"105":1,"106":1}}],["windowloopinds",{"2":{"80":1}}],["window",{"2":{"79":1,"80":1}}],["without",{"2":{"80":1}}],["within",{"2":{"66":1}}],["with",{"0":{"47":1},"2":{"4":1,"5":1,"8":1,"10":1,"12":1,"13":1,"16":7,"17":3,"18":2,"19":2,"21":3,"22":4,"23":2,"24":1,"29":3,"32":1,"33":1,"40":6,"41":2,"42":3,"45":2,"46":3,"47":1,"51":3,"52":1,"54":2,"55":2,"56":5,"58":3,"59":2,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"69":1,"71":1,"73":1,"74":1,"75":2,"76":2,"77":1,"79":11,"80":1,"81":1,"83":1,"87":1,"93":4,"94":3,"98":1,"100":1,"102":2,"104":1}}],["will",{"2":{"0":1,"1":1,"4":1,"5":1,"13":1,"16":3,"17":2,"18":1,"19":1,"22":1,"36":1,"40":1,"41":2,"42":2,"45":2,"46":1,"48":1,"53":2,"59":1,"74":3,"76":3,"77":1,"79":12,"80":3,"100":1}}],["wether",{"2":{"79":1}}],["weight=",{"2":{"79":1}}],["weight=nothing",{"2":{"79":1}}],["weight",{"0":{"54":1},"1":{"55":1,"56":1},"2":{"53":1,"55":1,"56":1}}],["weights",{"0":{"55":1},"2":{"51":3,"55":2,"56":1}}],["weightedmean",{"2":{"79":1}}],["weighted",{"0":{"56":1},"2":{"42":1,"49":1,"51":8,"56":8,"79":3}}],["well",{"2":{"42":1,"46":1,"76":1,"79":1}}],["welcome",{"2":{"6":1,"86":1}}],["were",{"2":{"13":2,"67":1,"80":1,"95":1}}],["we",{"2":{"0":1,"8":2,"9":1,"13":2,"14":1,"16":5,"17":3,"18":1,"19":1,"20":1,"22":5,"23":2,"29":2,"33":1,"35":1,"36":1,"37":1,"38":1,"40":2,"41":2,"42":5,"46":4,"51":1,"52":1,"53":2,"56":1,"58":1,"66":1,"76":3,"77":4,"84":1,"94":2,"95":1,"102":1}}],["oob",{"2":{"79":1}}],["o1",{"2":{"59":2,"63":2,"69":2,"75":1}}],["ocean",{"2":{"59":1,"63":1,"69":1,"75":1}}],["oct",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["occuring",{"2":{"4":1}}],["o",{"2":{"50":4,"56":4,"79":5}}],["ohlcv",{"2":{"46":3}}],["ouput",{"2":{"88":1}}],["our",{"2":{"41":1,"42":1,"96":1}}],["outcube",{"2":{"80":1}}],["outcubes",{"2":{"80":1}}],["outcs",{"2":{"80":1}}],["outsize",{"2":{"80":1}}],["outar",{"2":{"80":2}}],["out",{"2":{"50":1,"79":2,"80":1}}],["outtype",{"2":{"16":2,"79":1,"80":2}}],["outdims=outdims",{"2":{"22":1,"23":1}}],["outdims",{"0":{"17":1,"18":1,"19":1,"20":1},"1":{"18":1,"19":1,"20":1},"2":{"16":4,"18":12,"19":2,"20":11,"21":3,"79":6}}],["outputcube",{"2":{"80":3}}],["outputs",{"2":{"16":1,"18":2,"21":1}}],["output",{"2":{"6":1,"16":3,"17":1,"18":1,"22":1,"23":3,"59":1,"63":1,"69":1,"75":1,"79":11,"80":9,"106":1}}],["optimal",{"2":{"80":1}}],["optifunc",{"2":{"80":1}}],["optionally",{"2":{"79":1}}],["option",{"2":{"37":1,"39":1,"71":1}}],["options",{"2":{"34":1}}],["operates",{"2":{"79":1}}],["operate",{"2":{"21":1}}],["operation",{"2":{"21":1,"80":1}}],["operations",{"0":{"16":1},"2":{"10":1,"51":1,"79":2,"80":3}}],["operating",{"2":{"19":1}}],["opens",{"2":{"79":1}}],["openinterval",{"2":{"67":1}}],["open",{"0":{"67":1},"2":{"0":2,"18":1,"20":2,"46":4,"58":2,"59":2,"60":1,"63":2,"67":2,"69":1,"71":1,"75":1,"77":6,"79":7,"102":1}}],["obj",{"2":{"42":2,"95":1,"97":1}}],["objects",{"2":{"79":2}}],["object",{"2":{"11":1,"58":1,"79":5,"80":3}}],["obtain",{"0":{"34":1},"2":{"46":1,"53":1}}],["omit",{"2":{"23":1}}],["otherwise",{"2":{"79":1}}],["others",{"2":{"21":1,"46":1}}],["other",{"0":{"98":1},"1":{"99":1,"100":1,"101":1},"2":{"20":1,"24":1,"61":1,"98":1,"100":1}}],["overview",{"0":{"99":1},"2":{"98":1,"99":1}}],["overwrite",{"0":{"74":1},"2":{"74":3,"79":4,"80":2}}],["overwrite=true",{"2":{"16":2,"74":2,"76":3}}],["over",{"0":{"16":1,"100":1},"2":{"10":1,"15":1,"21":1,"23":1,"56":1,"79":8,"80":1,"100":1}}],["ormax",{"2":{"79":1}}],["orca2",{"2":{"59":1,"63":1,"69":1,"75":1}}],["orangered",{"2":{"42":1}}],["ordered",{"2":{"82":1,"83":1}}],["ordereddict",{"2":{"22":1}}],["orderedcollections",{"2":{"22":1}}],["order",{"2":{"16":1,"49":1,"77":1}}],["original",{"2":{"59":2,"62":6,"64":4,"65":6,"66":6,"67":10}}],["originates",{"2":{"9":1}}],["origin",{"2":{"10":2,"12":1,"13":1,"23":1,"29":3,"30":1,"93":2}}],["or",{"0":{"36":1},"1":{"37":1,"38":1,"39":1,"40":1},"2":{"1":2,"6":1,"10":1,"13":2,"15":1,"27":1,"33":1,"38":1,"47":2,"58":1,"61":1,"63":2,"71":1,"74":1,"79":22,"80":7,"82":3,"85":2,"89":1,"92":1,"93":2}}],["once",{"2":{"56":1,"80":1,"84":1,"87":1}}],["onlinestat",{"2":{"79":2}}],["onlinestats",{"2":{"42":2}}],["only",{"2":{"6":1,"13":1,"14":1,"16":1,"20":1,"22":1,"24":1,"29":2,"41":1,"59":1,"76":1,"79":2}}],["on",{"2":{"1":2,"6":1,"7":1,"10":2,"13":2,"16":1,"23":2,"31":1,"59":2,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"69":1,"71":1,"75":1,"76":1,"79":5,"80":4,"82":1}}],["ones",{"2":{"17":1,"33":1}}],["oneto",{"2":{"4":4,"5":4,"6":2,"25":2,"29":3,"32":9,"33":6,"44":1,"45":5,"47":4,"76":6,"93":2}}],["one",{"0":{"18":1,"44":1},"2":{"0":1,"7":1,"8":2,"14":2,"18":15,"19":5,"20":6,"21":2,"22":2,"42":1,"46":1,"52":1,"59":1,"76":2,"79":9,"80":3,"82":2,"83":1,"98":1}}],["own",{"2":{"0":1,"59":1}}],["offline=true",{"2":{"106":1}}],["offsets",{"2":{"80":1}}],["offset",{"2":{"13":1}}],["often",{"2":{"7":1}}],["of",{"0":{"11":1,"40":1,"49":1,"77":1,"99":2},"2":{"0":2,"1":1,"6":1,"8":3,"9":1,"10":2,"11":1,"12":1,"13":2,"14":1,"15":1,"22":7,"23":3,"24":1,"26":1,"27":1,"31":3,"32":3,"36":1,"37":2,"38":1,"39":1,"40":2,"41":1,"42":1,"49":1,"50":1,"54":1,"59":1,"62":1,"63":3,"64":1,"66":1,"68":1,"69":1,"75":1,"76":1,"77":1,"78":1,"79":53,"80":42,"82":7,"83":1,"84":2,"85":2,"93":1,"94":2,"96":2,"97":1,"98":1,"99":1}}],["eo",{"2":{"98":1}}],["esdltutorials",{"2":{"98":1}}],["esm1",{"2":{"58":1,"102":2}}],["eltype",{"2":{"93":1}}],["elementtype",{"2":{"80":1}}],["element",{"2":{"8":1,"9":1,"10":2,"13":2,"14":1,"16":3,"22":2,"34":1,"42":1,"51":2,"52":1,"53":1,"54":7,"55":2,"56":3,"65":2,"68":1,"79":1,"80":1,"83":1,"84":2,"96":1}}],["elements",{"0":{"11":1,"65":1},"2":{"8":1,"12":1,"13":2,"23":1,"63":1,"79":1,"80":1,"82":1}}],["empty",{"2":{"80":1}}],["embeds",{"2":{"79":1}}],["either",{"2":{"79":2}}],["error",{"2":{"74":1}}],["epsg",{"2":{"60":5}}],["et",{"2":{"59":1,"63":1,"69":1,"75":1,"84":1}}],["edu",{"2":{"59":1,"63":1,"69":1,"83":1}}],["equivalent",{"2":{"56":1,"68":1}}],["equally",{"2":{"0":1}}],["effectively",{"2":{"41":1}}],["env",{"2":{"88":1}}],["ensure",{"2":{"59":1}}],["enabling",{"2":{"29":1}}],["enter",{"2":{"92":1}}],["entire",{"2":{"22":1,"24":1,"70":1,"72":1}}],["entries",{"2":{"22":1,"46":1,"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5,"77":1,"79":1,"93":1}}],["entry",{"2":{"10":1,"12":1,"13":1,"16":2,"17":1,"18":1,"19":1,"21":1,"29":2,"51":2,"52":1,"54":2,"55":2,"56":3,"79":1,"87":3}}],["enumerate",{"2":{"22":2,"56":2}}],["end",{"2":{"13":1,"16":1,"18":1,"19":2,"21":2,"22":4,"23":2,"41":1,"51":2,"56":2,"59":1,"96":2,"106":1}}],["exist",{"2":{"79":1}}],["exists",{"2":{"74":1,"79":1,"80":1}}],["existing",{"0":{"8":1},"2":{"74":1,"75":1}}],["exportable=true",{"2":{"106":1}}],["expression",{"2":{"79":1}}],["experiment",{"2":{"59":3,"63":3,"69":3,"75":3}}],["explicitly",{"2":{"13":1,"33":1,"36":1,"80":1}}],["executes",{"2":{"79":1}}],["execute",{"2":{"23":1}}],["external",{"2":{"58":1,"102":1}}],["extension",{"2":{"79":2}}],["extent",{"2":{"26":2}}],["extended",{"2":{"16":1,"79":1,"80":2}}],["extracts",{"2":{"80":1}}],["extract",{"0":{"32":1},"1":{"33":1},"2":{"80":1}}],["extracted",{"2":{"21":1}}],["extra",{"2":{"23":1}}],["exactly",{"2":{"5":1,"34":1,"46":1}}],["examples",{"2":{"6":1,"34":2,"48":1,"59":1,"63":1,"69":1,"87":1}}],["example",{"2":{"0":1,"1":1,"5":1,"10":1,"17":1,"21":1,"23":2,"33":1,"39":1,"40":1,"41":1,"42":1,"49":1,"59":1,"61":1,"63":2,"69":2,"79":4,"80":1,"82":2,"83":1,"84":1,"87":2,"93":2}}],["e",{"2":{"7":1,"8":1,"10":1,"11":1,"13":1,"22":2,"23":1,"26":1,"27":1,"29":1,"37":1,"59":1,"68":1,"74":1,"79":6,"80":1,"82":1,"85":1,"88":1,"93":1}}],["east",{"2":{"60":1}}],["easier",{"2":{"29":1,"63":1}}],["easily",{"2":{"0":1,"23":1}}],["easy",{"2":{"26":1,"27":1}}],["each",{"2":{"4":1,"5":1,"10":1,"13":1,"20":1,"22":5,"23":2,"41":2,"42":2,"49":1,"53":1,"62":1,"79":3,"80":3,"83":1,"85":1,"93":1}}],["everywhere",{"2":{"23":2}}],["every",{"2":{"0":1,"10":1,"13":1,"79":1}}],["features",{"2":{"99":1}}],["feel",{"2":{"71":1}}],["feb",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["frame",{"2":{"100":1}}],["frames",{"2":{"82":1}}],["front",{"2":{"80":1}}],["from",{"0":{"32":1,"34":2,"46":1,"49":1},"1":{"33":1},"2":{"0":1,"8":1,"9":1,"24":1,"32":1,"33":1,"34":4,"40":3,"46":2,"62":1,"67":1,"77":1,"79":6,"80":6,"84":2,"93":1,"96":1}}],["free",{"2":{"71":1}}],["frequently",{"0":{"31":1},"1":{"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1}}],["fr",{"2":{"59":1,"63":1,"69":1,"75":1}}],["fallback",{"2":{"80":1}}],["falls",{"2":{"79":1}}],["false",{"2":{"18":1,"20":1,"47":1,"74":2,"79":3,"80":1}}],["fails",{"2":{"79":1}}],["faq",{"0":{"31":1},"1":{"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1}}],["faster",{"2":{"80":1}}],["fastest",{"2":{"1":1}}],["fast",{"2":{"1":1,"13":1}}],["f2mix",{"2":{"19":3}}],["f2",{"2":{"18":3}}],["f1",{"2":{"18":2,"19":1}}],["fu",{"2":{"80":1}}],["funtion",{"2":{"96":1}}],["fun",{"2":{"79":4}}],["functionality",{"0":{"99":1}}],["functions",{"2":{"10":2,"21":1,"78":1,"79":1,"80":1,"82":2}}],["function",{"0":{"42":1},"2":{"0":1,"1":1,"13":2,"15":1,"16":6,"17":1,"18":2,"19":2,"21":5,"23":6,"32":2,"35":1,"41":1,"42":1,"46":1,"48":1,"51":1,"53":1,"56":1,"61":1,"67":1,"76":1,"79":22,"80":13}}],["future",{"2":{"50":1}}],["further",{"2":{"13":1,"98":1}}],["flag",{"2":{"80":3}}],["flat",{"2":{"18":4,"19":2,"20":2}}],["float32",{"2":{"16":6,"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5,"76":2,"77":4,"80":1}}],["float64",{"2":{"8":1,"9":1,"10":3,"12":3,"13":3,"14":4,"17":2,"18":2,"19":2,"20":2,"21":3,"22":9,"25":2,"26":2,"27":4,"29":6,"30":2,"32":1,"33":3,"35":4,"41":12,"42":5,"46":2,"51":3,"52":2,"55":3,"56":6,"58":4,"59":4,"60":2,"62":6,"63":2,"64":4,"65":2,"66":6,"67":10,"68":3,"69":2,"75":2,"79":1,"80":1,"93":7,"96":2,"102":2}}],["flexible",{"2":{"9":1,"15":1}}],["folder",{"2":{"88":1}}],["follow",{"2":{"88":1,"98":1}}],["follows",{"2":{"16":2,"19":1,"21":1,"51":1,"56":1,"77":1}}],["following",{"2":{"2":1,"5":1,"6":1,"16":1,"17":1,"18":1,"21":1,"23":1,"33":1,"48":1,"49":1,"50":1,"79":2,"80":4,"89":2,"90":1,"98":1}}],["found",{"2":{"79":1,"80":1}}],["fourth",{"2":{"59":2,"63":2,"69":2,"75":2}}],["fontsize=24",{"2":{"103":1}}],["fontsize=18",{"2":{"56":1}}],["font=",{"2":{"56":1}}],["forwarded",{"2":{"79":1}}],["forwardordered",{"2":{"4":4,"5":4,"6":2,"8":1,"9":1,"10":3,"12":3,"13":3,"14":3,"16":9,"17":4,"18":4,"19":3,"20":3,"21":9,"22":9,"25":2,"26":6,"27":4,"29":9,"30":3,"32":9,"33":6,"34":2,"35":4,"37":14,"39":6,"40":10,"41":9,"42":5,"44":1,"45":5,"46":4,"47":4,"51":3,"52":2,"54":2,"55":1,"56":7,"58":6,"59":6,"60":1,"62":9,"63":3,"64":6,"65":4,"66":9,"67":15,"68":2,"69":3,"75":6,"76":6,"93":5,"96":1,"102":3}}],["force",{"2":{"79":1}}],["forcing",{"2":{"58":1,"102":1}}],["formal",{"2":{"84":1}}],["format",{"2":{"71":1,"73":1,"74":1,"79":1,"96":1}}],["forms",{"2":{"79":1,"80":2}}],["former",{"2":{"32":1}}],["for",{"0":{"6":1,"95":1},"1":{"96":1,"97":1},"2":{"0":2,"1":3,"4":1,"5":1,"6":1,"20":1,"22":4,"23":1,"37":1,"39":2,"40":2,"41":4,"42":6,"46":5,"50":1,"54":1,"56":3,"59":2,"61":2,"62":1,"63":1,"67":1,"68":1,"69":1,"74":1,"75":1,"76":2,"79":20,"80":16,"82":4,"83":3,"84":1,"90":1,"95":1,"96":2,"98":1}}],["f",{"2":{"2":2,"16":3}}],["field",{"2":{"79":1}}],["fields",{"2":{"42":1,"79":1,"80":4}}],["figure=",{"2":{"97":1}}],["figure",{"2":{"56":2,"95":1,"97":1,"103":1,"104":1,"105":1,"106":1}}],["fig",{"2":{"42":3,"56":8,"95":1,"97":1,"103":2,"104":2,"105":2,"106":3}}],["filterig",{"2":{"96":1}}],["filter",{"2":{"79":2}}],["fillarrays",{"2":{"76":3}}],["fill",{"2":{"76":1,"79":1,"80":1}}],["fillvalue=",{"2":{"80":1}}],["fillvalue",{"2":{"50":3,"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5}}],["filling",{"2":{"28":1,"29":1}}],["filename",{"2":{"50":2,"79":1}}],["files",{"0":{"101":1},"2":{"7":1,"57":1,"60":1,"79":5,"80":2,"88":1}}],["file",{"2":{"2":1,"7":1,"27":1,"40":1,"59":2,"73":3,"74":2,"76":1,"79":2,"87":4}}],["findaxis",{"2":{"80":1}}],["findall",{"2":{"22":1,"96":1}}],["find",{"2":{"36":1,"80":1,"98":1}}],["finalizer",{"2":{"80":1}}],["finalize",{"2":{"80":1}}],["finally",{"2":{"22":1,"79":1}}],["final",{"2":{"21":1,"22":1}}],["firstly",{"2":{"37":1}}],["first",{"2":{"8":4,"16":3,"18":1,"22":1,"42":1,"45":1,"56":1,"77":1,"79":4,"80":1,"87":1,"93":1,"102":1}}],["fitting",{"2":{"79":1}}],["fittable",{"2":{"79":2}}],["fitcube",{"2":{"42":2}}],["fitsym",{"2":{"79":4}}],["fits",{"2":{"24":1}}],["fit",{"2":{"1":1,"61":1,"82":1}}],["t=union",{"2":{"80":1}}],["typing",{"2":{"92":1}}],["typically",{"2":{"79":1}}],["type",{"2":{"33":1,"47":1,"79":8,"80":3,"82":1,"84":1,"93":1,"94":1}}],["types",{"0":{"81":1},"1":{"82":1,"83":1,"84":1,"85":1},"2":{"24":2,"26":1,"27":1,"47":1,"65":1,"79":2,"83":1,"94":1}}],["tutorial",{"2":{"98":2,"99":1,"100":1}}],["tutorials",{"0":{"98":1},"1":{"99":1,"100":1,"101":1},"2":{"67":1,"98":3}}],["turn",{"2":{"79":1}}],["tuple",{"2":{"2":3,"4":1,"5":1,"6":1,"18":1,"20":1,"51":2,"52":1,"54":2,"55":2,"56":4,"79":5,"80":1}}],["tbl",{"2":{"42":2}}],["target",{"2":{"80":1}}],["tab",{"2":{"79":4}}],["tables",{"2":{"100":1}}],["tableaggregator",{"2":{"79":1}}],["table",{"0":{"100":1},"2":{"42":2,"58":1,"59":2,"63":2,"69":2,"75":2,"79":4,"80":1,"102":1}}],["tas",{"2":{"58":5,"102":5}}],["tair",{"2":{"56":1,"79":1}}],["ta",{"2":{"46":3}}],["takes",{"2":{"79":4}}],["taken",{"2":{"40":2}}],["take",{"2":{"16":1,"79":1,"80":2,"88":1}}],["treat",{"2":{"79":1}}],["treatment",{"2":{"79":1,"80":1}}],["treated",{"2":{"58":1}}],["tries",{"2":{"79":1}}],["translate",{"2":{"104":1,"105":1}}],["transformed",{"2":{"59":1,"63":1,"69":1,"75":1}}],["transformations",{"2":{"104":1}}],["transformation",{"2":{"22":1}}],["transform",{"2":{"22":2}}],["track",{"2":{"79":1}}],["true",{"2":{"12":1,"47":1,"61":1,"74":1,"76":1,"79":4,"80":1,"106":1}}],["tip",{"2":{"94":1}}],["tidy",{"2":{"79":1}}],["ticks",{"2":{"82":1}}],["ticks=false",{"2":{"56":1}}],["tick",{"2":{"68":1,"85":1,"93":1}}],["tiff",{"0":{"101":1}}],["tif",{"2":{"60":2,"90":1}}],["title",{"2":{"56":1,"59":1,"63":1,"69":1,"75":1,"87":1}}],["ti=at",{"2":{"56":3}}],["ti=>cyclicbins",{"2":{"51":2,"52":1,"54":2,"55":2,"56":3}}],["ti",{"2":{"20":1,"26":4,"51":15,"52":2,"53":1,"54":8,"55":3,"56":6,"58":2,"59":2,"62":3,"63":1,"64":2,"65":2,"66":3,"67":5,"69":1,"75":1,"79":2,"102":2}}],["time1",{"2":{"65":2}}],["timearray",{"0":{"46":1},"2":{"46":3}}],["time=1",{"2":{"93":1}}],["time=date",{"2":{"37":1}}],["time=at",{"2":{"37":1}}],["time=between",{"2":{"37":1}}],["time",{"0":{"49":1},"2":{"1":1,"7":1,"8":4,"9":3,"10":3,"12":1,"13":1,"14":7,"16":14,"17":2,"18":4,"19":1,"20":4,"21":10,"22":8,"23":5,"26":2,"29":3,"30":1,"35":2,"37":8,"39":4,"40":7,"41":4,"42":3,"46":5,"52":1,"53":1,"56":1,"58":2,"59":2,"62":3,"64":2,"65":4,"66":3,"67":5,"79":4,"82":2,"83":1,"93":4,"95":1,"96":4,"102":2}}],["timestamp",{"2":{"46":1}}],["timestep",{"2":{"42":1}}],["timeseries",{"2":{"46":3}}],["times",{"2":{"0":1}}],["tesselation",{"2":{"106":1}}],["testrange",{"2":{"80":1}}],["test1",{"2":{"47":1}}],["test2",{"2":{"47":2}}],["test",{"2":{"17":4,"18":1,"19":3,"20":4,"21":4,"47":3,"80":1,"102":1}}],["terminal",{"2":{"88":1}}],["text",{"2":{"87":1}}],["tensors",{"2":{"82":1}}],["tell",{"2":{"36":1}}],["temporary",{"2":{"80":1}}],["temporal",{"2":{"41":1,"48":1,"82":1}}],["tempo",{"2":{"51":6,"54":4,"55":1}}],["temp",{"2":{"9":2}}],["temperature=temperature",{"2":{"40":1}}],["temperature",{"2":{"9":2,"40":4,"56":2,"58":3,"59":2,"62":6,"64":5,"65":6,"66":6,"67":10,"82":1,"83":1,"84":1,"93":4}}],["tempname",{"2":{"2":1,"4":1,"5":1,"6":1}}],["tspan",{"2":{"16":1}}],["t",{"2":{"16":4,"37":1,"39":2,"40":2,"42":3,"59":1,"62":4,"64":2,"65":3,"66":3,"67":5,"71":1,"79":1,"80":2,"95":1,"96":1}}],["two",{"2":{"8":1,"9":1,"18":8,"19":4,"20":3,"21":2,"34":2,"35":1,"80":1,"82":1}}],["toghether",{"2":{"80":1}}],["together",{"2":{"46":1,"84":1}}],["touches",{"2":{"67":1}}],["tolerances",{"2":{"66":1}}],["tos",{"2":{"59":5,"62":6,"63":2,"64":4,"65":4,"66":3,"67":9,"68":2,"69":2,"70":2,"72":2,"75":1}}],["top",{"2":{"56":1}}],["too",{"2":{"40":1,"79":1,"82":1}}],["todo",{"2":{"21":1,"96":1}}],["toy",{"2":{"21":1,"76":1}}],["to",{"0":{"9":1,"18":1,"19":1,"43":1,"75":1,"86":1,"87":1,"89":1},"1":{"44":1,"45":1,"87":1,"88":2},"2":{"0":4,"1":4,"3":1,"4":1,"6":2,"7":1,"8":1,"9":1,"10":8,"12":1,"15":1,"16":2,"17":1,"18":2,"19":1,"20":4,"21":3,"22":2,"23":6,"24":3,"25":2,"27":3,"28":1,"31":2,"32":2,"34":3,"35":1,"37":2,"39":2,"40":6,"41":1,"42":1,"45":2,"46":2,"47":1,"48":1,"49":3,"50":2,"52":1,"53":1,"56":1,"57":1,"58":3,"59":2,"61":1,"62":2,"63":3,"67":1,"68":1,"69":1,"70":2,"71":2,"72":2,"73":2,"74":1,"75":2,"76":4,"77":3,"79":49,"80":19,"81":1,"82":5,"83":3,"84":2,"85":2,"87":2,"88":3,"89":1,"94":2,"98":1,"100":3,"102":2,"106":1}}],["though",{"2":{"76":1}}],["those",{"2":{"11":1,"24":1,"26":1,"27":1,"45":1,"77":1,"83":1}}],["through",{"2":{"79":5,"80":5,"92":1}}],["thrown",{"2":{"74":1}}],["three",{"2":{"36":1,"83":1,"95":1}}],["threaded",{"2":{"59":1}}],["threads",{"2":{"59":2,"79":2}}],["thread",{"2":{"23":1,"59":3}}],["than",{"2":{"24":1,"36":1,"41":1,"42":1}}],["that",{"2":{"0":1,"9":2,"10":1,"13":1,"16":5,"20":1,"21":1,"22":2,"23":1,"24":1,"33":1,"35":1,"38":1,"40":2,"42":1,"46":1,"47":1,"49":1,"52":1,"55":1,"59":2,"61":1,"68":1,"76":2,"79":13,"80":13,"82":1,"83":2,"85":1,"98":1,"100":1}}],["things",{"2":{"31":1}}],["think",{"2":{"1":1}}],["thinking",{"2":{"1":1}}],["this",{"2":{"0":1,"1":1,"4":1,"7":1,"10":1,"13":2,"16":4,"17":1,"19":2,"22":3,"23":1,"24":1,"28":1,"31":1,"34":1,"39":1,"40":2,"41":2,"42":2,"45":1,"46":1,"49":1,"53":2,"57":1,"58":1,"59":1,"61":1,"62":2,"67":1,"71":1,"77":2,"78":2,"79":7,"80":10,"81":1,"84":1,"87":1,"88":2,"99":1,"100":1}}],["they",{"2":{"46":4,"62":1}}],["their",{"0":{"39":1,"40":1},"2":{"38":1,"40":1,"47":1,"79":3,"80":2,"82":1}}],["then",{"2":{"21":2,"22":2,"33":1,"41":1,"46":1,"76":1,"77":1,"88":2,"92":1}}],["thereby",{"2":{"79":1}}],["therefore",{"2":{"42":1,"94":1}}],["there",{"2":{"14":2,"21":1,"27":1,"34":1,"46":2,"62":1,"79":1}}],["theme",{"2":{"56":2}}],["them",{"2":{"7":1,"10":1,"36":1,"61":1,"77":1,"79":1}}],["these",{"2":{"0":1,"6":1,"34":1,"36":1,"47":1,"68":1,"82":1}}],["the",{"0":{"32":1,"34":1,"42":1,"50":1,"96":1,"99":1},"1":{"33":1},"2":{"0":5,"1":4,"2":3,"4":1,"5":4,"6":4,"8":6,"9":3,"10":1,"11":1,"13":3,"14":2,"15":1,"16":12,"17":3,"18":5,"19":2,"20":3,"21":10,"22":14,"23":7,"24":2,"27":1,"29":3,"31":1,"32":3,"33":5,"34":3,"35":2,"36":2,"37":9,"39":3,"40":10,"41":3,"42":10,"45":1,"46":7,"48":2,"49":5,"50":4,"51":2,"52":1,"53":2,"54":2,"55":2,"56":9,"59":2,"61":3,"62":6,"63":1,"64":5,"65":3,"66":5,"67":6,"68":1,"73":1,"74":3,"75":1,"76":10,"77":2,"79":122,"80":83,"81":1,"82":5,"83":4,"84":4,"86":1,"87":1,"88":6,"89":5,"90":1,"92":2,"93":6,"94":8,"95":1,"96":4,"98":6,"99":1,"100":5,"102":1}}],["switched",{"2":{"94":1}}],["syntax",{"2":{"94":1,"98":1}}],["system",{"2":{"88":1}}],["symbol",{"2":{"10":1,"12":1,"13":1,"18":1,"20":1,"29":2,"46":5,"51":4,"52":2,"53":2,"54":4,"55":4,"56":6,"79":3,"80":1}}],["src",{"2":{"87":1}}],["sres",{"2":{"59":2,"63":2,"69":2,"75":2}}],["skipped",{"2":{"79":1}}],["skip",{"2":{"79":1}}],["skipmissing",{"2":{"23":1,"41":1}}],["skeleton=a",{"2":{"76":1}}],["skeleton=true",{"2":{"76":2}}],["skeleton=false",{"2":{"74":1,"79":1}}],["skeleton",{"0":{"76":1},"2":{"76":8,"77":4}}],["ssp585",{"2":{"58":1,"102":2}}],["snow3",{"2":{"42":1}}],["snippet",{"2":{"6":1}}],["small",{"2":{"31":1,"46":1}}],["slightly",{"2":{"98":1}}],["slicing",{"2":{"16":1}}],["slices",{"2":{"79":3}}],["slice",{"2":{"16":1,"102":4,"103":1}}],["slow",{"2":{"40":1,"79":1}}],["slurmmanager",{"2":{"23":1}}],["shinclude",{"2":{"88":1}}],["shdocs>",{"2":{"88":1}}],["shnpm",{"2":{"88":2}}],["shouldn",{"2":{"62":1}}],["should",{"2":{"37":1,"46":1,"50":1,"61":1,"62":1,"79":3,"80":1,"87":1,"88":1,"89":1}}],["showprog",{"2":{"79":1}}],["shown",{"2":{"62":1,"79":1}}],["shows",{"2":{"56":1}}],["showing",{"2":{"46":1}}],["show",{"2":{"23":1,"77":1,"106":1}}],["shading=false",{"2":{"104":1,"105":1,"106":1}}],["shall",{"2":{"79":5,"80":1}}],["shares",{"2":{"40":1}}],["share",{"0":{"39":1,"40":1},"2":{"38":1,"40":1,"79":1,"83":1}}],["shared",{"2":{"4":1,"5":1,"6":1,"20":1,"30":1,"35":1,"39":2,"40":3,"44":1,"45":1,"46":2,"58":1,"59":1,"60":1,"63":1,"69":1,"75":1,"76":1,"102":1}}],["shape",{"2":{"6":1}}],["scene",{"2":{"106":3}}],["scenariomip",{"2":{"58":1,"102":2}}],["scenarios",{"2":{"17":1,"102":1}}],["scripts",{"2":{"88":1}}],["scope",{"2":{"79":1,"80":1}}],["scalar",{"2":{"58":1}}],["scattered",{"2":{"7":1}}],["sure",{"2":{"106":1}}],["surface",{"2":{"56":2,"58":2,"59":2,"62":6,"64":5,"65":6,"66":6,"67":10,"104":1,"105":1}}],["such",{"2":{"62":1,"67":1,"79":1,"94":1}}],["subtype",{"2":{"80":1,"82":1,"94":1}}],["subtables",{"2":{"42":1}}],["subcubes",{"2":{"79":1}}],["subsetextensions",{"2":{"80":1}}],["subsetcube",{"2":{"79":1}}],["subseting",{"2":{"68":1}}],["subsetting",{"0":{"37":1,"38":1,"39":1,"40":1},"1":{"39":1,"40":1},"2":{"58":1,"59":1,"80":1,"96":1}}],["subset",{"0":{"36":1},"1":{"37":1,"38":1,"39":1,"40":1},"2":{"37":5,"40":4,"63":1,"66":1,"79":1,"80":1,"102":1}}],["subsets",{"2":{"15":1,"85":1}}],["subsequent",{"2":{"17":1}}],["supposed",{"2":{"79":1}}],["support",{"2":{"27":1,"46":1}}],["supertype",{"2":{"26":1,"27":1}}],["summarysize",{"2":{"47":2}}],["sum",{"2":{"18":1,"19":1,"21":1,"22":2,"41":1,"51":4,"54":2,"55":4,"56":2}}],["suggestions",{"2":{"6":1}}],["s",{"2":{"10":1,"16":3,"18":1,"19":1,"21":2,"33":1,"35":1,"37":1,"39":1,"40":2,"56":7,"61":1,"63":1,"76":1,"79":2,"80":1,"85":1,"90":1,"96":1}}],["style",{"0":{"100":1}}],["st",{"2":{"94":1}}],["stdzero",{"2":{"79":1}}],["stock3",{"2":{"46":4}}],["stock2",{"2":{"46":4}}],["stock1",{"2":{"46":4}}],["stocks",{"2":{"46":7}}],["storing",{"2":{"83":1}}],["storage",{"2":{"11":1,"58":1}}],["stored",{"2":{"80":2,"82":3}}],["stores",{"2":{"79":1,"82":1}}],["store",{"2":{"0":1,"58":4,"82":1,"83":1,"102":2}}],["struct",{"2":{"79":1,"80":4}}],["structures",{"2":{"81":1}}],["structure",{"2":{"33":2,"46":1,"84":1}}],["strings",{"0":{"47":1}}],["string",{"2":{"8":1,"9":2,"10":1,"12":1,"13":1,"14":2,"16":5,"17":3,"18":4,"19":3,"20":1,"21":4,"22":6,"25":1,"26":2,"27":3,"29":3,"32":1,"33":3,"34":1,"35":2,"37":5,"41":3,"42":3,"47":5,"51":1,"52":1,"54":2,"55":1,"56":1,"58":2,"59":2,"60":1,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"69":1,"74":1,"75":1,"76":1,"79":6,"80":4,"93":4,"96":1,"102":1}}],["stable",{"2":{"94":1}}],["stat",{"2":{"73":2}}],["status",{"2":{"62":2}}],["statistics",{"2":{"14":1,"23":1,"42":3,"48":1,"95":1}}],["standard",{"2":{"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5}}],["standards",{"2":{"58":1,"59":1,"63":1,"69":1,"75":1,"102":1}}],["stack",{"2":{"47":1}}],["started",{"0":{"91":1},"1":{"92":1,"93":1,"94":1}}],["start=12",{"2":{"51":2,"52":1,"54":2,"55":2,"56":3}}],["start=december",{"2":{"51":3,"54":1}}],["start",{"2":{"10":1,"37":1,"71":1,"77":1}}],["still",{"2":{"8":1,"22":1,"83":1,"98":1}}],["step=3",{"2":{"51":2,"52":1,"54":2,"55":2,"56":3}}],["steps",{"2":{"10":1,"14":1,"56":1,"79":1,"88":1}}],["step",{"2":{"7":1,"14":1,"20":1,"41":2,"79":1,"80":2,"102":1}}],["sphere",{"0":{"106":1},"2":{"106":3}}],["spheroid",{"2":{"60":1}}],["split",{"2":{"79":1}}],["splitted",{"2":{"2":1}}],["special",{"2":{"65":1,"79":1,"80":1}}],["specifiers",{"2":{"80":1}}],["specifier",{"2":{"79":1}}],["specifies",{"2":{"79":3}}],["specified",{"2":{"79":8,"80":1}}],["specific",{"2":{"37":1,"79":2}}],["specifying",{"2":{"79":2,"80":1}}],["specify",{"0":{"20":1},"2":{"17":1,"29":1,"79":1}}],["specs",{"2":{"58":1,"102":1}}],["spectral",{"2":{"56":1}}],["sparse",{"2":{"82":1}}],["spatio",{"2":{"41":1}}],["spatial",{"2":{"1":1,"14":1,"22":5,"23":1,"48":1,"82":1}}],["span",{"2":{"37":1,"95":1}}],["space",{"2":{"1":1,"16":1}}],["safe",{"2":{"59":2}}],["sampled",{"2":{"4":4,"5":4,"6":2,"8":1,"9":1,"10":3,"12":3,"13":3,"14":3,"16":9,"17":3,"18":3,"19":2,"20":3,"21":9,"22":8,"25":2,"26":6,"27":4,"29":9,"30":3,"32":9,"33":6,"34":2,"35":3,"37":14,"39":6,"40":10,"41":9,"42":5,"44":1,"45":5,"46":4,"47":4,"51":3,"52":2,"54":2,"55":1,"56":7,"58":6,"59":6,"60":2,"62":9,"63":3,"64":6,"65":4,"66":9,"67":15,"68":2,"69":3,"75":6,"76":6,"93":5,"96":1,"102":3}}],["same",{"2":{"0":1,"2":1,"5":1,"6":1,"9":1,"16":1,"20":1,"21":1,"22":2,"26":1,"27":1,"33":2,"34":2,"35":1,"40":1,"45":1,"46":2,"61":1,"64":1,"65":1,"66":1,"79":1,"80":1,"82":1,"83":3,"84":2,"88":1}}],["saves",{"2":{"74":1,"79":1}}],["save",{"0":{"76":1},"2":{"12":1,"27":1,"45":1,"47":1,"70":2,"71":1,"72":2,"73":1,"76":1,"79":2}}],["savecube",{"2":{"2":1,"70":1,"72":1,"76":1,"79":2}}],["savedataset",{"2":{"4":1,"5":1,"6":1,"71":1,"73":1,"74":2,"75":1,"76":2,"79":2,"80":1}}],["saved",{"2":{"2":1,"11":1,"20":1,"73":1,"74":1}}],["saving",{"2":{"1":1,"4":1,"5":1,"6":1,"16":1}}],["sequence",{"2":{"82":1}}],["serve",{"2":{"80":1}}],["series",{"0":{"49":1},"2":{"23":1}}],["seaborn",{"2":{"103":1,"104":1,"105":1,"106":1}}],["searching",{"2":{"79":1}}],["search",{"2":{"79":1}}],["sea",{"2":{"59":3,"62":6,"63":1,"64":5,"65":6,"66":6,"67":10,"69":1,"75":1}}],["season",{"2":{"51":1,"54":2,"55":1}}],["seasons",{"0":{"51":1,"53":1,"56":1},"1":{"52":1,"53":1},"2":{"51":9,"54":1,"56":5}}],["seasonal",{"0":{"49":1,"95":1,"97":1},"1":{"96":1,"97":1},"2":{"49":1,"55":1,"56":1,"95":1,"96":4}}],["sebastien",{"2":{"59":2,"63":2,"69":2,"75":2}}],["separated",{"2":{"83":1}}],["separate",{"2":{"79":1,"80":1}}],["separately",{"2":{"5":1,"22":1,"23":1}}],["sep",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["selected",{"2":{"80":1,"95":1}}],["select",{"0":{"63":1,"64":1,"65":1,"66":1},"1":{"64":1,"65":1,"66":1,"67":1,"68":1},"2":{"40":1,"63":1}}],["selectors",{"2":{"67":1}}],["selector",{"2":{"40":1,"66":1}}],["selection",{"2":{"40":2}}],["selecting",{"2":{"37":1,"39":1,"40":1}}],["seed",{"2":{"17":1,"21":2}}],["see",{"2":{"16":1,"18":1,"67":1,"79":1,"94":1}}],["second",{"2":{"8":3,"18":1,"19":1,"79":1}}],["section",{"2":{"7":1,"10":1,"24":1,"28":1,"31":1,"46":1,"57":1,"78":1,"81":1}}],["setting",{"2":{"74":1,"79":1,"80":1}}],["sets",{"2":{"6":1,"50":1}}],["set",{"0":{"4":1,"5":1,"6":1},"2":{"4":1,"5":1,"19":2,"22":1,"58":1,"74":1,"79":1,"80":2,"88":1}}],["setchunks",{"2":{"1":1,"2":2,"3":1,"4":1,"5":1,"6":1,"79":1,"80":1}}],["several",{"0":{"16":1},"2":{"0":1,"16":1,"35":1,"38":1}}],["significant",{"2":{"71":1}}],["sin",{"2":{"95":1}}],["sink",{"2":{"80":1}}],["since",{"2":{"62":1,"89":1}}],["single",{"0":{"95":1},"1":{"96":1,"97":1},"2":{"0":1,"7":1,"8":1,"59":1,"70":1,"72":1,"79":6,"80":1,"84":1}}],["simulate",{"2":{"46":1}}],["simplicity",{"2":{"95":1}}],["simply",{"2":{"23":1,"47":1,"77":1,"88":1,"89":1}}],["simple",{"2":{"16":1,"31":1,"93":1}}],["situations",{"2":{"1":1}}],["size=",{"2":{"104":1,"105":1,"106":1}}],["sizes",{"2":{"2":1,"79":2,"80":2}}],["size",{"2":{"0":1,"1":1,"4":1,"5":1,"8":1,"9":1,"10":1,"12":1,"13":1,"14":2,"16":5,"17":1,"18":1,"19":1,"21":3,"22":2,"25":1,"26":1,"27":1,"29":2,"32":1,"33":3,"34":1,"35":1,"37":5,"41":3,"42":3,"54":1,"56":1,"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5,"73":4,"76":1,"77":1,"79":3,"80":4,"93":3,"95":1,"96":2,"97":1,"103":1}}],["sosstsst",{"2":{"59":1,"62":3,"64":2,"65":3,"66":3,"67":5}}],["software",{"2":{"59":1,"63":1,"69":1}}],["sort",{"2":{"22":1}}],["so",{"2":{"2":1,"23":1,"36":1,"40":1,"79":1,"80":1}}],["source",{"2":{"0":2,"59":1,"63":1,"69":1,"74":1,"75":1,"79":25,"80":24}}],["sometimes",{"2":{"76":1,"100":1}}],["some",{"0":{"40":1},"2":{"0":1,"11":1,"38":1,"40":1,"41":1,"46":2,"56":1,"79":1,"95":1,"104":1}}],["advance",{"2":{"62":1}}],["adds",{"2":{"82":2,"85":1}}],["addargs",{"2":{"79":3,"80":1}}],["addprocs",{"2":{"23":2}}],["addition",{"2":{"22":1,"24":1,"82":1}}],["additional",{"2":{"4":3,"5":3,"9":1,"16":1,"21":1,"40":10,"45":4,"46":4,"58":2,"75":3,"79":4,"80":3,"102":2}}],["added",{"2":{"15":1,"75":1,"79":1,"80":1}}],["add",{"2":{"6":1,"10":1,"12":1,"41":1,"59":1,"87":2,"89":3,"90":4,"92":2,"104":1}}],["again",{"2":{"74":1,"77":1}}],["agreement",{"2":{"56":1}}],["aggregation",{"2":{"23":1}}],["aggregate",{"2":{"22":1}}],["air",{"2":{"56":2,"58":3}}],["authority",{"2":{"60":5}}],["auto",{"2":{"18":1,"20":1,"79":1}}],["aug",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["api",{"0":{"78":1,"79":1,"80":1},"1":{"79":1,"80":1}}],["apr",{"2":{"51":4,"52":2,"53":1,"54":4,"55":4,"56":6}}],["appropriate",{"2":{"87":1}}],["approximated",{"2":{"80":1}}],["approx",{"2":{"79":1,"80":1}}],["approach",{"2":{"9":1}}],["append=true",{"2":{"75":2}}],["append",{"0":{"75":1},"2":{"74":1,"79":1}}],["apply",{"0":{"41":1},"2":{"10":2,"13":1,"15":1,"21":1,"23":1,"56":1,"96":1}}],["application",{"2":{"21":1}}],["applications",{"2":{"0":1}}],["applies",{"2":{"13":1}}],["applied",{"2":{"0":1,"3":1,"4":1,"22":1,"79":2,"80":1}}],["a3",{"2":{"30":4}}],["a2",{"2":{"29":1,"30":3,"59":2,"63":2,"69":2,"75":2,"93":1}}],["a1",{"2":{"29":1}}],["able",{"2":{"45":1}}],["abstractstring",{"2":{"79":1}}],["abstractdict",{"2":{"79":1,"80":3}}],["abstractdimarray",{"2":{"26":1,"27":1,"82":1}}],["abs",{"2":{"21":1}}],["about",{"2":{"1":2,"36":1,"66":1,"93":1,"99":1}}],["above",{"2":{"0":1,"5":1,"16":1,"76":1,"92":1}}],["atol",{"2":{"66":1}}],["atmosphere",{"2":{"59":1,"63":1,"69":1,"75":1}}],["atmos",{"2":{"58":1,"102":1}}],["attributes",{"2":{"56":1,"79":1,"80":1}}],["at",{"2":{"21":1,"22":4,"27":1,"40":1,"46":3,"56":1,"59":3,"62":3,"63":1,"64":2,"65":6,"66":7,"67":5,"69":1,"74":2,"75":1,"79":3,"80":2,"83":1,"84":2,"86":1,"87":2,"88":2,"93":1,"98":2}}],["after",{"2":{"14":1,"16":1,"60":1,"79":3}}],["asaxisarray",{"2":{"79":1}}],["assemble",{"2":{"93":1}}],["assessment",{"2":{"59":2,"63":2,"69":2,"75":2}}],["associated",{"2":{"79":1}}],["assign",{"0":{"43":1},"1":{"44":1,"45":1}}],["aspect=dataaspect",{"2":{"56":1,"103":1}}],["asked",{"0":{"31":1},"1":{"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1}}],["as",{"2":{"5":1,"12":1,"16":5,"18":1,"19":1,"21":1,"22":1,"23":1,"26":1,"27":2,"33":2,"34":1,"40":1,"42":1,"46":2,"51":2,"56":1,"58":1,"59":1,"60":1,"61":1,"64":1,"67":1,"68":1,"76":1,"77":1,"79":11,"80":3,"82":1,"85":1,"94":1,"100":1,"102":1}}],["axs",{"2":{"50":1,"56":9}}],["ax",{"2":{"42":1,"95":3,"97":3,"103":1,"104":3,"105":3,"106":5}}],["axlist",{"2":{"10":2,"17":2,"19":1,"21":4,"22":2,"23":2,"29":2,"30":1,"35":3,"80":5,"93":3}}],["axessmall",{"2":{"80":2}}],["axes",{"0":{"32":1,"34":1},"1":{"33":1},"2":{"4":4,"5":4,"6":1,"20":1,"29":1,"30":1,"32":2,"33":1,"34":2,"37":2,"39":5,"40":13,"44":1,"45":5,"46":8,"58":3,"59":1,"60":1,"63":2,"69":1,"75":4,"76":1,"79":15,"80":11,"82":2,"93":1,"96":2,"102":3}}],["axislegend",{"2":{"97":1}}],["axis=false",{"2":{"106":1}}],["axis=",{"2":{"95":1}}],["axisdescriptor",{"2":{"80":1}}],["axisdesc",{"2":{"79":3}}],["axis",{"0":{"4":1},"2":{"4":1,"9":2,"16":3,"34":1,"37":1,"39":1,"40":7,"46":1,"56":1,"60":2,"68":1,"76":1,"79":16,"80":14,"85":1,"93":1,"97":1,"102":1,"103":1}}],["always",{"2":{"79":2,"80":1,"86":1,"94":1}}],["already",{"2":{"62":1,"74":1,"79":1,"80":1}}],["al",{"2":{"59":1,"63":1,"69":1,"75":1,"84":1}}],["alternatives",{"2":{"79":1}}],["alternatively",{"2":{"0":1,"2":1,"79":2,"92":1}}],["altered",{"2":{"58":1,"59":1,"62":3,"64":2,"65":3,"66":3,"67":5}}],["although",{"2":{"46":1,"47":1,"67":1}}],["algebraofgraphics",{"2":{"90":1}}],["algebra",{"0":{"41":1},"2":{"41":1}}],["along",{"0":{"8":1},"2":{"8":1,"16":1,"79":6,"80":2,"98":1}}],["allaxes",{"2":{"80":1}}],["allinaxes",{"2":{"80":1}}],["allmissing",{"2":{"79":1}}],["allocate",{"2":{"76":1}}],["allocation",{"2":{"22":1}}],["allow",{"2":{"80":1}}],["allowed",{"2":{"47":1}}],["allowing",{"2":{"26":1,"27":1,"83":1}}],["allows",{"2":{"23":1}}],["all",{"0":{"6":1,"39":1,"40":1},"2":{"4":1,"6":2,"10":1,"12":1,"13":1,"14":2,"22":1,"23":4,"38":1,"40":2,"46":3,"56":2,"60":1,"67":1,"74":3,"76":1,"78":1,"79":6,"80":7,"82":1,"84":2,"88":1}}],["also",{"2":{"2":1,"3":1,"14":1,"21":1,"23":1,"29":1,"32":1,"40":1,"42":1,"71":1,"76":2,"79":1,"82":2,"83":1,"92":1}}],["analog",{"2":{"83":1}}],["analyzing",{"2":{"1":1}}],["annual",{"2":{"79":1}}],["anchor",{"2":{"21":1}}],["another",{"2":{"16":1,"40":1}}],["anynymous",{"2":{"79":1}}],["anyocean",{"2":{"79":1}}],["anymissing",{"2":{"79":1}}],["anymore",{"2":{"21":1}}],["any",{"2":{"8":1,"9":1,"10":1,"11":1,"14":2,"16":5,"18":3,"20":1,"21":2,"22":4,"25":1,"26":2,"27":3,"29":1,"32":1,"33":3,"34":1,"35":1,"37":6,"41":3,"42":3,"47":4,"51":3,"52":2,"54":4,"55":3,"56":3,"58":2,"59":3,"60":1,"62":3,"63":1,"64":2,"65":3,"66":3,"67":5,"69":1,"75":1,"76":1,"79":4,"80":9,"93":1,"96":1,"102":1}}],["an",{"0":{"8":1},"2":{"9":1,"10":4,"12":1,"13":1,"15":1,"23":2,"33":1,"34":1,"39":1,"40":1,"42":1,"47":1,"61":1,"63":3,"66":1,"69":1,"70":1,"71":1,"72":1,"74":1,"75":1,"79":19,"80":8,"82":1,"83":1,"85":1}}],["and",{"0":{"17":1,"28":1,"34":1,"48":1,"57":1,"63":1,"67":1,"69":1},"1":{"18":1,"19":1,"20":1,"29":1,"30":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"58":1,"59":1,"60":1,"61":1,"62":1,"64":1,"65":1,"66":1,"67":1,"68":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1},"2":{"0":1,"2":1,"5":1,"6":1,"7":1,"8":1,"12":1,"16":4,"17":2,"18":2,"20":2,"21":4,"22":2,"24":1,"28":1,"29":1,"32":1,"35":1,"37":1,"40":6,"41":1,"42":6,"46":5,"48":1,"49":1,"51":1,"56":1,"57":2,"58":1,"59":1,"62":1,"63":1,"67":1,"69":1,"71":2,"73":1,"74":1,"75":1,"76":3,"77":1,"79":19,"80":6,"82":5,"83":3,"84":2,"86":1,"88":4,"92":1,"93":2,"95":1,"102":1,"104":1}}],["available",{"2":{"67":2,"76":1,"78":1,"79":2,"92":1}}],["avariable",{"2":{"0":1}}],["avoid",{"2":{"59":1}}],["avoids",{"2":{"22":1}}],["avoided",{"2":{"0":1}}],["averaging",{"2":{"14":1}}],["averages",{"0":{"49":1},"2":{"48":1}}],["average",{"2":{"14":1,"49":2}}],["arg",{"2":{"79":1}}],["argument",{"2":{"23":1,"76":1,"79":4,"80":2}}],["arguments",{"2":{"21":1,"56":1,"79":11,"80":3}}],["artype",{"2":{"79":2}}],["archgdaldatasets",{"2":{"60":1}}],["archgdal",{"2":{"60":2,"90":1}}],["arr2",{"2":{"27":1}}],["arr",{"2":{"22":7,"27":2}}],["arrayinfo",{"2":{"80":1}}],["arrays",{"2":{"6":1,"7":1,"8":2,"9":1,"11":1,"28":1,"30":2,"58":2,"59":2,"79":2,"80":1,"81":1,"82":4,"83":3,"84":3}}],["array",{"0":{"22":1,"25":1},"2":{"0":1,"1":1,"8":2,"9":2,"10":3,"12":2,"13":2,"15":1,"18":1,"20":1,"22":8,"25":2,"34":1,"51":1,"56":1,"63":1,"76":5,"77":5,"79":10,"80":4,"82":4,"83":1,"84":1,"85":2,"93":3}}],["arbitrary",{"2":{"16":1}}],["arithmetics",{"0":{"12":1},"2":{"10":1}}],["areas",{"2":{"79":1}}],["area",{"2":{"58":2,"79":1}}],["areacella",{"2":{"58":2,"102":1}}],["are",{"2":{"0":1,"11":1,"18":1,"19":1,"24":3,"34":1,"36":1,"40":1,"46":3,"56":2,"62":2,"63":1,"67":1,"68":1,"76":1,"79":11,"80":6,"82":3,"83":2,"84":3,"86":1,"88":1,"98":2,"100":1}}],["according",{"2":{"79":1}}],["access",{"2":{"1":2,"13":1,"29":1,"82":1,"85":1}}],["accessed",{"2":{"0":2,"58":1,"59":2}}],["activate",{"2":{"42":1,"88":2,"95":1,"103":1,"106":1}}],["actually",{"2":{"80":1}}],["actual",{"2":{"13":1,"59":1,"76":1,"80":1,"93":1}}],["achieves",{"2":{"33":1}}],["achieved",{"2":{"0":1}}],["across",{"2":{"0":1,"7":1,"16":1,"82":3}}],["a",{"0":{"9":1,"11":1,"22":1,"29":1,"30":1,"32":1,"36":1,"37":1,"38":1,"39":1,"40":1,"43":1,"46":2,"47":1,"64":1,"68":1,"74":1,"75":1,"95":1,"101":1},"1":{"33":1,"37":1,"38":1,"39":2,"40":2,"44":1,"45":1,"96":1,"97":1},"2":{"0":4,"2":7,"3":1,"4":1,"7":1,"8":1,"9":2,"10":3,"11":1,"12":4,"13":2,"14":2,"15":1,"16":5,"17":2,"18":1,"19":2,"20":1,"22":75,"23":11,"25":2,"26":5,"27":8,"29":1,"31":1,"32":2,"33":2,"34":1,"36":4,"37":3,"38":1,"40":2,"42":3,"44":2,"45":2,"46":4,"49":1,"54":1,"56":2,"58":6,"59":4,"60":1,"66":2,"67":4,"68":1,"70":3,"71":3,"72":3,"73":1,"74":4,"76":5,"79":64,"80":31,"82":12,"83":4,"84":8,"85":1,"87":2,"88":2,"93":4,"94":1,"99":1,"100":1}}],["iall",{"2":{"80":1}}],["iwindow",{"2":{"80":1}}],["icolon",{"2":{"80":1}}],["icefire",{"2":{"103":1,"104":1,"105":1,"106":1}}],["ice",{"2":{"59":1,"63":1,"69":1,"75":1}}],["ipcc",{"2":{"59":3,"63":3,"69":3,"75":3}}],["ipsl",{"2":{"59":6,"63":6,"69":6,"75":6}}],["idx",{"2":{"96":3}}],["identical",{"2":{"79":1}}],["id",{"2":{"58":2,"59":2,"63":2,"69":2,"75":2,"102":2}}],["irregular",{"2":{"20":1,"40":6,"42":2,"46":4,"51":1,"54":2,"55":1,"56":1,"58":4,"59":2,"62":3,"63":1,"64":2,"65":2,"66":6,"67":5,"69":1,"75":1,"80":1,"102":2}}],["illustrate",{"2":{"17":1}}],["immutable",{"2":{"11":1}}],["improving",{"2":{"94":1}}],["improvement",{"2":{"71":1}}],["improve",{"2":{"6":1}}],["implementing",{"2":{"79":1}}],["importance",{"2":{"80":1}}],["important",{"2":{"1":1}}],["impossible",{"2":{"11":1}}],["i",{"0":{"35":1,"36":1,"41":1,"42":1,"43":1,"46":1},"1":{"37":1,"38":1,"39":1,"40":1,"44":1,"45":1},"2":{"8":1,"22":3,"26":1,"27":1,"37":1,"56":2,"59":2,"74":1,"79":7,"80":4,"88":2,"93":1,"96":3}}],["ispar",{"2":{"79":1,"80":1}}],["ismissing",{"2":{"76":1}}],["issue",{"2":{"71":1}}],["issues",{"2":{"50":1}}],["isequal",{"2":{"22":1}}],["is",{"2":{"1":2,"2":1,"6":1,"7":1,"9":1,"13":1,"14":2,"15":1,"16":4,"21":2,"22":2,"23":3,"24":1,"27":1,"31":1,"33":2,"35":1,"36":1,"40":2,"41":1,"42":4,"46":2,"47":2,"49":2,"50":2,"51":1,"55":1,"59":2,"62":2,"64":1,"67":2,"68":1,"76":4,"77":1,"79":12,"80":10,"82":4,"83":1,"84":2,"85":1,"87":1,"89":1,"92":1,"94":1,"98":1,"100":1}}],["if",{"2":{"0":1,"18":1,"19":1,"24":1,"40":3,"71":1,"74":1,"76":2,"79":12,"80":6,"88":1,"89":1,"98":1}}],["inline",{"2":{"106":2}}],["incubes",{"2":{"80":1}}],["incs",{"2":{"80":1}}],["include",{"2":{"79":2,"80":1}}],["included",{"2":{"67":1}}],["inarbc",{"2":{"80":1}}],["inar",{"2":{"80":2}}],["inplace",{"2":{"79":3,"80":1}}],["inputcube",{"2":{"80":2}}],["inputs",{"2":{"18":1}}],["input",{"2":{"16":1,"17":1,"18":1,"20":1,"23":2,"42":1,"79":13,"80":8}}],["innerchunks",{"2":{"80":1}}],["inner",{"2":{"79":9,"80":3}}],["installed",{"2":{"94":1}}],["installation",{"0":{"92":1}}],["install",{"0":{"89":1},"2":{"88":1,"90":1,"92":1}}],["instead",{"2":{"8":1,"9":1,"13":1,"32":1,"37":1,"67":1,"82":1}}],["insize",{"2":{"80":1}}],["inside",{"2":{"79":3}}],["initialization",{"2":{"58":1,"102":1}}],["initially",{"2":{"22":1}}],["inds",{"2":{"80":1}}],["indeed",{"2":{"77":1}}],["indexing",{"2":{"65":2,"66":2,"77":1,"94":1}}],["index",{"2":{"58":2,"80":2,"102":2}}],["independently",{"2":{"46":1}}],["indices",{"2":{"80":1,"96":1}}],["indicate",{"2":{"79":1}}],["indicating",{"2":{"9":1,"22":1,"79":1}}],["indims=indims",{"2":{"22":1,"23":1}}],["indims",{"0":{"18":1,"19":1,"21":1},"2":{"16":8,"18":4,"20":7,"21":3,"79":7}}],["individually",{"2":{"13":2}}],["individual",{"2":{"0":1,"58":1,"59":1}}],["information",{"2":{"62":1,"74":1,"80":2}}],["info",{"2":{"16":2,"27":1,"32":1,"48":1,"59":11,"73":4,"76":1,"94":1}}],["introducing",{"2":{"84":1}}],["int",{"2":{"33":1,"47":1,"96":3}}],["interoperability",{"0":{"90":1}}],["internally",{"2":{"83":1}}],["internal",{"0":{"80":1},"2":{"80":9}}],["interface",{"2":{"79":2,"100":1}}],["interested",{"2":{"98":1}}],["interest",{"2":{"62":1}}],["interval",{"2":{"59":1,"62":3,"64":2,"65":3,"66":4,"67":6}}],["intervalsets",{"2":{"67":1}}],["intervals",{"0":{"67":1},"2":{"37":1}}],["interactive",{"2":{"0":1}}],["integer",{"2":{"29":1,"65":1,"66":1,"82":1}}],["int64",{"2":{"4":4,"5":4,"6":2,"8":1,"9":1,"16":8,"17":1,"18":1,"19":1,"21":7,"25":2,"26":6,"27":2,"29":3,"32":9,"33":7,"34":4,"37":15,"39":4,"40":7,"42":3,"44":1,"45":5,"47":5,"51":6,"52":6,"54":4,"56":18,"75":3,"76":6,"80":1,"93":2}}],["into",{"0":{"61":1,"101":1},"1":{"62":1},"2":{"0":1,"1":1,"2":1,"7":1,"8":1,"16":1,"22":1,"24":2,"27":1,"40":4,"47":1,"57":1,"61":1,"74":1,"77":1,"79":6,"80":3,"84":2,"88":1,"106":1}}],["in",{"0":{"20":1,"43":1},"1":{"44":1,"45":1},"2":{"0":5,"1":1,"2":1,"4":2,"5":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":2,"14":4,"16":5,"17":1,"18":2,"19":2,"21":5,"22":8,"23":3,"24":2,"25":1,"26":2,"27":2,"29":2,"32":1,"33":3,"34":2,"37":5,"38":1,"40":1,"41":3,"42":5,"46":4,"47":2,"49":2,"50":2,"53":3,"54":1,"56":4,"58":2,"59":4,"61":1,"62":9,"64":2,"65":3,"66":4,"67":7,"68":1,"76":2,"77":1,"79":15,"80":9,"81":1,"82":5,"83":1,"84":2,"88":2,"89":2,"92":1,"93":4,"96":2,"98":3,"100":4,"102":1}}],["iter",{"2":{"79":1}}],["iterate",{"2":{"100":1}}],["iteration",{"0":{"100":1}}],["iterator",{"2":{"42":1}}],["iterators",{"2":{"22":1}}],["iterable",{"2":{"42":2,"79":2}}],["itself",{"2":{"79":1,"80":1}}],["its",{"2":{"0":1}}],["it",{"2":{"0":2,"1":3,"12":1,"16":1,"18":1,"20":1,"23":2,"32":1,"34":1,"35":1,"40":2,"42":2,"46":2,"47":1,"52":1,"54":1,"56":1,"59":1,"63":1,"73":1,"74":1,"76":2,"77":1,"79":10,"80":5,"82":2,"83":1,"85":1,"88":1,"92":1}}],["lscene",{"2":{"106":1}}],["lmdz",{"2":{"59":1,"63":1,"69":1,"75":1}}],["link",{"2":{"87":1}}],["linewidth=0",{"2":{"104":1,"105":1}}],["linewidth=2",{"2":{"97":2}}],["linewidth=1",{"2":{"95":1,"97":1}}],["linestyle=",{"2":{"97":2}}],["lines",{"2":{"95":1,"97":3}}],["line",{"2":{"42":1}}],["lim",{"2":{"59":1,"63":1,"69":1,"75":1}}],["libraries",{"2":{"37":1,"82":1}}],["libray",{"2":{"36":1}}],["little",{"2":{"23":1}}],["list",{"2":{"22":1,"46":5,"79":7,"80":6}}],["like",{"2":{"0":1,"42":1,"46":1,"79":2,"80":1,"87":1}}],["learn",{"2":{"100":1}}],["learning",{"2":{"82":1,"98":1}}],["leap",{"2":{"95":1}}],["least",{"2":{"40":1,"46":1,"79":1}}],["length",{"2":{"51":2,"52":1,"54":3,"79":1,"80":3}}],["length=20",{"2":{"35":1,"93":1}}],["length=365",{"2":{"95":1}}],["length=3",{"2":{"17":1}}],["length=4",{"2":{"17":1}}],["length=15",{"2":{"10":1,"22":1,"23":1,"29":1,"35":1,"93":1}}],["length=10",{"2":{"10":1,"22":1,"23":1,"29":1,"35":1,"93":1}}],["level",{"2":{"21":1,"46":1,"71":1,"73":1,"87":1,"88":1}}],["left",{"2":{"14":2}}],["let",{"2":{"10":1,"16":2,"18":1,"19":1,"33":1,"35":1,"37":1,"39":1,"40":1,"56":1,"61":1,"63":1,"96":1}}],["loopinds",{"2":{"80":2}}],["looping",{"2":{"79":1,"80":1}}],["loopcachesize",{"2":{"80":1}}],["loopchunksize",{"2":{"79":1}}],["loopaxes",{"2":{"80":1}}],["loopvars",{"2":{"79":1,"80":1}}],["loops",{"2":{"79":1}}],["loop",{"2":{"79":1,"80":2}}],["looped",{"2":{"79":3,"80":3}}],["look",{"2":{"74":1,"79":1,"80":1,"87":1,"88":1}}],["lookups",{"2":{"51":15,"52":10,"54":5,"55":5,"56":38,"68":3}}],["lookup",{"2":{"51":1,"53":1,"102":3}}],["looks",{"2":{"42":1,"46":1}}],["located",{"2":{"98":1}}],["locate",{"2":{"88":1}}],["locations",{"2":{"83":1,"84":1}}],["location",{"2":{"80":3}}],["localhost",{"2":{"88":1}}],["locally",{"0":{"88":1},"2":{"88":1}}],["local",{"2":{"23":1,"58":1}}],["lock",{"2":{"59":3}}],["locks",{"2":{"59":1}}],["lowclip",{"2":{"56":4}}],["low",{"2":{"46":4}}],["lost",{"2":{"24":1}}],["lo",{"2":{"16":4}}],["loadorgenerate",{"2":{"80":1}}],["loading",{"2":{"60":1,"62":1,"77":1}}],["load",{"0":{"61":1},"1":{"62":1},"2":{"16":1,"37":1,"40":2,"61":1,"62":1,"82":1}}],["loaded",{"2":{"8":1,"9":1,"10":1,"12":1,"13":1,"14":2,"16":5,"17":1,"18":1,"19":1,"21":3,"22":2,"25":1,"26":1,"27":1,"29":2,"32":1,"33":3,"34":1,"35":1,"37":5,"40":2,"41":3,"42":3,"47":2,"54":1,"58":1,"59":1,"62":8,"64":2,"65":3,"66":3,"67":5,"76":1,"93":2,"96":1}}],["long",{"2":{"56":1,"58":1,"59":1,"62":4,"64":2,"65":3,"66":3,"67":5}}],["longitudes=longitudes",{"2":{"40":1}}],["longitudes",{"2":{"40":12}}],["longitude",{"2":{"21":1,"37":1,"60":1,"93":2}}],["lonlat",{"2":{"39":1}}],["lon=1",{"2":{"37":1,"39":1}}],["lon",{"2":{"10":2,"12":1,"13":1,"14":2,"16":10,"17":2,"18":1,"19":1,"20":1,"21":5,"22":12,"23":1,"26":2,"29":3,"30":1,"35":2,"37":7,"39":3,"41":4,"42":3,"58":2,"59":2,"62":3,"63":1,"64":2,"65":3,"66":6,"67":10,"68":2,"69":1,"75":1,"102":2,"104":3}}],["lazy",{"2":{"79":1}}],["lazily",{"2":{"9":1,"13":1,"16":2,"35":1,"58":1,"59":1,"62":1,"64":2,"65":3,"66":3,"67":5}}],["layername",{"2":{"79":2}}],["layername=",{"2":{"76":2,"80":1}}],["layer",{"2":{"76":1,"79":1,"80":1}}],["layout",{"2":{"56":2}}],["labelled",{"2":{"79":1}}],["labels",{"2":{"56":1,"68":1,"84":1,"85":1}}],["label=false",{"2":{"56":1}}],["label=",{"2":{"56":1,"97":3}}],["label=cb",{"2":{"56":1}}],["label",{"2":{"56":3,"58":1,"102":1}}],["last",{"2":{"16":1,"23":1}}],["la",{"2":{"16":4}}],["latest",{"2":{"89":1,"94":1}}],["later",{"2":{"18":1}}],["lat=5",{"2":{"37":1,"39":1}}],["latitudes=latitudes",{"2":{"40":1}}],["latitudes",{"2":{"40":11}}],["latitude",{"2":{"21":1,"37":1,"60":1,"93":2}}],["lat",{"2":{"10":2,"12":1,"13":1,"14":2,"16":7,"17":2,"18":1,"19":1,"20":1,"21":5,"22":12,"23":1,"26":2,"29":3,"30":1,"35":2,"37":7,"39":3,"41":4,"42":3,"58":2,"59":2,"62":3,"63":1,"64":2,"65":3,"66":5,"67":5,"68":1,"69":1,"75":1,"79":1,"102":3,"104":1,"105":1}}],["larger",{"2":{"24":1}}],["large",{"2":{"0":2,"24":1,"50":1,"82":1}}]],"serializationVersion":2}';export{e as default}; diff --git a/dev/assets/chunks/VPLocalSearchBox.BUTaXOAl.js b/dev/assets/chunks/VPLocalSearchBox.DJECbzTq.js similarity index 99% rename from dev/assets/chunks/VPLocalSearchBox.BUTaXOAl.js rename to dev/assets/chunks/VPLocalSearchBox.DJECbzTq.js index a22dc00c..27c71002 100644 --- a/dev/assets/chunks/VPLocalSearchBox.BUTaXOAl.js +++ b/dev/assets/chunks/VPLocalSearchBox.DJECbzTq.js @@ -1,4 +1,4 @@ -var Ft=Object.defineProperty;var Ot=(a,e,t)=>e in a?Ft(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t;var Ae=(a,e,t)=>Ot(a,typeof e!="symbol"?e+"":e,t);import{V as Ct,p as ie,h as me,aj as tt,ak as Rt,al as At,q as $e,am as Mt,d as Lt,D as xe,an as st,ao as Dt,ap as zt,s as Pt,aq as jt,v as Me,P as he,O as _e,ar as Vt,as as $t,W as Bt,R as Wt,$ as Kt,o as H,b as Jt,j as _,a0 as Ut,k as L,at as qt,au as Gt,av as Ht,c as Z,n as nt,e as Se,C as it,F as rt,a as fe,t as pe,aw as Qt,ax as at,ay as Yt,a9 as Zt,af as Xt,az as es,_ as ts}from"./framework.swGcc4Ky.js";import{u as ss,d as ns}from"./theme.CUcjuZ66.js";const is={root:()=>Ct(()=>import("./@localSearchIndexroot.BVsQolaK.js"),[])};/*! +var Ft=Object.defineProperty;var Ot=(a,e,t)=>e in a?Ft(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t;var Ae=(a,e,t)=>Ot(a,typeof e!="symbol"?e+"":e,t);import{V as Ct,p as ie,h as me,aj as tt,ak as Rt,al as At,q as $e,am as Mt,d as Lt,D as xe,an as st,ao as Dt,ap as zt,s as Pt,aq as jt,v as Me,P as he,O as _e,ar as Vt,as as $t,W as Bt,R as Wt,$ as Kt,o as H,b as Jt,j as _,a0 as Ut,k as L,at as qt,au as Gt,av as Ht,c as Z,n as nt,e as Se,C as it,F as rt,a as fe,t as pe,aw as Qt,ax as at,ay as Yt,a9 as Zt,af as Xt,az as es,_ as ts}from"./framework.swGcc4Ky.js";import{u as ss,d as ns}from"./theme.C0fR5TI8.js";const is={root:()=>Ct(()=>import("./@localSearchIndexroot.BaJs6gCP.js"),[])};/*! * tabbable 6.2.0 * @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE */var mt=["input:not([inert])","select:not([inert])","textarea:not([inert])","a[href]:not([inert])","button:not([inert])","[tabindex]:not(slot):not([inert])","audio[controls]:not([inert])","video[controls]:not([inert])",'[contenteditable]:not([contenteditable="false"]):not([inert])',"details>summary:first-of-type:not([inert])","details:not([inert])"],Ne=mt.join(","),gt=typeof Element>"u",ae=gt?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,Fe=!gt&&Element.prototype.getRootNode?function(a){var e;return a==null||(e=a.getRootNode)===null||e===void 0?void 0:e.call(a)}:function(a){return a==null?void 0:a.ownerDocument},Oe=function a(e,t){var s;t===void 0&&(t=!0);var n=e==null||(s=e.getAttribute)===null||s===void 0?void 0:s.call(e,"inert"),r=n===""||n==="true",i=r||t&&e&&a(e.parentNode);return i},rs=function(e){var t,s=e==null||(t=e.getAttribute)===null||t===void 0?void 0:t.call(e,"contenteditable");return s===""||s==="true"},bt=function(e,t,s){if(Oe(e))return[];var n=Array.prototype.slice.apply(e.querySelectorAll(Ne));return t&&ae.call(e,Ne)&&n.unshift(e),n=n.filter(s),n},yt=function a(e,t,s){for(var n=[],r=Array.from(e);r.length;){var i=r.shift();if(!Oe(i,!1))if(i.tagName==="SLOT"){var o=i.assignedElements(),l=o.length?o:i.children,c=a(l,!0,s);s.flatten?n.push.apply(n,c):n.push({scopeParent:i,candidates:c})}else{var h=ae.call(i,Ne);h&&s.filter(i)&&(t||!e.includes(i))&&n.push(i);var m=i.shadowRoot||typeof s.getShadowRoot=="function"&&s.getShadowRoot(i),f=!Oe(m,!1)&&(!s.shadowRootFilter||s.shadowRootFilter(i));if(m&&f){var b=a(m===!0?i.children:m.children,!0,s);s.flatten?n.push.apply(n,b):n.push({scopeParent:i,candidates:b})}else r.unshift.apply(r,i.children)}}return n},wt=function(e){return!isNaN(parseInt(e.getAttribute("tabindex"),10))},re=function(e){if(!e)throw new Error("No node provided");return e.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(e.tagName)||rs(e))&&!wt(e)?0:e.tabIndex},as=function(e,t){var s=re(e);return s<0&&t&&!wt(e)?0:s},os=function(e,t){return e.tabIndex===t.tabIndex?e.documentOrder-t.documentOrder:e.tabIndex-t.tabIndex},xt=function(e){return e.tagName==="INPUT"},ls=function(e){return xt(e)&&e.type==="hidden"},cs=function(e){var t=e.tagName==="DETAILS"&&Array.prototype.slice.apply(e.children).some(function(s){return s.tagName==="SUMMARY"});return t},us=function(e,t){for(var s=0;ssummary:first-of-type"),i=r?e.parentElement:e;if(ae.call(i,"details:not([open]) *"))return!0;if(!s||s==="full"||s==="legacy-full"){if(typeof n=="function"){for(var o=e;e;){var l=e.parentElement,c=Fe(e);if(l&&!l.shadowRoot&&n(l)===!0)return ot(e);e.assignedSlot?e=e.assignedSlot:!l&&c!==e.ownerDocument?e=c.host:e=l}e=o}if(ps(e))return!e.getClientRects().length;if(s!=="legacy-full")return!0}else if(s==="non-zero-area")return ot(e);return!1},ms=function(e){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(e.tagName))for(var t=e.parentElement;t;){if(t.tagName==="FIELDSET"&&t.disabled){for(var s=0;s=0)},bs=function a(e){var t=[],s=[];return e.forEach(function(n,r){var i=!!n.scopeParent,o=i?n.scopeParent:n,l=as(o,i),c=i?a(n.candidates):o;l===0?i?t.push.apply(t,c):t.push(o):s.push({documentOrder:r,tabIndex:l,item:n,isScope:i,content:c})}),s.sort(os).reduce(function(n,r){return r.isScope?n.push.apply(n,r.content):n.push(r.content),n},[]).concat(t)},ys=function(e,t){t=t||{};var s;return t.getShadowRoot?s=yt([e],t.includeContainer,{filter:Be.bind(null,t),flatten:!1,getShadowRoot:t.getShadowRoot,shadowRootFilter:gs}):s=bt(e,t.includeContainer,Be.bind(null,t)),bs(s)},ws=function(e,t){t=t||{};var s;return t.getShadowRoot?s=yt([e],t.includeContainer,{filter:Ce.bind(null,t),flatten:!0,getShadowRoot:t.getShadowRoot}):s=bt(e,t.includeContainer,Ce.bind(null,t)),s},oe=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return ae.call(e,Ne)===!1?!1:Be(t,e)},xs=mt.concat("iframe").join(","),Le=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return ae.call(e,xs)===!1?!1:Ce(t,e)};/*! diff --git a/dev/assets/chunks/theme.CUcjuZ66.js b/dev/assets/chunks/theme.C0fR5TI8.js similarity index 99% rename from dev/assets/chunks/theme.CUcjuZ66.js rename to dev/assets/chunks/theme.C0fR5TI8.js index b71926e4..b5fda3ca 100644 --- a/dev/assets/chunks/theme.CUcjuZ66.js +++ b/dev/assets/chunks/theme.C0fR5TI8.js @@ -1,2 +1,2 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/chunks/VPLocalSearchBox.BUTaXOAl.js","assets/chunks/framework.swGcc4Ky.js"])))=>i.map(i=>d[i]); -import{d as b,o,c as l,r as u,n as T,a as F,t as I,b as $,w as f,e as m,T as pe,_ as k,u as Se,i as Je,f as Ke,g as ve,h as y,j as p,k as i,l as J,m as ie,p as S,q as W,s as q,v as O,x as fe,y as me,z as je,A as ze,B as G,F as C,C as B,D as Ie,E as x,G as g,H,I as Ne,J as ee,K as R,L as j,M as Ze,N as Te,O as le,P as he,Q as Ce,R as te,S as Ye,U as Xe,V as qe,W as we,X as _e,Y as xe,Z as et,$ as tt,a0 as st,a1 as Me,a2 as nt,a3 as at,a4 as ot,a5 as Ae}from"./framework.swGcc4Ky.js";const rt=b({__name:"VPBadge",props:{text:{},type:{default:"tip"}},setup(a){return(e,t)=>(o(),l("span",{class:T(["VPBadge",e.type])},[u(e.$slots,"default",{},()=>[F(I(e.text),1)])],2))}}),it={key:0,class:"VPBackdrop"},lt=b({__name:"VPBackdrop",props:{show:{type:Boolean}},setup(a){return(e,t)=>(o(),$(pe,{name:"fade"},{default:f(()=>[e.show?(o(),l("div",it)):m("",!0)]),_:1}))}}),ct=k(lt,[["__scopeId","data-v-b06cdb19"]]),V=Se;function ut(a,e){let t,n=!1;return()=>{t&&clearTimeout(t),n?t=setTimeout(a,e):(a(),(n=!0)&&setTimeout(()=>n=!1,e))}}function ce(a){return/^\//.test(a)?a:`/${a}`}function be(a){const{pathname:e,search:t,hash:n,protocol:s}=new URL(a,"http://a.com");if(Je(a)||a.startsWith("#")||!s.startsWith("http")||!Ke(e))return a;const{site:r}=V(),c=e.endsWith("/")||e.endsWith(".html")?a:a.replace(/(?:(^\.+)\/)?.*$/,`$1${e.replace(/(\.md)?$/,r.value.cleanUrls?"":".html")}${t}${n}`);return ve(c)}function Z({correspondingLink:a=!1}={}){const{site:e,localeIndex:t,page:n,theme:s,hash:r}=V(),c=y(()=>{var d,h;return{label:(d=e.value.locales[t.value])==null?void 0:d.label,link:((h=e.value.locales[t.value])==null?void 0:h.link)||(t.value==="root"?"/":`/${t.value}/`)}});return{localeLinks:y(()=>Object.entries(e.value.locales).flatMap(([d,h])=>c.value.label===h.label?[]:{text:h.label,link:dt(h.link||(d==="root"?"/":`/${d}/`),s.value.i18nRouting!==!1&&a,n.value.relativePath.slice(c.value.link.length-1),!e.value.cleanUrls)+r.value})),currentLang:c}}function dt(a,e,t,n){return e?a.replace(/\/$/,"")+ce(t.replace(/(^|\/)index\.md$/,"$1").replace(/\.md$/,n?".html":"")):a}const pt={class:"NotFound"},vt={class:"code"},ft={class:"title"},mt={class:"quote"},ht={class:"action"},_t=["href","aria-label"],bt=b({__name:"NotFound",setup(a){const{theme:e}=V(),{currentLang:t}=Z();return(n,s)=>{var r,c,v,d,h;return o(),l("div",pt,[p("p",vt,I(((r=i(e).notFound)==null?void 0:r.code)??"404"),1),p("h1",ft,I(((c=i(e).notFound)==null?void 0:c.title)??"PAGE NOT FOUND"),1),s[0]||(s[0]=p("div",{class:"divider"},null,-1)),p("blockquote",mt,I(((v=i(e).notFound)==null?void 0:v.quote)??"But if you don't change your direction, and if you keep looking, you may end up where you are heading."),1),p("div",ht,[p("a",{class:"link",href:i(ve)(i(t).link),"aria-label":((d=i(e).notFound)==null?void 0:d.linkLabel)??"go to home"},I(((h=i(e).notFound)==null?void 0:h.linkText)??"Take me home"),9,_t)])])}}}),gt=k(bt,[["__scopeId","data-v-951cab6c"]]);function Be(a,e){if(Array.isArray(a))return Y(a);if(a==null)return[];e=ce(e);const t=Object.keys(a).sort((s,r)=>r.split("/").length-s.split("/").length).find(s=>e.startsWith(ce(s))),n=t?a[t]:[];return Array.isArray(n)?Y(n):Y(n.items,n.base)}function kt(a){const e=[];let t=0;for(const n in a){const s=a[n];if(s.items){t=e.push(s);continue}e[t]||e.push({items:[]}),e[t].items.push(s)}return e}function $t(a){const e=[];function t(n){for(const s of n)s.text&&s.link&&e.push({text:s.text,link:s.link,docFooterText:s.docFooterText}),s.items&&t(s.items)}return t(a),e}function ue(a,e){return Array.isArray(e)?e.some(t=>ue(a,t)):J(a,e.link)?!0:e.items?ue(a,e.items):!1}function Y(a,e){return[...a].map(t=>{const n={...t},s=n.base||e;return s&&n.link&&(n.link=s+n.link),n.items&&(n.items=Y(n.items,s)),n})}function D(){const{frontmatter:a,page:e,theme:t}=V(),n=ie("(min-width: 960px)"),s=S(!1),r=y(()=>{const M=t.value.sidebar,N=e.value.relativePath;return M?Be(M,N):[]}),c=S(r.value);W(r,(M,N)=>{JSON.stringify(M)!==JSON.stringify(N)&&(c.value=r.value)});const v=y(()=>a.value.sidebar!==!1&&c.value.length>0&&a.value.layout!=="home"),d=y(()=>h?a.value.aside==null?t.value.aside==="left":a.value.aside==="left":!1),h=y(()=>a.value.layout==="home"?!1:a.value.aside!=null?!!a.value.aside:t.value.aside!==!1),A=y(()=>v.value&&n.value),_=y(()=>v.value?kt(c.value):[]);function P(){s.value=!0}function L(){s.value=!1}function w(){s.value?L():P()}return{isOpen:s,sidebar:c,sidebarGroups:_,hasSidebar:v,hasAside:h,leftAside:d,isSidebarEnabled:A,open:P,close:L,toggle:w}}function yt(a,e){let t;q(()=>{t=a.value?document.activeElement:void 0}),O(()=>{window.addEventListener("keyup",n)}),fe(()=>{window.removeEventListener("keyup",n)});function n(s){s.key==="Escape"&&a.value&&(e(),t==null||t.focus())}}function At(a){const{page:e,hash:t}=V(),n=S(!1),s=y(()=>a.value.collapsed!=null),r=y(()=>!!a.value.link),c=S(!1),v=()=>{c.value=J(e.value.relativePath,a.value.link)};W([e,a,t],v),O(v);const d=y(()=>c.value?!0:a.value.items?ue(e.value.relativePath,a.value.items):!1),h=y(()=>!!(a.value.items&&a.value.items.length));q(()=>{n.value=!!(s.value&&a.value.collapsed)}),me(()=>{(c.value||d.value)&&(n.value=!1)});function A(){s.value&&(n.value=!n.value)}return{collapsed:n,collapsible:s,isLink:r,isActiveLink:c,hasActiveLink:d,hasChildren:h,toggle:A}}function Pt(){const{hasSidebar:a}=D(),e=ie("(min-width: 960px)"),t=ie("(min-width: 1280px)");return{isAsideEnabled:y(()=>!t.value&&!e.value?!1:a.value?t.value:e.value)}}const de=[];function Ee(a){return typeof a.outline=="object"&&!Array.isArray(a.outline)&&a.outline.label||a.outlineTitle||"On this page"}function ge(a){const e=[...document.querySelectorAll(".VPDoc :where(h1,h2,h3,h4,h5,h6)")].filter(t=>t.id&&t.hasChildNodes()).map(t=>{const n=Number(t.tagName[1]);return{element:t,title:Lt(t),link:"#"+t.id,level:n}});return Vt(e,a)}function Lt(a){let e="";for(const t of a.childNodes)if(t.nodeType===1){if(t.classList.contains("VPBadge")||t.classList.contains("header-anchor")||t.classList.contains("ignore-header"))continue;e+=t.textContent}else t.nodeType===3&&(e+=t.textContent);return e.trim()}function Vt(a,e){if(e===!1)return[];const t=(typeof e=="object"&&!Array.isArray(e)?e.level:e)||2,[n,s]=typeof t=="number"?[t,t]:t==="deep"?[2,6]:t;return Nt(a,n,s)}function St(a,e){const{isAsideEnabled:t}=Pt(),n=ut(r,100);let s=null;O(()=>{requestAnimationFrame(r),window.addEventListener("scroll",n)}),je(()=>{c(location.hash)}),fe(()=>{window.removeEventListener("scroll",n)});function r(){if(!t.value)return;const v=window.scrollY,d=window.innerHeight,h=document.body.offsetHeight,A=Math.abs(v+d-h)<1,_=de.map(({element:L,link:w})=>({link:w,top:It(L)})).filter(({top:L})=>!Number.isNaN(L)).sort((L,w)=>L.top-w.top);if(!_.length){c(null);return}if(v<1){c(null);return}if(A){c(_[_.length-1].link);return}let P=null;for(const{link:L,top:w}of _){if(w>v+ze()+4)break;P=L}c(P)}function c(v){s&&s.classList.remove("active"),v==null?s=null:s=a.value.querySelector(`a[href="${decodeURIComponent(v)}"]`);const d=s;d?(d.classList.add("active"),e.value.style.top=d.offsetTop+39+"px",e.value.style.opacity="1"):(e.value.style.top="33px",e.value.style.opacity="0")}}function It(a){let e=0;for(;a!==document.body;){if(a===null)return NaN;e+=a.offsetTop,a=a.offsetParent}return e}function Nt(a,e,t){de.length=0;const n=[],s=[];return a.forEach(r=>{const c={...r,children:[]};let v=s[s.length-1];for(;v&&v.level>=c.level;)s.pop(),v=s[s.length-1];if(c.element.classList.contains("ignore-header")||v&&"shouldIgnore"in v){s.push({level:c.level,shouldIgnore:!0});return}c.level>t||c.level{const s=G("VPDocOutlineItem",!0);return o(),l("ul",{class:T(["VPDocOutlineItem",t.root?"root":"nested"])},[(o(!0),l(C,null,B(t.headers,({children:r,link:c,title:v})=>(o(),l("li",null,[p("a",{class:"outline-link",href:c,onClick:e,title:v},I(v),9,Tt),r!=null&&r.length?(o(),$(s,{key:0,headers:r},null,8,["headers"])):m("",!0)]))),256))],2)}}}),Qe=k(Ct,[["__scopeId","data-v-3f927ebe"]]),wt={class:"content"},Mt={"aria-level":"2",class:"outline-title",id:"doc-outline-aria-label",role:"heading"},Bt=b({__name:"VPDocAsideOutline",setup(a){const{frontmatter:e,theme:t}=V(),n=Ie([]);x(()=>{n.value=ge(e.value.outline??t.value.outline)});const s=S(),r=S();return St(s,r),(c,v)=>(o(),l("nav",{"aria-labelledby":"doc-outline-aria-label",class:T(["VPDocAsideOutline",{"has-outline":n.value.length>0}]),ref_key:"container",ref:s},[p("div",wt,[p("div",{class:"outline-marker",ref_key:"marker",ref:r},null,512),p("div",Mt,I(i(Ee)(i(t))),1),g(Qe,{headers:n.value,root:!0},null,8,["headers"])])],2))}}),Et=k(Bt,[["__scopeId","data-v-b38bf2ff"]]),Qt={class:"VPDocAsideCarbonAds"},Ht=b({__name:"VPDocAsideCarbonAds",props:{carbonAds:{}},setup(a){const e=()=>null;return(t,n)=>(o(),l("div",Qt,[g(i(e),{"carbon-ads":t.carbonAds},null,8,["carbon-ads"])]))}}),Ft={class:"VPDocAside"},Wt=b({__name:"VPDocAside",setup(a){const{theme:e}=V();return(t,n)=>(o(),l("div",Ft,[u(t.$slots,"aside-top",{},void 0,!0),u(t.$slots,"aside-outline-before",{},void 0,!0),g(Et),u(t.$slots,"aside-outline-after",{},void 0,!0),n[0]||(n[0]=p("div",{class:"spacer"},null,-1)),u(t.$slots,"aside-ads-before",{},void 0,!0),i(e).carbonAds?(o(),$(Ht,{key:0,"carbon-ads":i(e).carbonAds},null,8,["carbon-ads"])):m("",!0),u(t.$slots,"aside-ads-after",{},void 0,!0),u(t.$slots,"aside-bottom",{},void 0,!0)]))}}),Ot=k(Wt,[["__scopeId","data-v-6d7b3c46"]]);function Dt(){const{theme:a,page:e}=V();return y(()=>{const{text:t="Edit this page",pattern:n=""}=a.value.editLink||{};let s;return typeof n=="function"?s=n(e.value):s=n.replace(/:path/g,e.value.filePath),{url:s,text:t}})}function Ut(){const{page:a,theme:e,frontmatter:t}=V();return y(()=>{var h,A,_,P,L,w,M,N;const n=Be(e.value.sidebar,a.value.relativePath),s=$t(n),r=Rt(s,E=>E.link.replace(/[?#].*$/,"")),c=r.findIndex(E=>J(a.value.relativePath,E.link)),v=((h=e.value.docFooter)==null?void 0:h.prev)===!1&&!t.value.prev||t.value.prev===!1,d=((A=e.value.docFooter)==null?void 0:A.next)===!1&&!t.value.next||t.value.next===!1;return{prev:v?void 0:{text:(typeof t.value.prev=="string"?t.value.prev:typeof t.value.prev=="object"?t.value.prev.text:void 0)??((_=r[c-1])==null?void 0:_.docFooterText)??((P=r[c-1])==null?void 0:P.text),link:(typeof t.value.prev=="object"?t.value.prev.link:void 0)??((L=r[c-1])==null?void 0:L.link)},next:d?void 0:{text:(typeof t.value.next=="string"?t.value.next:typeof t.value.next=="object"?t.value.next.text:void 0)??((w=r[c+1])==null?void 0:w.docFooterText)??((M=r[c+1])==null?void 0:M.text),link:(typeof t.value.next=="object"?t.value.next.link:void 0)??((N=r[c+1])==null?void 0:N.link)}}})}function Rt(a,e){const t=new Set;return a.filter(n=>{const s=e(n);return t.has(s)?!1:t.add(s)})}const Q=b({__name:"VPLink",props:{tag:{},href:{},noIcon:{type:Boolean},target:{},rel:{}},setup(a){const e=a,t=y(()=>e.tag??(e.href?"a":"span")),n=y(()=>e.href&&Ne.test(e.href)||e.target==="_blank");return(s,r)=>(o(),$(H(t.value),{class:T(["VPLink",{link:s.href,"vp-external-link-icon":n.value,"no-icon":s.noIcon}]),href:s.href?i(be)(s.href):void 0,target:s.target??(n.value?"_blank":void 0),rel:s.rel??(n.value?"noreferrer":void 0)},{default:f(()=>[u(s.$slots,"default")]),_:3},8,["class","href","target","rel"]))}}),Gt={class:"VPLastUpdated"},Jt=["datetime"],Kt=b({__name:"VPDocFooterLastUpdated",setup(a){const{theme:e,page:t,lang:n}=V(),s=y(()=>new Date(t.value.lastUpdated)),r=y(()=>s.value.toISOString()),c=S("");return O(()=>{q(()=>{var v,d,h;c.value=new Intl.DateTimeFormat((d=(v=e.value.lastUpdated)==null?void 0:v.formatOptions)!=null&&d.forceLocale?n.value:void 0,((h=e.value.lastUpdated)==null?void 0:h.formatOptions)??{dateStyle:"short",timeStyle:"short"}).format(s.value)})}),(v,d)=>{var h;return o(),l("p",Gt,[F(I(((h=i(e).lastUpdated)==null?void 0:h.text)||i(e).lastUpdatedText||"Last updated")+": ",1),p("time",{datetime:r.value},I(c.value),9,Jt)])}}}),jt=k(Kt,[["__scopeId","data-v-475f71b8"]]),zt={key:0,class:"VPDocFooter"},Zt={key:0,class:"edit-info"},Yt={key:0,class:"edit-link"},Xt={key:1,class:"last-updated"},qt={key:1,class:"prev-next","aria-labelledby":"doc-footer-aria-label"},xt={class:"pager"},es=["innerHTML"],ts=["innerHTML"],ss={class:"pager"},ns=["innerHTML"],as=["innerHTML"],os=b({__name:"VPDocFooter",setup(a){const{theme:e,page:t,frontmatter:n}=V(),s=Dt(),r=Ut(),c=y(()=>e.value.editLink&&n.value.editLink!==!1),v=y(()=>t.value.lastUpdated),d=y(()=>c.value||v.value||r.value.prev||r.value.next);return(h,A)=>{var _,P,L,w;return d.value?(o(),l("footer",zt,[u(h.$slots,"doc-footer-before",{},void 0,!0),c.value||v.value?(o(),l("div",Zt,[c.value?(o(),l("div",Yt,[g(Q,{class:"edit-link-button",href:i(s).url,"no-icon":!0},{default:f(()=>[A[0]||(A[0]=p("span",{class:"vpi-square-pen edit-link-icon"},null,-1)),F(" "+I(i(s).text),1)]),_:1},8,["href"])])):m("",!0),v.value?(o(),l("div",Xt,[g(jt)])):m("",!0)])):m("",!0),(_=i(r).prev)!=null&&_.link||(P=i(r).next)!=null&&P.link?(o(),l("nav",qt,[A[1]||(A[1]=p("span",{class:"visually-hidden",id:"doc-footer-aria-label"},"Pager",-1)),p("div",xt,[(L=i(r).prev)!=null&&L.link?(o(),$(Q,{key:0,class:"pager-link prev",href:i(r).prev.link},{default:f(()=>{var M;return[p("span",{class:"desc",innerHTML:((M=i(e).docFooter)==null?void 0:M.prev)||"Previous page"},null,8,es),p("span",{class:"title",innerHTML:i(r).prev.text},null,8,ts)]}),_:1},8,["href"])):m("",!0)]),p("div",ss,[(w=i(r).next)!=null&&w.link?(o(),$(Q,{key:0,class:"pager-link next",href:i(r).next.link},{default:f(()=>{var M;return[p("span",{class:"desc",innerHTML:((M=i(e).docFooter)==null?void 0:M.next)||"Next page"},null,8,ns),p("span",{class:"title",innerHTML:i(r).next.text},null,8,as)]}),_:1},8,["href"])):m("",!0)])])):m("",!0)])):m("",!0)}}}),rs=k(os,[["__scopeId","data-v-4f9813fa"]]),is={class:"container"},ls={class:"aside-container"},cs={class:"aside-content"},us={class:"content"},ds={class:"content-container"},ps={class:"main"},vs=b({__name:"VPDoc",setup(a){const{theme:e}=V(),t=ee(),{hasSidebar:n,hasAside:s,leftAside:r}=D(),c=y(()=>t.path.replace(/[./]+/g,"_").replace(/_html$/,""));return(v,d)=>{const h=G("Content");return o(),l("div",{class:T(["VPDoc",{"has-sidebar":i(n),"has-aside":i(s)}])},[u(v.$slots,"doc-top",{},void 0,!0),p("div",is,[i(s)?(o(),l("div",{key:0,class:T(["aside",{"left-aside":i(r)}])},[d[0]||(d[0]=p("div",{class:"aside-curtain"},null,-1)),p("div",ls,[p("div",cs,[g(Ot,null,{"aside-top":f(()=>[u(v.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":f(()=>[u(v.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":f(()=>[u(v.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":f(()=>[u(v.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":f(()=>[u(v.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":f(()=>[u(v.$slots,"aside-ads-after",{},void 0,!0)]),_:3})])])],2)):m("",!0),p("div",us,[p("div",ds,[u(v.$slots,"doc-before",{},void 0,!0),p("main",ps,[g(h,{class:T(["vp-doc",[c.value,i(e).externalLinkIcon&&"external-link-icon-enabled"]])},null,8,["class"])]),g(rs,null,{"doc-footer-before":f(()=>[u(v.$slots,"doc-footer-before",{},void 0,!0)]),_:3}),u(v.$slots,"doc-after",{},void 0,!0)])])]),u(v.$slots,"doc-bottom",{},void 0,!0)],2)}}}),fs=k(vs,[["__scopeId","data-v-83890dd9"]]),ms=b({__name:"VPButton",props:{tag:{},size:{default:"medium"},theme:{default:"brand"},text:{},href:{},target:{},rel:{}},setup(a){const e=a,t=y(()=>e.href&&Ne.test(e.href)),n=y(()=>e.tag||(e.href?"a":"button"));return(s,r)=>(o(),$(H(n.value),{class:T(["VPButton",[s.size,s.theme]]),href:s.href?i(be)(s.href):void 0,target:e.target??(t.value?"_blank":void 0),rel:e.rel??(t.value?"noreferrer":void 0)},{default:f(()=>[F(I(s.text),1)]),_:1},8,["class","href","target","rel"]))}}),hs=k(ms,[["__scopeId","data-v-906d7fb4"]]),_s=["src","alt"],bs=b({inheritAttrs:!1,__name:"VPImage",props:{image:{},alt:{}},setup(a){return(e,t)=>{const n=G("VPImage",!0);return e.image?(o(),l(C,{key:0},[typeof e.image=="string"||"src"in e.image?(o(),l("img",R({key:0,class:"VPImage"},typeof e.image=="string"?e.$attrs:{...e.image,...e.$attrs},{src:i(ve)(typeof e.image=="string"?e.image:e.image.src),alt:e.alt??(typeof e.image=="string"?"":e.image.alt||"")}),null,16,_s)):(o(),l(C,{key:1},[g(n,R({class:"dark",image:e.image.dark,alt:e.image.alt},e.$attrs),null,16,["image","alt"]),g(n,R({class:"light",image:e.image.light,alt:e.image.alt},e.$attrs),null,16,["image","alt"])],64))],64)):m("",!0)}}}),X=k(bs,[["__scopeId","data-v-35a7d0b8"]]),gs={class:"container"},ks={class:"main"},$s={key:0,class:"name"},ys=["innerHTML"],As=["innerHTML"],Ps=["innerHTML"],Ls={key:0,class:"actions"},Vs={key:0,class:"image"},Ss={class:"image-container"},Is=b({__name:"VPHero",props:{name:{},text:{},tagline:{},image:{},actions:{}},setup(a){const e=j("hero-image-slot-exists");return(t,n)=>(o(),l("div",{class:T(["VPHero",{"has-image":t.image||i(e)}])},[p("div",gs,[p("div",ks,[u(t.$slots,"home-hero-info-before",{},void 0,!0),u(t.$slots,"home-hero-info",{},()=>[t.name?(o(),l("h1",$s,[p("span",{innerHTML:t.name,class:"clip"},null,8,ys)])):m("",!0),t.text?(o(),l("p",{key:1,innerHTML:t.text,class:"text"},null,8,As)):m("",!0),t.tagline?(o(),l("p",{key:2,innerHTML:t.tagline,class:"tagline"},null,8,Ps)):m("",!0)],!0),u(t.$slots,"home-hero-info-after",{},void 0,!0),t.actions?(o(),l("div",Ls,[(o(!0),l(C,null,B(t.actions,s=>(o(),l("div",{key:s.link,class:"action"},[g(hs,{tag:"a",size:"medium",theme:s.theme,text:s.text,href:s.link,target:s.target,rel:s.rel},null,8,["theme","text","href","target","rel"])]))),128))])):m("",!0),u(t.$slots,"home-hero-actions-after",{},void 0,!0)]),t.image||i(e)?(o(),l("div",Vs,[p("div",Ss,[n[0]||(n[0]=p("div",{class:"image-bg"},null,-1)),u(t.$slots,"home-hero-image",{},()=>[t.image?(o(),$(X,{key:0,class:"image-src",image:t.image},null,8,["image"])):m("",!0)],!0)])])):m("",!0)])],2))}}),Ns=k(Is,[["__scopeId","data-v-955009fc"]]),Ts=b({__name:"VPHomeHero",setup(a){const{frontmatter:e}=V();return(t,n)=>i(e).hero?(o(),$(Ns,{key:0,class:"VPHomeHero",name:i(e).hero.name,text:i(e).hero.text,tagline:i(e).hero.tagline,image:i(e).hero.image,actions:i(e).hero.actions},{"home-hero-info-before":f(()=>[u(t.$slots,"home-hero-info-before")]),"home-hero-info":f(()=>[u(t.$slots,"home-hero-info")]),"home-hero-info-after":f(()=>[u(t.$slots,"home-hero-info-after")]),"home-hero-actions-after":f(()=>[u(t.$slots,"home-hero-actions-after")]),"home-hero-image":f(()=>[u(t.$slots,"home-hero-image")]),_:3},8,["name","text","tagline","image","actions"])):m("",!0)}}),Cs={class:"box"},ws={key:0,class:"icon"},Ms=["innerHTML"],Bs=["innerHTML"],Es=["innerHTML"],Qs={key:4,class:"link-text"},Hs={class:"link-text-value"},Fs=b({__name:"VPFeature",props:{icon:{},title:{},details:{},link:{},linkText:{},rel:{},target:{}},setup(a){return(e,t)=>(o(),$(Q,{class:"VPFeature",href:e.link,rel:e.rel,target:e.target,"no-icon":!0,tag:e.link?"a":"div"},{default:f(()=>[p("article",Cs,[typeof e.icon=="object"&&e.icon.wrap?(o(),l("div",ws,[g(X,{image:e.icon,alt:e.icon.alt,height:e.icon.height||48,width:e.icon.width||48},null,8,["image","alt","height","width"])])):typeof e.icon=="object"?(o(),$(X,{key:1,image:e.icon,alt:e.icon.alt,height:e.icon.height||48,width:e.icon.width||48},null,8,["image","alt","height","width"])):e.icon?(o(),l("div",{key:2,class:"icon",innerHTML:e.icon},null,8,Ms)):m("",!0),p("h2",{class:"title",innerHTML:e.title},null,8,Bs),e.details?(o(),l("p",{key:3,class:"details",innerHTML:e.details},null,8,Es)):m("",!0),e.linkText?(o(),l("div",Qs,[p("p",Hs,[F(I(e.linkText)+" ",1),t[0]||(t[0]=p("span",{class:"vpi-arrow-right link-text-icon"},null,-1))])])):m("",!0)])]),_:1},8,["href","rel","target","tag"]))}}),Ws=k(Fs,[["__scopeId","data-v-f5e9645b"]]),Os={key:0,class:"VPFeatures"},Ds={class:"container"},Us={class:"items"},Rs=b({__name:"VPFeatures",props:{features:{}},setup(a){const e=a,t=y(()=>{const n=e.features.length;if(n){if(n===2)return"grid-2";if(n===3)return"grid-3";if(n%3===0)return"grid-6";if(n>3)return"grid-4"}else return});return(n,s)=>n.features?(o(),l("div",Os,[p("div",Ds,[p("div",Us,[(o(!0),l(C,null,B(n.features,r=>(o(),l("div",{key:r.title,class:T(["item",[t.value]])},[g(Ws,{icon:r.icon,title:r.title,details:r.details,link:r.link,"link-text":r.linkText,rel:r.rel,target:r.target},null,8,["icon","title","details","link","link-text","rel","target"])],2))),128))])])])):m("",!0)}}),Gs=k(Rs,[["__scopeId","data-v-d0a190d7"]]),Js=b({__name:"VPHomeFeatures",setup(a){const{frontmatter:e}=V();return(t,n)=>i(e).features?(o(),$(Gs,{key:0,class:"VPHomeFeatures",features:i(e).features},null,8,["features"])):m("",!0)}}),Ks=b({__name:"VPHomeContent",setup(a){const{width:e}=Ze({initialWidth:0,includeScrollbar:!1});return(t,n)=>(o(),l("div",{class:"vp-doc container",style:Te(i(e)?{"--vp-offset":`calc(50% - ${i(e)/2}px)`}:{})},[u(t.$slots,"default",{},void 0,!0)],4))}}),js=k(Ks,[["__scopeId","data-v-7a48a447"]]),zs={class:"VPHome"},Zs=b({__name:"VPHome",setup(a){const{frontmatter:e}=V();return(t,n)=>{const s=G("Content");return o(),l("div",zs,[u(t.$slots,"home-hero-before",{},void 0,!0),g(Ts,null,{"home-hero-info-before":f(()=>[u(t.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":f(()=>[u(t.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":f(()=>[u(t.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":f(()=>[u(t.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":f(()=>[u(t.$slots,"home-hero-image",{},void 0,!0)]),_:3}),u(t.$slots,"home-hero-after",{},void 0,!0),u(t.$slots,"home-features-before",{},void 0,!0),g(Js),u(t.$slots,"home-features-after",{},void 0,!0),i(e).markdownStyles!==!1?(o(),$(js,{key:0},{default:f(()=>[g(s)]),_:1})):(o(),$(s,{key:1}))])}}}),Ys=k(Zs,[["__scopeId","data-v-cbb6ec48"]]),Xs={},qs={class:"VPPage"};function xs(a,e){const t=G("Content");return o(),l("div",qs,[u(a.$slots,"page-top"),g(t),u(a.$slots,"page-bottom")])}const en=k(Xs,[["render",xs]]),tn=b({__name:"VPContent",setup(a){const{page:e,frontmatter:t}=V(),{hasSidebar:n}=D();return(s,r)=>(o(),l("div",{class:T(["VPContent",{"has-sidebar":i(n),"is-home":i(t).layout==="home"}]),id:"VPContent"},[i(e).isNotFound?u(s.$slots,"not-found",{key:0},()=>[g(gt)],!0):i(t).layout==="page"?(o(),$(en,{key:1},{"page-top":f(()=>[u(s.$slots,"page-top",{},void 0,!0)]),"page-bottom":f(()=>[u(s.$slots,"page-bottom",{},void 0,!0)]),_:3})):i(t).layout==="home"?(o(),$(Ys,{key:2},{"home-hero-before":f(()=>[u(s.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info-before":f(()=>[u(s.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":f(()=>[u(s.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":f(()=>[u(s.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":f(()=>[u(s.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":f(()=>[u(s.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":f(()=>[u(s.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":f(()=>[u(s.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":f(()=>[u(s.$slots,"home-features-after",{},void 0,!0)]),_:3})):i(t).layout&&i(t).layout!=="doc"?(o(),$(H(i(t).layout),{key:3})):(o(),$(fs,{key:4},{"doc-top":f(()=>[u(s.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":f(()=>[u(s.$slots,"doc-bottom",{},void 0,!0)]),"doc-footer-before":f(()=>[u(s.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":f(()=>[u(s.$slots,"doc-before",{},void 0,!0)]),"doc-after":f(()=>[u(s.$slots,"doc-after",{},void 0,!0)]),"aside-top":f(()=>[u(s.$slots,"aside-top",{},void 0,!0)]),"aside-outline-before":f(()=>[u(s.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":f(()=>[u(s.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":f(()=>[u(s.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":f(()=>[u(s.$slots,"aside-ads-after",{},void 0,!0)]),"aside-bottom":f(()=>[u(s.$slots,"aside-bottom",{},void 0,!0)]),_:3}))],2))}}),sn=k(tn,[["__scopeId","data-v-91765379"]]),nn={class:"container"},an=["innerHTML"],on=["innerHTML"],rn=b({__name:"VPFooter",setup(a){const{theme:e,frontmatter:t}=V(),{hasSidebar:n}=D();return(s,r)=>i(e).footer&&i(t).footer!==!1?(o(),l("footer",{key:0,class:T(["VPFooter",{"has-sidebar":i(n)}])},[p("div",nn,[i(e).footer.message?(o(),l("p",{key:0,class:"message",innerHTML:i(e).footer.message},null,8,an)):m("",!0),i(e).footer.copyright?(o(),l("p",{key:1,class:"copyright",innerHTML:i(e).footer.copyright},null,8,on)):m("",!0)])],2)):m("",!0)}}),ln=k(rn,[["__scopeId","data-v-c970a860"]]);function cn(){const{theme:a,frontmatter:e}=V(),t=Ie([]),n=y(()=>t.value.length>0);return x(()=>{t.value=ge(e.value.outline??a.value.outline)}),{headers:t,hasLocalNav:n}}const un={class:"menu-text"},dn={class:"header"},pn={class:"outline"},vn=b({__name:"VPLocalNavOutlineDropdown",props:{headers:{},navHeight:{}},setup(a){const e=a,{theme:t}=V(),n=S(!1),s=S(0),r=S(),c=S();function v(_){var P;(P=r.value)!=null&&P.contains(_.target)||(n.value=!1)}W(n,_=>{if(_){document.addEventListener("click",v);return}document.removeEventListener("click",v)}),le("Escape",()=>{n.value=!1}),x(()=>{n.value=!1});function d(){n.value=!n.value,s.value=window.innerHeight+Math.min(window.scrollY-e.navHeight,0)}function h(_){_.target.classList.contains("outline-link")&&(c.value&&(c.value.style.transition="none"),he(()=>{n.value=!1}))}function A(){n.value=!1,window.scrollTo({top:0,left:0,behavior:"smooth"})}return(_,P)=>(o(),l("div",{class:"VPLocalNavOutlineDropdown",style:Te({"--vp-vh":s.value+"px"}),ref_key:"main",ref:r},[_.headers.length>0?(o(),l("button",{key:0,onClick:d,class:T({open:n.value})},[p("span",un,I(i(Ee)(i(t))),1),P[0]||(P[0]=p("span",{class:"vpi-chevron-right icon"},null,-1))],2)):(o(),l("button",{key:1,onClick:A},I(i(t).returnToTopLabel||"Return to top"),1)),g(pe,{name:"flyout"},{default:f(()=>[n.value?(o(),l("div",{key:0,ref_key:"items",ref:c,class:"items",onClick:h},[p("div",dn,[p("a",{class:"top-link",href:"#",onClick:A},I(i(t).returnToTopLabel||"Return to top"),1)]),p("div",pn,[g(Qe,{headers:_.headers},null,8,["headers"])])],512)):m("",!0)]),_:1})],4))}}),fn=k(vn,[["__scopeId","data-v-bc9dc845"]]),mn={class:"container"},hn=["aria-expanded"],_n={class:"menu-text"},bn=b({__name:"VPLocalNav",props:{open:{type:Boolean}},emits:["open-menu"],setup(a){const{theme:e,frontmatter:t}=V(),{hasSidebar:n}=D(),{headers:s}=cn(),{y:r}=Ce(),c=S(0);O(()=>{c.value=parseInt(getComputedStyle(document.documentElement).getPropertyValue("--vp-nav-height"))}),x(()=>{s.value=ge(t.value.outline??e.value.outline)});const v=y(()=>s.value.length===0),d=y(()=>v.value&&!n.value),h=y(()=>({VPLocalNav:!0,"has-sidebar":n.value,empty:v.value,fixed:d.value}));return(A,_)=>i(t).layout!=="home"&&(!d.value||i(r)>=c.value)?(o(),l("div",{key:0,class:T(h.value)},[p("div",mn,[i(n)?(o(),l("button",{key:0,class:"menu","aria-expanded":A.open,"aria-controls":"VPSidebarNav",onClick:_[0]||(_[0]=P=>A.$emit("open-menu"))},[_[1]||(_[1]=p("span",{class:"vpi-align-left menu-icon"},null,-1)),p("span",_n,I(i(e).sidebarMenuLabel||"Menu"),1)],8,hn)):m("",!0),g(fn,{headers:i(s),navHeight:c.value},null,8,["headers","navHeight"])])],2)):m("",!0)}}),gn=k(bn,[["__scopeId","data-v-070ab83d"]]);function kn(){const a=S(!1);function e(){a.value=!0,window.addEventListener("resize",s)}function t(){a.value=!1,window.removeEventListener("resize",s)}function n(){a.value?t():e()}function s(){window.outerWidth>=768&&t()}const r=ee();return W(()=>r.path,t),{isScreenOpen:a,openScreen:e,closeScreen:t,toggleScreen:n}}const $n={},yn={class:"VPSwitch",type:"button",role:"switch"},An={class:"check"},Pn={key:0,class:"icon"};function Ln(a,e){return o(),l("button",yn,[p("span",An,[a.$slots.default?(o(),l("span",Pn,[u(a.$slots,"default",{},void 0,!0)])):m("",!0)])])}const Vn=k($n,[["render",Ln],["__scopeId","data-v-4a1c76db"]]),Sn=b({__name:"VPSwitchAppearance",setup(a){const{isDark:e,theme:t}=V(),n=j("toggle-appearance",()=>{e.value=!e.value}),s=S("");return me(()=>{s.value=e.value?t.value.lightModeSwitchTitle||"Switch to light theme":t.value.darkModeSwitchTitle||"Switch to dark theme"}),(r,c)=>(o(),$(Vn,{title:s.value,class:"VPSwitchAppearance","aria-checked":i(e),onClick:i(n)},{default:f(()=>c[0]||(c[0]=[p("span",{class:"vpi-sun sun"},null,-1),p("span",{class:"vpi-moon moon"},null,-1)])),_:1},8,["title","aria-checked","onClick"]))}}),ke=k(Sn,[["__scopeId","data-v-e40a8bb6"]]),In={key:0,class:"VPNavBarAppearance"},Nn=b({__name:"VPNavBarAppearance",setup(a){const{site:e}=V();return(t,n)=>i(e).appearance&&i(e).appearance!=="force-dark"&&i(e).appearance!=="force-auto"?(o(),l("div",In,[g(ke)])):m("",!0)}}),Tn=k(Nn,[["__scopeId","data-v-af096f4a"]]),$e=S();let He=!1,re=0;function Cn(a){const e=S(!1);if(te){!He&&wn(),re++;const t=W($e,n=>{var s,r,c;n===a.el.value||(s=a.el.value)!=null&&s.contains(n)?(e.value=!0,(r=a.onFocus)==null||r.call(a)):(e.value=!1,(c=a.onBlur)==null||c.call(a))});fe(()=>{t(),re--,re||Mn()})}return Ye(e)}function wn(){document.addEventListener("focusin",Fe),He=!0,$e.value=document.activeElement}function Mn(){document.removeEventListener("focusin",Fe)}function Fe(){$e.value=document.activeElement}const Bn={class:"VPMenuLink"},En=["innerHTML"],Qn=b({__name:"VPMenuLink",props:{item:{}},setup(a){const{page:e}=V();return(t,n)=>(o(),l("div",Bn,[g(Q,{class:T({active:i(J)(i(e).relativePath,t.item.activeMatch||t.item.link,!!t.item.activeMatch)}),href:t.item.link,target:t.item.target,rel:t.item.rel,"no-icon":t.item.noIcon},{default:f(()=>[p("span",{innerHTML:t.item.text},null,8,En)]),_:1},8,["class","href","target","rel","no-icon"])]))}}),se=k(Qn,[["__scopeId","data-v-acbfed09"]]),Hn={class:"VPMenuGroup"},Fn={key:0,class:"title"},Wn=b({__name:"VPMenuGroup",props:{text:{},items:{}},setup(a){return(e,t)=>(o(),l("div",Hn,[e.text?(o(),l("p",Fn,I(e.text),1)):m("",!0),(o(!0),l(C,null,B(e.items,n=>(o(),l(C,null,["link"in n?(o(),$(se,{key:0,item:n},null,8,["item"])):m("",!0)],64))),256))]))}}),On=k(Wn,[["__scopeId","data-v-48c802d0"]]),Dn={class:"VPMenu"},Un={key:0,class:"items"},Rn=b({__name:"VPMenu",props:{items:{}},setup(a){return(e,t)=>(o(),l("div",Dn,[e.items?(o(),l("div",Un,[(o(!0),l(C,null,B(e.items,n=>(o(),l(C,{key:JSON.stringify(n)},["link"in n?(o(),$(se,{key:0,item:n},null,8,["item"])):"component"in n?(o(),$(H(n.component),R({key:1,ref_for:!0},n.props),null,16)):(o(),$(On,{key:2,text:n.text,items:n.items},null,8,["text","items"]))],64))),128))])):m("",!0),u(e.$slots,"default",{},void 0,!0)]))}}),Gn=k(Rn,[["__scopeId","data-v-7dd3104a"]]),Jn=["aria-expanded","aria-label"],Kn={key:0,class:"text"},jn=["innerHTML"],zn={key:1,class:"vpi-more-horizontal icon"},Zn={class:"menu"},Yn=b({__name:"VPFlyout",props:{icon:{},button:{},label:{},items:{}},setup(a){const e=S(!1),t=S();Cn({el:t,onBlur:n});function n(){e.value=!1}return(s,r)=>(o(),l("div",{class:"VPFlyout",ref_key:"el",ref:t,onMouseenter:r[1]||(r[1]=c=>e.value=!0),onMouseleave:r[2]||(r[2]=c=>e.value=!1)},[p("button",{type:"button",class:"button","aria-haspopup":"true","aria-expanded":e.value,"aria-label":s.label,onClick:r[0]||(r[0]=c=>e.value=!e.value)},[s.button||s.icon?(o(),l("span",Kn,[s.icon?(o(),l("span",{key:0,class:T([s.icon,"option-icon"])},null,2)):m("",!0),s.button?(o(),l("span",{key:1,innerHTML:s.button},null,8,jn)):m("",!0),r[3]||(r[3]=p("span",{class:"vpi-chevron-down text-icon"},null,-1))])):(o(),l("span",zn))],8,Jn),p("div",Zn,[g(Gn,{items:s.items},{default:f(()=>[u(s.$slots,"default",{},void 0,!0)]),_:3},8,["items"])])],544))}}),ye=k(Yn,[["__scopeId","data-v-04f5c5e9"]]),Xn=["href","aria-label","innerHTML"],qn=b({__name:"VPSocialLink",props:{icon:{},link:{},ariaLabel:{}},setup(a){const e=a,t=S();O(async()=>{var r;await he();const s=(r=t.value)==null?void 0:r.children[0];s instanceof HTMLElement&&s.className.startsWith("vpi-social-")&&(getComputedStyle(s).maskImage||getComputedStyle(s).webkitMaskImage)==="none"&&s.style.setProperty("--icon",`url('https://api.iconify.design/simple-icons/${e.icon}.svg')`)});const n=y(()=>typeof e.icon=="object"?e.icon.svg:``);return(s,r)=>(o(),l("a",{ref_key:"el",ref:t,class:"VPSocialLink no-icon",href:s.link,"aria-label":s.ariaLabel??(typeof s.icon=="string"?s.icon:""),target:"_blank",rel:"noopener",innerHTML:n.value},null,8,Xn))}}),xn=k(qn,[["__scopeId","data-v-d26d30cb"]]),ea={class:"VPSocialLinks"},ta=b({__name:"VPSocialLinks",props:{links:{}},setup(a){return(e,t)=>(o(),l("div",ea,[(o(!0),l(C,null,B(e.links,({link:n,icon:s,ariaLabel:r})=>(o(),$(xn,{key:n,icon:s,link:n,ariaLabel:r},null,8,["icon","link","ariaLabel"]))),128))]))}}),ne=k(ta,[["__scopeId","data-v-ee7a9424"]]),sa={key:0,class:"group translations"},na={class:"trans-title"},aa={key:1,class:"group"},oa={class:"item appearance"},ra={class:"label"},ia={class:"appearance-action"},la={key:2,class:"group"},ca={class:"item social-links"},ua=b({__name:"VPNavBarExtra",setup(a){const{site:e,theme:t}=V(),{localeLinks:n,currentLang:s}=Z({correspondingLink:!0}),r=y(()=>n.value.length&&s.value.label||e.value.appearance||t.value.socialLinks);return(c,v)=>r.value?(o(),$(ye,{key:0,class:"VPNavBarExtra",label:"extra navigation"},{default:f(()=>[i(n).length&&i(s).label?(o(),l("div",sa,[p("p",na,I(i(s).label),1),(o(!0),l(C,null,B(i(n),d=>(o(),$(se,{key:d.link,item:d},null,8,["item"]))),128))])):m("",!0),i(e).appearance&&i(e).appearance!=="force-dark"&&i(e).appearance!=="force-auto"?(o(),l("div",aa,[p("div",oa,[p("p",ra,I(i(t).darkModeSwitchLabel||"Appearance"),1),p("div",ia,[g(ke)])])])):m("",!0),i(t).socialLinks?(o(),l("div",la,[p("div",ca,[g(ne,{class:"social-links-list",links:i(t).socialLinks},null,8,["links"])])])):m("",!0)]),_:1})):m("",!0)}}),da=k(ua,[["__scopeId","data-v-925effce"]]),pa=["aria-expanded"],va=b({__name:"VPNavBarHamburger",props:{active:{type:Boolean}},emits:["click"],setup(a){return(e,t)=>(o(),l("button",{type:"button",class:T(["VPNavBarHamburger",{active:e.active}]),"aria-label":"mobile navigation","aria-expanded":e.active,"aria-controls":"VPNavScreen",onClick:t[0]||(t[0]=n=>e.$emit("click"))},t[1]||(t[1]=[p("span",{class:"container"},[p("span",{class:"top"}),p("span",{class:"middle"}),p("span",{class:"bottom"})],-1)]),10,pa))}}),fa=k(va,[["__scopeId","data-v-5dea55bf"]]),ma=["innerHTML"],ha=b({__name:"VPNavBarMenuLink",props:{item:{}},setup(a){const{page:e}=V();return(t,n)=>(o(),$(Q,{class:T({VPNavBarMenuLink:!0,active:i(J)(i(e).relativePath,t.item.activeMatch||t.item.link,!!t.item.activeMatch)}),href:t.item.link,target:t.item.target,rel:t.item.rel,"no-icon":t.item.noIcon,tabindex:"0"},{default:f(()=>[p("span",{innerHTML:t.item.text},null,8,ma)]),_:1},8,["class","href","target","rel","no-icon"]))}}),_a=k(ha,[["__scopeId","data-v-956ec74c"]]),We=b({__name:"VPNavBarMenuGroup",props:{item:{}},setup(a){const e=a,{page:t}=V(),n=r=>"component"in r?!1:"link"in r?J(t.value.relativePath,r.link,!!e.item.activeMatch):r.items.some(n),s=y(()=>n(e.item));return(r,c)=>(o(),$(ye,{class:T({VPNavBarMenuGroup:!0,active:i(J)(i(t).relativePath,r.item.activeMatch,!!r.item.activeMatch)||s.value}),button:r.item.text,items:r.item.items},null,8,["class","button","items"]))}}),ba={key:0,"aria-labelledby":"main-nav-aria-label",class:"VPNavBarMenu"},ga=b({__name:"VPNavBarMenu",setup(a){const{theme:e}=V();return(t,n)=>i(e).nav?(o(),l("nav",ba,[n[0]||(n[0]=p("span",{id:"main-nav-aria-label",class:"visually-hidden"}," Main Navigation ",-1)),(o(!0),l(C,null,B(i(e).nav,s=>(o(),l(C,{key:JSON.stringify(s)},["link"in s?(o(),$(_a,{key:0,item:s},null,8,["item"])):"component"in s?(o(),$(H(s.component),R({key:1,ref_for:!0},s.props),null,16)):(o(),$(We,{key:2,item:s},null,8,["item"]))],64))),128))])):m("",!0)}}),ka=k(ga,[["__scopeId","data-v-e6d46098"]]);function $a(a){const{localeIndex:e,theme:t}=V();function n(s){var w,M,N;const r=s.split("."),c=(w=t.value.search)==null?void 0:w.options,v=c&&typeof c=="object",d=v&&((N=(M=c.locales)==null?void 0:M[e.value])==null?void 0:N.translations)||null,h=v&&c.translations||null;let A=d,_=h,P=a;const L=r.pop();for(const E of r){let U=null;const K=P==null?void 0:P[E];K&&(U=P=K);const ae=_==null?void 0:_[E];ae&&(U=_=ae);const oe=A==null?void 0:A[E];oe&&(U=A=oe),K||(P=U),ae||(_=U),oe||(A=U)}return(A==null?void 0:A[L])??(_==null?void 0:_[L])??(P==null?void 0:P[L])??""}return n}const ya=["aria-label"],Aa={class:"DocSearch-Button-Container"},Pa={class:"DocSearch-Button-Placeholder"},Pe=b({__name:"VPNavBarSearchButton",setup(a){const t=$a({button:{buttonText:"Search",buttonAriaLabel:"Search"}});return(n,s)=>(o(),l("button",{type:"button",class:"DocSearch DocSearch-Button","aria-label":i(t)("button.buttonAriaLabel")},[p("span",Aa,[s[0]||(s[0]=p("span",{class:"vp-icon DocSearch-Search-Icon"},null,-1)),p("span",Pa,I(i(t)("button.buttonText")),1)]),s[1]||(s[1]=p("span",{class:"DocSearch-Button-Keys"},[p("kbd",{class:"DocSearch-Button-Key"}),p("kbd",{class:"DocSearch-Button-Key"},"K")],-1))],8,ya))}}),La={class:"VPNavBarSearch"},Va={id:"local-search"},Sa={key:1,id:"docsearch"},Ia=b({__name:"VPNavBarSearch",setup(a){const e=Xe(()=>qe(()=>import("./VPLocalSearchBox.BUTaXOAl.js"),__vite__mapDeps([0,1]))),t=()=>null,{theme:n}=V(),s=S(!1),r=S(!1);O(()=>{});function c(){s.value||(s.value=!0,setTimeout(v,16))}function v(){const _=new Event("keydown");_.key="k",_.metaKey=!0,window.dispatchEvent(_),setTimeout(()=>{document.querySelector(".DocSearch-Modal")||v()},16)}function d(_){const P=_.target,L=P.tagName;return P.isContentEditable||L==="INPUT"||L==="SELECT"||L==="TEXTAREA"}const h=S(!1);le("k",_=>{(_.ctrlKey||_.metaKey)&&(_.preventDefault(),h.value=!0)}),le("/",_=>{d(_)||(_.preventDefault(),h.value=!0)});const A="local";return(_,P)=>{var L;return o(),l("div",La,[i(A)==="local"?(o(),l(C,{key:0},[h.value?(o(),$(i(e),{key:0,onClose:P[0]||(P[0]=w=>h.value=!1)})):m("",!0),p("div",Va,[g(Pe,{onClick:P[1]||(P[1]=w=>h.value=!0)})])],64)):i(A)==="algolia"?(o(),l(C,{key:1},[s.value?(o(),$(i(t),{key:0,algolia:((L=i(n).search)==null?void 0:L.options)??i(n).algolia,onVnodeBeforeMount:P[2]||(P[2]=w=>r.value=!0)},null,8,["algolia"])):m("",!0),r.value?m("",!0):(o(),l("div",Sa,[g(Pe,{onClick:c})]))],64)):m("",!0)])}}}),Na=b({__name:"VPNavBarSocialLinks",setup(a){const{theme:e}=V();return(t,n)=>i(e).socialLinks?(o(),$(ne,{key:0,class:"VPNavBarSocialLinks",links:i(e).socialLinks},null,8,["links"])):m("",!0)}}),Ta=k(Na,[["__scopeId","data-v-164c457f"]]),Ca=["href","rel","target"],wa=["innerHTML"],Ma={key:2},Ba=b({__name:"VPNavBarTitle",setup(a){const{site:e,theme:t}=V(),{hasSidebar:n}=D(),{currentLang:s}=Z(),r=y(()=>{var d;return typeof t.value.logoLink=="string"?t.value.logoLink:(d=t.value.logoLink)==null?void 0:d.link}),c=y(()=>{var d;return typeof t.value.logoLink=="string"||(d=t.value.logoLink)==null?void 0:d.rel}),v=y(()=>{var d;return typeof t.value.logoLink=="string"||(d=t.value.logoLink)==null?void 0:d.target});return(d,h)=>(o(),l("div",{class:T(["VPNavBarTitle",{"has-sidebar":i(n)}])},[p("a",{class:"title",href:r.value??i(be)(i(s).link),rel:c.value,target:v.value},[u(d.$slots,"nav-bar-title-before",{},void 0,!0),i(t).logo?(o(),$(X,{key:0,class:"logo",image:i(t).logo},null,8,["image"])):m("",!0),i(t).siteTitle?(o(),l("span",{key:1,innerHTML:i(t).siteTitle},null,8,wa)):i(t).siteTitle===void 0?(o(),l("span",Ma,I(i(e).title),1)):m("",!0),u(d.$slots,"nav-bar-title-after",{},void 0,!0)],8,Ca)],2))}}),Ea=k(Ba,[["__scopeId","data-v-0f4f798b"]]),Qa={class:"items"},Ha={class:"title"},Fa=b({__name:"VPNavBarTranslations",setup(a){const{theme:e}=V(),{localeLinks:t,currentLang:n}=Z({correspondingLink:!0});return(s,r)=>i(t).length&&i(n).label?(o(),$(ye,{key:0,class:"VPNavBarTranslations",icon:"vpi-languages",label:i(e).langMenuLabel||"Change language"},{default:f(()=>[p("div",Qa,[p("p",Ha,I(i(n).label),1),(o(!0),l(C,null,B(i(t),c=>(o(),$(se,{key:c.link,item:c},null,8,["item"]))),128))])]),_:1},8,["label"])):m("",!0)}}),Wa=k(Fa,[["__scopeId","data-v-c80d9ad0"]]),Oa={class:"wrapper"},Da={class:"container"},Ua={class:"title"},Ra={class:"content"},Ga={class:"content-body"},Ja=b({__name:"VPNavBar",props:{isScreenOpen:{type:Boolean}},emits:["toggle-screen"],setup(a){const e=a,{y:t}=Ce(),{hasSidebar:n}=D(),{frontmatter:s}=V(),r=S({});return me(()=>{r.value={"has-sidebar":n.value,home:s.value.layout==="home",top:t.value===0,"screen-open":e.isScreenOpen}}),(c,v)=>(o(),l("div",{class:T(["VPNavBar",r.value])},[p("div",Oa,[p("div",Da,[p("div",Ua,[g(Ea,null,{"nav-bar-title-before":f(()=>[u(c.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":f(()=>[u(c.$slots,"nav-bar-title-after",{},void 0,!0)]),_:3})]),p("div",Ra,[p("div",Ga,[u(c.$slots,"nav-bar-content-before",{},void 0,!0),g(Ia,{class:"search"}),g(ka,{class:"menu"}),g(Wa,{class:"translations"}),g(Tn,{class:"appearance"}),g(Ta,{class:"social-links"}),g(da,{class:"extra"}),u(c.$slots,"nav-bar-content-after",{},void 0,!0),g(fa,{class:"hamburger",active:c.isScreenOpen,onClick:v[0]||(v[0]=d=>c.$emit("toggle-screen"))},null,8,["active"])])])])]),v[1]||(v[1]=p("div",{class:"divider"},[p("div",{class:"divider-line"})],-1))],2))}}),Ka=k(Ja,[["__scopeId","data-v-822684d1"]]),ja={key:0,class:"VPNavScreenAppearance"},za={class:"text"},Za=b({__name:"VPNavScreenAppearance",setup(a){const{site:e,theme:t}=V();return(n,s)=>i(e).appearance&&i(e).appearance!=="force-dark"&&i(e).appearance!=="force-auto"?(o(),l("div",ja,[p("p",za,I(i(t).darkModeSwitchLabel||"Appearance"),1),g(ke)])):m("",!0)}}),Ya=k(Za,[["__scopeId","data-v-ffb44008"]]),Xa=["innerHTML"],qa=b({__name:"VPNavScreenMenuLink",props:{item:{}},setup(a){const e=j("close-screen");return(t,n)=>(o(),$(Q,{class:"VPNavScreenMenuLink",href:t.item.link,target:t.item.target,rel:t.item.rel,"no-icon":t.item.noIcon,onClick:i(e)},{default:f(()=>[p("span",{innerHTML:t.item.text},null,8,Xa)]),_:1},8,["href","target","rel","no-icon","onClick"]))}}),xa=k(qa,[["__scopeId","data-v-735512b8"]]),eo=["innerHTML"],to=b({__name:"VPNavScreenMenuGroupLink",props:{item:{}},setup(a){const e=j("close-screen");return(t,n)=>(o(),$(Q,{class:"VPNavScreenMenuGroupLink",href:t.item.link,target:t.item.target,rel:t.item.rel,"no-icon":t.item.noIcon,onClick:i(e)},{default:f(()=>[p("span",{innerHTML:t.item.text},null,8,eo)]),_:1},8,["href","target","rel","no-icon","onClick"]))}}),Oe=k(to,[["__scopeId","data-v-372ae7c0"]]),so={class:"VPNavScreenMenuGroupSection"},no={key:0,class:"title"},ao=b({__name:"VPNavScreenMenuGroupSection",props:{text:{},items:{}},setup(a){return(e,t)=>(o(),l("div",so,[e.text?(o(),l("p",no,I(e.text),1)):m("",!0),(o(!0),l(C,null,B(e.items,n=>(o(),$(Oe,{key:n.text,item:n},null,8,["item"]))),128))]))}}),oo=k(ao,[["__scopeId","data-v-4b8941ac"]]),ro=["aria-controls","aria-expanded"],io=["innerHTML"],lo=["id"],co={key:0,class:"item"},uo={key:1,class:"item"},po={key:2,class:"group"},vo=b({__name:"VPNavScreenMenuGroup",props:{text:{},items:{}},setup(a){const e=a,t=S(!1),n=y(()=>`NavScreenGroup-${e.text.replace(" ","-").toLowerCase()}`);function s(){t.value=!t.value}return(r,c)=>(o(),l("div",{class:T(["VPNavScreenMenuGroup",{open:t.value}])},[p("button",{class:"button","aria-controls":n.value,"aria-expanded":t.value,onClick:s},[p("span",{class:"button-text",innerHTML:r.text},null,8,io),c[0]||(c[0]=p("span",{class:"vpi-plus button-icon"},null,-1))],8,ro),p("div",{id:n.value,class:"items"},[(o(!0),l(C,null,B(r.items,v=>(o(),l(C,{key:JSON.stringify(v)},["link"in v?(o(),l("div",co,[g(Oe,{item:v},null,8,["item"])])):"component"in v?(o(),l("div",uo,[(o(),$(H(v.component),R({ref_for:!0},v.props,{"screen-menu":""}),null,16))])):(o(),l("div",po,[g(oo,{text:v.text,items:v.items},null,8,["text","items"])]))],64))),128))],8,lo)],2))}}),De=k(vo,[["__scopeId","data-v-875057a5"]]),fo={key:0,class:"VPNavScreenMenu"},mo=b({__name:"VPNavScreenMenu",setup(a){const{theme:e}=V();return(t,n)=>i(e).nav?(o(),l("nav",fo,[(o(!0),l(C,null,B(i(e).nav,s=>(o(),l(C,{key:JSON.stringify(s)},["link"in s?(o(),$(xa,{key:0,item:s},null,8,["item"])):"component"in s?(o(),$(H(s.component),R({key:1,ref_for:!0},s.props,{"screen-menu":""}),null,16)):(o(),$(De,{key:2,text:s.text||"",items:s.items},null,8,["text","items"]))],64))),128))])):m("",!0)}}),ho=b({__name:"VPNavScreenSocialLinks",setup(a){const{theme:e}=V();return(t,n)=>i(e).socialLinks?(o(),$(ne,{key:0,class:"VPNavScreenSocialLinks",links:i(e).socialLinks},null,8,["links"])):m("",!0)}}),_o={class:"list"},bo=b({__name:"VPNavScreenTranslations",setup(a){const{localeLinks:e,currentLang:t}=Z({correspondingLink:!0}),n=S(!1);function s(){n.value=!n.value}return(r,c)=>i(e).length&&i(t).label?(o(),l("div",{key:0,class:T(["VPNavScreenTranslations",{open:n.value}])},[p("button",{class:"title",onClick:s},[c[0]||(c[0]=p("span",{class:"vpi-languages icon lang"},null,-1)),F(" "+I(i(t).label)+" ",1),c[1]||(c[1]=p("span",{class:"vpi-chevron-down icon chevron"},null,-1))]),p("ul",_o,[(o(!0),l(C,null,B(i(e),v=>(o(),l("li",{key:v.link,class:"item"},[g(Q,{class:"link",href:v.link},{default:f(()=>[F(I(v.text),1)]),_:2},1032,["href"])]))),128))])],2)):m("",!0)}}),go=k(bo,[["__scopeId","data-v-362991c2"]]),ko={class:"container"},$o=b({__name:"VPNavScreen",props:{open:{type:Boolean}},setup(a){const e=S(null),t=we(te?document.body:null);return(n,s)=>(o(),$(pe,{name:"fade",onEnter:s[0]||(s[0]=r=>t.value=!0),onAfterLeave:s[1]||(s[1]=r=>t.value=!1)},{default:f(()=>[n.open?(o(),l("div",{key:0,class:"VPNavScreen",ref_key:"screen",ref:e,id:"VPNavScreen"},[p("div",ko,[u(n.$slots,"nav-screen-content-before",{},void 0,!0),g(mo,{class:"menu"}),g(go,{class:"translations"}),g(Ya,{class:"appearance"}),g(ho,{class:"social-links"}),u(n.$slots,"nav-screen-content-after",{},void 0,!0)])],512)):m("",!0)]),_:3}))}}),yo=k($o,[["__scopeId","data-v-833aabba"]]),Ao={key:0,class:"VPNav"},Po=b({__name:"VPNav",setup(a){const{isScreenOpen:e,closeScreen:t,toggleScreen:n}=kn(),{frontmatter:s}=V(),r=y(()=>s.value.navbar!==!1);return _e("close-screen",t),q(()=>{te&&document.documentElement.classList.toggle("hide-nav",!r.value)}),(c,v)=>r.value?(o(),l("header",Ao,[g(Ka,{"is-screen-open":i(e),onToggleScreen:i(n)},{"nav-bar-title-before":f(()=>[u(c.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":f(()=>[u(c.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":f(()=>[u(c.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":f(()=>[u(c.$slots,"nav-bar-content-after",{},void 0,!0)]),_:3},8,["is-screen-open","onToggleScreen"]),g(yo,{open:i(e)},{"nav-screen-content-before":f(()=>[u(c.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":f(()=>[u(c.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3},8,["open"])])):m("",!0)}}),Lo=k(Po,[["__scopeId","data-v-f1e365da"]]),Vo=["role","tabindex"],So={key:1,class:"items"},Io=b({__name:"VPSidebarItem",props:{item:{},depth:{}},setup(a){const e=a,{collapsed:t,collapsible:n,isLink:s,isActiveLink:r,hasActiveLink:c,hasChildren:v,toggle:d}=At(y(()=>e.item)),h=y(()=>v.value?"section":"div"),A=y(()=>s.value?"a":"div"),_=y(()=>v.value?e.depth+2===7?"p":`h${e.depth+2}`:"p"),P=y(()=>s.value?void 0:"button"),L=y(()=>[[`level-${e.depth}`],{collapsible:n.value},{collapsed:t.value},{"is-link":s.value},{"is-active":r.value},{"has-active":c.value}]);function w(N){"key"in N&&N.key!=="Enter"||!e.item.link&&d()}function M(){e.item.link&&d()}return(N,E)=>{const U=G("VPSidebarItem",!0);return o(),$(H(h.value),{class:T(["VPSidebarItem",L.value])},{default:f(()=>[N.item.text?(o(),l("div",R({key:0,class:"item",role:P.value},xe(N.item.items?{click:w,keydown:w}:{},!0),{tabindex:N.item.items&&0}),[E[1]||(E[1]=p("div",{class:"indicator"},null,-1)),N.item.link?(o(),$(Q,{key:0,tag:A.value,class:"link",href:N.item.link,rel:N.item.rel,target:N.item.target},{default:f(()=>[(o(),$(H(_.value),{class:"text",innerHTML:N.item.text},null,8,["innerHTML"]))]),_:1},8,["tag","href","rel","target"])):(o(),$(H(_.value),{key:1,class:"text",innerHTML:N.item.text},null,8,["innerHTML"])),N.item.collapsed!=null&&N.item.items&&N.item.items.length?(o(),l("div",{key:2,class:"caret",role:"button","aria-label":"toggle section",onClick:M,onKeydown:et(M,["enter"]),tabindex:"0"},E[0]||(E[0]=[p("span",{class:"vpi-chevron-right caret-icon"},null,-1)]),32)):m("",!0)],16,Vo)):m("",!0),N.item.items&&N.item.items.length?(o(),l("div",So,[N.depth<5?(o(!0),l(C,{key:0},B(N.item.items,K=>(o(),$(U,{key:K.text,item:K,depth:N.depth+1},null,8,["item","depth"]))),128)):m("",!0)])):m("",!0)]),_:1},8,["class"])}}}),No=k(Io,[["__scopeId","data-v-196b2e5f"]]),To=b({__name:"VPSidebarGroup",props:{items:{}},setup(a){const e=S(!0);let t=null;return O(()=>{t=setTimeout(()=>{t=null,e.value=!1},300)}),tt(()=>{t!=null&&(clearTimeout(t),t=null)}),(n,s)=>(o(!0),l(C,null,B(n.items,r=>(o(),l("div",{key:r.text,class:T(["group",{"no-transition":e.value}])},[g(No,{item:r,depth:0},null,8,["item"])],2))),128))}}),Co=k(To,[["__scopeId","data-v-9e426adc"]]),wo={class:"nav",id:"VPSidebarNav","aria-labelledby":"sidebar-aria-label",tabindex:"-1"},Mo=b({__name:"VPSidebar",props:{open:{type:Boolean}},setup(a){const{sidebarGroups:e,hasSidebar:t}=D(),n=a,s=S(null),r=we(te?document.body:null);W([n,s],()=>{var v;n.open?(r.value=!0,(v=s.value)==null||v.focus()):r.value=!1},{immediate:!0,flush:"post"});const c=S(0);return W(e,()=>{c.value+=1},{deep:!0}),(v,d)=>i(t)?(o(),l("aside",{key:0,class:T(["VPSidebar",{open:v.open}]),ref_key:"navEl",ref:s,onClick:d[0]||(d[0]=st(()=>{},["stop"]))},[d[2]||(d[2]=p("div",{class:"curtain"},null,-1)),p("nav",wo,[d[1]||(d[1]=p("span",{class:"visually-hidden",id:"sidebar-aria-label"}," Sidebar Navigation ",-1)),u(v.$slots,"sidebar-nav-before",{},void 0,!0),(o(),$(Co,{items:i(e),key:c.value},null,8,["items"])),u(v.$slots,"sidebar-nav-after",{},void 0,!0)])],2)):m("",!0)}}),Bo=k(Mo,[["__scopeId","data-v-18756405"]]),Eo=b({__name:"VPSkipLink",setup(a){const e=ee(),t=S();W(()=>e.path,()=>t.value.focus());function n({target:s}){const r=document.getElementById(decodeURIComponent(s.hash).slice(1));if(r){const c=()=>{r.removeAttribute("tabindex"),r.removeEventListener("blur",c)};r.setAttribute("tabindex","-1"),r.addEventListener("blur",c),r.focus(),window.scrollTo(0,0)}}return(s,r)=>(o(),l(C,null,[p("span",{ref_key:"backToTop",ref:t,tabindex:"-1"},null,512),p("a",{href:"#VPContent",class:"VPSkipLink visually-hidden",onClick:n}," Skip to content ")],64))}}),Qo=k(Eo,[["__scopeId","data-v-c3508ec8"]]),Ho=b({__name:"Layout",setup(a){const{isOpen:e,open:t,close:n}=D(),s=ee();W(()=>s.path,n),yt(e,n);const{frontmatter:r}=V(),c=Me(),v=y(()=>!!c["home-hero-image"]);return _e("hero-image-slot-exists",v),(d,h)=>{const A=G("Content");return i(r).layout!==!1?(o(),l("div",{key:0,class:T(["Layout",i(r).pageClass])},[u(d.$slots,"layout-top",{},void 0,!0),g(Qo),g(ct,{class:"backdrop",show:i(e),onClick:i(n)},null,8,["show","onClick"]),g(Lo,null,{"nav-bar-title-before":f(()=>[u(d.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":f(()=>[u(d.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":f(()=>[u(d.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":f(()=>[u(d.$slots,"nav-bar-content-after",{},void 0,!0)]),"nav-screen-content-before":f(()=>[u(d.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":f(()=>[u(d.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3}),g(gn,{open:i(e),onOpenMenu:i(t)},null,8,["open","onOpenMenu"]),g(Bo,{open:i(e)},{"sidebar-nav-before":f(()=>[u(d.$slots,"sidebar-nav-before",{},void 0,!0)]),"sidebar-nav-after":f(()=>[u(d.$slots,"sidebar-nav-after",{},void 0,!0)]),_:3},8,["open"]),g(sn,null,{"page-top":f(()=>[u(d.$slots,"page-top",{},void 0,!0)]),"page-bottom":f(()=>[u(d.$slots,"page-bottom",{},void 0,!0)]),"not-found":f(()=>[u(d.$slots,"not-found",{},void 0,!0)]),"home-hero-before":f(()=>[u(d.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info-before":f(()=>[u(d.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":f(()=>[u(d.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":f(()=>[u(d.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":f(()=>[u(d.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":f(()=>[u(d.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":f(()=>[u(d.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":f(()=>[u(d.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":f(()=>[u(d.$slots,"home-features-after",{},void 0,!0)]),"doc-footer-before":f(()=>[u(d.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":f(()=>[u(d.$slots,"doc-before",{},void 0,!0)]),"doc-after":f(()=>[u(d.$slots,"doc-after",{},void 0,!0)]),"doc-top":f(()=>[u(d.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":f(()=>[u(d.$slots,"doc-bottom",{},void 0,!0)]),"aside-top":f(()=>[u(d.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":f(()=>[u(d.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":f(()=>[u(d.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":f(()=>[u(d.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":f(()=>[u(d.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":f(()=>[u(d.$slots,"aside-ads-after",{},void 0,!0)]),_:3}),g(ln),u(d.$slots,"layout-bottom",{},void 0,!0)],2)):(o(),$(A,{key:1}))}}}),Fo=k(Ho,[["__scopeId","data-v-a9a9e638"]]),Wo={},Oo={class:"VPTeamPage"};function Do(a,e){return o(),l("div",Oo,[u(a.$slots,"default")])}const Fr=k(Wo,[["render",Do],["__scopeId","data-v-c2f8e101"]]),Uo={},Ro={class:"VPTeamPageTitle"},Go={key:0,class:"title"},Jo={key:1,class:"lead"};function Ko(a,e){return o(),l("div",Ro,[a.$slots.title?(o(),l("h1",Go,[u(a.$slots,"title",{},void 0,!0)])):m("",!0),a.$slots.lead?(o(),l("p",Jo,[u(a.$slots,"lead",{},void 0,!0)])):m("",!0)])}const Wr=k(Uo,[["render",Ko],["__scopeId","data-v-e277e15c"]]),jo={},zo={class:"VPTeamPageSection"},Zo={class:"title"},Yo={key:0,class:"title-text"},Xo={key:0,class:"lead"},qo={key:1,class:"members"};function xo(a,e){return o(),l("section",zo,[p("div",Zo,[e[0]||(e[0]=p("div",{class:"title-line"},null,-1)),a.$slots.title?(o(),l("h2",Yo,[u(a.$slots,"title",{},void 0,!0)])):m("",!0)]),a.$slots.lead?(o(),l("p",Xo,[u(a.$slots,"lead",{},void 0,!0)])):m("",!0),a.$slots.members?(o(),l("div",qo,[u(a.$slots,"members",{},void 0,!0)])):m("",!0)])}const Or=k(jo,[["render",xo],["__scopeId","data-v-d43bc49d"]]),er={class:"profile"},tr={class:"avatar"},sr=["src","alt"],nr={class:"data"},ar={class:"name"},or={key:0,class:"affiliation"},rr={key:0,class:"title"},ir={key:1,class:"at"},lr=["innerHTML"],cr={key:2,class:"links"},ur={key:0,class:"sp"},dr=b({__name:"VPTeamMembersItem",props:{size:{default:"medium"},member:{}},setup(a){return(e,t)=>(o(),l("article",{class:T(["VPTeamMembersItem",[e.size]])},[p("div",er,[p("figure",tr,[p("img",{class:"avatar-img",src:e.member.avatar,alt:e.member.name},null,8,sr)]),p("div",nr,[p("h1",ar,I(e.member.name),1),e.member.title||e.member.org?(o(),l("p",or,[e.member.title?(o(),l("span",rr,I(e.member.title),1)):m("",!0),e.member.title&&e.member.org?(o(),l("span",ir," @ ")):m("",!0),e.member.org?(o(),$(Q,{key:2,class:T(["org",{link:e.member.orgLink}]),href:e.member.orgLink,"no-icon":""},{default:f(()=>[F(I(e.member.org),1)]),_:1},8,["class","href"])):m("",!0)])):m("",!0),e.member.desc?(o(),l("p",{key:1,class:"desc",innerHTML:e.member.desc},null,8,lr)):m("",!0),e.member.links?(o(),l("div",cr,[g(ne,{links:e.member.links},null,8,["links"])])):m("",!0)])]),e.member.sponsor?(o(),l("div",ur,[g(Q,{class:"sp-link",href:e.member.sponsor,"no-icon":""},{default:f(()=>[t[0]||(t[0]=p("span",{class:"vpi-heart sp-icon"},null,-1)),F(" "+I(e.member.actionText||"Sponsor"),1)]),_:1},8,["href"])])):m("",!0)],2))}}),pr=k(dr,[["__scopeId","data-v-f9987cb6"]]),vr={class:"container"},fr=b({__name:"VPTeamMembers",props:{size:{default:"medium"},members:{}},setup(a){const e=a,t=y(()=>[e.size,`count-${e.members.length}`]);return(n,s)=>(o(),l("div",{class:T(["VPTeamMembers",t.value])},[p("div",vr,[(o(!0),l(C,null,B(n.members,r=>(o(),l("div",{key:r.name,class:"item"},[g(pr,{size:n.size,member:r},null,8,["size","member"])]))),128))])],2))}}),Dr=k(fr,[["__scopeId","data-v-fba19bad"]]),Le={Layout:Fo,enhanceApp:({app:a})=>{a.component("Badge",rt)}},mr={},hr={style:{"text-align":"center"}};function _r(a,e){const t=G("font");return o(),l(C,null,[e[1]||(e[1]=p("br",null,null,-1)),p("h1",hr,[p("strong",null,[g(t,{color:"orange"},{default:f(()=>e[0]||(e[0]=[F(" Package Ecosystem")])),_:1})])]),e[2]||(e[2]=nt('

Read n-d array like-data

DiskArrays.jl

Get your chunks!

Named Dimensions

DimensionalData.jl

Select & Index!

Out of memory data

Zarr.jl

Chunkerd, compressed !

Rasterized spatial data

Rasters.jl

Read and manipulate !

Array-oriented data

NetCDF.jl

Scientific binary data.

Raster and vector data

ArchGDAL.jl

GDAL in Julia.

An interface for

GeoInterface.jl

geospatial data in Julia.

A higher level interface

GRIBDatasets.jl

for reading GRIB files.

Array-oriented data

NCDatasets.jl

Scientific binary data.

',9))],64)}const br=k(mr,[["render",_r]]),gr=b({__name:"VersionPicker",props:{screenMenu:{type:Boolean}},setup(a){const e=S([]),t=S("Versions"),n=S(!1);Se();const s=()=>typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),r=()=>{if(typeof window>"u")return"";const{origin:d,pathname:h}=window.location;if(d.includes("github.io")){const A=h.split("/").filter(Boolean),_=A.length>0?`/${A[0]}/`:"/";return`${d}${_}`}else return d},c=()=>new Promise(d=>{if(s()){d(!1);return}const h=setInterval(()=>{window.DOC_VERSIONS&&window.DOCUMENTER_CURRENT_VERSION&&(clearInterval(h),d(!0))},100);setTimeout(()=>{clearInterval(h),d(!1)},5e3)});return O(async()=>{if(!(typeof window>"u")){try{if(s()){const d=["dev"];e.value=d.map(h=>({text:h,link:"/"})),t.value="dev"}else{const d=await c(),h=y(()=>r());if(d&&window.DOC_VERSIONS&&window.DOCUMENTER_CURRENT_VERSION)e.value=window.DOC_VERSIONS.map(A=>({text:A,link:`${h.value}/${A}/`})),t.value=window.DOCUMENTER_CURRENT_VERSION;else{const A=["dev"];e.value=A.map(_=>({text:_,link:`${h.value}/${_}/`})),t.value="dev"}}}catch(d){console.warn("Error loading versions:",d);const h=["dev"],A=y(()=>r());e.value=h.map(_=>({text:_,link:`${A.value}/${_}/`})),t.value="dev"}n.value=!0}}),(d,h)=>n.value?(o(),l(C,{key:0},[!d.screenMenu&&e.value.length>0?(o(),$(We,{key:0,item:{text:t.value,items:e.value},class:"VPVersionPicker"},null,8,["item"])):d.screenMenu&&e.value.length>0?(o(),$(De,{key:1,text:t.value,items:e.value,class:"VPVersionPicker"},null,8,["text","items"])):m("",!0)],64)):m("",!0)}}),kr=k(gr,[["__scopeId","data-v-f465cb49"]]),$r=a=>{if(typeof document>"u")return{stabilizeScrollPosition:s=>async(...r)=>s(...r)};const e=document.documentElement;return{stabilizeScrollPosition:n=>async(...s)=>{const r=n(...s),c=a.value;if(!c)return r;const v=c.offsetTop-e.scrollTop;return await he(),e.scrollTop=c.offsetTop-v,r}}},Ue="vitepress:tabSharedState",z=typeof localStorage<"u"?localStorage:null,Re="vitepress:tabsSharedState",yr=()=>{const a=z==null?void 0:z.getItem(Re);if(a)try{return JSON.parse(a)}catch{}return{}},Ar=a=>{z&&z.setItem(Re,JSON.stringify(a))},Pr=a=>{const e=at({});W(()=>e.content,(t,n)=>{t&&n&&Ar(t)},{deep:!0}),a.provide(Ue,e)},Lr=(a,e)=>{const t=j(Ue);if(!t)throw new Error("[vitepress-plugin-tabs] TabsSharedState should be injected");O(()=>{t.content||(t.content=yr())});const n=S(),s=y({get(){var d;const c=e.value,v=a.value;if(c){const h=(d=t.content)==null?void 0:d[c];if(h&&v.includes(h))return h}else{const h=n.value;if(h)return h}return v[0]},set(c){const v=e.value;v?t.content&&(t.content[v]=c):n.value=c}});return{selected:s,select:c=>{s.value=c}}};let Ve=0;const Vr=()=>(Ve++,""+Ve);function Sr(){const a=Me();return y(()=>{var n;const t=(n=a.default)==null?void 0:n.call(a);return t?t.filter(s=>typeof s.type=="object"&&"__name"in s.type&&s.type.__name==="PluginTabsTab"&&s.props).map(s=>{var r;return(r=s.props)==null?void 0:r.label}):[]})}const Ge="vitepress:tabSingleState",Ir=a=>{_e(Ge,a)},Nr=()=>{const a=j(Ge);if(!a)throw new Error("[vitepress-plugin-tabs] TabsSingleState should be injected");return a},Tr={class:"plugin-tabs"},Cr=["id","aria-selected","aria-controls","tabindex","onClick"],wr=b({__name:"PluginTabs",props:{sharedStateKey:{}},setup(a){const e=a,t=Sr(),{selected:n,select:s}=Lr(t,ot(e,"sharedStateKey")),r=S(),{stabilizeScrollPosition:c}=$r(r),v=c(s),d=S([]),h=_=>{var w;const P=t.value.indexOf(n.value);let L;_.key==="ArrowLeft"?L=P>=1?P-1:t.value.length-1:_.key==="ArrowRight"&&(L=P(o(),l("div",Tr,[p("div",{ref_key:"tablist",ref:r,class:"plugin-tabs--tab-list",role:"tablist",onKeydown:h},[(o(!0),l(C,null,B(i(t),L=>(o(),l("button",{id:`tab-${L}-${i(A)}`,ref_for:!0,ref_key:"buttonRefs",ref:d,key:L,role:"tab",class:"plugin-tabs--tab","aria-selected":L===i(n),"aria-controls":`panel-${L}-${i(A)}`,tabindex:L===i(n)?0:-1,onClick:()=>i(v)(L)},I(L),9,Cr))),128))],544),u(_.$slots,"default")]))}}),Mr=["id","aria-labelledby"],Br=b({__name:"PluginTabsTab",props:{label:{}},setup(a){const{uid:e,selected:t}=Nr();return(n,s)=>i(t)===n.label?(o(),l("div",{key:0,id:`panel-${n.label}-${i(e)}`,class:"plugin-tabs--content",role:"tabpanel",tabindex:"0","aria-labelledby":`tab-${n.label}-${i(e)}`},[u(n.$slots,"default",{},void 0,!0)],8,Mr)):m("",!0)}}),Er=k(Br,[["__scopeId","data-v-9b0d03d2"]]),Qr=a=>{Pr(a),a.component("PluginTabs",wr),a.component("PluginTabsTab",Er)},Ur={extends:Le,Layout(){return Ae(Le.Layout,null,{"aside-ads-before":()=>Ae(br)})},enhanceApp({app:a,router:e,siteData:t}){Qr(a),a.component("VersionPicker",kr)}};export{Ur as R,Wr as V,Dr as a,Or as b,Fr as c,$a as d,V as u}; +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/chunks/VPLocalSearchBox.DJECbzTq.js","assets/chunks/framework.swGcc4Ky.js"])))=>i.map(i=>d[i]); +import{d as b,o,c as l,r as u,n as T,a as F,t as I,b as $,w as f,e as m,T as pe,_ as k,u as Se,i as Je,f as Ke,g as ve,h as y,j as p,k as i,l as J,m as ie,p as S,q as W,s as q,v as O,x as fe,y as me,z as je,A as ze,B as G,F as C,C as B,D as Ie,E as x,G as g,H,I as Ne,J as ee,K as R,L as j,M as Ze,N as Te,O as le,P as he,Q as Ce,R as te,S as Ye,U as Xe,V as qe,W as we,X as _e,Y as xe,Z as et,$ as tt,a0 as st,a1 as Me,a2 as nt,a3 as at,a4 as ot,a5 as Ae}from"./framework.swGcc4Ky.js";const rt=b({__name:"VPBadge",props:{text:{},type:{default:"tip"}},setup(a){return(e,t)=>(o(),l("span",{class:T(["VPBadge",e.type])},[u(e.$slots,"default",{},()=>[F(I(e.text),1)])],2))}}),it={key:0,class:"VPBackdrop"},lt=b({__name:"VPBackdrop",props:{show:{type:Boolean}},setup(a){return(e,t)=>(o(),$(pe,{name:"fade"},{default:f(()=>[e.show?(o(),l("div",it)):m("",!0)]),_:1}))}}),ct=k(lt,[["__scopeId","data-v-b06cdb19"]]),V=Se;function ut(a,e){let t,n=!1;return()=>{t&&clearTimeout(t),n?t=setTimeout(a,e):(a(),(n=!0)&&setTimeout(()=>n=!1,e))}}function ce(a){return/^\//.test(a)?a:`/${a}`}function be(a){const{pathname:e,search:t,hash:n,protocol:s}=new URL(a,"http://a.com");if(Je(a)||a.startsWith("#")||!s.startsWith("http")||!Ke(e))return a;const{site:r}=V(),c=e.endsWith("/")||e.endsWith(".html")?a:a.replace(/(?:(^\.+)\/)?.*$/,`$1${e.replace(/(\.md)?$/,r.value.cleanUrls?"":".html")}${t}${n}`);return ve(c)}function Z({correspondingLink:a=!1}={}){const{site:e,localeIndex:t,page:n,theme:s,hash:r}=V(),c=y(()=>{var d,h;return{label:(d=e.value.locales[t.value])==null?void 0:d.label,link:((h=e.value.locales[t.value])==null?void 0:h.link)||(t.value==="root"?"/":`/${t.value}/`)}});return{localeLinks:y(()=>Object.entries(e.value.locales).flatMap(([d,h])=>c.value.label===h.label?[]:{text:h.label,link:dt(h.link||(d==="root"?"/":`/${d}/`),s.value.i18nRouting!==!1&&a,n.value.relativePath.slice(c.value.link.length-1),!e.value.cleanUrls)+r.value})),currentLang:c}}function dt(a,e,t,n){return e?a.replace(/\/$/,"")+ce(t.replace(/(^|\/)index\.md$/,"$1").replace(/\.md$/,n?".html":"")):a}const pt={class:"NotFound"},vt={class:"code"},ft={class:"title"},mt={class:"quote"},ht={class:"action"},_t=["href","aria-label"],bt=b({__name:"NotFound",setup(a){const{theme:e}=V(),{currentLang:t}=Z();return(n,s)=>{var r,c,v,d,h;return o(),l("div",pt,[p("p",vt,I(((r=i(e).notFound)==null?void 0:r.code)??"404"),1),p("h1",ft,I(((c=i(e).notFound)==null?void 0:c.title)??"PAGE NOT FOUND"),1),s[0]||(s[0]=p("div",{class:"divider"},null,-1)),p("blockquote",mt,I(((v=i(e).notFound)==null?void 0:v.quote)??"But if you don't change your direction, and if you keep looking, you may end up where you are heading."),1),p("div",ht,[p("a",{class:"link",href:i(ve)(i(t).link),"aria-label":((d=i(e).notFound)==null?void 0:d.linkLabel)??"go to home"},I(((h=i(e).notFound)==null?void 0:h.linkText)??"Take me home"),9,_t)])])}}}),gt=k(bt,[["__scopeId","data-v-951cab6c"]]);function Be(a,e){if(Array.isArray(a))return Y(a);if(a==null)return[];e=ce(e);const t=Object.keys(a).sort((s,r)=>r.split("/").length-s.split("/").length).find(s=>e.startsWith(ce(s))),n=t?a[t]:[];return Array.isArray(n)?Y(n):Y(n.items,n.base)}function kt(a){const e=[];let t=0;for(const n in a){const s=a[n];if(s.items){t=e.push(s);continue}e[t]||e.push({items:[]}),e[t].items.push(s)}return e}function $t(a){const e=[];function t(n){for(const s of n)s.text&&s.link&&e.push({text:s.text,link:s.link,docFooterText:s.docFooterText}),s.items&&t(s.items)}return t(a),e}function ue(a,e){return Array.isArray(e)?e.some(t=>ue(a,t)):J(a,e.link)?!0:e.items?ue(a,e.items):!1}function Y(a,e){return[...a].map(t=>{const n={...t},s=n.base||e;return s&&n.link&&(n.link=s+n.link),n.items&&(n.items=Y(n.items,s)),n})}function D(){const{frontmatter:a,page:e,theme:t}=V(),n=ie("(min-width: 960px)"),s=S(!1),r=y(()=>{const M=t.value.sidebar,N=e.value.relativePath;return M?Be(M,N):[]}),c=S(r.value);W(r,(M,N)=>{JSON.stringify(M)!==JSON.stringify(N)&&(c.value=r.value)});const v=y(()=>a.value.sidebar!==!1&&c.value.length>0&&a.value.layout!=="home"),d=y(()=>h?a.value.aside==null?t.value.aside==="left":a.value.aside==="left":!1),h=y(()=>a.value.layout==="home"?!1:a.value.aside!=null?!!a.value.aside:t.value.aside!==!1),A=y(()=>v.value&&n.value),_=y(()=>v.value?kt(c.value):[]);function P(){s.value=!0}function L(){s.value=!1}function w(){s.value?L():P()}return{isOpen:s,sidebar:c,sidebarGroups:_,hasSidebar:v,hasAside:h,leftAside:d,isSidebarEnabled:A,open:P,close:L,toggle:w}}function yt(a,e){let t;q(()=>{t=a.value?document.activeElement:void 0}),O(()=>{window.addEventListener("keyup",n)}),fe(()=>{window.removeEventListener("keyup",n)});function n(s){s.key==="Escape"&&a.value&&(e(),t==null||t.focus())}}function At(a){const{page:e,hash:t}=V(),n=S(!1),s=y(()=>a.value.collapsed!=null),r=y(()=>!!a.value.link),c=S(!1),v=()=>{c.value=J(e.value.relativePath,a.value.link)};W([e,a,t],v),O(v);const d=y(()=>c.value?!0:a.value.items?ue(e.value.relativePath,a.value.items):!1),h=y(()=>!!(a.value.items&&a.value.items.length));q(()=>{n.value=!!(s.value&&a.value.collapsed)}),me(()=>{(c.value||d.value)&&(n.value=!1)});function A(){s.value&&(n.value=!n.value)}return{collapsed:n,collapsible:s,isLink:r,isActiveLink:c,hasActiveLink:d,hasChildren:h,toggle:A}}function Pt(){const{hasSidebar:a}=D(),e=ie("(min-width: 960px)"),t=ie("(min-width: 1280px)");return{isAsideEnabled:y(()=>!t.value&&!e.value?!1:a.value?t.value:e.value)}}const de=[];function Ee(a){return typeof a.outline=="object"&&!Array.isArray(a.outline)&&a.outline.label||a.outlineTitle||"On this page"}function ge(a){const e=[...document.querySelectorAll(".VPDoc :where(h1,h2,h3,h4,h5,h6)")].filter(t=>t.id&&t.hasChildNodes()).map(t=>{const n=Number(t.tagName[1]);return{element:t,title:Lt(t),link:"#"+t.id,level:n}});return Vt(e,a)}function Lt(a){let e="";for(const t of a.childNodes)if(t.nodeType===1){if(t.classList.contains("VPBadge")||t.classList.contains("header-anchor")||t.classList.contains("ignore-header"))continue;e+=t.textContent}else t.nodeType===3&&(e+=t.textContent);return e.trim()}function Vt(a,e){if(e===!1)return[];const t=(typeof e=="object"&&!Array.isArray(e)?e.level:e)||2,[n,s]=typeof t=="number"?[t,t]:t==="deep"?[2,6]:t;return Nt(a,n,s)}function St(a,e){const{isAsideEnabled:t}=Pt(),n=ut(r,100);let s=null;O(()=>{requestAnimationFrame(r),window.addEventListener("scroll",n)}),je(()=>{c(location.hash)}),fe(()=>{window.removeEventListener("scroll",n)});function r(){if(!t.value)return;const v=window.scrollY,d=window.innerHeight,h=document.body.offsetHeight,A=Math.abs(v+d-h)<1,_=de.map(({element:L,link:w})=>({link:w,top:It(L)})).filter(({top:L})=>!Number.isNaN(L)).sort((L,w)=>L.top-w.top);if(!_.length){c(null);return}if(v<1){c(null);return}if(A){c(_[_.length-1].link);return}let P=null;for(const{link:L,top:w}of _){if(w>v+ze()+4)break;P=L}c(P)}function c(v){s&&s.classList.remove("active"),v==null?s=null:s=a.value.querySelector(`a[href="${decodeURIComponent(v)}"]`);const d=s;d?(d.classList.add("active"),e.value.style.top=d.offsetTop+39+"px",e.value.style.opacity="1"):(e.value.style.top="33px",e.value.style.opacity="0")}}function It(a){let e=0;for(;a!==document.body;){if(a===null)return NaN;e+=a.offsetTop,a=a.offsetParent}return e}function Nt(a,e,t){de.length=0;const n=[],s=[];return a.forEach(r=>{const c={...r,children:[]};let v=s[s.length-1];for(;v&&v.level>=c.level;)s.pop(),v=s[s.length-1];if(c.element.classList.contains("ignore-header")||v&&"shouldIgnore"in v){s.push({level:c.level,shouldIgnore:!0});return}c.level>t||c.level{const s=G("VPDocOutlineItem",!0);return o(),l("ul",{class:T(["VPDocOutlineItem",t.root?"root":"nested"])},[(o(!0),l(C,null,B(t.headers,({children:r,link:c,title:v})=>(o(),l("li",null,[p("a",{class:"outline-link",href:c,onClick:e,title:v},I(v),9,Tt),r!=null&&r.length?(o(),$(s,{key:0,headers:r},null,8,["headers"])):m("",!0)]))),256))],2)}}}),Qe=k(Ct,[["__scopeId","data-v-3f927ebe"]]),wt={class:"content"},Mt={"aria-level":"2",class:"outline-title",id:"doc-outline-aria-label",role:"heading"},Bt=b({__name:"VPDocAsideOutline",setup(a){const{frontmatter:e,theme:t}=V(),n=Ie([]);x(()=>{n.value=ge(e.value.outline??t.value.outline)});const s=S(),r=S();return St(s,r),(c,v)=>(o(),l("nav",{"aria-labelledby":"doc-outline-aria-label",class:T(["VPDocAsideOutline",{"has-outline":n.value.length>0}]),ref_key:"container",ref:s},[p("div",wt,[p("div",{class:"outline-marker",ref_key:"marker",ref:r},null,512),p("div",Mt,I(i(Ee)(i(t))),1),g(Qe,{headers:n.value,root:!0},null,8,["headers"])])],2))}}),Et=k(Bt,[["__scopeId","data-v-b38bf2ff"]]),Qt={class:"VPDocAsideCarbonAds"},Ht=b({__name:"VPDocAsideCarbonAds",props:{carbonAds:{}},setup(a){const e=()=>null;return(t,n)=>(o(),l("div",Qt,[g(i(e),{"carbon-ads":t.carbonAds},null,8,["carbon-ads"])]))}}),Ft={class:"VPDocAside"},Wt=b({__name:"VPDocAside",setup(a){const{theme:e}=V();return(t,n)=>(o(),l("div",Ft,[u(t.$slots,"aside-top",{},void 0,!0),u(t.$slots,"aside-outline-before",{},void 0,!0),g(Et),u(t.$slots,"aside-outline-after",{},void 0,!0),n[0]||(n[0]=p("div",{class:"spacer"},null,-1)),u(t.$slots,"aside-ads-before",{},void 0,!0),i(e).carbonAds?(o(),$(Ht,{key:0,"carbon-ads":i(e).carbonAds},null,8,["carbon-ads"])):m("",!0),u(t.$slots,"aside-ads-after",{},void 0,!0),u(t.$slots,"aside-bottom",{},void 0,!0)]))}}),Ot=k(Wt,[["__scopeId","data-v-6d7b3c46"]]);function Dt(){const{theme:a,page:e}=V();return y(()=>{const{text:t="Edit this page",pattern:n=""}=a.value.editLink||{};let s;return typeof n=="function"?s=n(e.value):s=n.replace(/:path/g,e.value.filePath),{url:s,text:t}})}function Ut(){const{page:a,theme:e,frontmatter:t}=V();return y(()=>{var h,A,_,P,L,w,M,N;const n=Be(e.value.sidebar,a.value.relativePath),s=$t(n),r=Rt(s,E=>E.link.replace(/[?#].*$/,"")),c=r.findIndex(E=>J(a.value.relativePath,E.link)),v=((h=e.value.docFooter)==null?void 0:h.prev)===!1&&!t.value.prev||t.value.prev===!1,d=((A=e.value.docFooter)==null?void 0:A.next)===!1&&!t.value.next||t.value.next===!1;return{prev:v?void 0:{text:(typeof t.value.prev=="string"?t.value.prev:typeof t.value.prev=="object"?t.value.prev.text:void 0)??((_=r[c-1])==null?void 0:_.docFooterText)??((P=r[c-1])==null?void 0:P.text),link:(typeof t.value.prev=="object"?t.value.prev.link:void 0)??((L=r[c-1])==null?void 0:L.link)},next:d?void 0:{text:(typeof t.value.next=="string"?t.value.next:typeof t.value.next=="object"?t.value.next.text:void 0)??((w=r[c+1])==null?void 0:w.docFooterText)??((M=r[c+1])==null?void 0:M.text),link:(typeof t.value.next=="object"?t.value.next.link:void 0)??((N=r[c+1])==null?void 0:N.link)}}})}function Rt(a,e){const t=new Set;return a.filter(n=>{const s=e(n);return t.has(s)?!1:t.add(s)})}const Q=b({__name:"VPLink",props:{tag:{},href:{},noIcon:{type:Boolean},target:{},rel:{}},setup(a){const e=a,t=y(()=>e.tag??(e.href?"a":"span")),n=y(()=>e.href&&Ne.test(e.href)||e.target==="_blank");return(s,r)=>(o(),$(H(t.value),{class:T(["VPLink",{link:s.href,"vp-external-link-icon":n.value,"no-icon":s.noIcon}]),href:s.href?i(be)(s.href):void 0,target:s.target??(n.value?"_blank":void 0),rel:s.rel??(n.value?"noreferrer":void 0)},{default:f(()=>[u(s.$slots,"default")]),_:3},8,["class","href","target","rel"]))}}),Gt={class:"VPLastUpdated"},Jt=["datetime"],Kt=b({__name:"VPDocFooterLastUpdated",setup(a){const{theme:e,page:t,lang:n}=V(),s=y(()=>new Date(t.value.lastUpdated)),r=y(()=>s.value.toISOString()),c=S("");return O(()=>{q(()=>{var v,d,h;c.value=new Intl.DateTimeFormat((d=(v=e.value.lastUpdated)==null?void 0:v.formatOptions)!=null&&d.forceLocale?n.value:void 0,((h=e.value.lastUpdated)==null?void 0:h.formatOptions)??{dateStyle:"short",timeStyle:"short"}).format(s.value)})}),(v,d)=>{var h;return o(),l("p",Gt,[F(I(((h=i(e).lastUpdated)==null?void 0:h.text)||i(e).lastUpdatedText||"Last updated")+": ",1),p("time",{datetime:r.value},I(c.value),9,Jt)])}}}),jt=k(Kt,[["__scopeId","data-v-475f71b8"]]),zt={key:0,class:"VPDocFooter"},Zt={key:0,class:"edit-info"},Yt={key:0,class:"edit-link"},Xt={key:1,class:"last-updated"},qt={key:1,class:"prev-next","aria-labelledby":"doc-footer-aria-label"},xt={class:"pager"},es=["innerHTML"],ts=["innerHTML"],ss={class:"pager"},ns=["innerHTML"],as=["innerHTML"],os=b({__name:"VPDocFooter",setup(a){const{theme:e,page:t,frontmatter:n}=V(),s=Dt(),r=Ut(),c=y(()=>e.value.editLink&&n.value.editLink!==!1),v=y(()=>t.value.lastUpdated),d=y(()=>c.value||v.value||r.value.prev||r.value.next);return(h,A)=>{var _,P,L,w;return d.value?(o(),l("footer",zt,[u(h.$slots,"doc-footer-before",{},void 0,!0),c.value||v.value?(o(),l("div",Zt,[c.value?(o(),l("div",Yt,[g(Q,{class:"edit-link-button",href:i(s).url,"no-icon":!0},{default:f(()=>[A[0]||(A[0]=p("span",{class:"vpi-square-pen edit-link-icon"},null,-1)),F(" "+I(i(s).text),1)]),_:1},8,["href"])])):m("",!0),v.value?(o(),l("div",Xt,[g(jt)])):m("",!0)])):m("",!0),(_=i(r).prev)!=null&&_.link||(P=i(r).next)!=null&&P.link?(o(),l("nav",qt,[A[1]||(A[1]=p("span",{class:"visually-hidden",id:"doc-footer-aria-label"},"Pager",-1)),p("div",xt,[(L=i(r).prev)!=null&&L.link?(o(),$(Q,{key:0,class:"pager-link prev",href:i(r).prev.link},{default:f(()=>{var M;return[p("span",{class:"desc",innerHTML:((M=i(e).docFooter)==null?void 0:M.prev)||"Previous page"},null,8,es),p("span",{class:"title",innerHTML:i(r).prev.text},null,8,ts)]}),_:1},8,["href"])):m("",!0)]),p("div",ss,[(w=i(r).next)!=null&&w.link?(o(),$(Q,{key:0,class:"pager-link next",href:i(r).next.link},{default:f(()=>{var M;return[p("span",{class:"desc",innerHTML:((M=i(e).docFooter)==null?void 0:M.next)||"Next page"},null,8,ns),p("span",{class:"title",innerHTML:i(r).next.text},null,8,as)]}),_:1},8,["href"])):m("",!0)])])):m("",!0)])):m("",!0)}}}),rs=k(os,[["__scopeId","data-v-4f9813fa"]]),is={class:"container"},ls={class:"aside-container"},cs={class:"aside-content"},us={class:"content"},ds={class:"content-container"},ps={class:"main"},vs=b({__name:"VPDoc",setup(a){const{theme:e}=V(),t=ee(),{hasSidebar:n,hasAside:s,leftAside:r}=D(),c=y(()=>t.path.replace(/[./]+/g,"_").replace(/_html$/,""));return(v,d)=>{const h=G("Content");return o(),l("div",{class:T(["VPDoc",{"has-sidebar":i(n),"has-aside":i(s)}])},[u(v.$slots,"doc-top",{},void 0,!0),p("div",is,[i(s)?(o(),l("div",{key:0,class:T(["aside",{"left-aside":i(r)}])},[d[0]||(d[0]=p("div",{class:"aside-curtain"},null,-1)),p("div",ls,[p("div",cs,[g(Ot,null,{"aside-top":f(()=>[u(v.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":f(()=>[u(v.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":f(()=>[u(v.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":f(()=>[u(v.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":f(()=>[u(v.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":f(()=>[u(v.$slots,"aside-ads-after",{},void 0,!0)]),_:3})])])],2)):m("",!0),p("div",us,[p("div",ds,[u(v.$slots,"doc-before",{},void 0,!0),p("main",ps,[g(h,{class:T(["vp-doc",[c.value,i(e).externalLinkIcon&&"external-link-icon-enabled"]])},null,8,["class"])]),g(rs,null,{"doc-footer-before":f(()=>[u(v.$slots,"doc-footer-before",{},void 0,!0)]),_:3}),u(v.$slots,"doc-after",{},void 0,!0)])])]),u(v.$slots,"doc-bottom",{},void 0,!0)],2)}}}),fs=k(vs,[["__scopeId","data-v-83890dd9"]]),ms=b({__name:"VPButton",props:{tag:{},size:{default:"medium"},theme:{default:"brand"},text:{},href:{},target:{},rel:{}},setup(a){const e=a,t=y(()=>e.href&&Ne.test(e.href)),n=y(()=>e.tag||(e.href?"a":"button"));return(s,r)=>(o(),$(H(n.value),{class:T(["VPButton",[s.size,s.theme]]),href:s.href?i(be)(s.href):void 0,target:e.target??(t.value?"_blank":void 0),rel:e.rel??(t.value?"noreferrer":void 0)},{default:f(()=>[F(I(s.text),1)]),_:1},8,["class","href","target","rel"]))}}),hs=k(ms,[["__scopeId","data-v-906d7fb4"]]),_s=["src","alt"],bs=b({inheritAttrs:!1,__name:"VPImage",props:{image:{},alt:{}},setup(a){return(e,t)=>{const n=G("VPImage",!0);return e.image?(o(),l(C,{key:0},[typeof e.image=="string"||"src"in e.image?(o(),l("img",R({key:0,class:"VPImage"},typeof e.image=="string"?e.$attrs:{...e.image,...e.$attrs},{src:i(ve)(typeof e.image=="string"?e.image:e.image.src),alt:e.alt??(typeof e.image=="string"?"":e.image.alt||"")}),null,16,_s)):(o(),l(C,{key:1},[g(n,R({class:"dark",image:e.image.dark,alt:e.image.alt},e.$attrs),null,16,["image","alt"]),g(n,R({class:"light",image:e.image.light,alt:e.image.alt},e.$attrs),null,16,["image","alt"])],64))],64)):m("",!0)}}}),X=k(bs,[["__scopeId","data-v-35a7d0b8"]]),gs={class:"container"},ks={class:"main"},$s={key:0,class:"name"},ys=["innerHTML"],As=["innerHTML"],Ps=["innerHTML"],Ls={key:0,class:"actions"},Vs={key:0,class:"image"},Ss={class:"image-container"},Is=b({__name:"VPHero",props:{name:{},text:{},tagline:{},image:{},actions:{}},setup(a){const e=j("hero-image-slot-exists");return(t,n)=>(o(),l("div",{class:T(["VPHero",{"has-image":t.image||i(e)}])},[p("div",gs,[p("div",ks,[u(t.$slots,"home-hero-info-before",{},void 0,!0),u(t.$slots,"home-hero-info",{},()=>[t.name?(o(),l("h1",$s,[p("span",{innerHTML:t.name,class:"clip"},null,8,ys)])):m("",!0),t.text?(o(),l("p",{key:1,innerHTML:t.text,class:"text"},null,8,As)):m("",!0),t.tagline?(o(),l("p",{key:2,innerHTML:t.tagline,class:"tagline"},null,8,Ps)):m("",!0)],!0),u(t.$slots,"home-hero-info-after",{},void 0,!0),t.actions?(o(),l("div",Ls,[(o(!0),l(C,null,B(t.actions,s=>(o(),l("div",{key:s.link,class:"action"},[g(hs,{tag:"a",size:"medium",theme:s.theme,text:s.text,href:s.link,target:s.target,rel:s.rel},null,8,["theme","text","href","target","rel"])]))),128))])):m("",!0),u(t.$slots,"home-hero-actions-after",{},void 0,!0)]),t.image||i(e)?(o(),l("div",Vs,[p("div",Ss,[n[0]||(n[0]=p("div",{class:"image-bg"},null,-1)),u(t.$slots,"home-hero-image",{},()=>[t.image?(o(),$(X,{key:0,class:"image-src",image:t.image},null,8,["image"])):m("",!0)],!0)])])):m("",!0)])],2))}}),Ns=k(Is,[["__scopeId","data-v-955009fc"]]),Ts=b({__name:"VPHomeHero",setup(a){const{frontmatter:e}=V();return(t,n)=>i(e).hero?(o(),$(Ns,{key:0,class:"VPHomeHero",name:i(e).hero.name,text:i(e).hero.text,tagline:i(e).hero.tagline,image:i(e).hero.image,actions:i(e).hero.actions},{"home-hero-info-before":f(()=>[u(t.$slots,"home-hero-info-before")]),"home-hero-info":f(()=>[u(t.$slots,"home-hero-info")]),"home-hero-info-after":f(()=>[u(t.$slots,"home-hero-info-after")]),"home-hero-actions-after":f(()=>[u(t.$slots,"home-hero-actions-after")]),"home-hero-image":f(()=>[u(t.$slots,"home-hero-image")]),_:3},8,["name","text","tagline","image","actions"])):m("",!0)}}),Cs={class:"box"},ws={key:0,class:"icon"},Ms=["innerHTML"],Bs=["innerHTML"],Es=["innerHTML"],Qs={key:4,class:"link-text"},Hs={class:"link-text-value"},Fs=b({__name:"VPFeature",props:{icon:{},title:{},details:{},link:{},linkText:{},rel:{},target:{}},setup(a){return(e,t)=>(o(),$(Q,{class:"VPFeature",href:e.link,rel:e.rel,target:e.target,"no-icon":!0,tag:e.link?"a":"div"},{default:f(()=>[p("article",Cs,[typeof e.icon=="object"&&e.icon.wrap?(o(),l("div",ws,[g(X,{image:e.icon,alt:e.icon.alt,height:e.icon.height||48,width:e.icon.width||48},null,8,["image","alt","height","width"])])):typeof e.icon=="object"?(o(),$(X,{key:1,image:e.icon,alt:e.icon.alt,height:e.icon.height||48,width:e.icon.width||48},null,8,["image","alt","height","width"])):e.icon?(o(),l("div",{key:2,class:"icon",innerHTML:e.icon},null,8,Ms)):m("",!0),p("h2",{class:"title",innerHTML:e.title},null,8,Bs),e.details?(o(),l("p",{key:3,class:"details",innerHTML:e.details},null,8,Es)):m("",!0),e.linkText?(o(),l("div",Qs,[p("p",Hs,[F(I(e.linkText)+" ",1),t[0]||(t[0]=p("span",{class:"vpi-arrow-right link-text-icon"},null,-1))])])):m("",!0)])]),_:1},8,["href","rel","target","tag"]))}}),Ws=k(Fs,[["__scopeId","data-v-f5e9645b"]]),Os={key:0,class:"VPFeatures"},Ds={class:"container"},Us={class:"items"},Rs=b({__name:"VPFeatures",props:{features:{}},setup(a){const e=a,t=y(()=>{const n=e.features.length;if(n){if(n===2)return"grid-2";if(n===3)return"grid-3";if(n%3===0)return"grid-6";if(n>3)return"grid-4"}else return});return(n,s)=>n.features?(o(),l("div",Os,[p("div",Ds,[p("div",Us,[(o(!0),l(C,null,B(n.features,r=>(o(),l("div",{key:r.title,class:T(["item",[t.value]])},[g(Ws,{icon:r.icon,title:r.title,details:r.details,link:r.link,"link-text":r.linkText,rel:r.rel,target:r.target},null,8,["icon","title","details","link","link-text","rel","target"])],2))),128))])])])):m("",!0)}}),Gs=k(Rs,[["__scopeId","data-v-d0a190d7"]]),Js=b({__name:"VPHomeFeatures",setup(a){const{frontmatter:e}=V();return(t,n)=>i(e).features?(o(),$(Gs,{key:0,class:"VPHomeFeatures",features:i(e).features},null,8,["features"])):m("",!0)}}),Ks=b({__name:"VPHomeContent",setup(a){const{width:e}=Ze({initialWidth:0,includeScrollbar:!1});return(t,n)=>(o(),l("div",{class:"vp-doc container",style:Te(i(e)?{"--vp-offset":`calc(50% - ${i(e)/2}px)`}:{})},[u(t.$slots,"default",{},void 0,!0)],4))}}),js=k(Ks,[["__scopeId","data-v-7a48a447"]]),zs={class:"VPHome"},Zs=b({__name:"VPHome",setup(a){const{frontmatter:e}=V();return(t,n)=>{const s=G("Content");return o(),l("div",zs,[u(t.$slots,"home-hero-before",{},void 0,!0),g(Ts,null,{"home-hero-info-before":f(()=>[u(t.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":f(()=>[u(t.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":f(()=>[u(t.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":f(()=>[u(t.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":f(()=>[u(t.$slots,"home-hero-image",{},void 0,!0)]),_:3}),u(t.$slots,"home-hero-after",{},void 0,!0),u(t.$slots,"home-features-before",{},void 0,!0),g(Js),u(t.$slots,"home-features-after",{},void 0,!0),i(e).markdownStyles!==!1?(o(),$(js,{key:0},{default:f(()=>[g(s)]),_:1})):(o(),$(s,{key:1}))])}}}),Ys=k(Zs,[["__scopeId","data-v-cbb6ec48"]]),Xs={},qs={class:"VPPage"};function xs(a,e){const t=G("Content");return o(),l("div",qs,[u(a.$slots,"page-top"),g(t),u(a.$slots,"page-bottom")])}const en=k(Xs,[["render",xs]]),tn=b({__name:"VPContent",setup(a){const{page:e,frontmatter:t}=V(),{hasSidebar:n}=D();return(s,r)=>(o(),l("div",{class:T(["VPContent",{"has-sidebar":i(n),"is-home":i(t).layout==="home"}]),id:"VPContent"},[i(e).isNotFound?u(s.$slots,"not-found",{key:0},()=>[g(gt)],!0):i(t).layout==="page"?(o(),$(en,{key:1},{"page-top":f(()=>[u(s.$slots,"page-top",{},void 0,!0)]),"page-bottom":f(()=>[u(s.$slots,"page-bottom",{},void 0,!0)]),_:3})):i(t).layout==="home"?(o(),$(Ys,{key:2},{"home-hero-before":f(()=>[u(s.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info-before":f(()=>[u(s.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":f(()=>[u(s.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":f(()=>[u(s.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":f(()=>[u(s.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":f(()=>[u(s.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":f(()=>[u(s.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":f(()=>[u(s.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":f(()=>[u(s.$slots,"home-features-after",{},void 0,!0)]),_:3})):i(t).layout&&i(t).layout!=="doc"?(o(),$(H(i(t).layout),{key:3})):(o(),$(fs,{key:4},{"doc-top":f(()=>[u(s.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":f(()=>[u(s.$slots,"doc-bottom",{},void 0,!0)]),"doc-footer-before":f(()=>[u(s.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":f(()=>[u(s.$slots,"doc-before",{},void 0,!0)]),"doc-after":f(()=>[u(s.$slots,"doc-after",{},void 0,!0)]),"aside-top":f(()=>[u(s.$slots,"aside-top",{},void 0,!0)]),"aside-outline-before":f(()=>[u(s.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":f(()=>[u(s.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":f(()=>[u(s.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":f(()=>[u(s.$slots,"aside-ads-after",{},void 0,!0)]),"aside-bottom":f(()=>[u(s.$slots,"aside-bottom",{},void 0,!0)]),_:3}))],2))}}),sn=k(tn,[["__scopeId","data-v-91765379"]]),nn={class:"container"},an=["innerHTML"],on=["innerHTML"],rn=b({__name:"VPFooter",setup(a){const{theme:e,frontmatter:t}=V(),{hasSidebar:n}=D();return(s,r)=>i(e).footer&&i(t).footer!==!1?(o(),l("footer",{key:0,class:T(["VPFooter",{"has-sidebar":i(n)}])},[p("div",nn,[i(e).footer.message?(o(),l("p",{key:0,class:"message",innerHTML:i(e).footer.message},null,8,an)):m("",!0),i(e).footer.copyright?(o(),l("p",{key:1,class:"copyright",innerHTML:i(e).footer.copyright},null,8,on)):m("",!0)])],2)):m("",!0)}}),ln=k(rn,[["__scopeId","data-v-c970a860"]]);function cn(){const{theme:a,frontmatter:e}=V(),t=Ie([]),n=y(()=>t.value.length>0);return x(()=>{t.value=ge(e.value.outline??a.value.outline)}),{headers:t,hasLocalNav:n}}const un={class:"menu-text"},dn={class:"header"},pn={class:"outline"},vn=b({__name:"VPLocalNavOutlineDropdown",props:{headers:{},navHeight:{}},setup(a){const e=a,{theme:t}=V(),n=S(!1),s=S(0),r=S(),c=S();function v(_){var P;(P=r.value)!=null&&P.contains(_.target)||(n.value=!1)}W(n,_=>{if(_){document.addEventListener("click",v);return}document.removeEventListener("click",v)}),le("Escape",()=>{n.value=!1}),x(()=>{n.value=!1});function d(){n.value=!n.value,s.value=window.innerHeight+Math.min(window.scrollY-e.navHeight,0)}function h(_){_.target.classList.contains("outline-link")&&(c.value&&(c.value.style.transition="none"),he(()=>{n.value=!1}))}function A(){n.value=!1,window.scrollTo({top:0,left:0,behavior:"smooth"})}return(_,P)=>(o(),l("div",{class:"VPLocalNavOutlineDropdown",style:Te({"--vp-vh":s.value+"px"}),ref_key:"main",ref:r},[_.headers.length>0?(o(),l("button",{key:0,onClick:d,class:T({open:n.value})},[p("span",un,I(i(Ee)(i(t))),1),P[0]||(P[0]=p("span",{class:"vpi-chevron-right icon"},null,-1))],2)):(o(),l("button",{key:1,onClick:A},I(i(t).returnToTopLabel||"Return to top"),1)),g(pe,{name:"flyout"},{default:f(()=>[n.value?(o(),l("div",{key:0,ref_key:"items",ref:c,class:"items",onClick:h},[p("div",dn,[p("a",{class:"top-link",href:"#",onClick:A},I(i(t).returnToTopLabel||"Return to top"),1)]),p("div",pn,[g(Qe,{headers:_.headers},null,8,["headers"])])],512)):m("",!0)]),_:1})],4))}}),fn=k(vn,[["__scopeId","data-v-bc9dc845"]]),mn={class:"container"},hn=["aria-expanded"],_n={class:"menu-text"},bn=b({__name:"VPLocalNav",props:{open:{type:Boolean}},emits:["open-menu"],setup(a){const{theme:e,frontmatter:t}=V(),{hasSidebar:n}=D(),{headers:s}=cn(),{y:r}=Ce(),c=S(0);O(()=>{c.value=parseInt(getComputedStyle(document.documentElement).getPropertyValue("--vp-nav-height"))}),x(()=>{s.value=ge(t.value.outline??e.value.outline)});const v=y(()=>s.value.length===0),d=y(()=>v.value&&!n.value),h=y(()=>({VPLocalNav:!0,"has-sidebar":n.value,empty:v.value,fixed:d.value}));return(A,_)=>i(t).layout!=="home"&&(!d.value||i(r)>=c.value)?(o(),l("div",{key:0,class:T(h.value)},[p("div",mn,[i(n)?(o(),l("button",{key:0,class:"menu","aria-expanded":A.open,"aria-controls":"VPSidebarNav",onClick:_[0]||(_[0]=P=>A.$emit("open-menu"))},[_[1]||(_[1]=p("span",{class:"vpi-align-left menu-icon"},null,-1)),p("span",_n,I(i(e).sidebarMenuLabel||"Menu"),1)],8,hn)):m("",!0),g(fn,{headers:i(s),navHeight:c.value},null,8,["headers","navHeight"])])],2)):m("",!0)}}),gn=k(bn,[["__scopeId","data-v-070ab83d"]]);function kn(){const a=S(!1);function e(){a.value=!0,window.addEventListener("resize",s)}function t(){a.value=!1,window.removeEventListener("resize",s)}function n(){a.value?t():e()}function s(){window.outerWidth>=768&&t()}const r=ee();return W(()=>r.path,t),{isScreenOpen:a,openScreen:e,closeScreen:t,toggleScreen:n}}const $n={},yn={class:"VPSwitch",type:"button",role:"switch"},An={class:"check"},Pn={key:0,class:"icon"};function Ln(a,e){return o(),l("button",yn,[p("span",An,[a.$slots.default?(o(),l("span",Pn,[u(a.$slots,"default",{},void 0,!0)])):m("",!0)])])}const Vn=k($n,[["render",Ln],["__scopeId","data-v-4a1c76db"]]),Sn=b({__name:"VPSwitchAppearance",setup(a){const{isDark:e,theme:t}=V(),n=j("toggle-appearance",()=>{e.value=!e.value}),s=S("");return me(()=>{s.value=e.value?t.value.lightModeSwitchTitle||"Switch to light theme":t.value.darkModeSwitchTitle||"Switch to dark theme"}),(r,c)=>(o(),$(Vn,{title:s.value,class:"VPSwitchAppearance","aria-checked":i(e),onClick:i(n)},{default:f(()=>c[0]||(c[0]=[p("span",{class:"vpi-sun sun"},null,-1),p("span",{class:"vpi-moon moon"},null,-1)])),_:1},8,["title","aria-checked","onClick"]))}}),ke=k(Sn,[["__scopeId","data-v-e40a8bb6"]]),In={key:0,class:"VPNavBarAppearance"},Nn=b({__name:"VPNavBarAppearance",setup(a){const{site:e}=V();return(t,n)=>i(e).appearance&&i(e).appearance!=="force-dark"&&i(e).appearance!=="force-auto"?(o(),l("div",In,[g(ke)])):m("",!0)}}),Tn=k(Nn,[["__scopeId","data-v-af096f4a"]]),$e=S();let He=!1,re=0;function Cn(a){const e=S(!1);if(te){!He&&wn(),re++;const t=W($e,n=>{var s,r,c;n===a.el.value||(s=a.el.value)!=null&&s.contains(n)?(e.value=!0,(r=a.onFocus)==null||r.call(a)):(e.value=!1,(c=a.onBlur)==null||c.call(a))});fe(()=>{t(),re--,re||Mn()})}return Ye(e)}function wn(){document.addEventListener("focusin",Fe),He=!0,$e.value=document.activeElement}function Mn(){document.removeEventListener("focusin",Fe)}function Fe(){$e.value=document.activeElement}const Bn={class:"VPMenuLink"},En=["innerHTML"],Qn=b({__name:"VPMenuLink",props:{item:{}},setup(a){const{page:e}=V();return(t,n)=>(o(),l("div",Bn,[g(Q,{class:T({active:i(J)(i(e).relativePath,t.item.activeMatch||t.item.link,!!t.item.activeMatch)}),href:t.item.link,target:t.item.target,rel:t.item.rel,"no-icon":t.item.noIcon},{default:f(()=>[p("span",{innerHTML:t.item.text},null,8,En)]),_:1},8,["class","href","target","rel","no-icon"])]))}}),se=k(Qn,[["__scopeId","data-v-acbfed09"]]),Hn={class:"VPMenuGroup"},Fn={key:0,class:"title"},Wn=b({__name:"VPMenuGroup",props:{text:{},items:{}},setup(a){return(e,t)=>(o(),l("div",Hn,[e.text?(o(),l("p",Fn,I(e.text),1)):m("",!0),(o(!0),l(C,null,B(e.items,n=>(o(),l(C,null,["link"in n?(o(),$(se,{key:0,item:n},null,8,["item"])):m("",!0)],64))),256))]))}}),On=k(Wn,[["__scopeId","data-v-48c802d0"]]),Dn={class:"VPMenu"},Un={key:0,class:"items"},Rn=b({__name:"VPMenu",props:{items:{}},setup(a){return(e,t)=>(o(),l("div",Dn,[e.items?(o(),l("div",Un,[(o(!0),l(C,null,B(e.items,n=>(o(),l(C,{key:JSON.stringify(n)},["link"in n?(o(),$(se,{key:0,item:n},null,8,["item"])):"component"in n?(o(),$(H(n.component),R({key:1,ref_for:!0},n.props),null,16)):(o(),$(On,{key:2,text:n.text,items:n.items},null,8,["text","items"]))],64))),128))])):m("",!0),u(e.$slots,"default",{},void 0,!0)]))}}),Gn=k(Rn,[["__scopeId","data-v-7dd3104a"]]),Jn=["aria-expanded","aria-label"],Kn={key:0,class:"text"},jn=["innerHTML"],zn={key:1,class:"vpi-more-horizontal icon"},Zn={class:"menu"},Yn=b({__name:"VPFlyout",props:{icon:{},button:{},label:{},items:{}},setup(a){const e=S(!1),t=S();Cn({el:t,onBlur:n});function n(){e.value=!1}return(s,r)=>(o(),l("div",{class:"VPFlyout",ref_key:"el",ref:t,onMouseenter:r[1]||(r[1]=c=>e.value=!0),onMouseleave:r[2]||(r[2]=c=>e.value=!1)},[p("button",{type:"button",class:"button","aria-haspopup":"true","aria-expanded":e.value,"aria-label":s.label,onClick:r[0]||(r[0]=c=>e.value=!e.value)},[s.button||s.icon?(o(),l("span",Kn,[s.icon?(o(),l("span",{key:0,class:T([s.icon,"option-icon"])},null,2)):m("",!0),s.button?(o(),l("span",{key:1,innerHTML:s.button},null,8,jn)):m("",!0),r[3]||(r[3]=p("span",{class:"vpi-chevron-down text-icon"},null,-1))])):(o(),l("span",zn))],8,Jn),p("div",Zn,[g(Gn,{items:s.items},{default:f(()=>[u(s.$slots,"default",{},void 0,!0)]),_:3},8,["items"])])],544))}}),ye=k(Yn,[["__scopeId","data-v-04f5c5e9"]]),Xn=["href","aria-label","innerHTML"],qn=b({__name:"VPSocialLink",props:{icon:{},link:{},ariaLabel:{}},setup(a){const e=a,t=S();O(async()=>{var r;await he();const s=(r=t.value)==null?void 0:r.children[0];s instanceof HTMLElement&&s.className.startsWith("vpi-social-")&&(getComputedStyle(s).maskImage||getComputedStyle(s).webkitMaskImage)==="none"&&s.style.setProperty("--icon",`url('https://api.iconify.design/simple-icons/${e.icon}.svg')`)});const n=y(()=>typeof e.icon=="object"?e.icon.svg:``);return(s,r)=>(o(),l("a",{ref_key:"el",ref:t,class:"VPSocialLink no-icon",href:s.link,"aria-label":s.ariaLabel??(typeof s.icon=="string"?s.icon:""),target:"_blank",rel:"noopener",innerHTML:n.value},null,8,Xn))}}),xn=k(qn,[["__scopeId","data-v-d26d30cb"]]),ea={class:"VPSocialLinks"},ta=b({__name:"VPSocialLinks",props:{links:{}},setup(a){return(e,t)=>(o(),l("div",ea,[(o(!0),l(C,null,B(e.links,({link:n,icon:s,ariaLabel:r})=>(o(),$(xn,{key:n,icon:s,link:n,ariaLabel:r},null,8,["icon","link","ariaLabel"]))),128))]))}}),ne=k(ta,[["__scopeId","data-v-ee7a9424"]]),sa={key:0,class:"group translations"},na={class:"trans-title"},aa={key:1,class:"group"},oa={class:"item appearance"},ra={class:"label"},ia={class:"appearance-action"},la={key:2,class:"group"},ca={class:"item social-links"},ua=b({__name:"VPNavBarExtra",setup(a){const{site:e,theme:t}=V(),{localeLinks:n,currentLang:s}=Z({correspondingLink:!0}),r=y(()=>n.value.length&&s.value.label||e.value.appearance||t.value.socialLinks);return(c,v)=>r.value?(o(),$(ye,{key:0,class:"VPNavBarExtra",label:"extra navigation"},{default:f(()=>[i(n).length&&i(s).label?(o(),l("div",sa,[p("p",na,I(i(s).label),1),(o(!0),l(C,null,B(i(n),d=>(o(),$(se,{key:d.link,item:d},null,8,["item"]))),128))])):m("",!0),i(e).appearance&&i(e).appearance!=="force-dark"&&i(e).appearance!=="force-auto"?(o(),l("div",aa,[p("div",oa,[p("p",ra,I(i(t).darkModeSwitchLabel||"Appearance"),1),p("div",ia,[g(ke)])])])):m("",!0),i(t).socialLinks?(o(),l("div",la,[p("div",ca,[g(ne,{class:"social-links-list",links:i(t).socialLinks},null,8,["links"])])])):m("",!0)]),_:1})):m("",!0)}}),da=k(ua,[["__scopeId","data-v-925effce"]]),pa=["aria-expanded"],va=b({__name:"VPNavBarHamburger",props:{active:{type:Boolean}},emits:["click"],setup(a){return(e,t)=>(o(),l("button",{type:"button",class:T(["VPNavBarHamburger",{active:e.active}]),"aria-label":"mobile navigation","aria-expanded":e.active,"aria-controls":"VPNavScreen",onClick:t[0]||(t[0]=n=>e.$emit("click"))},t[1]||(t[1]=[p("span",{class:"container"},[p("span",{class:"top"}),p("span",{class:"middle"}),p("span",{class:"bottom"})],-1)]),10,pa))}}),fa=k(va,[["__scopeId","data-v-5dea55bf"]]),ma=["innerHTML"],ha=b({__name:"VPNavBarMenuLink",props:{item:{}},setup(a){const{page:e}=V();return(t,n)=>(o(),$(Q,{class:T({VPNavBarMenuLink:!0,active:i(J)(i(e).relativePath,t.item.activeMatch||t.item.link,!!t.item.activeMatch)}),href:t.item.link,target:t.item.target,rel:t.item.rel,"no-icon":t.item.noIcon,tabindex:"0"},{default:f(()=>[p("span",{innerHTML:t.item.text},null,8,ma)]),_:1},8,["class","href","target","rel","no-icon"]))}}),_a=k(ha,[["__scopeId","data-v-956ec74c"]]),We=b({__name:"VPNavBarMenuGroup",props:{item:{}},setup(a){const e=a,{page:t}=V(),n=r=>"component"in r?!1:"link"in r?J(t.value.relativePath,r.link,!!e.item.activeMatch):r.items.some(n),s=y(()=>n(e.item));return(r,c)=>(o(),$(ye,{class:T({VPNavBarMenuGroup:!0,active:i(J)(i(t).relativePath,r.item.activeMatch,!!r.item.activeMatch)||s.value}),button:r.item.text,items:r.item.items},null,8,["class","button","items"]))}}),ba={key:0,"aria-labelledby":"main-nav-aria-label",class:"VPNavBarMenu"},ga=b({__name:"VPNavBarMenu",setup(a){const{theme:e}=V();return(t,n)=>i(e).nav?(o(),l("nav",ba,[n[0]||(n[0]=p("span",{id:"main-nav-aria-label",class:"visually-hidden"}," Main Navigation ",-1)),(o(!0),l(C,null,B(i(e).nav,s=>(o(),l(C,{key:JSON.stringify(s)},["link"in s?(o(),$(_a,{key:0,item:s},null,8,["item"])):"component"in s?(o(),$(H(s.component),R({key:1,ref_for:!0},s.props),null,16)):(o(),$(We,{key:2,item:s},null,8,["item"]))],64))),128))])):m("",!0)}}),ka=k(ga,[["__scopeId","data-v-e6d46098"]]);function $a(a){const{localeIndex:e,theme:t}=V();function n(s){var w,M,N;const r=s.split("."),c=(w=t.value.search)==null?void 0:w.options,v=c&&typeof c=="object",d=v&&((N=(M=c.locales)==null?void 0:M[e.value])==null?void 0:N.translations)||null,h=v&&c.translations||null;let A=d,_=h,P=a;const L=r.pop();for(const E of r){let U=null;const K=P==null?void 0:P[E];K&&(U=P=K);const ae=_==null?void 0:_[E];ae&&(U=_=ae);const oe=A==null?void 0:A[E];oe&&(U=A=oe),K||(P=U),ae||(_=U),oe||(A=U)}return(A==null?void 0:A[L])??(_==null?void 0:_[L])??(P==null?void 0:P[L])??""}return n}const ya=["aria-label"],Aa={class:"DocSearch-Button-Container"},Pa={class:"DocSearch-Button-Placeholder"},Pe=b({__name:"VPNavBarSearchButton",setup(a){const t=$a({button:{buttonText:"Search",buttonAriaLabel:"Search"}});return(n,s)=>(o(),l("button",{type:"button",class:"DocSearch DocSearch-Button","aria-label":i(t)("button.buttonAriaLabel")},[p("span",Aa,[s[0]||(s[0]=p("span",{class:"vp-icon DocSearch-Search-Icon"},null,-1)),p("span",Pa,I(i(t)("button.buttonText")),1)]),s[1]||(s[1]=p("span",{class:"DocSearch-Button-Keys"},[p("kbd",{class:"DocSearch-Button-Key"}),p("kbd",{class:"DocSearch-Button-Key"},"K")],-1))],8,ya))}}),La={class:"VPNavBarSearch"},Va={id:"local-search"},Sa={key:1,id:"docsearch"},Ia=b({__name:"VPNavBarSearch",setup(a){const e=Xe(()=>qe(()=>import("./VPLocalSearchBox.DJECbzTq.js"),__vite__mapDeps([0,1]))),t=()=>null,{theme:n}=V(),s=S(!1),r=S(!1);O(()=>{});function c(){s.value||(s.value=!0,setTimeout(v,16))}function v(){const _=new Event("keydown");_.key="k",_.metaKey=!0,window.dispatchEvent(_),setTimeout(()=>{document.querySelector(".DocSearch-Modal")||v()},16)}function d(_){const P=_.target,L=P.tagName;return P.isContentEditable||L==="INPUT"||L==="SELECT"||L==="TEXTAREA"}const h=S(!1);le("k",_=>{(_.ctrlKey||_.metaKey)&&(_.preventDefault(),h.value=!0)}),le("/",_=>{d(_)||(_.preventDefault(),h.value=!0)});const A="local";return(_,P)=>{var L;return o(),l("div",La,[i(A)==="local"?(o(),l(C,{key:0},[h.value?(o(),$(i(e),{key:0,onClose:P[0]||(P[0]=w=>h.value=!1)})):m("",!0),p("div",Va,[g(Pe,{onClick:P[1]||(P[1]=w=>h.value=!0)})])],64)):i(A)==="algolia"?(o(),l(C,{key:1},[s.value?(o(),$(i(t),{key:0,algolia:((L=i(n).search)==null?void 0:L.options)??i(n).algolia,onVnodeBeforeMount:P[2]||(P[2]=w=>r.value=!0)},null,8,["algolia"])):m("",!0),r.value?m("",!0):(o(),l("div",Sa,[g(Pe,{onClick:c})]))],64)):m("",!0)])}}}),Na=b({__name:"VPNavBarSocialLinks",setup(a){const{theme:e}=V();return(t,n)=>i(e).socialLinks?(o(),$(ne,{key:0,class:"VPNavBarSocialLinks",links:i(e).socialLinks},null,8,["links"])):m("",!0)}}),Ta=k(Na,[["__scopeId","data-v-164c457f"]]),Ca=["href","rel","target"],wa=["innerHTML"],Ma={key:2},Ba=b({__name:"VPNavBarTitle",setup(a){const{site:e,theme:t}=V(),{hasSidebar:n}=D(),{currentLang:s}=Z(),r=y(()=>{var d;return typeof t.value.logoLink=="string"?t.value.logoLink:(d=t.value.logoLink)==null?void 0:d.link}),c=y(()=>{var d;return typeof t.value.logoLink=="string"||(d=t.value.logoLink)==null?void 0:d.rel}),v=y(()=>{var d;return typeof t.value.logoLink=="string"||(d=t.value.logoLink)==null?void 0:d.target});return(d,h)=>(o(),l("div",{class:T(["VPNavBarTitle",{"has-sidebar":i(n)}])},[p("a",{class:"title",href:r.value??i(be)(i(s).link),rel:c.value,target:v.value},[u(d.$slots,"nav-bar-title-before",{},void 0,!0),i(t).logo?(o(),$(X,{key:0,class:"logo",image:i(t).logo},null,8,["image"])):m("",!0),i(t).siteTitle?(o(),l("span",{key:1,innerHTML:i(t).siteTitle},null,8,wa)):i(t).siteTitle===void 0?(o(),l("span",Ma,I(i(e).title),1)):m("",!0),u(d.$slots,"nav-bar-title-after",{},void 0,!0)],8,Ca)],2))}}),Ea=k(Ba,[["__scopeId","data-v-0f4f798b"]]),Qa={class:"items"},Ha={class:"title"},Fa=b({__name:"VPNavBarTranslations",setup(a){const{theme:e}=V(),{localeLinks:t,currentLang:n}=Z({correspondingLink:!0});return(s,r)=>i(t).length&&i(n).label?(o(),$(ye,{key:0,class:"VPNavBarTranslations",icon:"vpi-languages",label:i(e).langMenuLabel||"Change language"},{default:f(()=>[p("div",Qa,[p("p",Ha,I(i(n).label),1),(o(!0),l(C,null,B(i(t),c=>(o(),$(se,{key:c.link,item:c},null,8,["item"]))),128))])]),_:1},8,["label"])):m("",!0)}}),Wa=k(Fa,[["__scopeId","data-v-c80d9ad0"]]),Oa={class:"wrapper"},Da={class:"container"},Ua={class:"title"},Ra={class:"content"},Ga={class:"content-body"},Ja=b({__name:"VPNavBar",props:{isScreenOpen:{type:Boolean}},emits:["toggle-screen"],setup(a){const e=a,{y:t}=Ce(),{hasSidebar:n}=D(),{frontmatter:s}=V(),r=S({});return me(()=>{r.value={"has-sidebar":n.value,home:s.value.layout==="home",top:t.value===0,"screen-open":e.isScreenOpen}}),(c,v)=>(o(),l("div",{class:T(["VPNavBar",r.value])},[p("div",Oa,[p("div",Da,[p("div",Ua,[g(Ea,null,{"nav-bar-title-before":f(()=>[u(c.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":f(()=>[u(c.$slots,"nav-bar-title-after",{},void 0,!0)]),_:3})]),p("div",Ra,[p("div",Ga,[u(c.$slots,"nav-bar-content-before",{},void 0,!0),g(Ia,{class:"search"}),g(ka,{class:"menu"}),g(Wa,{class:"translations"}),g(Tn,{class:"appearance"}),g(Ta,{class:"social-links"}),g(da,{class:"extra"}),u(c.$slots,"nav-bar-content-after",{},void 0,!0),g(fa,{class:"hamburger",active:c.isScreenOpen,onClick:v[0]||(v[0]=d=>c.$emit("toggle-screen"))},null,8,["active"])])])])]),v[1]||(v[1]=p("div",{class:"divider"},[p("div",{class:"divider-line"})],-1))],2))}}),Ka=k(Ja,[["__scopeId","data-v-822684d1"]]),ja={key:0,class:"VPNavScreenAppearance"},za={class:"text"},Za=b({__name:"VPNavScreenAppearance",setup(a){const{site:e,theme:t}=V();return(n,s)=>i(e).appearance&&i(e).appearance!=="force-dark"&&i(e).appearance!=="force-auto"?(o(),l("div",ja,[p("p",za,I(i(t).darkModeSwitchLabel||"Appearance"),1),g(ke)])):m("",!0)}}),Ya=k(Za,[["__scopeId","data-v-ffb44008"]]),Xa=["innerHTML"],qa=b({__name:"VPNavScreenMenuLink",props:{item:{}},setup(a){const e=j("close-screen");return(t,n)=>(o(),$(Q,{class:"VPNavScreenMenuLink",href:t.item.link,target:t.item.target,rel:t.item.rel,"no-icon":t.item.noIcon,onClick:i(e)},{default:f(()=>[p("span",{innerHTML:t.item.text},null,8,Xa)]),_:1},8,["href","target","rel","no-icon","onClick"]))}}),xa=k(qa,[["__scopeId","data-v-735512b8"]]),eo=["innerHTML"],to=b({__name:"VPNavScreenMenuGroupLink",props:{item:{}},setup(a){const e=j("close-screen");return(t,n)=>(o(),$(Q,{class:"VPNavScreenMenuGroupLink",href:t.item.link,target:t.item.target,rel:t.item.rel,"no-icon":t.item.noIcon,onClick:i(e)},{default:f(()=>[p("span",{innerHTML:t.item.text},null,8,eo)]),_:1},8,["href","target","rel","no-icon","onClick"]))}}),Oe=k(to,[["__scopeId","data-v-372ae7c0"]]),so={class:"VPNavScreenMenuGroupSection"},no={key:0,class:"title"},ao=b({__name:"VPNavScreenMenuGroupSection",props:{text:{},items:{}},setup(a){return(e,t)=>(o(),l("div",so,[e.text?(o(),l("p",no,I(e.text),1)):m("",!0),(o(!0),l(C,null,B(e.items,n=>(o(),$(Oe,{key:n.text,item:n},null,8,["item"]))),128))]))}}),oo=k(ao,[["__scopeId","data-v-4b8941ac"]]),ro=["aria-controls","aria-expanded"],io=["innerHTML"],lo=["id"],co={key:0,class:"item"},uo={key:1,class:"item"},po={key:2,class:"group"},vo=b({__name:"VPNavScreenMenuGroup",props:{text:{},items:{}},setup(a){const e=a,t=S(!1),n=y(()=>`NavScreenGroup-${e.text.replace(" ","-").toLowerCase()}`);function s(){t.value=!t.value}return(r,c)=>(o(),l("div",{class:T(["VPNavScreenMenuGroup",{open:t.value}])},[p("button",{class:"button","aria-controls":n.value,"aria-expanded":t.value,onClick:s},[p("span",{class:"button-text",innerHTML:r.text},null,8,io),c[0]||(c[0]=p("span",{class:"vpi-plus button-icon"},null,-1))],8,ro),p("div",{id:n.value,class:"items"},[(o(!0),l(C,null,B(r.items,v=>(o(),l(C,{key:JSON.stringify(v)},["link"in v?(o(),l("div",co,[g(Oe,{item:v},null,8,["item"])])):"component"in v?(o(),l("div",uo,[(o(),$(H(v.component),R({ref_for:!0},v.props,{"screen-menu":""}),null,16))])):(o(),l("div",po,[g(oo,{text:v.text,items:v.items},null,8,["text","items"])]))],64))),128))],8,lo)],2))}}),De=k(vo,[["__scopeId","data-v-875057a5"]]),fo={key:0,class:"VPNavScreenMenu"},mo=b({__name:"VPNavScreenMenu",setup(a){const{theme:e}=V();return(t,n)=>i(e).nav?(o(),l("nav",fo,[(o(!0),l(C,null,B(i(e).nav,s=>(o(),l(C,{key:JSON.stringify(s)},["link"in s?(o(),$(xa,{key:0,item:s},null,8,["item"])):"component"in s?(o(),$(H(s.component),R({key:1,ref_for:!0},s.props,{"screen-menu":""}),null,16)):(o(),$(De,{key:2,text:s.text||"",items:s.items},null,8,["text","items"]))],64))),128))])):m("",!0)}}),ho=b({__name:"VPNavScreenSocialLinks",setup(a){const{theme:e}=V();return(t,n)=>i(e).socialLinks?(o(),$(ne,{key:0,class:"VPNavScreenSocialLinks",links:i(e).socialLinks},null,8,["links"])):m("",!0)}}),_o={class:"list"},bo=b({__name:"VPNavScreenTranslations",setup(a){const{localeLinks:e,currentLang:t}=Z({correspondingLink:!0}),n=S(!1);function s(){n.value=!n.value}return(r,c)=>i(e).length&&i(t).label?(o(),l("div",{key:0,class:T(["VPNavScreenTranslations",{open:n.value}])},[p("button",{class:"title",onClick:s},[c[0]||(c[0]=p("span",{class:"vpi-languages icon lang"},null,-1)),F(" "+I(i(t).label)+" ",1),c[1]||(c[1]=p("span",{class:"vpi-chevron-down icon chevron"},null,-1))]),p("ul",_o,[(o(!0),l(C,null,B(i(e),v=>(o(),l("li",{key:v.link,class:"item"},[g(Q,{class:"link",href:v.link},{default:f(()=>[F(I(v.text),1)]),_:2},1032,["href"])]))),128))])],2)):m("",!0)}}),go=k(bo,[["__scopeId","data-v-362991c2"]]),ko={class:"container"},$o=b({__name:"VPNavScreen",props:{open:{type:Boolean}},setup(a){const e=S(null),t=we(te?document.body:null);return(n,s)=>(o(),$(pe,{name:"fade",onEnter:s[0]||(s[0]=r=>t.value=!0),onAfterLeave:s[1]||(s[1]=r=>t.value=!1)},{default:f(()=>[n.open?(o(),l("div",{key:0,class:"VPNavScreen",ref_key:"screen",ref:e,id:"VPNavScreen"},[p("div",ko,[u(n.$slots,"nav-screen-content-before",{},void 0,!0),g(mo,{class:"menu"}),g(go,{class:"translations"}),g(Ya,{class:"appearance"}),g(ho,{class:"social-links"}),u(n.$slots,"nav-screen-content-after",{},void 0,!0)])],512)):m("",!0)]),_:3}))}}),yo=k($o,[["__scopeId","data-v-833aabba"]]),Ao={key:0,class:"VPNav"},Po=b({__name:"VPNav",setup(a){const{isScreenOpen:e,closeScreen:t,toggleScreen:n}=kn(),{frontmatter:s}=V(),r=y(()=>s.value.navbar!==!1);return _e("close-screen",t),q(()=>{te&&document.documentElement.classList.toggle("hide-nav",!r.value)}),(c,v)=>r.value?(o(),l("header",Ao,[g(Ka,{"is-screen-open":i(e),onToggleScreen:i(n)},{"nav-bar-title-before":f(()=>[u(c.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":f(()=>[u(c.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":f(()=>[u(c.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":f(()=>[u(c.$slots,"nav-bar-content-after",{},void 0,!0)]),_:3},8,["is-screen-open","onToggleScreen"]),g(yo,{open:i(e)},{"nav-screen-content-before":f(()=>[u(c.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":f(()=>[u(c.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3},8,["open"])])):m("",!0)}}),Lo=k(Po,[["__scopeId","data-v-f1e365da"]]),Vo=["role","tabindex"],So={key:1,class:"items"},Io=b({__name:"VPSidebarItem",props:{item:{},depth:{}},setup(a){const e=a,{collapsed:t,collapsible:n,isLink:s,isActiveLink:r,hasActiveLink:c,hasChildren:v,toggle:d}=At(y(()=>e.item)),h=y(()=>v.value?"section":"div"),A=y(()=>s.value?"a":"div"),_=y(()=>v.value?e.depth+2===7?"p":`h${e.depth+2}`:"p"),P=y(()=>s.value?void 0:"button"),L=y(()=>[[`level-${e.depth}`],{collapsible:n.value},{collapsed:t.value},{"is-link":s.value},{"is-active":r.value},{"has-active":c.value}]);function w(N){"key"in N&&N.key!=="Enter"||!e.item.link&&d()}function M(){e.item.link&&d()}return(N,E)=>{const U=G("VPSidebarItem",!0);return o(),$(H(h.value),{class:T(["VPSidebarItem",L.value])},{default:f(()=>[N.item.text?(o(),l("div",R({key:0,class:"item",role:P.value},xe(N.item.items?{click:w,keydown:w}:{},!0),{tabindex:N.item.items&&0}),[E[1]||(E[1]=p("div",{class:"indicator"},null,-1)),N.item.link?(o(),$(Q,{key:0,tag:A.value,class:"link",href:N.item.link,rel:N.item.rel,target:N.item.target},{default:f(()=>[(o(),$(H(_.value),{class:"text",innerHTML:N.item.text},null,8,["innerHTML"]))]),_:1},8,["tag","href","rel","target"])):(o(),$(H(_.value),{key:1,class:"text",innerHTML:N.item.text},null,8,["innerHTML"])),N.item.collapsed!=null&&N.item.items&&N.item.items.length?(o(),l("div",{key:2,class:"caret",role:"button","aria-label":"toggle section",onClick:M,onKeydown:et(M,["enter"]),tabindex:"0"},E[0]||(E[0]=[p("span",{class:"vpi-chevron-right caret-icon"},null,-1)]),32)):m("",!0)],16,Vo)):m("",!0),N.item.items&&N.item.items.length?(o(),l("div",So,[N.depth<5?(o(!0),l(C,{key:0},B(N.item.items,K=>(o(),$(U,{key:K.text,item:K,depth:N.depth+1},null,8,["item","depth"]))),128)):m("",!0)])):m("",!0)]),_:1},8,["class"])}}}),No=k(Io,[["__scopeId","data-v-196b2e5f"]]),To=b({__name:"VPSidebarGroup",props:{items:{}},setup(a){const e=S(!0);let t=null;return O(()=>{t=setTimeout(()=>{t=null,e.value=!1},300)}),tt(()=>{t!=null&&(clearTimeout(t),t=null)}),(n,s)=>(o(!0),l(C,null,B(n.items,r=>(o(),l("div",{key:r.text,class:T(["group",{"no-transition":e.value}])},[g(No,{item:r,depth:0},null,8,["item"])],2))),128))}}),Co=k(To,[["__scopeId","data-v-9e426adc"]]),wo={class:"nav",id:"VPSidebarNav","aria-labelledby":"sidebar-aria-label",tabindex:"-1"},Mo=b({__name:"VPSidebar",props:{open:{type:Boolean}},setup(a){const{sidebarGroups:e,hasSidebar:t}=D(),n=a,s=S(null),r=we(te?document.body:null);W([n,s],()=>{var v;n.open?(r.value=!0,(v=s.value)==null||v.focus()):r.value=!1},{immediate:!0,flush:"post"});const c=S(0);return W(e,()=>{c.value+=1},{deep:!0}),(v,d)=>i(t)?(o(),l("aside",{key:0,class:T(["VPSidebar",{open:v.open}]),ref_key:"navEl",ref:s,onClick:d[0]||(d[0]=st(()=>{},["stop"]))},[d[2]||(d[2]=p("div",{class:"curtain"},null,-1)),p("nav",wo,[d[1]||(d[1]=p("span",{class:"visually-hidden",id:"sidebar-aria-label"}," Sidebar Navigation ",-1)),u(v.$slots,"sidebar-nav-before",{},void 0,!0),(o(),$(Co,{items:i(e),key:c.value},null,8,["items"])),u(v.$slots,"sidebar-nav-after",{},void 0,!0)])],2)):m("",!0)}}),Bo=k(Mo,[["__scopeId","data-v-18756405"]]),Eo=b({__name:"VPSkipLink",setup(a){const e=ee(),t=S();W(()=>e.path,()=>t.value.focus());function n({target:s}){const r=document.getElementById(decodeURIComponent(s.hash).slice(1));if(r){const c=()=>{r.removeAttribute("tabindex"),r.removeEventListener("blur",c)};r.setAttribute("tabindex","-1"),r.addEventListener("blur",c),r.focus(),window.scrollTo(0,0)}}return(s,r)=>(o(),l(C,null,[p("span",{ref_key:"backToTop",ref:t,tabindex:"-1"},null,512),p("a",{href:"#VPContent",class:"VPSkipLink visually-hidden",onClick:n}," Skip to content ")],64))}}),Qo=k(Eo,[["__scopeId","data-v-c3508ec8"]]),Ho=b({__name:"Layout",setup(a){const{isOpen:e,open:t,close:n}=D(),s=ee();W(()=>s.path,n),yt(e,n);const{frontmatter:r}=V(),c=Me(),v=y(()=>!!c["home-hero-image"]);return _e("hero-image-slot-exists",v),(d,h)=>{const A=G("Content");return i(r).layout!==!1?(o(),l("div",{key:0,class:T(["Layout",i(r).pageClass])},[u(d.$slots,"layout-top",{},void 0,!0),g(Qo),g(ct,{class:"backdrop",show:i(e),onClick:i(n)},null,8,["show","onClick"]),g(Lo,null,{"nav-bar-title-before":f(()=>[u(d.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":f(()=>[u(d.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":f(()=>[u(d.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":f(()=>[u(d.$slots,"nav-bar-content-after",{},void 0,!0)]),"nav-screen-content-before":f(()=>[u(d.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":f(()=>[u(d.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3}),g(gn,{open:i(e),onOpenMenu:i(t)},null,8,["open","onOpenMenu"]),g(Bo,{open:i(e)},{"sidebar-nav-before":f(()=>[u(d.$slots,"sidebar-nav-before",{},void 0,!0)]),"sidebar-nav-after":f(()=>[u(d.$slots,"sidebar-nav-after",{},void 0,!0)]),_:3},8,["open"]),g(sn,null,{"page-top":f(()=>[u(d.$slots,"page-top",{},void 0,!0)]),"page-bottom":f(()=>[u(d.$slots,"page-bottom",{},void 0,!0)]),"not-found":f(()=>[u(d.$slots,"not-found",{},void 0,!0)]),"home-hero-before":f(()=>[u(d.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info-before":f(()=>[u(d.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":f(()=>[u(d.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":f(()=>[u(d.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":f(()=>[u(d.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":f(()=>[u(d.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":f(()=>[u(d.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":f(()=>[u(d.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":f(()=>[u(d.$slots,"home-features-after",{},void 0,!0)]),"doc-footer-before":f(()=>[u(d.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":f(()=>[u(d.$slots,"doc-before",{},void 0,!0)]),"doc-after":f(()=>[u(d.$slots,"doc-after",{},void 0,!0)]),"doc-top":f(()=>[u(d.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":f(()=>[u(d.$slots,"doc-bottom",{},void 0,!0)]),"aside-top":f(()=>[u(d.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":f(()=>[u(d.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":f(()=>[u(d.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":f(()=>[u(d.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":f(()=>[u(d.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":f(()=>[u(d.$slots,"aside-ads-after",{},void 0,!0)]),_:3}),g(ln),u(d.$slots,"layout-bottom",{},void 0,!0)],2)):(o(),$(A,{key:1}))}}}),Fo=k(Ho,[["__scopeId","data-v-a9a9e638"]]),Wo={},Oo={class:"VPTeamPage"};function Do(a,e){return o(),l("div",Oo,[u(a.$slots,"default")])}const Fr=k(Wo,[["render",Do],["__scopeId","data-v-c2f8e101"]]),Uo={},Ro={class:"VPTeamPageTitle"},Go={key:0,class:"title"},Jo={key:1,class:"lead"};function Ko(a,e){return o(),l("div",Ro,[a.$slots.title?(o(),l("h1",Go,[u(a.$slots,"title",{},void 0,!0)])):m("",!0),a.$slots.lead?(o(),l("p",Jo,[u(a.$slots,"lead",{},void 0,!0)])):m("",!0)])}const Wr=k(Uo,[["render",Ko],["__scopeId","data-v-e277e15c"]]),jo={},zo={class:"VPTeamPageSection"},Zo={class:"title"},Yo={key:0,class:"title-text"},Xo={key:0,class:"lead"},qo={key:1,class:"members"};function xo(a,e){return o(),l("section",zo,[p("div",Zo,[e[0]||(e[0]=p("div",{class:"title-line"},null,-1)),a.$slots.title?(o(),l("h2",Yo,[u(a.$slots,"title",{},void 0,!0)])):m("",!0)]),a.$slots.lead?(o(),l("p",Xo,[u(a.$slots,"lead",{},void 0,!0)])):m("",!0),a.$slots.members?(o(),l("div",qo,[u(a.$slots,"members",{},void 0,!0)])):m("",!0)])}const Or=k(jo,[["render",xo],["__scopeId","data-v-d43bc49d"]]),er={class:"profile"},tr={class:"avatar"},sr=["src","alt"],nr={class:"data"},ar={class:"name"},or={key:0,class:"affiliation"},rr={key:0,class:"title"},ir={key:1,class:"at"},lr=["innerHTML"],cr={key:2,class:"links"},ur={key:0,class:"sp"},dr=b({__name:"VPTeamMembersItem",props:{size:{default:"medium"},member:{}},setup(a){return(e,t)=>(o(),l("article",{class:T(["VPTeamMembersItem",[e.size]])},[p("div",er,[p("figure",tr,[p("img",{class:"avatar-img",src:e.member.avatar,alt:e.member.name},null,8,sr)]),p("div",nr,[p("h1",ar,I(e.member.name),1),e.member.title||e.member.org?(o(),l("p",or,[e.member.title?(o(),l("span",rr,I(e.member.title),1)):m("",!0),e.member.title&&e.member.org?(o(),l("span",ir," @ ")):m("",!0),e.member.org?(o(),$(Q,{key:2,class:T(["org",{link:e.member.orgLink}]),href:e.member.orgLink,"no-icon":""},{default:f(()=>[F(I(e.member.org),1)]),_:1},8,["class","href"])):m("",!0)])):m("",!0),e.member.desc?(o(),l("p",{key:1,class:"desc",innerHTML:e.member.desc},null,8,lr)):m("",!0),e.member.links?(o(),l("div",cr,[g(ne,{links:e.member.links},null,8,["links"])])):m("",!0)])]),e.member.sponsor?(o(),l("div",ur,[g(Q,{class:"sp-link",href:e.member.sponsor,"no-icon":""},{default:f(()=>[t[0]||(t[0]=p("span",{class:"vpi-heart sp-icon"},null,-1)),F(" "+I(e.member.actionText||"Sponsor"),1)]),_:1},8,["href"])])):m("",!0)],2))}}),pr=k(dr,[["__scopeId","data-v-f9987cb6"]]),vr={class:"container"},fr=b({__name:"VPTeamMembers",props:{size:{default:"medium"},members:{}},setup(a){const e=a,t=y(()=>[e.size,`count-${e.members.length}`]);return(n,s)=>(o(),l("div",{class:T(["VPTeamMembers",t.value])},[p("div",vr,[(o(!0),l(C,null,B(n.members,r=>(o(),l("div",{key:r.name,class:"item"},[g(pr,{size:n.size,member:r},null,8,["size","member"])]))),128))])],2))}}),Dr=k(fr,[["__scopeId","data-v-fba19bad"]]),Le={Layout:Fo,enhanceApp:({app:a})=>{a.component("Badge",rt)}},mr={},hr={style:{"text-align":"center"}};function _r(a,e){const t=G("font");return o(),l(C,null,[e[1]||(e[1]=p("br",null,null,-1)),p("h1",hr,[p("strong",null,[g(t,{color:"orange"},{default:f(()=>e[0]||(e[0]=[F(" Package Ecosystem")])),_:1})])]),e[2]||(e[2]=nt('

Read n-d array like-data

DiskArrays.jl

Get your chunks!

Named Dimensions

DimensionalData.jl

Select & Index!

Out of memory data

Zarr.jl

Chunkerd, compressed !

Rasterized spatial data

Rasters.jl

Read and manipulate !

Array-oriented data

NetCDF.jl

Scientific binary data.

Raster and vector data

ArchGDAL.jl

GDAL in Julia.

An interface for

GeoInterface.jl

geospatial data in Julia.

A higher level interface

GRIBDatasets.jl

for reading GRIB files.

Array-oriented data

NCDatasets.jl

Scientific binary data.

',9))],64)}const br=k(mr,[["render",_r]]),gr=b({__name:"VersionPicker",props:{screenMenu:{type:Boolean}},setup(a){const e=S([]),t=S("Versions"),n=S(!1);Se();const s=()=>typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),r=()=>{if(typeof window>"u")return"";const{origin:d,pathname:h}=window.location;if(d.includes("github.io")){const A=h.split("/").filter(Boolean),_=A.length>0?`/${A[0]}/`:"/";return`${d}${_}`}else return d},c=()=>new Promise(d=>{if(s()){d(!1);return}const h=setInterval(()=>{window.DOC_VERSIONS&&window.DOCUMENTER_CURRENT_VERSION&&(clearInterval(h),d(!0))},100);setTimeout(()=>{clearInterval(h),d(!1)},5e3)});return O(async()=>{if(!(typeof window>"u")){try{if(s()){const d=["dev"];e.value=d.map(h=>({text:h,link:"/"})),t.value="dev"}else{const d=await c(),h=y(()=>r());if(d&&window.DOC_VERSIONS&&window.DOCUMENTER_CURRENT_VERSION)e.value=window.DOC_VERSIONS.map(A=>({text:A,link:`${h.value}/${A}/`})),t.value=window.DOCUMENTER_CURRENT_VERSION;else{const A=["dev"];e.value=A.map(_=>({text:_,link:`${h.value}/${_}/`})),t.value="dev"}}}catch(d){console.warn("Error loading versions:",d);const h=["dev"],A=y(()=>r());e.value=h.map(_=>({text:_,link:`${A.value}/${_}/`})),t.value="dev"}n.value=!0}}),(d,h)=>n.value?(o(),l(C,{key:0},[!d.screenMenu&&e.value.length>0?(o(),$(We,{key:0,item:{text:t.value,items:e.value},class:"VPVersionPicker"},null,8,["item"])):d.screenMenu&&e.value.length>0?(o(),$(De,{key:1,text:t.value,items:e.value,class:"VPVersionPicker"},null,8,["text","items"])):m("",!0)],64)):m("",!0)}}),kr=k(gr,[["__scopeId","data-v-f465cb49"]]),$r=a=>{if(typeof document>"u")return{stabilizeScrollPosition:s=>async(...r)=>s(...r)};const e=document.documentElement;return{stabilizeScrollPosition:n=>async(...s)=>{const r=n(...s),c=a.value;if(!c)return r;const v=c.offsetTop-e.scrollTop;return await he(),e.scrollTop=c.offsetTop-v,r}}},Ue="vitepress:tabSharedState",z=typeof localStorage<"u"?localStorage:null,Re="vitepress:tabsSharedState",yr=()=>{const a=z==null?void 0:z.getItem(Re);if(a)try{return JSON.parse(a)}catch{}return{}},Ar=a=>{z&&z.setItem(Re,JSON.stringify(a))},Pr=a=>{const e=at({});W(()=>e.content,(t,n)=>{t&&n&&Ar(t)},{deep:!0}),a.provide(Ue,e)},Lr=(a,e)=>{const t=j(Ue);if(!t)throw new Error("[vitepress-plugin-tabs] TabsSharedState should be injected");O(()=>{t.content||(t.content=yr())});const n=S(),s=y({get(){var d;const c=e.value,v=a.value;if(c){const h=(d=t.content)==null?void 0:d[c];if(h&&v.includes(h))return h}else{const h=n.value;if(h)return h}return v[0]},set(c){const v=e.value;v?t.content&&(t.content[v]=c):n.value=c}});return{selected:s,select:c=>{s.value=c}}};let Ve=0;const Vr=()=>(Ve++,""+Ve);function Sr(){const a=Me();return y(()=>{var n;const t=(n=a.default)==null?void 0:n.call(a);return t?t.filter(s=>typeof s.type=="object"&&"__name"in s.type&&s.type.__name==="PluginTabsTab"&&s.props).map(s=>{var r;return(r=s.props)==null?void 0:r.label}):[]})}const Ge="vitepress:tabSingleState",Ir=a=>{_e(Ge,a)},Nr=()=>{const a=j(Ge);if(!a)throw new Error("[vitepress-plugin-tabs] TabsSingleState should be injected");return a},Tr={class:"plugin-tabs"},Cr=["id","aria-selected","aria-controls","tabindex","onClick"],wr=b({__name:"PluginTabs",props:{sharedStateKey:{}},setup(a){const e=a,t=Sr(),{selected:n,select:s}=Lr(t,ot(e,"sharedStateKey")),r=S(),{stabilizeScrollPosition:c}=$r(r),v=c(s),d=S([]),h=_=>{var w;const P=t.value.indexOf(n.value);let L;_.key==="ArrowLeft"?L=P>=1?P-1:t.value.length-1:_.key==="ArrowRight"&&(L=P(o(),l("div",Tr,[p("div",{ref_key:"tablist",ref:r,class:"plugin-tabs--tab-list",role:"tablist",onKeydown:h},[(o(!0),l(C,null,B(i(t),L=>(o(),l("button",{id:`tab-${L}-${i(A)}`,ref_for:!0,ref_key:"buttonRefs",ref:d,key:L,role:"tab",class:"plugin-tabs--tab","aria-selected":L===i(n),"aria-controls":`panel-${L}-${i(A)}`,tabindex:L===i(n)?0:-1,onClick:()=>i(v)(L)},I(L),9,Cr))),128))],544),u(_.$slots,"default")]))}}),Mr=["id","aria-labelledby"],Br=b({__name:"PluginTabsTab",props:{label:{}},setup(a){const{uid:e,selected:t}=Nr();return(n,s)=>i(t)===n.label?(o(),l("div",{key:0,id:`panel-${n.label}-${i(e)}`,class:"plugin-tabs--content",role:"tabpanel",tabindex:"0","aria-labelledby":`tab-${n.label}-${i(e)}`},[u(n.$slots,"default",{},void 0,!0)],8,Mr)):m("",!0)}}),Er=k(Br,[["__scopeId","data-v-9b0d03d2"]]),Qr=a=>{Pr(a),a.component("PluginTabs",wr),a.component("PluginTabsTab",Er)},Ur={extends:Le,Layout(){return Ae(Le.Layout,null,{"aside-ads-before":()=>Ae(br)})},enhanceApp({app:a,router:e,siteData:t}){Qr(a),a.component("VersionPicker",kr)}};export{Ur as R,Wr as V,Dr as a,Or as b,Fr as c,$a as d,V as u}; diff --git a/dev/assets/dadyujg.BJNzQY3Z.png b/dev/assets/dadyujg.BJNzQY3Z.png new file mode 100644 index 0000000000000000000000000000000000000000..520e812c2c2a7e0fefe9bfed23768cb29dee0b1e GIT binary patch literal 677879 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

If you want to use the latest unreleased version, you can run the following command:

Want interoperability?

Install the following package(s) for:

julia
using Pkg
+pkg> add YAXArrays

If you want to use the latest unreleased version, you can run the following command:

julia
pkg> add YAXArrays#master

Want interoperability?

Install the following package(s) for:

julia
using Pkg
 Pkg.add("ArchGDAL")
julia
using Pkg
 Pkg.add("NetCDF")
julia
using Pkg
 Pkg.add("Zarr")
julia
using Pkg
diff --git a/dev/assets/index.md.Cye5ANCP.lean.js b/dev/assets/index.md.BxY-HPmN.lean.js
similarity index 94%
rename from dev/assets/index.md.Cye5ANCP.lean.js
rename to dev/assets/index.md.BxY-HPmN.lean.js
index 3b8aeb3a..eba6c230 100644
--- a/dev/assets/index.md.Cye5ANCP.lean.js
+++ b/dev/assets/index.md.BxY-HPmN.lean.js
@@ -2,7 +2,7 @@ import{_ as s,c as a,a2 as t,o as e}from"./chunks/framework.swGcc4Ky.js";const g
 julia> Pkg.add("YAXArrays.jl")
 # or
 julia> ] # ']' should be pressed
-pkg> add YAXArrays

If you want to use the latest unreleased version, you can run the following command:

julia
pkg> add YAXArrays#master

Want interoperability?

Install the following package(s) for:

julia
using Pkg
+pkg> add YAXArrays

If you want to use the latest unreleased version, you can run the following command:

julia
pkg> add YAXArrays#master

Want interoperability?

Install the following package(s) for:

julia
using Pkg
 Pkg.add("ArchGDAL")
julia
using Pkg
 Pkg.add("NetCDF")
julia
using Pkg
 Pkg.add("Zarr")
julia
using Pkg
diff --git a/dev/assets/lwcvkom.CBIWEbop.png b/dev/assets/lwcvkom.CBIWEbop.png
new file mode 100644
index 0000000000000000000000000000000000000000..318689c7df2fbbc68851b21ba57f7b7f7108f374
GIT binary patch
literal 82254
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

gLS=v@+;#!>hMk3Wh>e`E~goMtqMeqeLPz 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 literal 0 HcmV?d00001 diff --git a/dev/assets/lwcvkom.Cj9TSrtJ.png b/dev/assets/lwcvkom.Cj9TSrtJ.png deleted file mode 100644 index c77da292766448e8b3abdaad13d81e800464ea10..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 82251 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Ⓢh#6|ar6Iu^Un&g; zI;k&o2A^5V&BclyI+Wq1lfJhG2Z=`=xRBrBq++{jgFRdsue3e#9>-(S`+?4^>#(~<2$|c0 zg@-&AjxwZD6ZmOu5W(d4`deW@@nIfBp1uM`j$#4l%qNlq+>&sUp;>J<0cw>RyEoE zmbr2VmptkrIq4-37?8st{9(LuOA3g{I6NGrRcG&mkKO~Q>viNw#VVz!JPn3MEoUc? zf{}+W5@rX$r@h!4Aib7qp~Dk`LmJn_Q*$^OprQ2QB7Nsn-;5A{x-OI9F1YU~@1I;| z%`3PwE(+{{E)fBSX0MWe?}oTMw?+x_S`6EX!iQL* zdryc!(s$c;h8P#;aOnvN%DdsDmoJxx8$@A#yDP52@zWa$emnd$aU2TG(~kP=IsoD}TpNHjixVm@N0zzRrwT*__4hozjKG;?40PyXbg08 z;%2{~9G@E)8>=Y4Z9a5Wuy3mF&?r50au3(9h@~aR%}o79UR&I3$P4}@jdi(~;z))x07bNn z_^s0z)dHxoet|Fe($;;WrPKY~jA0w|zwF(*F3&p7*>Q0xGCGYD@DLH;lTm8bU;0Pu z&HwV>2<_p?_0StP^J)YaZsa{M@AJ4+Ln)S=6xYP181h1qlk13G<~EOcgIJ3~yoZ;V z=ywx}cpFDGxWV`7KXp3@{ic6hKL!ghI6YOy_?oA* zo>UL1vZa#GqLK`jpD0HRy+Im0vaFwRmE~Oh{^gc^yyFCOxQ4F8BwA%>kQ&SmLuI>kMK#mm6+RvuRrR|h7mfT8;EJZ0GvRR$1 zm;!i}JGtgCdHM2XoB#?)1fnPX_$0)qlv&OuH%ckE8p;K?@O2FqrLm-7w?Y~|e7GSu^7ZSScLRhy3C>Z` z9;*B~9_1J~qoE0JvTkR4?A$oo`DZUCcSN64SsCAlbAYt&1<}d%6IG4W#_MnClcIV! zHmlFJ~)H-~~x zT9(3|*P{>cOXkA??93 z*Z=KLOpJ}NE0Fp(%DFt5TmxGrm{t-NC1oWaoAU}1JBWvaKfayTsnT>IonSxfdUDg9 zQal1iNl%ZOCM5->C;d>0b=LK6MMy%_mHPSr0LeD&xg?(Z6IBa1s2{*A3AdjCK=!|4 z)hv6G1uT0x6m|L%`>vm#U*l~zK}OL}-URaorM>IdW2TvQ>-;+goq6cNMvO0ck|E7U ztGdfa^S9b8t~C38_9_o=!TO%7{GFLyU#CUtv=!%^^kuFL0gFA$ItRUj>oJ!Fhq<`yXmMR*{C8%oPVJEh`8kv&3G
4YtU7>L~}tE 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 D8ZdgX diff --git a/dev/assets/sdpqlwg.C0lFChV0.png b/dev/assets/sdpqlwg.C0lFChV0.png new file mode 100644 index 0000000000000000000000000000000000000000..72f7ec087714492fd27d68fe6d12dcbd95ecd1cd GIT binary patch literal 110232 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

#dTPoWuBg0)3SXe`apk#fdpo# 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%0AE6WZ+hYTn0k6P#VbQ3mp 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 literal 0 HcmV?d00001 diff --git a/dev/assets/sdpqlwg.VVvPdzHG.png b/dev/assets/sdpqlwg.VVvPdzHG.png deleted file mode 100644 index b0b98944781f1ff7e80c63507fbb0069526112d4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 110252 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

#dTPoWuBg0)3SXe`apk#fdpo# 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

    Ng&ZV8JyzT#eeB!g3w&SdZ6Rv4r9a+lD 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 diff --git a/dev/assets/tutorials_mean_seasonal_cycle.md.CMKY15SQ.js b/dev/assets/tutorials_mean_seasonal_cycle.md.CiCKLk5j.js similarity index 99% rename from dev/assets/tutorials_mean_seasonal_cycle.md.CMKY15SQ.js rename to dev/assets/tutorials_mean_seasonal_cycle.md.CiCKLk5j.js index efe18124..0706d58d 100644 --- a/dev/assets/tutorials_mean_seasonal_cycle.md.CMKY15SQ.js +++ b/dev/assets/tutorials_mean_seasonal_cycle.md.CiCKLk5j.js @@ -1,4 +1,4 @@ -import{_ as i,c as a,a2 as n,o as h}from"./chunks/framework.swGcc4Ky.js";const l="/YAXArrays.jl/dev/assets/lwcvkom.Cj9TSrtJ.png",k="/YAXArrays.jl/dev/assets/sdpqlwg.VVvPdzHG.png",c=JSON.parse('{"title":"Mean Seasonal Cycle for a single pixel","description":"","frontmatter":{},"headers":[],"relativePath":"tutorials/mean_seasonal_cycle.md","filePath":"tutorials/mean_seasonal_cycle.md","lastUpdated":null}'),p={name:"tutorials/mean_seasonal_cycle.md"};function t(e,s,E,d,r,g){return h(),a("div",null,s[0]||(s[0]=[n(`
    julia
    using CairoMakie
    +import{_ as i,c as a,a2 as n,o as h}from"./chunks/framework.swGcc4Ky.js";const l="/YAXArrays.jl/dev/assets/lwcvkom.CBIWEbop.png",k="/YAXArrays.jl/dev/assets/sdpqlwg.C0lFChV0.png",c=JSON.parse('{"title":"Mean Seasonal Cycle for a single pixel","description":"","frontmatter":{},"headers":[],"relativePath":"tutorials/mean_seasonal_cycle.md","filePath":"tutorials/mean_seasonal_cycle.md","lastUpdated":null}'),p={name:"tutorials/mean_seasonal_cycle.md"};function t(e,s,E,d,r,g){return h(),a("div",null,s[0]||(s[0]=[n(`

    Mean Seasonal Cycle for a single pixel

    julia
    using CairoMakie
     CairoMakie.activate!()
     using Dates
     using Statistics

    We define the data span. For simplicity, three non-leap years were selected.

    julia
    t =  Date("2021-01-01"):Day(1):Date("2023-12-31")
    diff --git a/dev/assets/tutorials_mean_seasonal_cycle.md.CMKY15SQ.lean.js b/dev/assets/tutorials_mean_seasonal_cycle.md.CiCKLk5j.lean.js
    similarity index 99%
    rename from dev/assets/tutorials_mean_seasonal_cycle.md.CMKY15SQ.lean.js
    rename to dev/assets/tutorials_mean_seasonal_cycle.md.CiCKLk5j.lean.js
    index efe18124..0706d58d 100644
    --- a/dev/assets/tutorials_mean_seasonal_cycle.md.CMKY15SQ.lean.js
    +++ b/dev/assets/tutorials_mean_seasonal_cycle.md.CiCKLk5j.lean.js
    @@ -1,4 +1,4 @@
    -import{_ as i,c as a,a2 as n,o as h}from"./chunks/framework.swGcc4Ky.js";const l="/YAXArrays.jl/dev/assets/lwcvkom.Cj9TSrtJ.png",k="/YAXArrays.jl/dev/assets/sdpqlwg.VVvPdzHG.png",c=JSON.parse('{"title":"Mean Seasonal Cycle for a single pixel","description":"","frontmatter":{},"headers":[],"relativePath":"tutorials/mean_seasonal_cycle.md","filePath":"tutorials/mean_seasonal_cycle.md","lastUpdated":null}'),p={name:"tutorials/mean_seasonal_cycle.md"};function t(e,s,E,d,r,g){return h(),a("div",null,s[0]||(s[0]=[n(`

    Mean Seasonal Cycle for a single pixel

    julia
    using CairoMakie
    +import{_ as i,c as a,a2 as n,o as h}from"./chunks/framework.swGcc4Ky.js";const l="/YAXArrays.jl/dev/assets/lwcvkom.CBIWEbop.png",k="/YAXArrays.jl/dev/assets/sdpqlwg.C0lFChV0.png",c=JSON.parse('{"title":"Mean Seasonal Cycle for a single pixel","description":"","frontmatter":{},"headers":[],"relativePath":"tutorials/mean_seasonal_cycle.md","filePath":"tutorials/mean_seasonal_cycle.md","lastUpdated":null}'),p={name:"tutorials/mean_seasonal_cycle.md"};function t(e,s,E,d,r,g){return h(),a("div",null,s[0]||(s[0]=[n(`

    Mean Seasonal Cycle for a single pixel

    julia
    using CairoMakie
     CairoMakie.activate!()
     using Dates
     using Statistics

    We define the data span. For simplicity, three non-leap years were selected.

    julia
    t =  Date("2021-01-01"):Day(1):Date("2023-12-31")
    diff --git a/dev/development/contribute.html b/dev/development/contribute.html
    index cf5fe696..faf9219f 100644
    --- a/dev/development/contribute.html
    +++ b/dev/development/contribute.html
    @@ -9,9 +9,9 @@
         
         
         
    -    
    +    
         
    -    
    +    
         
         
         
    @@ -24,7 +24,7 @@
         
    Skip to content

    Contribute to YAXArrays.jl

    Pull requests and bug reports are always welcome at the YAXArrays.jl GitHub repository.

    Contribute to Documentation

    Contributing with examples can be done by first creating a new file example here

    new file

    • your_new_file.md at docs/src/UserGuide/

    Once this is done you need to add a new entry here at the appropriate level.

    add entry to docs

    Your new entry should look like:

    • { text: 'Your title example', link: '/UserGuide/your_new_file.md' }

    Build docs locally

    If you want to take a look at the docs locally before doing a PR follow the next steps:

    Install the dependencies in your system, locate yourself at the docs level folder, then do

    sh
    npm i

    Then simply go to your docs env and activate it, i.e.

    sh
    docs> julia
     julia> ]
     pkg> activate .

    Next, run the scripts. Generate files and build docs by running:

    sh
    include("make.jl")

    Now go to your terminal in the same path docs> and run:

    sh
    npm run docs:dev

    This should ouput http://localhost:5173/YAXArrays.jl/, copy/paste this into your browser and you are all set.

    - + \ No newline at end of file diff --git a/dev/development/contributors.html b/dev/development/contributors.html index d961a49b..5f0c8f47 100644 --- a/dev/development/contributors.html +++ b/dev/development/contributors.html @@ -9,11 +9,11 @@ - + - + - + @@ -22,7 +22,7 @@
    Skip to content

    Contributors

    Current core contributors

    They have taking the lead for the ongoing organizational maintenance and technical direction of , and .

    Fabian Gans

    Fabian Gans

    Geoscientific Programmer

    Felix Cremer

    Felix Cremer

    PhD Candidate in Remote Sensing

    Rafael Schouten

    Rafael Schouten

    Spatial/ecological modelling

    Lazaro Alonso

    Lazaro Alonso

    Scientist. Data Visualization

    Our valuable contributors

    We appreciate all contributions from the Julia community so that this ecosystem can thrive.

    - + \ No newline at end of file diff --git a/dev/get_started.html b/dev/get_started.html index 4ccc4a3d..179de16f 100644 --- a/dev/get_started.html +++ b/dev/get_started.html @@ -9,9 +9,9 @@ - + - + @@ -77,7 +77,7 @@ 0.853962 0.461652 0.438885 0.665833 0.0743642 0.81705 0.00997173 0.515079 0.283788 0.258509 0.807171 0.234116 0.404819 0.3785 0.864937 0.0916764 0.235899 0.047283 0.768363 0.937012 0.732556

    Updates

    TIP

    The Julia Compiler is always improving. As such, we recommend using the latest stable version of Julia.

    You may check the installed version with:

    julia
    pkg> st YAXArrays

    INFO

    With YAXArrays.jl 0.5 we switched the underlying data type to be a subtype of the DimensionalData.jl types. Therefore the indexing with named dimensions changed to the DimensionalData syntax. See the DimensionalData.jl docs.

    Mean Seasonal Cycle for a single pixel

- + \ No newline at end of file diff --git a/dev/hashmap.json b/dev/hashmap.json index 3e52d87f..6ec34f1e 100644 --- a/dev/hashmap.json +++ b/dev/hashmap.json @@ -1 +1 @@ -{"api.md":"wIEA4sqI","development_contribute.md":"BnCGLWxW","development_contributors.md":"D2DvZ_J1","get_started.md":"Cthq51ut","index.md":"Cye5ANCP","tutorials_mean_seasonal_cycle.md":"CMKY15SQ","tutorials_other_tutorials.md":"Fy42Y-_T","tutorials_plottingmaps.md":"DySEf49F","userguide_cache.md":"QKgZScmZ","userguide_chunk.md":"BUA8jTbX","userguide_combine.md":"DGMMvDLL","userguide_compute.md":"-KH1LiWq","userguide_convert.md":"O11123L4","userguide_create.md":"CwCFfp2Q","userguide_faq.md":"b4CvsWvH","userguide_group.md":"C2QOkSMy","userguide_read.md":"CrzveZSn","userguide_select.md":"D-yiLe8M","userguide_types.md":"Di2UipOz","userguide_write.md":"CFbQ2Acr"} +{"api.md":"C4RLD1GU","development_contribute.md":"BnCGLWxW","development_contributors.md":"DVJKR9ns","get_started.md":"Cthq51ut","index.md":"BxY-HPmN","tutorials_mean_seasonal_cycle.md":"CiCKLk5j","tutorials_other_tutorials.md":"Fy42Y-_T","tutorials_plottingmaps.md":"DySEf49F","userguide_cache.md":"QKgZScmZ","userguide_chunk.md":"DheM5GwS","userguide_combine.md":"DGMMvDLL","userguide_compute.md":"BnROvPGu","userguide_convert.md":"O11123L4","userguide_create.md":"CwCFfp2Q","userguide_faq.md":"DujPZLJ-","userguide_group.md":"D803I59b","userguide_read.md":"CrzveZSn","userguide_select.md":"D-yiLe8M","userguide_types.md":"Di2UipOz","userguide_write.md":"CZ3VTuto"} diff --git a/dev/index.html b/dev/index.html index 02c0f5d4..6736e93b 100644 --- a/dev/index.html +++ b/dev/index.html @@ -9,11 +9,11 @@ - + - + - + @@ -25,12 +25,12 @@ julia> Pkg.add("YAXArrays.jl") # or julia> ] # ']' should be pressed -pkg> add YAXArrays

If you want to use the latest unreleased version, you can run the following command:

julia
pkg> add YAXArrays#master

Want interoperability?

Install the following package(s) for:

julia
using Pkg
+pkg> add YAXArrays

If you want to use the latest unreleased version, you can run the following command:

julia
pkg> add YAXArrays#master

Want interoperability?

Install the following package(s) for:

julia
using Pkg
 Pkg.add("ArchGDAL")
julia
using Pkg
 Pkg.add("NetCDF")
julia
using Pkg
 Pkg.add("Zarr")
julia
using Pkg
 Pkg.add(["GLMakie", "GeoMakie", "AlgebraOfGraphics", "DimensionalData"])
- + \ No newline at end of file diff --git a/dev/tutorials/mean_seasonal_cycle.html b/dev/tutorials/mean_seasonal_cycle.html index 2c07fb54..88737c99 100644 --- a/dev/tutorials/mean_seasonal_cycle.html +++ b/dev/tutorials/mean_seasonal_cycle.html @@ -9,11 +9,11 @@ - + - + - + @@ -32,7 +32,7 @@ ) ax.xticklabelrotation = π / 4 ax.xticklabelalign = (:right, :center) -fig

Define the cube

julia
julia> using YAXArrays, DimensionalData
+fig

Define the cube

julia
julia> using YAXArrays, DimensionalData
 
 julia> axes = (Dim{:Time}(t),)
(Time Date("2021-01-01"):Dates.Day(1):Date("2023-12-31"))
julia
julia> c = YAXArray(axes, var)
╭──────────────────────────────────╮
 1095-element YAXArray{Float64,1}
@@ -92,8 +92,8 @@
 ax.xticklabelrotation = π / 4
 ax.xticklabelalign = (:right, :center)
 fig
-current_figure()

- +current_figure()

+ \ No newline at end of file diff --git a/dev/tutorials/other_tutorials.html b/dev/tutorials/other_tutorials.html index 586d67dd..7d4f38a9 100644 --- a/dev/tutorials/other_tutorials.html +++ b/dev/tutorials/other_tutorials.html @@ -9,9 +9,9 @@ - + - + @@ -22,7 +22,7 @@
Skip to content

Other tutorials

If you are interested in learning how to work with YAXArrays for different use cases you can follow along one of the following tutorials.

  • Currently the overview tutorial is located at ESDLTutorials Repository

  • You can find further tutorial videos at the EO College. Beware that the syntax in the video tutorials might be slightly changed.

  • the other tutorials are still work in progress.

General overview of the functionality of YAXArrays

This tutorial provides a broad overview about the features of YAXArrays.

Table-style iteration over YAXArrays

Work in progress

Sometimes you want to combine the data that is represented in the data cube with other datasets, which are best described as a data frame. In this tutorial you will learn how to use the Tables.jl interface to iterate over the data in the YAXArray.

Combining multiple tiff files into a zarr based datacube

- + \ No newline at end of file diff --git a/dev/tutorials/plottingmaps.html b/dev/tutorials/plottingmaps.html index 3a9230c7..ca4cb328 100644 --- a/dev/tutorials/plottingmaps.html +++ b/dev/tutorials/plottingmaps.html @@ -9,9 +9,9 @@ - + - + @@ -75,7 +75,7 @@ zoom!(ax.scene, cameracontrols(ax.scene), 0.5) rotate!(ax.scene, 2.5) fig - + \ No newline at end of file