From 15216f9de802d6feb034f51e0d71a084b3d31d75 Mon Sep 17 00:00:00 2001 From: Runyang Xu Date: Thu, 22 Jan 2026 03:45:06 -0500 Subject: [PATCH] improve the site --- docs/.doctrees/environment.pickle | Bin 290918 -> 290918 bytes docs/.doctrees/pyhazards_datasets.doctree | Bin 38785 -> 26269 bytes docs/_sources/pyhazards_datasets.rst.txt | 150 +++------------------- docs/pyhazards_datasets.html | 135 ++----------------- docs/searchindex.js | 2 +- docs/source/pyhazards_datasets.rst | 150 +++------------------- 6 files changed, 46 insertions(+), 391 deletions(-) diff --git a/docs/.doctrees/environment.pickle b/docs/.doctrees/environment.pickle index 49bb99a9aa548aa929566bdeaed424e3f0ea68b6..98af61aed8c38bab0d42ac6305aa148b8bf70152 100644 GIT binary patch delta 1242 zcmZA1+i%lW7yxii3^cvP%>~*}L21IJ8*3ap^cLqjb;Hws??KZml@zWtmy^npmeoTuhEmWibA3iJWXp7AB}39>L+55El_~mr zlcMT|R47P>GOb!>BNi8@voi%5e(e@=o_CGXYn3$V_>7V{mZo)@VVMn@JSl6knvrR{ z=Cv%YXnc*w8nRThOt#kM?L5sNOliT>KK~YTgQ8~TlQg~7Mb=L_!E4N#rszfLujVl;!!oe{5*P%U!Db^MUMo36s$=5`Y)UR!E8wSQOpRk*tGf zVk7XeF3`kna9fNlCF*cyw$ zotW^ZReXfDX?Ld6imDjtG`x=PrbR#3ifGGScIrah3%`kOJn3X20^Wp&E}e?{=F5Rj zv2`io!$XW2x@3%@5C-c8?3>w^w+w|$vcbkf^m;Dd?JC)-?WlY~lhmf7_- zwI0gJfHR}2X-O}YfKBa$a;gcIMGq{*H^O)-;LOp#idjjMm(Qm5vGhYYGZd)I{p8rZ z{NLd`A-(5vV;6H{q?#LZY`sgv$5&N5TxoDIqolXu{?6gA7Fhl(+h|dWRa{`069y{79Kdv~~>MJjE2qT|wVh%az^GYjoFheu`Dl@Be``{FF<=_7S Dg+YAF delta 1230 zcmZ9~NlX(_7zc1)M@1;M6x_fFQWjBTrwa(}bQW0@jYu$YNi;TNJHXT~I2~LtrY=zv zGp^r+;z@5Nny7@BUOZ^z;z9Jr1&x|WOt^S3o;2}&qfqtG-@Ny}|Gf9jOJ_g0WemE0GXPv+lJVvuII#H^nHnKGvgU zbn}wA*NnHo3h#OnfEI5f;o-2io&@2%w}A+7-`h>R@YP#GI-$&0P1=F=ts$+@?W-jc z#C@B|Hkk8O!ed_<>44|HO@yWMjl=^h{ch3>ZT=?W2iadIZl6Cre#L6Rx?Zb=%h;Dh(fXp>H>8{gdKrUHiXGu#QOHVIBG%mApztd z!Xt-}AaVo|5EY(d-2Wq z8@lfevkAEH0Z8*fnC9GYD;$7h;VO8+S3^&@7~Y3@ntb~w`I>K7NJfQ5mG>G3=qgn1H9QfN_o{#SYrza$LJDRlt6+?(e3cLaK!ksT3qBv@8-) zQ>q?`Ok9xKo%COQzSEsMJ!xAt@v}Eh2!C;~@5*2w$q)9~);*);<8vvioGWoK-GtA% zuG=c}2?w*5W^=}On>+u&$#l_4{%aYN#OIN6<^&eU-`m#Y9?jaE`5zTb4_0=qWO{7$ WIkuYF8KsF&Bg`C~PMu-KzWo9mk9rFL diff --git a/docs/.doctrees/pyhazards_datasets.doctree b/docs/.doctrees/pyhazards_datasets.doctree index 743fa222535c2d5e087a1c90b2fbf0d24650e668..b38f0785c6d0355ccdbfd52ffb2802db2d6e9626 100644 GIT binary patch delta 2149 zcmc&#U2NM_6pp<*Vd?m38ADsw^d>ye(xy$*!kC~`Et}ddZ8c43Pn6=sZm%8J&g^Si z_b*G^Y3dpz==C}Y1VTs?m5|s_#RE@>M}#(wO+4^|kU+pALcH*R#JNu5Hf!JkA&8=D z`TX4PJKs6?x^RPk=N2bi6s~SgeJo@LxDDFEKbBA1ibmp!juhR>$r+*;Iu3{ysuNJL8}$RehlAvRb2z^u!o^35|0{<}Zoyr0TQPlda46s3R(cVN%1c;=>cp9xCZn_r z)gwusF?1+UB(jAt7>H5P3ks7&1@ss@eeT>qJc*_hNV6?PpAHk)=&Um=&WomG`9dk6 zj5#G{WM2h9%>P%Am7<%}7lc3nAIAr9^Ei&s=Zz>uEf3_oaFg0n_Sk8Bu=pU1f^3S~ zWLh&aS(m!LP&bsBoM94_b8xA|aJVuIeY?iavd!xB6iT*+5&TTUAbqi}oJepNF}h}C z(-f1jj&PniEh3s^67uA}STd39jVHR{4_@Y!b?H7=4|BEo;GN}3Zk0r*D!;8Vb$>%V z|BspfJH%t`4Ax*?Y8&)sT%dQf2yGrpHH@-0HRBE(NhQ6m(KlBgrD*nTUKeP$k$5EQ zci0Q+r+>`8_4p-bgwxjwy$zLn3tgqx=MsF8<+X>^D=el-y)4i}PQ3B5zYPq^xSduv zXv*o~-`yAdi4(0AtSp@5Z+gLKcjrI=rt3(N>vVS~67arT=?xA5^r}GLdniJ09;-WE zVDP0fnP<7o26(Ip^vC(R`a8_RDgt5*>+5P_cLn;*LbUPj{wfYFp5TAl7d*chs}=mw zVjusz7u;K^f^F$lA$WJ*o=R$fjV_(!>S@C0@I~;`t3&|0OoTxw^>$4Wn5SBVGs~pD zJ-92v7t7Ca2?mv{FpY!PV|oB}p*=jA-M<4$t2t3I8EJ;TC0 z%K{x+?P*wKz26<7tN?r8G;EL+bOL5B5W9_)%V$Qn=N0$ViynU;*3n3oNTeLlzJ*er#DBBv7~h`VciQ}w{euY z?*(^mZ8mV+82!A^K|k9P_%k8e=uYs%A$q}`YVvT{#a_Z;SA&P6ZU^bF?r;3VA^P*x vNZm*%5TMbHqx6X_gIn|WDuld-|FHGU(P4 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

?!bbzl(crqBq2H^^_75wi z+y+EJ(ej%OOx!USE%A94g3HW8lwRqy(ZqgGCtiUo z#K3)^$Enz@Dlibrg~KE$yv}ke8(&?@W;svB?JSG{ndY)-U)4eN zUgl~yO1fc?#AT`vQOzWW$*vdD?0&G#Y~AWEc9w(PLYiRu0*N>j%eOB{Tar3=2t)x{ zJ_If5K!_~K@!)VGmCQs=Ms3yT$4;6-cw;@X@1jKUJ*Q}&MQh2rX8p1CNA;%>S5$wJ zJ_7ohw{gkKd$^|4biSa2I9$oAk}6 zZ|~B_@6*Tc(8rgsY^{HhKK>i@dHuiA$6iRD`WQYs!5C3X<}<6T`u8L8zO{7U`r~^{ z=RKzJ9@BS^X}iaC-D8^WF+KN~mU~RcJ*MFvw||e@zR&I6=Qi(mtdBr3)(@c-YcJT5 zuYU(c6uxQwk@Y_XOAbUV`HK-tzDVB+UD(EQsGG`~jQ7@98=0vVcm1kK-|Zw$?^(>I3ZN(9Z{qHhdMx`&Z0_nz251@y;N2pw4NN zFazlZ2X8V0baA~hzx}D7l%; str: - return d.strftime('%Y%m%d') - - def build_path(kind: str, d: date) -> Path: - if kind.lower() in ['sfc', 'surface']: - return ROOT / PATTERN_SFC.format(yyyymmdd=yyyymmdd(d)) - if kind.lower() in ['pres', 'pressure']: - return ROOT / PATTERN_PRES.format(yyyymmdd=yyyymmdd(d)) - raise ValueError("kind must be 'sfc' or 'pres'") - - build_path('sfc', TEST_DAY), build_path('pres', TEST_DAY) - -.. topic:: 3) Load helpers - - Use ``xarray.open_dataset`` so you can work with named dimensions and variables. - - .. code-block:: python - - def open_merra(kind: str, d: date, *, engine: str | None = None, chunks=None) -> xr.Dataset: - """Open one daily MERRA2 file as an xarray Dataset.""" - path = build_path(kind, d) - if not path.exists(): - raise FileNotFoundError(f"Missing file: {path}") - - # engine=None lets xarray pick; you can set engine='netcdf4' or 'h5netcdf' if needed. - ds = xr.open_dataset(path, engine=engine, chunks=chunks) - return ds - - def list_vars(ds: xr.Dataset, max_show: int = 60) -> pd.DataFrame: - rows = [] - for name, da in ds.data_vars.items(): - rows.append({ - 'var': name, - 'dims': str(da.dims), - 'shape': str(tuple(da.shape)), - 'dtype': str(da.dtype), - }) - df = pd.DataFrame(rows).sort_values('var').reset_index(drop=True) - return df.head(max_show) if len(df) > max_show else df - - def inspect_ds(ds: xr.Dataset, name: str = 'dataset', max_vars: int = 60): - print(f"=== {name} ===") - print('dims:', dict(ds.dims)) - print('coords:', list(ds.coords)) - print('n_vars:', len(ds.data_vars)) - display(list_vars(ds, max_show=max_vars)) - - def summarize_da(da: xr.DataArray, *, load: bool = False) -> pd.Series: - """Global numeric summary for a DataArray.""" - x = da - if load: - x = x.load() - # Works for dask-backed arrays too - s = xr.Dataset({ - 'min': x.min(skipna=True), - 'max': x.max(skipna=True), - 'mean': x.mean(skipna=True), - 'std': x.std(skipna=True), - }).compute() - return pd.Series({k: float(s[k].values) for k in s.data_vars}) - -.. topic:: 4) Load + quick inspect (dims, coords, basic stats) - - Load both surface and pressure-level files and print basic metadata. - - .. code-block:: python - - ds_sfc = open_merra('sfc', TEST_DAY) - ds_pres = open_merra('pres', TEST_DAY) - - inspect_ds(ds_sfc, 'SFC (one day)') - inspect_ds(ds_pres, 'PRES (one day)') - -.. topic:: 5) Variable-level inspect - - Pick a variable (e.g., `T2M`) and compute global statistics. - - .. code-block:: python - - VAR = 'T2M' # change if your file uses a different naming - - if VAR not in ds_sfc: - raise KeyError(f"{VAR} not found in ds_sfc. Pick one from the table above.") - - da = ds_sfc[VAR] - print('dims:', da.dims) - print('shape:', da.shape) - summarize_da(da) - -.. topic:: 6) Plot a lat-lon map for a variable - - .. code-block:: python - - var = "T2M" - t = 0 - Z = ds_sfc[var].isel(time=t).values - plt.contourf(ds_sfc["lon"], ds_sfc["lat"], Z, 100) - plt.gca().set_aspect("equal") - plt.title(f"{var} (t={t})") - plt.show() +PyHazards provides a built-in inspection utility that allows users to +quickly explore dataset structure and contents through a unified API. + +The example below demonstrates how to inspect a daily MERRA-2 file using +the PyHazards dataset interface. + +.. code-block:: python + + import pyhazards + + dataset = pyhazards.datasets.MERRA2( + root="/path/to/merra2", + start_date="2024-01-01", + end_date="2024-01-31", + ) + + dataset.inspect(day="2024-01-01") Core classes ------------ diff --git a/docs/pyhazards_datasets.html b/docs/pyhazards_datasets.html index 3f004da..5ae8ae1 100644 --- a/docs/pyhazards_datasets.html +++ b/docs/pyhazards_datasets.html @@ -304,134 +304,21 @@

Datasets

Dataset inspection

-

A short, step-by-step example to inspect and visualize daily MERRA-2 NetCDF files.

- - - - - -

Core classes

diff --git a/docs/searchindex.js b/docs/searchindex.js index 82377c3..ca8c247 100644 --- a/docs/searchindex.js +++ b/docs/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"1) Setup (imports the data)": [[19, null]], "2) Config (paths + date + filename patterns)": [[19, null]], "3) Load helpers": [[19, null]], "4) Load + quick inspect (dims, coords, basic stats)": [[19, null]], "5) Variable-level inspect": [[19, null]], "6) Plot a lat-lon map for a variable": [[19, null]], "Academic Publications": [[25, "academic-publications"]], "Access": [[8, "access"], [9, "access"], [10, "access"], [11, "access"], [12, "access"], [13, "access"], [14, "access"], [15, "access"]], "Basic Usage": [[24, "basic-usage"]], "Build a built-in model": [[22, "build-a-built-in-model"]], "Contributors": [[26, "contributors"]], "Core Components": [[17, "core-components"]], "Core Contributors": [[26, "core-contributors"]], "Core Team": [[26, null]], "Core classes": [[19, "core-classes"], [21, "core-classes"]], "Core modules": [[20, "core-modules"], [22, "core-modules"]], "Data Characteristics": [[8, "data-characteristics"], [9, "data-characteristics"], [10, "data-characteristics"], [11, "data-characteristics"], [12, "data-characteristics"], [13, "data-characteristics"], [14, "data-characteristics"], [15, "data-characteristics"]], "Dataset inspection": [[19, "dataset-inspection"]], "Datasets": [[16, "datasets"], [19, null], [19, "id1"]], "Design notes": [[22, "design-notes"]], "Distributed and devices": [[20, "distributed-and-devices"]], "ERA5": [[8, null]], "Engine": [[20, null]], "Example skeleton": [[19, "example-skeleton"]], "FIRMS": [[9, null]], "GOES-R": [[10, null]], "GPU Support": [[24, "gpu-support"]], "How to Cite": [[7, null], [17, "how-to-cite"]], "Implementation Guide": [[16, null]], "Indices and tables": [[17, "indices-and-tables"]], "Installation": [[18, null]], "Installing PyHazards": [[18, "installing-pyhazards"]], "LANDFIRE": [[11, null]], "Lead Developer": [[26, "lead-developer"]], "MERRA-2": [[12, null]], "MTBS": [[13, null]], "Mamba-based wildfire model (spatio-temporal)": [[22, "mamba-based-wildfire-model-spatio-temporal"]], "Metrics": [[16, "metrics"], [21, null]], "Models": [[16, "models"], [22, null]], "Module contents": [[1, "module-pyhazards"], [2, "module-pyhazards.datasets"], [3, "module-pyhazards.engine"], [5, "module-pyhazards.models"], [6, "module-pyhazards.utils"]], "NOAA Flood Events": [[14, null]], "Next Steps": [[24, "next-steps"]], "Overview": [[8, "overview"], [9, "overview"], [10, "overview"], [11, "overview"], [12, "overview"], [13, "overview"], [14, "overview"], [15, "overview"]], "Principal Contributors & Maintainers": [[26, "principal-contributors-maintainers"]], "Quick Start": [[24, null]], "Reference": [[8, "reference"], [9, "reference"], [10, "reference"], [11, "reference"], [12, "reference"], [13, "reference"], [14, "reference"], [15, "reference"]], "References": [[25, null]], "Register a custom model": [[22, "register-a-custom-model"]], "Requirements": [[18, "requirements"]], "Submodules": [[2, "submodules"], [3, "submodules"], [5, "submodules"], [6, "submodules"], [23, "submodules"]], "Subpackages": [[1, "subpackages"]], "Summary": [[19, "summary"], [20, "summary"], [21, "summary"], [22, "summary"], [23, "summary"]], "Toy Example (tabular classification)": [[24, "toy-example-tabular-classification"]], "Training": [[16, "training"]], "Transforms": [[16, "transforms"]], "Typical Use Cases": [[8, "typical-use-cases"], [9, "typical-use-cases"], [10, "typical-use-cases"], [11, "typical-use-cases"], [12, "typical-use-cases"], [13, "typical-use-cases"], [14, "typical-use-cases"], [15, "typical-use-cases"]], "Typical usage": [[20, "typical-usage"]], "Usage": [[21, "usage"]], "Utils": [[23, null]], "Variables": [[8, "variables"], [9, "variables"], [10, "variables"], [11, "variables"], [12, "variables"], [13, "variables"], [14, "variables"], [15, "variables"]], "WFIGS": [[15, null]], "Wildfire Mamba (spatio-temporal toy)": [[17, null]], "pyhazards": [[0, null]], "pyhazards package": [[1, null]], "pyhazards.datasets package": [[2, null]], "pyhazards.datasets.base module": [[2, "module-pyhazards.datasets.base"]], "pyhazards.datasets.hazards package": [[2, "module-pyhazards.datasets.hazards"]], "pyhazards.datasets.registry module": [[2, "module-pyhazards.datasets.registry"]], "pyhazards.datasets.transforms package": [[2, "module-pyhazards.datasets.transforms"]], "pyhazards.engine package": [[3, null]], "pyhazards.engine.distributed module": [[3, "module-pyhazards.engine.distributed"]], "pyhazards.engine.inference module": [[3, "module-pyhazards.engine.inference"]], "pyhazards.engine.trainer module": [[3, "module-pyhazards.engine.trainer"]], "pyhazards.metrics package": [[4, null]], "pyhazards.models package": [[5, null]], "pyhazards.models.backbones module": [[5, "module-pyhazards.models.backbones"]], "pyhazards.models.builder module": [[5, "module-pyhazards.models.builder"]], "pyhazards.models.heads module": [[5, "module-pyhazards.models.heads"]], "pyhazards.models.registry module": [[5, "module-pyhazards.models.registry"]], "pyhazards.utils package": [[6, null]], "pyhazards.utils.common module": [[6, "module-pyhazards.utils.common"]], "pyhazards.utils.hardware module": [[6, "module-pyhazards.utils.hardware"]]}, "docnames": ["api/modules", "api/pyhazards", "api/pyhazards.datasets", "api/pyhazards.engine", "api/pyhazards.metrics", "api/pyhazards.models", "api/pyhazards.utils", "cite", "datasets/era5", "datasets/firms", "datasets/goesr", "datasets/landfire", "datasets/merra2", "datasets/mtbs", "datasets/noaa_flood", "datasets/wfigs", "implementation", "index", "installation", "pyhazards_datasets", "pyhazards_engine", "pyhazards_metrics", "pyhazards_models", "pyhazards_utils", "quick_start", "references", "team"], "envversion": {"sphinx": 64, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["api/modules.rst", "api/pyhazards.rst", "api/pyhazards.datasets.rst", "api/pyhazards.engine.rst", "api/pyhazards.metrics.rst", "api/pyhazards.models.rst", "api/pyhazards.utils.rst", "cite.rst", "datasets/era5.rst", "datasets/firms.rst", "datasets/goesr.rst", "datasets/landfire.rst", "datasets/merra2.rst", "datasets/mtbs.rst", "datasets/noaa_flood.rst", "datasets/wfigs.rst", "implementation.rst", "index.rst", "installation.rst", "pyhazards_datasets.rst", "pyhazards_engine.rst", "pyhazards_metrics.rst", "pyhazards_models.rst", "pyhazards_utils.rst", "quick_start.rst", "references.rst", "team.rst"], "indexentries": {}, "objects": {"": [[1, 0, 0, "-", "pyhazards"]], "pyhazards": [[1, 1, 1, "", "CNNPatchEncoder"], [1, 1, 1, "", "ClassificationHead"], [1, 1, 1, "", "ClassificationMetrics"], [1, 1, 1, "", "DataBundle"], [1, 1, 1, "", "DataSplit"], [1, 1, 1, "", "Dataset"], [1, 1, 1, "", "FeatureSpec"], [1, 1, 1, "", "LabelSpec"], [1, 1, 1, "", "MLPBackbone"], [1, 1, 1, "", "MetricBase"], [1, 1, 1, "", "RegressionHead"], [1, 1, 1, "", "RegressionMetrics"], [1, 1, 1, "", "SegmentationHead"], [1, 1, 1, "", "SegmentationMetrics"], [1, 1, 1, "", "TemporalEncoder"], [1, 1, 1, "", "Trainer"], [1, 4, 1, "", "available_datasets"], [1, 4, 1, "", "available_models"], [1, 4, 1, "", "build_model"], [2, 0, 0, "-", "datasets"], [3, 0, 0, "-", "engine"], [1, 4, 1, "", "load_dataset"], [4, 0, 0, "-", "metrics"], [5, 0, 0, "-", "models"], [1, 4, 1, "", "register_dataset"], [1, 4, 1, "", "register_model"], [6, 0, 0, "-", "utils"]], "pyhazards.CNNPatchEncoder": [[1, 2, 1, "", "forward"]], "pyhazards.ClassificationHead": [[1, 2, 1, "", "forward"]], "pyhazards.ClassificationMetrics": [[1, 3, 1, "", "_abc_impl"], [1, 2, 1, "", "compute"], [1, 2, 1, "", "reset"], [1, 2, 1, "", "update"]], "pyhazards.DataBundle": [[1, 3, 1, "", "feature_spec"], [1, 2, 1, "", "get_split"], [1, 3, 1, "", "label_spec"], [1, 3, 1, "", "metadata"], [1, 3, 1, "", "splits"]], "pyhazards.DataSplit": [[1, 3, 1, "", "inputs"], [1, 3, 1, "", "metadata"], [1, 3, 1, "", "targets"]], "pyhazards.Dataset": [[1, 2, 1, "", "_load"], [1, 2, 1, "", "load"], [1, 3, 1, "", "name"]], "pyhazards.FeatureSpec": [[1, 3, 1, "", "channels"], [1, 3, 1, "", "description"], [1, 3, 1, "", "extra"], [1, 3, 1, "", "input_dim"]], "pyhazards.LabelSpec": [[1, 3, 1, "", "description"], [1, 3, 1, "", "extra"], [1, 3, 1, "", "num_targets"], [1, 3, 1, "", "task_type"]], "pyhazards.MLPBackbone": [[1, 2, 1, "", "forward"]], "pyhazards.MetricBase": [[1, 3, 1, "", "_abc_impl"], [1, 2, 1, "", "compute"], [1, 2, 1, "", "reset"], [1, 2, 1, "", "update"]], "pyhazards.RegressionHead": [[1, 2, 1, "", "forward"]], "pyhazards.RegressionMetrics": [[1, 3, 1, "", "_abc_impl"], [1, 2, 1, "", "compute"], [1, 2, 1, "", "reset"], [1, 2, 1, "", "update"]], "pyhazards.SegmentationHead": [[1, 2, 1, "", "forward"]], "pyhazards.SegmentationMetrics": [[1, 3, 1, "", "_abc_impl"], [1, 2, 1, "", "compute"], [1, 2, 1, "", "reset"], [1, 2, 1, "", "update"]], "pyhazards.TemporalEncoder": [[1, 2, 1, "", "forward"]], "pyhazards.Trainer": [[1, 2, 1, "", "_make_loader"], [1, 2, 1, "", "_to_device"], [1, 2, 1, "", "evaluate"], [1, 2, 1, "", "fit"], [1, 2, 1, "", "predict"], [1, 2, 1, "", "save_checkpoint"]], "pyhazards.datasets": [[2, 1, 1, "", "DataBundle"], [2, 1, 1, "", "DataSplit"], [2, 1, 1, "", "Dataset"], [2, 1, 1, "", "FeatureSpec"], [2, 1, 1, "", "GraphTemporalDataset"], [2, 1, 1, "", "LabelSpec"], [2, 4, 1, "", "available_datasets"], [2, 0, 0, "-", "base"], [2, 4, 1, "", "graph_collate"], [2, 0, 0, "-", "hazards"], [2, 4, 1, "", "load_dataset"], [2, 4, 1, "", "register_dataset"], [2, 0, 0, "-", "registry"], [2, 0, 0, "-", "transforms"]], "pyhazards.datasets.DataBundle": [[2, 3, 1, "", "feature_spec"], [2, 2, 1, "", "get_split"], [2, 3, 1, "", "label_spec"], [2, 3, 1, "", "metadata"], [2, 3, 1, "", "splits"]], "pyhazards.datasets.DataSplit": [[2, 3, 1, "", "inputs"], [2, 3, 1, "", "metadata"], [2, 3, 1, "", "targets"]], "pyhazards.datasets.Dataset": [[2, 2, 1, "", "_load"], [2, 2, 1, "", "load"], [2, 3, 1, "", "name"]], "pyhazards.datasets.FeatureSpec": [[2, 3, 1, "", "channels"], [2, 3, 1, "", "description"], [2, 3, 1, "", "extra"], [2, 3, 1, "", "input_dim"]], "pyhazards.datasets.LabelSpec": [[2, 3, 1, "", "description"], [2, 3, 1, "", "extra"], [2, 3, 1, "", "num_targets"], [2, 3, 1, "", "task_type"]], "pyhazards.datasets.base": [[2, 1, 1, "", "DataBundle"], [2, 1, 1, "", "DataSplit"], [2, 1, 1, "", "Dataset"], [2, 1, 1, "", "FeatureSpec"], [2, 1, 1, "", "LabelSpec"], [2, 1, 1, "", "Transform"]], "pyhazards.datasets.base.DataBundle": [[2, 3, 1, "", "feature_spec"], [2, 2, 1, "", "get_split"], [2, 3, 1, "", "label_spec"], [2, 3, 1, "", "metadata"], [2, 3, 1, "", "splits"]], "pyhazards.datasets.base.DataSplit": [[2, 3, 1, "", "inputs"], [2, 3, 1, "", "metadata"], [2, 3, 1, "", "targets"]], "pyhazards.datasets.base.Dataset": [[2, 2, 1, "", "_load"], [2, 2, 1, "", "load"], [2, 3, 1, "", "name"]], "pyhazards.datasets.base.FeatureSpec": [[2, 3, 1, "", "channels"], [2, 3, 1, "", "description"], [2, 3, 1, "", "extra"], [2, 3, 1, "", "input_dim"]], "pyhazards.datasets.base.LabelSpec": [[2, 3, 1, "", "description"], [2, 3, 1, "", "extra"], [2, 3, 1, "", "num_targets"], [2, 3, 1, "", "task_type"]], "pyhazards.datasets.base.Transform": [[2, 3, 1, "", "_abc_impl"], [2, 3, 1, "", "_is_protocol"]], "pyhazards.datasets.registry": [[2, 4, 1, "", "available_datasets"], [2, 4, 1, "", "load_dataset"], [2, 4, 1, "", "register_dataset"]], "pyhazards.engine": [[3, 1, 1, "", "DistributedConfig"], [3, 1, 1, "", "SlidingWindowInference"], [3, 1, 1, "", "Trainer"], [3, 0, 0, "-", "distributed"], [3, 0, 0, "-", "inference"], [3, 4, 1, "", "select_strategy"], [3, 0, 0, "-", "trainer"]], "pyhazards.engine.DistributedConfig": [[3, 3, 1, "", "devices"], [3, 3, 1, "", "strategy"]], "pyhazards.engine.Trainer": [[3, 2, 1, "", "_make_loader"], [3, 2, 1, "", "_to_device"], [3, 2, 1, "", "evaluate"], [3, 2, 1, "", "fit"], [3, 2, 1, "", "predict"], [3, 2, 1, "", "save_checkpoint"]], "pyhazards.engine.distributed": [[3, 1, 1, "", "DistributedConfig"], [3, 4, 1, "", "select_strategy"]], "pyhazards.engine.distributed.DistributedConfig": [[3, 3, 1, "", "devices"], [3, 3, 1, "", "strategy"]], "pyhazards.engine.inference": [[3, 1, 1, "", "SlidingWindowInference"]], "pyhazards.engine.trainer": [[3, 1, 1, "", "Trainer"]], "pyhazards.engine.trainer.Trainer": [[3, 2, 1, "", "_make_loader"], [3, 2, 1, "", "_to_device"], [3, 2, 1, "", "evaluate"], [3, 2, 1, "", "fit"], [3, 2, 1, "", "predict"], [3, 2, 1, "", "save_checkpoint"]], "pyhazards.metrics": [[4, 1, 1, "", "ClassificationMetrics"], [4, 1, 1, "", "MetricBase"], [4, 1, 1, "", "RegressionMetrics"], [4, 1, 1, "", "SegmentationMetrics"]], "pyhazards.metrics.ClassificationMetrics": [[4, 3, 1, "", "_abc_impl"], [4, 2, 1, "", "compute"], [4, 2, 1, "", "reset"], [4, 2, 1, "", "update"]], "pyhazards.metrics.MetricBase": [[4, 3, 1, "", "_abc_impl"], [4, 2, 1, "", "compute"], [4, 2, 1, "", "reset"], [4, 2, 1, "", "update"]], "pyhazards.metrics.RegressionMetrics": [[4, 3, 1, "", "_abc_impl"], [4, 2, 1, "", "compute"], [4, 2, 1, "", "reset"], [4, 2, 1, "", "update"]], "pyhazards.metrics.SegmentationMetrics": [[4, 3, 1, "", "_abc_impl"], [4, 2, 1, "", "compute"], [4, 2, 1, "", "reset"], [4, 2, 1, "", "update"]], "pyhazards.models": [[5, 1, 1, "", "CNNPatchEncoder"], [5, 1, 1, "", "ClassificationHead"], [5, 1, 1, "", "MLPBackbone"], [5, 1, 1, "", "RegressionHead"], [5, 1, 1, "", "SegmentationHead"], [5, 1, 1, "", "TemporalEncoder"], [5, 1, 1, "", "TverskyLoss"], [5, 1, 1, "", "WildfireASPP"], [5, 1, 1, "", "WildfireCNNASPP"], [5, 1, 1, "", "WildfireMamba"], [5, 4, 1, "", "available_models"], [5, 0, 0, "-", "backbones"], [5, 4, 1, "", "build_model"], [5, 0, 0, "-", "builder"], [5, 4, 1, "", "cnn_aspp_builder"], [5, 0, 0, "-", "heads"], [5, 4, 1, "", "register_model"], [5, 0, 0, "-", "registry"], [5, 4, 1, "", "wildfire_aspp_builder"], [5, 4, 1, "", "wildfire_mamba_builder"]], "pyhazards.models.CNNPatchEncoder": [[5, 2, 1, "", "forward"]], "pyhazards.models.ClassificationHead": [[5, 2, 1, "", "forward"]], "pyhazards.models.MLPBackbone": [[5, 2, 1, "", "forward"]], "pyhazards.models.RegressionHead": [[5, 2, 1, "", "forward"]], "pyhazards.models.SegmentationHead": [[5, 2, 1, "", "forward"]], "pyhazards.models.TemporalEncoder": [[5, 2, 1, "", "forward"]], "pyhazards.models.TverskyLoss": [[5, 2, 1, "", "forward"]], "pyhazards.models.WildfireCNNASPP": [[5, 2, 1, "", "forward"]], "pyhazards.models.WildfireMamba": [[5, 2, 1, "", "_get_adjacency"], [5, 2, 1, "", "_temporal_delta"], [5, 2, 1, "", "forward"], [5, 2, 1, "", "set_adjacency"]], "pyhazards.models.backbones": [[5, 1, 1, "", "CNNPatchEncoder"], [5, 1, 1, "", "MLPBackbone"], [5, 1, 1, "", "TemporalEncoder"]], "pyhazards.models.backbones.CNNPatchEncoder": [[5, 2, 1, "", "forward"]], "pyhazards.models.backbones.MLPBackbone": [[5, 2, 1, "", "forward"]], "pyhazards.models.backbones.TemporalEncoder": [[5, 2, 1, "", "forward"]], "pyhazards.models.builder": [[5, 4, 1, "", "build_model"], [5, 4, 1, "", "default_builder"]], "pyhazards.models.heads": [[5, 1, 1, "", "ClassificationHead"], [5, 1, 1, "", "RegressionHead"], [5, 1, 1, "", "SegmentationHead"]], "pyhazards.models.heads.ClassificationHead": [[5, 2, 1, "", "forward"]], "pyhazards.models.heads.RegressionHead": [[5, 2, 1, "", "forward"]], "pyhazards.models.heads.SegmentationHead": [[5, 2, 1, "", "forward"]], "pyhazards.models.registry": [[5, 4, 1, "", "available_models"], [5, 4, 1, "", "get_model_config"], [5, 4, 1, "", "register_model"]], "pyhazards.utils": [[6, 4, 1, "", "auto_device"], [6, 0, 0, "-", "common"], [6, 4, 1, "", "get_device"], [6, 4, 1, "", "get_logger"], [6, 0, 0, "-", "hardware"], [6, 4, 1, "", "num_devices"], [6, 4, 1, "", "seed_all"], [6, 4, 1, "", "set_device"]], "pyhazards.utils.common": [[6, 4, 1, "", "get_logger"], [6, 4, 1, "", "seed_all"]], "pyhazards.utils.hardware": [[6, 4, 1, "", "auto_device"], [6, 4, 1, "", "get_device"], [6, 4, 1, "", "num_devices"], [6, 4, 1, "", "set_device"]]}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "attribute", "Python attribute"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:method", "3": "py:attribute", "4": "py:function"}, "terms": {"": [10, 11, 13, 14, 15, 19, 26], "0": [1, 3, 5, 8, 10, 12, 16, 17, 18, 19, 22, 24], "00230": 10, "008": 9, "0301003": 13, "06": 5, "0758": 12, "08": 9, "1": [1, 3, 5, 10, 12, 13, 17, 22], "10": [8, 9, 10, 11, 12, 13, 16, 19, 20], "100": 19, "1000": [16, 19], "1002": 8, "1016": 9, "1071": 11, "1175": [10, 12], "12": [5, 18, 22], "128": [1, 5, 16, 22], "14": 12, "143": 9, "146": 8, "15": 10, "16": [10, 12, 16, 17, 19, 20, 22, 24], "17": 10, "18": [10, 11], "1999": 8, "1e": [5, 16, 17, 20, 22, 24], "2": [1, 5, 8, 10, 16, 17, 18, 20, 22, 24], "2007": [13, 19], "2009": 11, "2013": 9, "2014": [9, 19], "2017": [10, 12, 19], "2020": [8, 19], "2024": 19, "2025": [17, 19], "2049": 8, "21": 13, "235": 11, "24": 17, "249": 11, "25": 8, "256": [1, 5, 22], "3": [1, 5, 11, 13, 16, 17, 18, 20, 22, 24], "30": [11, 12, 13], "31": 19, "32": [1, 3, 5, 17, 22], "350": [17, 24], "375": 9, "3803": 8, "4": [10, 17], "42": 6, "425": [17, 24], "48": 22, "4996": 13, "5": [5, 10, 12, 17, 22, 24], "500": [17, 24], "5419": 12, "5454": 12, "6": [5, 17, 18, 22], "60": 19, "625": 12, "64": [1, 3, 5, 22], "681": 10, "698": 10, "730": 8, "8": [17, 18, 22], "800": [16, 19], "85": 9, "900": [16, 19], "96": 9, "98": 10, "A": [10, 11, 13, 17, 19, 22], "For": [22, 24], "If": [7, 17], "It": [8, 12, 22], "Near": [8, 9, 12, 19], "Or": 24, "The": [8, 9, 10, 11, 12, 19, 20, 22, 26], "To": [16, 24], "_": 19, "_abc": [1, 2, 4], "_abc_data": [1, 2, 4], "_abc_impl": [0, 1, 2, 4], "_get_adjac": [1, 5], "_is_protocol": [1, 2], "_load": [0, 1, 2, 16, 17, 19, 24], "_make_load": [0, 1, 3], "_temporal_delta": [1, 5], "_to_devic": [0, 1, 3], "abc": [1, 4], "abi": 10, "abov": 19, "abstract": [1, 3, 4, 21], "accept": 16, "access": 19, "accuraci": 21, "across": [11, 13, 14, 15, 19], "activ": [9, 15, 19], "adam": [16, 17, 20, 22, 24], "add": 16, "adj": 5, "adjac": [2, 5, 17, 22], "administr": 14, "adopt": 8, "advanc": 10, "aerosol": 10, "after": 16, "agenc": [14, 15], "aggreg": [15, 16, 21], "ai": 17, "al": [8, 10, 12, 19], "algorithm": 9, "alpha": 5, "america": 10, "american": 10, "ametsoc": [], "amount": 8, "amp": [16, 20], "an": [2, 15, 19, 22], "analysi": [8, 9, 10, 12, 13, 14, 15, 19], "analyz": 17, "ani": [1, 2, 3, 5, 22], "annual": [11, 13], "anomali": [9, 10], "api": [1, 3, 17, 24], "append": 19, "appli": [5, 22], "applic": [8, 12], "ar": [8, 9, 10, 11, 13, 14, 15, 20, 21, 22], "arcgi": 15, "architectur": [16, 17, 22], "arg": [2, 5], "argument": 16, "arrai": 19, "aspp": 5, "aspp_channel": 5, "assess": [8, 9, 11, 13, 14, 17, 19], "assimil": [8, 12], "associ": [9, 15], "assum": 19, "assur": 26, "atmospher": [8, 10, 12, 14, 19], "attribut": 8, "author": 17, "authorit": [15, 19], "auto": [1, 3, 20], "auto_devic": [1, 6, 20], "automat": [6, 24], "avail": [10, 13, 14, 20, 24], "available_dataset": [0, 1, 2], "available_model": [0, 1, 5, 22], "awar": [9, 10, 17], "b": [5, 8, 13], "back": [19, 22], "backbon": [0, 1, 16, 17, 22], "background": 11, "backward": 5, "bam": 10, "band": 10, "base": [0, 1, 3, 4, 5, 9, 11, 13, 14, 15, 18, 19], "base_channel": 5, "baselin": [8, 10], "basic": 17, "batch": [2, 5, 22], "batch_siz": [1, 3, 5, 17, 22], "bcewithlogitsloss": [17, 22], "becaus": 22, "begin": 14, "behavior": [11, 19], "bell": 8, "benchmark": [8, 12, 19], "berrisford": 8, "beta": 5, "big": 10, "bin": [14, 19], "binari": [5, 17, 22], "block": [19, 22], "bool": 19, "both": 19, "boundari": 8, "box": 17, "branch": 22, "brewer": 13, "bright": 10, "broad": 12, "build": [1, 5, 17], "build_model": [0, 1, 5, 16, 17, 20, 22, 24], "build_path": 19, "builder": [0, 1, 2, 16, 22], "built": [17, 21], "bulk": 11, "bulletin": 10, "bundl": [1, 2, 17, 22], "burn": [13, 19], "burnsever": [], "c": 5, "c00648": [14, 19], "c3": 8, "cache_dir": [1, 2], "calcul": 17, "call": 21, "callabl": 2, "can": [12, 16, 18, 19, 22], "canopi": 11, "carri": 10, "categor": 13, "caus": 15, "cd": [8, 19], "center": [14, 15], "centr": 8, "chain": 16, "chang": [8, 13, 19, 22], "channel": [0, 1, 2], "character": 11, "checkpoint": 20, "cheng": [17, 26], "choos": [6, 19], "chunk": 19, "class": [1, 2, 3, 4, 5, 13, 16, 17, 20, 24], "classif": [1, 5, 13, 16, 17, 19, 20, 22], "classificationhead": [0, 1, 5], "classificationmetr": [0, 1, 4, 16, 17, 20, 21, 24], "cli": 22, "clim": [], "climat": [8, 12], "closer": 10, "cloud": 10, "cnn": [1, 5, 16, 17, 22], "cnn_aspp_build": [1, 5], "cnnpatchencod": [0, 1, 5], "code": [19, 26], "collat": [2, 17], "collate_fn": [1, 3, 17], "collect": 16, "com": [15, 17], "combin": [8, 9], "common": [0, 1, 21, 22, 23], "commonli": [15, 19], "commun": 26, "compat": 5, "compil": 14, "complex": [1, 3, 22], "compos": [22, 26], "comprehens": [8, 17], "comput": [0, 1, 2, 4, 16, 19, 21], "concret": 2, "conda": 18, "condit": [], "confid": 9, "config": [20, 22], "consid": 7, "consist": [1, 5, 8, 11, 12], "construct": [1, 2, 19, 22], "contain": [1, 2, 15, 19], "content": 0, "context": 19, "contextu": 10, "continu": [10, 12, 19], "contourf": 19, "contribut": 26, "conv_kernel": 5, "conveni": 22, "convent": 12, "coordin": [8, 9, 10, 11, 12, 13, 14, 15], "copernicu": [8, 19], "core": 12, "correl": [17, 22], "correspond": 9, "count": [5, 22], "counti": [2, 5, 14, 17, 22], "coupl": 22, "covari": [8, 11, 12, 19], "cover": [11, 21], "coverag": [8, 9, 10, 11, 12, 13, 14, 15], "cpu": [16, 24], "cr": [], "creat": [16, 22], "critic": 10, "crop": 14, "crossentropyloss": [16, 17, 20, 24], "csiszar": 9, "csv": [9, 14], "cu126": 18, "cube": 22, "cuda": [18, 20, 24], "current": 2, "custom": [1, 3, 16, 17, 24], "d": [10, 12, 19], "d2m": 22, "da": 19, "dai": [2, 5, 9, 17, 19, 22], "daili": 19, "damag": 14, "danger": 8, "dask": 19, "data": [1, 2, 3, 17, 22, 24], "data_bundl": [16, 20], "data_var": 19, "dataandtool": [], "dataarrai": 19, "databas": [14, 19], "databundl": [0, 1, 2, 16, 17, 19, 22, 24], "datafram": 19, "dataload": [1, 3], "dataset": [0, 1, 9, 11, 12, 13, 14, 15, 17, 22, 24], "datasplit": [0, 1, 2, 16, 17, 19, 22, 24], "date": 15, "date_end": 19, "date_start": 19, "datetim": 19, "ddp": [3, 16, 17, 20], "dedic": 26, "def": [16, 17, 19, 22, 24], "default": [1, 5, 16, 20, 22], "default_build": [1, 5, 22], "deleg": [1, 5], "densiti": 11, "depend": [9, 10, 11, 13, 15, 19], "deploi": 17, "depth": [1, 5, 22], "deriv": [9, 10, 11, 13, 14, 19], "describ": [1, 2, 19], "descript": [0, 1, 2, 9, 14, 16, 17, 19, 24], "descriptor": 11, "design": [17, 21], "detail": 24, "detect": [9, 10, 15, 19, 24], "determinist": 6, "develop": 8, "devic": [1, 3, 6, 17, 23, 24], "device_str": 6, "dewpoint": 8, "df": 19, "diagnost": [8, 10, 12], "dice": 21, "dict": [1, 2, 3, 4, 5, 19, 22], "differ": 19, "differenti": 22, "dilat": 5, "dimens": 19, "direct": 26, "directli": 21, "directori": 19, "discov": 19, "discover": 22, "discoveri": 15, "displai": 19, "distanc": [17, 22], "distribut": [0, 1, 8, 9, 10, 15, 16], "distributedconfig": [1, 3], "disturb": 11, "dnbr": 13, "document": [14, 15, 24, 26], "doi": [8, 9, 10, 11, 12, 13], "dong": 26, "download": 18, "downstream": [1, 2], "dp": 3, "driven": [16, 22], "driver": [12, 14, 19], "drop": 19, "dropout": 5, "drought": 12, "ds_pre": 19, "ds_sfc": 19, "dtype": [1, 2, 19], "e": [9, 11, 12, 13, 15, 16, 19, 22], "each": [2, 9, 15, 19], "earli": [9, 10, 19], "earthdata": [9, 12], "earthquak": 2, "easi": [1, 2, 17], "ecmwf": [8, 19], "ecolog": [11, 13], "ecologi": 13, "ecosystem": 19, "edu": 26, "eidenshink": [13, 19], "els": 19, "emerg": 14, "enabl": [5, 20], "encod": [1, 5, 16, 17, 22], "end": [11, 14, 21], "energi": 12, "engag": 26, "engin": [0, 1, 16, 17, 19, 22, 24], "environ": [9, 18, 24], "environment": [8, 10, 12, 14, 17], "eosdi": [], "equal": 19, "era": 12, "era5": [5, 17, 19, 22], "estim": [8, 12], "et": [8, 10, 12, 19], "etc": 2, "eu": [], "european": 8, "evalu": [0, 1, 3, 13, 16, 17, 20, 22, 24], "event": [9, 13, 15, 19], "evolut": 10, "exampl": [16, 17, 18], "exist": 19, "explicitli": 24, "export": [22, 24], "extend": [1, 3, 21], "extens": [17, 22], "extent": [13, 19], "extern": 5, "extra": [0, 1, 2, 17, 22], "extract": 14, "extractor": 22, "extrem": [8, 12], "ey": [17, 22], "f": 19, "factori": [1, 2], "fake": [17, 22], "fall": 22, "fals": [1, 3, 5, 6, 17, 19, 22], "familiar": [1, 3], "fatal": 14, "featur": [1, 2, 5, 16, 17, 19, 22, 24], "feature_spec": [0, 1, 2, 16, 17, 19, 22, 24], "featurespec": [0, 1, 2, 16, 17, 19, 22, 24], "field": [8, 10, 11, 12], "fifth": 8, "file": [13, 19], "filenotfounderror": 19, "find": 7, "fire": [9, 10, 11, 13, 15, 17, 19, 22], "fireecologi": 13, "firelab": [], "firm": [15, 19], "first": [16, 17, 18, 24], "fit": [0, 1, 3, 16, 17, 20, 22, 24], "flag": [6, 9], "float": [1, 3, 4, 5, 17, 19, 22], "flood": [2, 8, 19], "florida": 26, "flux": [8, 12], "follow": 7, "forc": [8, 12], "forecast": 8, "forest": 11, "format": [8, 9, 10, 11, 12, 13, 14, 15, 19], "forward": [0, 1, 5], "found": 19, "framework": 17, "frequenc": [10, 14, 19], "frequent": [], "from": [9, 10, 11, 13, 14, 16, 17, 19, 20, 21, 22, 24], "from_logit": 5, "frp": 9, "fsu": 26, "fuel": [9, 11, 13, 15, 19], "full": 21, "function": [2, 16, 17, 22, 24], "g": [9, 11, 12, 13, 15, 16, 19, 22], "gca": 19, "gcn": 22, "gcn_hidden": 5, "gelaro": [12, 19], "gener": [5, 8, 10], "geodatabas": 13, "geograph": [9, 15], "geojson": [9, 15], "geolog": 13, "geometri": 15, "geopotenti": [8, 12], "geospati": [11, 15], "geostationari": [10, 19], "geotiff": [11, 13], "get": [16, 22, 24], "get_devic": [1, 6], "get_logg": [1, 6], "get_model_config": [1, 5], "get_split": [0, 1, 2], "gi": 15, "giglio": 9, "github": 17, "given": 22, "global": [8, 9, 12, 19], "gmao": [12, 19], "goe": [15, 19], "goesr": 19, "gov": [14, 19], "gpu": [16, 17, 20], "graph": 17, "graph_col": [1, 2, 17, 22], "graphtemporaldataset": [1, 2, 17, 22], "grib": 8, "grid": [3, 8, 9, 10, 11, 12, 14, 19, 20], "griffith": 10, "ground": [10, 15, 19], "growth": 10, "gru": [1, 5], "gsfc": [], "guid": 24, "gunshor": 10, "h": [5, 8], "h5netcdf": 19, "handl": [20, 22], "hardwar": [0, 1, 20, 23], "hazard": [0, 1, 8, 9, 10, 11, 12, 14, 16, 17, 19, 24], "head": [0, 1, 16, 17, 19, 22], "heat": 12, "height": [11, 12], "help": 24, "helper": [17, 20, 22, 23, 24], "hemispher": 10, "hersbach": [8, 19], "hidden": [16, 22], "hidden_dim": [1, 5, 16, 22], "high": [8, 10, 19], "highlight": 22, "histor": [8, 14, 15], "hold": 19, "home": 19, "hotspot": [9, 15], "hourli": [8, 12, 19], "how": 16, "howard": 13, "http": [8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 19], "humid": 12, "hurrican": [2, 12], "i": [2, 5, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 20, 22, 26], "id": [14, 19], "ident": 22, "identifi": 15, "ignit": [10, 11, 13, 15, 19], "imag": 10, "imageri": [10, 13, 19], "impact": [13, 14, 19], "implement": [2, 3, 17, 19, 24], "import": [16, 17, 20, 21, 22, 24], "in_channel": [1, 5], "in_dim": [1, 5, 16, 17, 20, 22, 24], "incid": [15, 19], "includ": [8, 9, 10, 11, 12, 13, 14, 15], "index": [2, 16, 17, 18], "indic": [9, 10], "individu": 13, "infer": [0, 1, 20], "inform": [9, 14, 15], "infrar": 10, "initi": 9, "injuri": 14, "input": [0, 1, 2, 3, 5, 8, 12, 19, 22], "input_dim": [0, 1, 2, 5, 16, 17, 19, 22, 24], "ins": 22, "inspect_d": 19, "int": [1, 2, 3, 6, 16, 19, 22], "integr": [9, 10, 11, 13, 14, 15], "interag": [15, 19], "interfac": [1, 5, 17, 19, 21, 24], "intern": [11, 22], "iou": 21, "ipython": 19, "isel": 19, "iso": [14, 19], "item": 19, "iter": [1, 3], "j": [9, 10, 12, 13], "jcli": 12, "journal": [8, 11, 12], "k": [13, 19], "keep": [1, 2, 5, 22], "keyerror": 19, "kind": 19, "km": 10, "kml": 9, "kwarg": [1, 2, 5, 16, 22], "l": 9, "label": [1, 2, 9, 14, 15, 17, 19, 22], "label_spec": [0, 1, 2, 16, 17, 19, 22, 24], "labelspec": [0, 1, 2, 16, 17, 19, 22, 24], "labrai": 17, "land": [8, 9, 12, 14, 19], "landfir": 19, "landsat": [13, 19], "landscap": [11, 19], "landslid": 2, "larg": [3, 20], "latest": 10, "latitud": [8, 9, 10, 12], "layer": [8, 11, 13, 16, 19, 22], "learn": [8, 11, 12, 14, 17], "len": 19, "let": 19, "level": [8, 9, 12, 14, 15], "librari": 17, "lightweight": [1, 3, 5, 19, 22], "like": [17, 22], "limit": 12, "line": 16, "linear": [16, 22], "list": [1, 3, 19], "list_var": 19, "liter": 3, "load": [0, 1, 2, 16, 17, 24], "load_dataset": [0, 1, 2, 19], "loader": 2, "local": 14, "locat": [9, 14, 15, 19], "log": [17, 23], "logger": 6, "logic": 3, "logit": [5, 17, 22], "long": [12, 13, 19], "longitud": [8, 9, 10, 12], "look": 10, "loop": [1, 3, 22], "loss": 5, "loss_fn": [1, 3, 16, 17, 20, 22, 24], "lower": 19, "lr": [16, 17, 20, 22, 24], "m": [8, 9, 10, 11, 12, 13, 19], "machin": [8, 11, 12, 17], "mae": 21, "maintain": 15, "mainten": 26, "make": [1, 2], "mamba": 5, "mamba_lay": 5, "manag": [9, 11, 14, 15, 17, 23], "map": [11, 13], "mask": [1, 5], "match": 18, "matplotlib": 19, "matrix": [17, 22], "max": 19, "max_epoch": [1, 3, 16, 17, 20, 22, 24], "max_show": 19, "max_var": 19, "mccarti": 12, "mean": 19, "medium": 8, "merra": 19, "merra2": 19, "merra2_sfc_": 19, "merra_pres_": 19, "metadata": [0, 1, 2, 5, 13, 14, 15, 19], "meteorolog": [8, 9, 10, 11, 12, 14, 15, 19], "meteorologi": [8, 12, 13, 19], "metric": [0, 1, 3, 13, 17, 20, 24], "metricbas": [0, 1, 4, 16, 21], "min": 19, "minim": [1, 3, 22], "minut": 10, "miss": 19, "mix": [17, 22], "mixed_precis": [1, 3, 16, 17, 20, 22, 24], "mlp": [1, 5, 16, 17, 20, 22, 24], "mlpbackbon": [0, 1, 5], "modap": [], "mode": 10, "model": [0, 1, 2, 3, 8, 9, 11, 12, 13, 14, 15, 17, 19, 20, 24], "modern": [8, 12], "modi": [9, 19], "modul": [0, 16, 17, 23], "modular": [16, 17], "moistur": 12, "monitor": [9, 10, 13, 19], "monthli": 14, "more": [22, 24], "motion": 10, "mtb": 19, "multi": [1, 5, 12, 16, 17], "multipl": [9, 10, 11, 20], "multispectr": [10, 19], "must": 19, "my_custom_build": 22, "my_hazard": [16, 19], "my_mlp": [16, 22], "my_model_build": 16, "myhazard": 16, "myhazarddataset": 19, "n": 5, "n_var": 19, "name": [0, 1, 2, 5, 6, 13, 15, 16, 17, 19, 20, 22, 24], "namespac": 2, "narr": 14, "nasa": [9, 12, 19], "nation": [11, 13, 14, 15], "nationwid": [11, 19], "natur": [8, 12, 17], "nc": 19, "ncdc": [14, 19], "ncei": [14, 19], "need": [3, 19, 21, 22], "neighbor": 22, "netcdf": [8, 10, 12, 19], "netcdf4": 19, "new": 9, "next": [5, 17, 22], "nifc": 15, "nn": [16, 17, 20, 22, 24], "no_grad": [17, 22], "noaa": [10, 19], "noaa_flood": 19, "none": [1, 2, 3, 4, 5, 6, 17, 19, 22], "normal": [1, 2, 16], "note": 18, "np": 19, "num_class": [1, 4, 5], "num_counti": [2, 5, 17, 22], "num_devic": [1, 6], "num_featur": [2, 5, 17, 22], "num_lay": [1, 5], "num_target": [0, 1, 2, 16, 17, 19, 22, 24], "num_work": [1, 3], "numer": [12, 19], "numpi": 19, "o": 19, "obj": [1, 3], "object": [1, 2, 3, 4, 19], "observ": [8, 9, 10, 11, 12], "occurr": [9, 14, 15, 19], "ocean": 14, "offic": [12, 14], "offici": 15, "often": 19, "oliva": 9, "one": [17, 19], "ongo": 15, "onlinelibrari": [], "open": 19, "open_dataset": 19, "open_merra": 19, "opendata": 15, "oper": [9, 10, 19], "optim": [1, 3, 16, 17, 20, 22, 24], "option": [1, 2, 5, 8, 16, 17, 20, 22], "org": [8, 9, 10, 11, 12, 13, 18], "other": 23, "otherwis": 20, "our": 26, "out": 17, "out_dim": [1, 5, 16, 17, 20, 22, 24], "output": [1, 5, 22], "over": [3, 10, 21, 22], "overpass": 9, "overrid": 5, "overview": 19, "own": [16, 22], "p": [8, 9, 10], "packag": 0, "page": [14, 17, 19], "pair": [14, 19], "panda": 19, "paramet": [5, 16, 17, 20, 22, 24], "particularli": [10, 14], "pass": [16, 21, 22], "past_dai": [2, 5, 17, 22], "patch": [1, 5, 16, 21, 22], "path": [1, 3], "pathlib": 19, "pattern": [9, 15], "pattern_pr": 19, "pattern_sfc": 19, "pd": 19, "per": [5, 9, 19, 22], "perimet": [13, 15, 19], "physic": 12, "pick": 19, "pip": 18, "pipelin": [8, 9, 11, 12, 15, 17], "pixel": 21, "placehold": [2, 3, 20], "plain": 22, "plan": [11, 26], "pleas": [7, 17, 24], "plt": 19, "plu": [1, 2, 19, 22], "point": [9, 10, 14, 15], "polygon": [13, 15], "popul": 2, "portal": [9, 11, 13, 15], "post": [13, 19], "potenti": 9, "power": [9, 17], "pre": 19, "precipit": [8, 12], "precis": 17, "pred": [1, 4, 20], "predict": [0, 1, 3, 8, 9, 11, 12, 13, 14, 16, 17, 19, 20, 21, 22], "prefer": [3, 6], "preprocess": [2, 16], "pressur": [8, 12, 19], "print": [17, 19, 22, 24], "prithvi": 19, "prob": [17, 22], "probabl": [5, 17, 22], "process": 10, "produc": [8, 11, 12, 13], "product": [9, 10, 11, 13, 15, 19], "profil": 12, "program": [10, 11, 13, 19], "project": [10, 11, 13, 15], "properti": 14, "protocol": 2, "provid": [1, 2, 8, 9, 10, 11, 12, 14, 15, 16, 17, 19, 22], "publicli": [9, 11, 13, 14, 15], "pyhazard": [16, 17, 19, 20, 21, 22, 23, 24, 26], "pyhazards2025": 17, "pyhazards_devic": [6, 24], "pyplot": 19, "python": [17, 18, 24], "pytorch": [17, 18, 22], "qj": 8, "qualiti": [9, 26], "quarterli": 8, "quasi": 11, "quayl": 13, "quick": 17, "quickli": 24, "r": [12, 19], "radi": 9, "radianc": 10, "radiat": 8, "rais": 19, "randint": [16, 17, 19, 22, 24], "randn": [16, 17, 19, 22, 24], "random": 22, "rang": 8, "rapid": [9, 10], "raster": [1, 3, 5, 10, 11, 13, 17, 19, 20, 22], "rather": 15, "rdnbr": 13, "re": 22, "readi": [1, 2, 17], "real": [9, 10, 15, 19], "reanalysi": [8, 10, 12, 14, 19], "receiv": 22, "recommend": 18, "record": [9, 10, 14, 15, 19], "refer": 24, "refresh": 10, "regim": [11, 13, 19], "region": 14, "regist": [2, 16, 17], "register_dataset": [0, 1, 2, 16, 19], "register_model": [0, 1, 5, 16, 22], "registr": [22, 24], "registri": [0, 1, 16, 17, 19, 22], "regress": [1, 2, 5, 16, 17, 22], "regressionhead": [0, 1, 5], "regressionmetr": [0, 1, 4, 21], "regular": [8, 12], "relat": [8, 10, 14, 19], "releas": 11, "relu": [16, 22], "remot": [9, 11, 13], "replac": [1, 3, 17, 22], "report": [14, 15, 19], "repres": 15, "research": [12, 17, 26], "reset": [0, 1, 4, 16, 21], "reset_index": 19, "resolut": [8, 9, 10, 11, 12, 13, 14, 15], "resourc": [9, 11], "respect": 6, "respons": 26, "result": [16, 17, 20, 24], "retrospect": 12, "return": [1, 2, 3, 4, 5, 6, 16, 17, 19, 22, 24], "reusabl": [2, 16, 22], "review": 26, "risk": [8, 11, 17, 19], "rmet": [], "rmse": 21, "rollin": 11, "root": 19, "row": 19, "royal": 8, "rse": 9, "run": 20, "runyang": 19, "sampl": [2, 17, 22], "satellit": [9, 10, 12, 15], "save": 20, "save_checkpoint": [0, 1, 3], "scalar": [1, 5], "scale": [11, 13], "schmit": 10, "schroeder": [9, 19], "schwind": 13, "search": 17, "see": 19, "seed": [6, 17, 23], "seed_al": [1, 6], "segment": [1, 5, 16, 17, 22], "segmentationhead": [0, 1, 5], "segmentationmetr": [0, 1, 4, 21], "select": [20, 22], "select_strategi": [1, 3], "self": [16, 17, 19, 24], "sens": [9, 11, 13], "sensibl": 20, "sensor": 9, "sequenti": [16, 22], "seri": [1, 5, 10, 19, 22], "serv": 19, "servic": [8, 9, 11, 12, 15], "set": [5, 8, 12, 19, 24], "set_adjac": [1, 5], "set_aspect": 19, "set_devic": [1, 6, 24], "sever": [13, 14, 19], "sfc": 19, "shape": [1, 2, 5, 17, 19, 22], "shapefil": [9, 13, 15], "ship": 22, "short": 19, "should": [1, 2], "show": [16, 19], "shuffl": [1, 3], "sigmoid": [5, 17, 22], "signal": [1, 5], "simpl": [1, 2, 5, 16, 17], "simplifi": 19, "simul": 11, "singl": [1, 2, 8, 19, 20], "situat": [9, 10], "size": 15, "skin": 12, "skipna": 19, "slide": [3, 20], "slidingwindowinfer": [1, 3], "slowli": 11, "smoke": [10, 19], "smooth": 5, "so": [16, 19, 22], "societi": [8, 10], "softwar": 17, "soil": 12, "sort_valu": 19, "sourc": [1, 2, 3, 4, 5, 6, 15], "space": 22, "spatial": [5, 8, 9, 10, 11, 12, 13, 14, 15, 22], "spatio": 5, "spatiotempor": [8, 9, 12], "spec": [1, 2, 17, 19], "specif": [1, 2, 9, 22], "spectral": [10, 13], "split": [0, 1, 2, 3, 16, 17, 19, 20, 21, 22, 24], "spread": 11, "ssm": 22, "ssr": 22, "stack": [2, 22], "stamp": 9, "standard": [5, 8, 13], "start": [14, 17], "state": [8, 11, 12, 13, 14, 15, 22, 26], "state_dim": 5, "static": [5, 11, 19], "statist": 19, "statu": [15, 19], "std": 19, "step": 19, "stitch": 3, "store": [8, 22], "storm": [14, 19], "str": [1, 2, 3, 4, 5, 16, 19, 22], "strateg": 26, "strategi": [1, 3, 20], "strftime": 19, "structur": [8, 9, 10, 11, 12, 13, 14, 15], "studi": [8, 12, 13, 14, 15, 19], "style": [2, 5, 12, 17, 22], "subclass": [1, 2, 16], "submodul": [0, 1], "subpackag": 0, "summarize_da": 19, "supervis": [9, 14], "support": [11, 13, 16, 17, 19, 20, 26], "surfac": [8, 9, 10, 12, 19], "survei": 13, "su\u00e1rez": 12, "switch": 22, "system": [8, 9, 10, 11, 12, 13, 14, 15], "t": [10, 19], "t2m": [19, 22], "tab": [], "tabl": 19, "tabular": [1, 5, 14, 17, 19, 22], "target": [0, 1, 2, 3, 4, 5, 9, 14, 16, 19, 21, 22], "task": [1, 2, 5, 8, 16, 17, 20, 21, 22, 24], "task_typ": [0, 1, 2, 16, 17, 19, 22, 24], "technic": 26, "temperatur": [8, 10, 12], "tempor": [2, 5, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19], "temporalencod": [0, 1, 5], "tensor": [1, 2, 3, 5, 9, 14, 17, 22], "term": [12, 13, 19], "test": [1, 2, 3, 16, 17, 19, 20, 24], "test_dai": 19, "than": 15, "them": [2, 16, 22], "themat": 11, "thermal": [9, 10, 19], "thi": [1, 5, 14, 16, 19, 22, 24], "through": [9, 10, 13, 15], "throughout": 19, "time": [1, 5, 9, 10, 12, 14, 15, 19, 22], "timestamp": 14, "titl": [17, 19], "toi": 22, "too": 19, "tool": 11, "topographi": 13, "torch": [16, 17, 18, 19, 20, 22, 24], "toyhazard": [17, 24], "tp": 22, "train": [1, 2, 3, 13, 17, 19, 20, 22, 24], "train_d": 17, "train_split": [1, 3], "trainer": [0, 1, 16, 17, 20, 21, 22, 24], "transform": [0, 1, 17], "treat": 15, "trend": [8, 12, 13], "true": [1, 2, 3, 5, 16, 17, 19, 20, 22, 24], "truth": [10, 15, 19], "tupl": 19, "tverski": 5, "tverskyloss": [1, 5], "two": [16, 22], "type": [1, 2, 3, 4, 5, 6, 11, 14, 22], "u": [11, 13, 14, 15, 19], "u10": 22, "under": 8, "unifi": [17, 19], "uniqu": 15, "unit": [11, 13, 14, 15], "univers": 26, "updat": [0, 1, 4, 9, 11, 14, 15, 16, 21], "url": [17, 18], "us": [5, 7, 16, 17, 18, 19, 20, 22, 24], "usag": [17, 22], "usda": [], "user": 16, "usf": 19, "usg": 13, "util": [0, 1, 17, 20, 24], "v10": 22, "val": [1, 2, 16, 17, 19, 22, 24], "val_d": 17, "val_split": [1, 3], "valid": [13, 15], "valu": 19, "valueerror": 19, "var": 19, "vari": 11, "variabl": 24, "vast": 8, "vector": 13, "veget": [11, 19], "version": [11, 12], "vertic": [8, 12], "via": [8, 11, 12, 14, 16, 17, 19, 20, 22], "view": 10, "viir": [9, 19], "visibl": 10, "visual": 19, "w": [5, 9, 12], "we": 18, "weather": [8, 10, 12, 14], "western": 10, "wf08088": 11, "wfig": 19, "wheel": 18, "when": [9, 14, 19, 20], "where": [10, 14], "which": [10, 14], "whl": 18, "who": 26, "wide": [8, 9, 10, 11, 12, 13, 14, 15, 19], "wildfir": [2, 5, 8, 9, 10, 11, 12, 13, 15, 19], "wildfire_aspp_build": [1, 5], "wildfire_mamba": [17, 22], "wildfire_mamba_build": [1, 5], "wildfireaspp": [1, 5], "wildfirecnnaspp": [1, 5], "wildfiremamba": [1, 5], "wildland": [11, 15], "wilei": [], "wind": [8, 12], "window": [2, 3, 16, 17, 20], "window_fn": 3, "with_count_head": [5, 22], "work": [1, 3, 7, 19, 22], "workflow": [12, 19], "wrap": [20, 22], "www": [14, 19], "wxc": [12, 19], "x": [1, 2, 5, 16, 17, 19, 22, 24], "xarrai": 19, "xc25": 26, "xml": [], "xr": 19, "xueqi": [17, 26], "y": [2, 16, 17, 19, 22, 24], "year": [13, 17], "you": [7, 17, 19, 22, 24], "your": [16, 17, 19, 22], "yushun": 26, "yyyymmdd": 19, "z": [13, 19], "zhu": 13, "zone": 14}, "titles": ["pyhazards", "pyhazards package", "pyhazards.datasets package", "pyhazards.engine package", "pyhazards.metrics package", "pyhazards.models package", "pyhazards.utils package", "How to Cite", "ERA5", "FIRMS", "GOES-R", "LANDFIRE", "MERRA-2", "MTBS", "NOAA Flood Events", "WFIGS", "Implementation Guide", "Wildfire Mamba (spatio-temporal toy)", "Installation", "Datasets", "Engine", "Metrics", "Models", "Utils", "Quick Start", "References", "Core Team"], "titleterms": {"1": 19, "2": [12, 19], "3": 19, "4": 19, "5": 19, "6": 19, "academ": 25, "access": [8, 9, 10, 11, 12, 13, 14, 15], "backbon": 5, "base": [2, 22], "basic": [19, 24], "build": 22, "builder": 5, "built": 22, "case": [8, 9, 10, 11, 12, 13, 14, 15], "characterist": [8, 9, 10, 11, 12, 13, 14, 15], "cite": [7, 17], "class": [19, 21], "classif": 24, "common": 6, "compon": 17, "config": 19, "content": [1, 2, 3, 5, 6], "contributor": 26, "coord": 19, "core": [17, 19, 20, 21, 22, 26], "custom": 22, "data": [8, 9, 10, 11, 12, 13, 14, 15, 19], "dataset": [2, 16, 19], "date": 19, "design": 22, "develop": 26, "devic": 20, "dim": 19, "distribut": [3, 20], "engin": [3, 20], "era5": 8, "event": 14, "exampl": [19, 24], "filenam": 19, "firm": 9, "flood": 14, "goe": 10, "gpu": 24, "guid": 16, "hardwar": 6, "hazard": 2, "head": 5, "helper": 19, "how": [7, 17], "implement": 16, "import": 19, "indic": 17, "infer": 3, "inspect": 19, "instal": 18, "landfir": 11, "lat": 19, "lead": 26, "level": 19, "load": 19, "lon": 19, "maintain": 26, "mamba": [17, 22], "map": 19, "merra": 12, "metric": [4, 16, 21], "model": [5, 16, 22], "modul": [1, 2, 3, 5, 6, 20, 22], "mtb": 13, "next": 24, "noaa": 14, "note": 22, "overview": [8, 9, 10, 11, 12, 13, 14, 15], "packag": [1, 2, 3, 4, 5, 6], "path": 19, "pattern": 19, "plot": 19, "princip": 26, "public": 25, "pyhazard": [0, 1, 2, 3, 4, 5, 6, 18], "quick": [19, 24], "r": 10, "refer": [8, 9, 10, 11, 12, 13, 14, 15, 25], "regist": 22, "registri": [2, 5], "requir": 18, "setup": 19, "skeleton": 19, "spatio": [17, 22], "start": 24, "stat": 19, "step": 24, "submodul": [2, 3, 5, 6, 23], "subpackag": 1, "summari": [19, 20, 21, 22, 23], "support": 24, "tabl": 17, "tabular": 24, "team": 26, "tempor": [17, 22], "toi": [17, 24], "train": 16, "trainer": 3, "transform": [2, 16], "typic": [8, 9, 10, 11, 12, 13, 14, 15, 20], "us": [8, 9, 10, 11, 12, 13, 14, 15], "usag": [20, 21, 24], "util": [6, 23], "variabl": [8, 9, 10, 11, 12, 13, 14, 15, 19], "wfig": 15, "wildfir": [17, 22]}}) \ No newline at end of file +Search.setIndex({"alltitles": {"Academic Publications": [[25, "academic-publications"]], "Access": [[8, "access"], [9, "access"], [10, "access"], [11, "access"], [12, "access"], [13, "access"], [14, "access"], [15, "access"]], "Basic Usage": [[24, "basic-usage"]], "Build a built-in model": [[22, "build-a-built-in-model"]], "Contributors": [[26, "contributors"]], "Core Components": [[17, "core-components"]], "Core Contributors": [[26, "core-contributors"]], "Core Team": [[26, null]], "Core classes": [[19, "core-classes"], [21, "core-classes"]], "Core modules": [[20, "core-modules"], [22, "core-modules"]], "Data Characteristics": [[8, "data-characteristics"], [9, "data-characteristics"], [10, "data-characteristics"], [11, "data-characteristics"], [12, "data-characteristics"], [13, "data-characteristics"], [14, "data-characteristics"], [15, "data-characteristics"]], "Dataset inspection": [[19, "dataset-inspection"]], "Datasets": [[16, "datasets"], [19, null], [19, "id1"]], "Design notes": [[22, "design-notes"]], "Distributed and devices": [[20, "distributed-and-devices"]], "ERA5": [[8, null]], "Engine": [[20, null]], "Example skeleton": [[19, "example-skeleton"]], "FIRMS": [[9, null]], "GOES-R": [[10, null]], "GPU Support": [[24, "gpu-support"]], "How to Cite": [[7, null], [17, "how-to-cite"]], "Implementation Guide": [[16, null]], "Indices and tables": [[17, "indices-and-tables"]], "Installation": [[18, null]], "Installing PyHazards": [[18, "installing-pyhazards"]], "LANDFIRE": [[11, null]], "Lead Developer": [[26, "lead-developer"]], "MERRA-2": [[12, null]], "MTBS": [[13, null]], "Mamba-based wildfire model (spatio-temporal)": [[22, "mamba-based-wildfire-model-spatio-temporal"]], "Metrics": [[16, "metrics"], [21, null]], "Models": [[16, "models"], [22, null]], "Module contents": [[1, "module-pyhazards"], [2, "module-pyhazards.datasets"], [3, "module-pyhazards.engine"], [5, "module-pyhazards.models"], [6, "module-pyhazards.utils"]], "NOAA Flood Events": [[14, null]], "Next Steps": [[24, "next-steps"]], "Overview": [[8, "overview"], [9, "overview"], [10, "overview"], [11, "overview"], [12, "overview"], [13, "overview"], [14, "overview"], [15, "overview"]], "Principal Contributors & Maintainers": [[26, "principal-contributors-maintainers"]], "Quick Start": [[24, null]], "Reference": [[8, "reference"], [9, "reference"], [10, "reference"], [11, "reference"], [12, "reference"], [13, "reference"], [14, "reference"], [15, "reference"]], "References": [[25, null]], "Register a custom model": [[22, "register-a-custom-model"]], "Requirements": [[18, "requirements"]], "Submodules": [[2, "submodules"], [3, "submodules"], [5, "submodules"], [6, "submodules"], [23, "submodules"]], "Subpackages": [[1, "subpackages"]], "Summary": [[19, "summary"], [20, "summary"], [21, "summary"], [22, "summary"], [23, "summary"]], "Toy Example (tabular classification)": [[24, "toy-example-tabular-classification"]], "Training": [[16, "training"]], "Transforms": [[16, "transforms"]], "Typical Use Cases": [[8, "typical-use-cases"], [9, "typical-use-cases"], [10, "typical-use-cases"], [11, "typical-use-cases"], [12, "typical-use-cases"], [13, "typical-use-cases"], [14, "typical-use-cases"], [15, "typical-use-cases"]], "Typical usage": [[20, "typical-usage"]], "Usage": [[21, "usage"]], "Utils": [[23, null]], "Variables": [[8, "variables"], [9, "variables"], [10, "variables"], [11, "variables"], [12, "variables"], [13, "variables"], [14, "variables"], [15, "variables"]], "WFIGS": [[15, null]], "Wildfire Mamba (spatio-temporal toy)": [[17, null]], "pyhazards": [[0, null]], "pyhazards package": [[1, null]], "pyhazards.datasets package": [[2, null]], "pyhazards.datasets.base module": [[2, "module-pyhazards.datasets.base"]], "pyhazards.datasets.hazards package": [[2, "module-pyhazards.datasets.hazards"]], "pyhazards.datasets.registry module": [[2, "module-pyhazards.datasets.registry"]], "pyhazards.datasets.transforms package": [[2, "module-pyhazards.datasets.transforms"]], "pyhazards.engine package": [[3, null]], "pyhazards.engine.distributed module": [[3, "module-pyhazards.engine.distributed"]], "pyhazards.engine.inference module": [[3, "module-pyhazards.engine.inference"]], "pyhazards.engine.trainer module": [[3, "module-pyhazards.engine.trainer"]], "pyhazards.metrics package": [[4, null]], "pyhazards.models package": [[5, null]], "pyhazards.models.backbones module": [[5, "module-pyhazards.models.backbones"]], "pyhazards.models.builder module": [[5, "module-pyhazards.models.builder"]], "pyhazards.models.heads module": [[5, "module-pyhazards.models.heads"]], "pyhazards.models.registry module": [[5, "module-pyhazards.models.registry"]], "pyhazards.utils package": [[6, null]], "pyhazards.utils.common module": [[6, "module-pyhazards.utils.common"]], "pyhazards.utils.hardware module": [[6, "module-pyhazards.utils.hardware"]]}, "docnames": ["api/modules", "api/pyhazards", "api/pyhazards.datasets", "api/pyhazards.engine", "api/pyhazards.metrics", "api/pyhazards.models", "api/pyhazards.utils", "cite", "datasets/era5", "datasets/firms", "datasets/goesr", "datasets/landfire", "datasets/merra2", "datasets/mtbs", "datasets/noaa_flood", "datasets/wfigs", "implementation", "index", "installation", "pyhazards_datasets", "pyhazards_engine", "pyhazards_metrics", "pyhazards_models", "pyhazards_utils", "quick_start", "references", "team"], "envversion": {"sphinx": 64, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["api/modules.rst", "api/pyhazards.rst", "api/pyhazards.datasets.rst", "api/pyhazards.engine.rst", "api/pyhazards.metrics.rst", "api/pyhazards.models.rst", "api/pyhazards.utils.rst", "cite.rst", "datasets/era5.rst", "datasets/firms.rst", "datasets/goesr.rst", "datasets/landfire.rst", "datasets/merra2.rst", "datasets/mtbs.rst", "datasets/noaa_flood.rst", "datasets/wfigs.rst", "implementation.rst", "index.rst", "installation.rst", "pyhazards_datasets.rst", "pyhazards_engine.rst", "pyhazards_metrics.rst", "pyhazards_models.rst", "pyhazards_utils.rst", "quick_start.rst", "references.rst", "team.rst"], "indexentries": {}, "objects": {"": [[1, 0, 0, "-", "pyhazards"]], "pyhazards": [[1, 1, 1, "", "CNNPatchEncoder"], [1, 1, 1, "", "ClassificationHead"], [1, 1, 1, "", "ClassificationMetrics"], [1, 1, 1, "", "DataBundle"], [1, 1, 1, "", "DataSplit"], [1, 1, 1, "", "Dataset"], [1, 1, 1, "", "FeatureSpec"], [1, 1, 1, "", "LabelSpec"], [1, 1, 1, "", "MLPBackbone"], [1, 1, 1, "", "MetricBase"], [1, 1, 1, "", "RegressionHead"], [1, 1, 1, "", "RegressionMetrics"], [1, 1, 1, "", "SegmentationHead"], [1, 1, 1, "", "SegmentationMetrics"], [1, 1, 1, "", "TemporalEncoder"], [1, 1, 1, "", "Trainer"], [1, 4, 1, "", "available_datasets"], [1, 4, 1, "", "available_models"], [1, 4, 1, "", "build_model"], [2, 0, 0, "-", "datasets"], [3, 0, 0, "-", "engine"], [1, 4, 1, "", "load_dataset"], [4, 0, 0, "-", "metrics"], [5, 0, 0, "-", "models"], [1, 4, 1, "", "register_dataset"], [1, 4, 1, "", "register_model"], [6, 0, 0, "-", "utils"]], "pyhazards.CNNPatchEncoder": [[1, 2, 1, "", "forward"]], "pyhazards.ClassificationHead": [[1, 2, 1, "", "forward"]], "pyhazards.ClassificationMetrics": [[1, 3, 1, "", "_abc_impl"], [1, 2, 1, "", "compute"], [1, 2, 1, "", "reset"], [1, 2, 1, "", "update"]], "pyhazards.DataBundle": [[1, 3, 1, "", "feature_spec"], [1, 2, 1, "", "get_split"], [1, 3, 1, "", "label_spec"], [1, 3, 1, "", "metadata"], [1, 3, 1, "", "splits"]], "pyhazards.DataSplit": [[1, 3, 1, "", "inputs"], [1, 3, 1, "", "metadata"], [1, 3, 1, "", "targets"]], "pyhazards.Dataset": [[1, 2, 1, "", "_load"], [1, 2, 1, "", "load"], [1, 3, 1, "", "name"]], "pyhazards.FeatureSpec": [[1, 3, 1, "", "channels"], [1, 3, 1, "", "description"], [1, 3, 1, "", "extra"], [1, 3, 1, "", "input_dim"]], "pyhazards.LabelSpec": [[1, 3, 1, "", "description"], [1, 3, 1, "", "extra"], [1, 3, 1, "", "num_targets"], [1, 3, 1, "", "task_type"]], "pyhazards.MLPBackbone": [[1, 2, 1, "", "forward"]], "pyhazards.MetricBase": [[1, 3, 1, "", "_abc_impl"], [1, 2, 1, "", "compute"], [1, 2, 1, "", "reset"], [1, 2, 1, "", "update"]], "pyhazards.RegressionHead": [[1, 2, 1, "", "forward"]], "pyhazards.RegressionMetrics": [[1, 3, 1, "", "_abc_impl"], [1, 2, 1, "", "compute"], [1, 2, 1, "", "reset"], [1, 2, 1, "", "update"]], "pyhazards.SegmentationHead": [[1, 2, 1, "", "forward"]], "pyhazards.SegmentationMetrics": [[1, 3, 1, "", "_abc_impl"], [1, 2, 1, "", "compute"], [1, 2, 1, "", "reset"], [1, 2, 1, "", "update"]], "pyhazards.TemporalEncoder": [[1, 2, 1, "", "forward"]], "pyhazards.Trainer": [[1, 2, 1, "", "_make_loader"], [1, 2, 1, "", "_to_device"], [1, 2, 1, "", "evaluate"], [1, 2, 1, "", "fit"], [1, 2, 1, "", "predict"], [1, 2, 1, "", "save_checkpoint"]], "pyhazards.datasets": [[2, 1, 1, "", "DataBundle"], [2, 1, 1, "", "DataSplit"], [2, 1, 1, "", "Dataset"], [2, 1, 1, "", "FeatureSpec"], [2, 1, 1, "", "GraphTemporalDataset"], [2, 1, 1, "", "LabelSpec"], [2, 4, 1, "", "available_datasets"], [2, 0, 0, "-", "base"], [2, 4, 1, "", "graph_collate"], [2, 0, 0, "-", "hazards"], [2, 4, 1, "", "load_dataset"], [2, 4, 1, "", "register_dataset"], [2, 0, 0, "-", "registry"], [2, 0, 0, "-", "transforms"]], "pyhazards.datasets.DataBundle": [[2, 3, 1, "", "feature_spec"], [2, 2, 1, "", "get_split"], [2, 3, 1, "", "label_spec"], [2, 3, 1, "", "metadata"], [2, 3, 1, "", "splits"]], "pyhazards.datasets.DataSplit": [[2, 3, 1, "", "inputs"], [2, 3, 1, "", "metadata"], [2, 3, 1, "", "targets"]], "pyhazards.datasets.Dataset": [[2, 2, 1, "", "_load"], [2, 2, 1, "", "load"], [2, 3, 1, "", "name"]], "pyhazards.datasets.FeatureSpec": [[2, 3, 1, "", "channels"], [2, 3, 1, "", "description"], [2, 3, 1, "", "extra"], [2, 3, 1, "", "input_dim"]], "pyhazards.datasets.LabelSpec": [[2, 3, 1, "", "description"], [2, 3, 1, "", "extra"], [2, 3, 1, "", "num_targets"], [2, 3, 1, "", "task_type"]], "pyhazards.datasets.base": [[2, 1, 1, "", "DataBundle"], [2, 1, 1, "", "DataSplit"], [2, 1, 1, "", "Dataset"], [2, 1, 1, "", "FeatureSpec"], [2, 1, 1, "", "LabelSpec"], [2, 1, 1, "", "Transform"]], "pyhazards.datasets.base.DataBundle": [[2, 3, 1, "", "feature_spec"], [2, 2, 1, "", "get_split"], [2, 3, 1, "", "label_spec"], [2, 3, 1, "", "metadata"], [2, 3, 1, "", "splits"]], "pyhazards.datasets.base.DataSplit": [[2, 3, 1, "", "inputs"], [2, 3, 1, "", "metadata"], [2, 3, 1, "", "targets"]], "pyhazards.datasets.base.Dataset": [[2, 2, 1, "", "_load"], [2, 2, 1, "", "load"], [2, 3, 1, "", "name"]], "pyhazards.datasets.base.FeatureSpec": [[2, 3, 1, "", "channels"], [2, 3, 1, "", "description"], [2, 3, 1, "", "extra"], [2, 3, 1, "", "input_dim"]], "pyhazards.datasets.base.LabelSpec": [[2, 3, 1, "", "description"], [2, 3, 1, "", "extra"], [2, 3, 1, "", "num_targets"], [2, 3, 1, "", "task_type"]], "pyhazards.datasets.base.Transform": [[2, 3, 1, "", "_abc_impl"], [2, 3, 1, "", "_is_protocol"]], "pyhazards.datasets.registry": [[2, 4, 1, "", "available_datasets"], [2, 4, 1, "", "load_dataset"], [2, 4, 1, "", "register_dataset"]], "pyhazards.engine": [[3, 1, 1, "", "DistributedConfig"], [3, 1, 1, "", "SlidingWindowInference"], [3, 1, 1, "", "Trainer"], [3, 0, 0, "-", "distributed"], [3, 0, 0, "-", "inference"], [3, 4, 1, "", "select_strategy"], [3, 0, 0, "-", "trainer"]], "pyhazards.engine.DistributedConfig": [[3, 3, 1, "", "devices"], [3, 3, 1, "", "strategy"]], "pyhazards.engine.Trainer": [[3, 2, 1, "", "_make_loader"], [3, 2, 1, "", "_to_device"], [3, 2, 1, "", "evaluate"], [3, 2, 1, "", "fit"], [3, 2, 1, "", "predict"], [3, 2, 1, "", "save_checkpoint"]], "pyhazards.engine.distributed": [[3, 1, 1, "", "DistributedConfig"], [3, 4, 1, "", "select_strategy"]], "pyhazards.engine.distributed.DistributedConfig": [[3, 3, 1, "", "devices"], [3, 3, 1, "", "strategy"]], "pyhazards.engine.inference": [[3, 1, 1, "", "SlidingWindowInference"]], "pyhazards.engine.trainer": [[3, 1, 1, "", "Trainer"]], "pyhazards.engine.trainer.Trainer": [[3, 2, 1, "", "_make_loader"], [3, 2, 1, "", "_to_device"], [3, 2, 1, "", "evaluate"], [3, 2, 1, "", "fit"], [3, 2, 1, "", "predict"], [3, 2, 1, "", "save_checkpoint"]], "pyhazards.metrics": [[4, 1, 1, "", "ClassificationMetrics"], [4, 1, 1, "", "MetricBase"], [4, 1, 1, "", "RegressionMetrics"], [4, 1, 1, "", "SegmentationMetrics"]], "pyhazards.metrics.ClassificationMetrics": [[4, 3, 1, "", "_abc_impl"], [4, 2, 1, "", "compute"], [4, 2, 1, "", "reset"], [4, 2, 1, "", "update"]], "pyhazards.metrics.MetricBase": [[4, 3, 1, "", "_abc_impl"], [4, 2, 1, "", "compute"], [4, 2, 1, "", "reset"], [4, 2, 1, "", "update"]], "pyhazards.metrics.RegressionMetrics": [[4, 3, 1, "", "_abc_impl"], [4, 2, 1, "", "compute"], [4, 2, 1, "", "reset"], [4, 2, 1, "", "update"]], "pyhazards.metrics.SegmentationMetrics": [[4, 3, 1, "", "_abc_impl"], [4, 2, 1, "", "compute"], [4, 2, 1, "", "reset"], [4, 2, 1, "", "update"]], "pyhazards.models": [[5, 1, 1, "", "CNNPatchEncoder"], [5, 1, 1, "", "ClassificationHead"], [5, 1, 1, "", "MLPBackbone"], [5, 1, 1, "", "RegressionHead"], [5, 1, 1, "", "SegmentationHead"], [5, 1, 1, "", "TemporalEncoder"], [5, 1, 1, "", "TverskyLoss"], [5, 1, 1, "", "WildfireASPP"], [5, 1, 1, "", "WildfireCNNASPP"], [5, 1, 1, "", "WildfireMamba"], [5, 4, 1, "", "available_models"], [5, 0, 0, "-", "backbones"], [5, 4, 1, "", "build_model"], [5, 0, 0, "-", "builder"], [5, 4, 1, "", "cnn_aspp_builder"], [5, 0, 0, "-", "heads"], [5, 4, 1, "", "register_model"], [5, 0, 0, "-", "registry"], [5, 4, 1, "", "wildfire_aspp_builder"], [5, 4, 1, "", "wildfire_mamba_builder"]], "pyhazards.models.CNNPatchEncoder": [[5, 2, 1, "", "forward"]], "pyhazards.models.ClassificationHead": [[5, 2, 1, "", "forward"]], "pyhazards.models.MLPBackbone": [[5, 2, 1, "", "forward"]], "pyhazards.models.RegressionHead": [[5, 2, 1, "", "forward"]], "pyhazards.models.SegmentationHead": [[5, 2, 1, "", "forward"]], "pyhazards.models.TemporalEncoder": [[5, 2, 1, "", "forward"]], "pyhazards.models.TverskyLoss": [[5, 2, 1, "", "forward"]], "pyhazards.models.WildfireCNNASPP": [[5, 2, 1, "", "forward"]], "pyhazards.models.WildfireMamba": [[5, 2, 1, "", "_get_adjacency"], [5, 2, 1, "", "_temporal_delta"], [5, 2, 1, "", "forward"], [5, 2, 1, "", "set_adjacency"]], "pyhazards.models.backbones": [[5, 1, 1, "", "CNNPatchEncoder"], [5, 1, 1, "", "MLPBackbone"], [5, 1, 1, "", "TemporalEncoder"]], "pyhazards.models.backbones.CNNPatchEncoder": [[5, 2, 1, "", "forward"]], "pyhazards.models.backbones.MLPBackbone": [[5, 2, 1, "", "forward"]], "pyhazards.models.backbones.TemporalEncoder": [[5, 2, 1, "", "forward"]], "pyhazards.models.builder": [[5, 4, 1, "", "build_model"], [5, 4, 1, "", "default_builder"]], "pyhazards.models.heads": [[5, 1, 1, "", "ClassificationHead"], [5, 1, 1, "", "RegressionHead"], [5, 1, 1, "", "SegmentationHead"]], "pyhazards.models.heads.ClassificationHead": [[5, 2, 1, "", "forward"]], "pyhazards.models.heads.RegressionHead": [[5, 2, 1, "", "forward"]], "pyhazards.models.heads.SegmentationHead": [[5, 2, 1, "", "forward"]], "pyhazards.models.registry": [[5, 4, 1, "", "available_models"], [5, 4, 1, "", "get_model_config"], [5, 4, 1, "", "register_model"]], "pyhazards.utils": [[6, 4, 1, "", "auto_device"], [6, 0, 0, "-", "common"], [6, 4, 1, "", "get_device"], [6, 4, 1, "", "get_logger"], [6, 0, 0, "-", "hardware"], [6, 4, 1, "", "num_devices"], [6, 4, 1, "", "seed_all"], [6, 4, 1, "", "set_device"]], "pyhazards.utils.common": [[6, 4, 1, "", "get_logger"], [6, 4, 1, "", "seed_all"]], "pyhazards.utils.hardware": [[6, 4, 1, "", "auto_device"], [6, 4, 1, "", "get_device"], [6, 4, 1, "", "num_devices"], [6, 4, 1, "", "set_device"]]}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "attribute", "Python attribute"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:method", "3": "py:attribute", "4": "py:function"}, "terms": {"": [10, 11, 13, 14, 15, 19, 26], "0": [1, 3, 5, 8, 10, 12, 16, 17, 18, 19, 22, 24], "00230": 10, "008": 9, "01": 19, "0301003": 13, "06": 5, "0758": 12, "08": 9, "1": [1, 3, 5, 10, 12, 13, 17, 22], "10": [8, 9, 10, 11, 12, 13, 16, 20], "100": [], "1000": [16, 19], "1002": 8, "1016": 9, "1071": 11, "1175": [10, 12], "12": [5, 18, 22], "128": [1, 5, 16, 22], "14": 12, "143": 9, "146": 8, "15": 10, "16": [10, 12, 16, 17, 19, 20, 22, 24], "17": 10, "18": [10, 11], "1999": 8, "1e": [5, 16, 17, 20, 22, 24], "2": [1, 5, 8, 10, 16, 17, 18, 19, 20, 22, 24], "2007": [13, 19], "2009": 11, "2013": 9, "2014": [9, 19], "2017": [10, 12, 19], "2020": [8, 19], "2024": 19, "2025": 17, "2049": 8, "21": 13, "235": 11, "24": 17, "249": 11, "25": 8, "256": [1, 5, 22], "3": [1, 5, 11, 13, 16, 17, 18, 20, 22, 24], "30": [11, 12, 13], "31": 19, "32": [1, 3, 5, 17, 22], "350": [17, 24], "375": 9, "3803": 8, "4": [10, 17], "42": 6, "425": [17, 24], "48": 22, "4996": 13, "5": [5, 10, 12, 17, 22, 24], "500": [17, 24], "5419": 12, "5454": 12, "6": [5, 17, 18, 22], "60": [], "625": 12, "64": [1, 3, 5, 22], "681": 10, "698": 10, "730": 8, "8": [17, 18, 22], "800": [16, 19], "85": 9, "900": [16, 19], "96": 9, "98": 10, "A": [10, 11, 13, 17, 22], "For": [22, 24], "If": [7, 17], "It": [8, 12, 22], "Near": [8, 9, 12, 19], "Or": 24, "The": [8, 9, 10, 11, 12, 19, 20, 22, 26], "To": [16, 24], "_": 19, "_abc": [1, 2, 4], "_abc_data": [1, 2, 4], "_abc_impl": [0, 1, 2, 4], "_get_adjac": [1, 5], "_is_protocol": [1, 2], "_load": [0, 1, 2, 16, 17, 19, 24], "_make_load": [0, 1, 3], "_temporal_delta": [1, 5], "_to_devic": [0, 1, 3], "abc": [1, 4], "abi": 10, "abov": [], "abstract": [1, 3, 4, 21], "accept": 16, "access": 19, "accuraci": 21, "across": [11, 13, 14, 15, 19], "activ": [9, 15, 19], "adam": [16, 17, 20, 22, 24], "add": 16, "adj": 5, "adjac": [2, 5, 17, 22], "administr": 14, "adopt": 8, "advanc": 10, "aerosol": 10, "after": 16, "agenc": [14, 15], "aggreg": [15, 16, 21], "ai": 17, "al": [8, 10, 12, 19], "algorithm": 9, "allow": 19, "alpha": 5, "america": 10, "american": 10, "ametsoc": [], "amount": 8, "amp": [16, 20], "an": [2, 15, 22], "analysi": [8, 9, 10, 12, 13, 14, 15, 19], "analyz": 17, "ani": [1, 2, 3, 5, 22], "annual": [11, 13], "anomali": [9, 10], "api": [1, 3, 17, 19, 24], "append": [], "appli": [5, 22], "applic": [8, 12], "ar": [8, 9, 10, 11, 13, 14, 15, 20, 21, 22], "arcgi": 15, "architectur": [16, 17, 22], "arg": [2, 5], "argument": 16, "arrai": [], "aspp": 5, "aspp_channel": 5, "assess": [8, 9, 11, 13, 14, 17, 19], "assimil": [8, 12], "associ": [9, 15], "assum": [], "assur": 26, "atmospher": [8, 10, 12, 14, 19], "attribut": 8, "author": 17, "authorit": [15, 19], "auto": [1, 3, 20], "auto_devic": [1, 6, 20], "automat": [6, 24], "avail": [10, 13, 14, 20, 24], "available_dataset": [0, 1, 2], "available_model": [0, 1, 5, 22], "awar": [9, 10, 17], "b": [5, 8, 13], "back": 22, "backbon": [0, 1, 16, 17, 22], "background": 11, "backward": 5, "bam": 10, "band": 10, "base": [0, 1, 3, 4, 5, 9, 11, 13, 14, 15, 18, 19], "base_channel": 5, "baselin": [8, 10], "basic": 17, "batch": [2, 5, 22], "batch_siz": [1, 3, 5, 17, 22], "bcewithlogitsloss": [17, 22], "becaus": 22, "begin": 14, "behavior": [11, 19], "bell": 8, "below": 19, "benchmark": [8, 12, 19], "berrisford": 8, "beta": 5, "big": 10, "bin": [14, 19], "binari": [5, 17, 22], "block": 22, "bool": [], "both": [], "boundari": 8, "box": 17, "branch": 22, "brewer": 13, "bright": 10, "broad": 12, "build": [1, 5, 17], "build_model": [0, 1, 5, 16, 17, 20, 22, 24], "build_path": [], "builder": [0, 1, 2, 16, 22], "built": [17, 19, 21], "bulk": 11, "bulletin": 10, "bundl": [1, 2, 17, 22], "burn": [13, 19], "burnsever": [], "c": 5, "c00648": [14, 19], "c3": 8, "cache_dir": [1, 2], "calcul": 17, "call": 21, "callabl": 2, "can": [12, 16, 18, 22], "canopi": 11, "carri": 10, "categor": 13, "caus": 15, "cd": [8, 19], "center": [14, 15], "centr": 8, "chain": 16, "chang": [8, 13, 22], "channel": [0, 1, 2], "character": 11, "checkpoint": 20, "cheng": [17, 26], "choos": 6, "chunk": [], "class": [1, 2, 3, 4, 5, 13, 16, 17, 20, 24], "classif": [1, 5, 13, 16, 17, 19, 20, 22], "classificationhead": [0, 1, 5], "classificationmetr": [0, 1, 4, 16, 17, 20, 21, 24], "cli": 22, "clim": [], "climat": [8, 12], "closer": 10, "cloud": 10, "cnn": [1, 5, 16, 17, 22], "cnn_aspp_build": [1, 5], "cnnpatchencod": [0, 1, 5], "code": 26, "collat": [2, 17], "collate_fn": [1, 3, 17], "collect": 16, "com": [15, 17], "combin": [8, 9], "common": [0, 1, 21, 22, 23], "commonli": [15, 19], "commun": 26, "compat": 5, "compil": 14, "complex": [1, 3, 22], "compos": [22, 26], "comprehens": [8, 17], "comput": [0, 1, 2, 4, 16, 21], "concret": 2, "conda": 18, "condit": [], "confid": 9, "config": [20, 22], "consid": 7, "consist": [1, 5, 8, 11, 12], "construct": [1, 2, 19, 22], "contain": [1, 2, 15, 19], "content": [0, 19], "context": 19, "contextu": 10, "continu": [10, 12, 19], "contourf": [], "contribut": 26, "conv_kernel": 5, "conveni": 22, "convent": 12, "coordin": [8, 9, 10, 11, 12, 13, 14, 15], "copernicu": [8, 19], "core": 12, "correl": [17, 22], "correspond": 9, "count": [5, 22], "counti": [2, 5, 14, 17, 22], "coupl": 22, "covari": [8, 11, 12, 19], "cover": [11, 21], "coverag": [8, 9, 10, 11, 12, 13, 14, 15], "cpu": [16, 24], "cr": [], "creat": [16, 22], "critic": 10, "crop": 14, "crossentropyloss": [16, 17, 20, 24], "csiszar": 9, "csv": [9, 14], "cu126": 18, "cube": 22, "cuda": [18, 20, 24], "current": 2, "custom": [1, 3, 16, 17, 24], "d": [10, 12], "d2m": 22, "da": [], "dai": [2, 5, 9, 17, 19, 22], "daili": 19, "damag": 14, "danger": 8, "dask": [], "data": [1, 2, 3, 17, 19, 22, 24], "data_bundl": [16, 20], "data_var": [], "dataandtool": [], "dataarrai": [], "databas": [14, 19], "databundl": [0, 1, 2, 16, 17, 19, 22, 24], "datafram": [], "dataload": [1, 3], "dataset": [0, 1, 9, 11, 12, 13, 14, 15, 17, 22, 24], "datasplit": [0, 1, 2, 16, 17, 19, 22, 24], "date": 15, "date_end": [], "date_start": [], "datetim": [], "ddp": [3, 16, 17, 20], "dedic": 26, "def": [16, 17, 19, 22, 24], "default": [1, 5, 16, 20, 22], "default_build": [1, 5, 22], "deleg": [1, 5], "demonstr": 19, "densiti": 11, "depend": [9, 10, 11, 13, 15], "deploi": 17, "depth": [1, 5, 22], "deriv": [9, 10, 11, 13, 14, 19], "describ": [1, 2, 19], "descript": [0, 1, 2, 9, 14, 16, 17, 19, 24], "descriptor": 11, "design": [17, 21], "detail": 24, "detect": [9, 10, 15, 19, 24], "determinist": 6, "develop": 8, "devic": [1, 3, 6, 17, 23, 24], "device_str": 6, "dewpoint": 8, "df": [], "diagnost": [8, 10, 12], "dice": 21, "dict": [1, 2, 3, 4, 5, 22], "differ": [], "differenti": 22, "dilat": 5, "dimens": [], "direct": 26, "directli": 21, "directori": [], "discov": 19, "discover": 22, "discoveri": 15, "displai": [], "distanc": [17, 22], "distribut": [0, 1, 8, 9, 10, 15, 16], "distributedconfig": [1, 3], "disturb": 11, "dnbr": 13, "document": [14, 15, 24, 26], "doi": [8, 9, 10, 11, 12, 13], "dong": 26, "download": 18, "downstream": [1, 2], "dp": 3, "driven": [16, 22], "driver": [12, 14, 19], "drop": [], "dropout": 5, "drought": 12, "ds_pre": [], "ds_sfc": [], "dtype": [1, 2], "e": [9, 11, 12, 13, 15, 16, 19, 22], "each": [2, 9, 15, 19], "earli": [9, 10, 19], "earthdata": [9, 12], "earthquak": 2, "easi": [1, 2, 17], "ecmwf": [8, 19], "ecolog": [11, 13], "ecologi": 13, "ecosystem": 19, "edu": 26, "eidenshink": [13, 19], "els": [], "emerg": 14, "enabl": [5, 20], "encod": [1, 5, 16, 17, 22], "end": [11, 14, 21], "end_dat": 19, "energi": 12, "engag": 26, "engin": [0, 1, 16, 17, 22, 24], "environ": [9, 18, 24], "environment": [8, 10, 12, 14, 17], "eosdi": [], "equal": [], "era": 12, "era5": [5, 17, 19, 22], "estim": [8, 12], "et": [8, 10, 12, 19], "etc": 2, "eu": [], "european": 8, "evalu": [0, 1, 3, 13, 16, 17, 20, 22, 24], "event": [9, 13, 15, 19], "evolut": 10, "exampl": [16, 17, 18], "exist": [], "explicitli": 24, "explor": 19, "export": [22, 24], "extend": [1, 3, 21], "extens": [17, 22], "extent": [13, 19], "extern": 5, "extra": [0, 1, 2, 17, 22], "extract": 14, "extractor": 22, "extrem": [8, 12], "ey": [17, 22], "f": [], "factori": [1, 2], "fake": [17, 22], "fall": 22, "fals": [1, 3, 5, 6, 17, 22], "familiar": [1, 3], "fatal": 14, "featur": [1, 2, 5, 16, 17, 19, 22, 24], "feature_spec": [0, 1, 2, 16, 17, 19, 22, 24], "featurespec": [0, 1, 2, 16, 17, 19, 22, 24], "field": [8, 10, 11, 12], "fifth": 8, "file": [13, 19], "filenotfounderror": [], "find": 7, "fire": [9, 10, 11, 13, 15, 17, 19, 22], "fireecologi": 13, "firelab": [], "firm": [15, 19], "first": [16, 17, 18, 24], "fit": [0, 1, 3, 16, 17, 20, 22, 24], "flag": [6, 9], "float": [1, 3, 4, 5, 17, 22], "flood": [2, 8, 19], "florida": 26, "flux": [8, 12], "follow": 7, "forc": [8, 12], "forecast": 8, "forest": 11, "format": [8, 9, 10, 11, 12, 13, 14, 15], "forward": [0, 1, 5], "found": [], "framework": 17, "frequenc": [10, 14, 19], "frequent": [], "from": [9, 10, 11, 13, 14, 16, 17, 19, 20, 21, 22, 24], "from_logit": 5, "frp": 9, "fsu": 26, "fuel": [9, 11, 13, 15, 19], "full": 21, "function": [2, 16, 17, 22, 24], "g": [9, 11, 12, 13, 15, 16, 19, 22], "gca": [], "gcn": 22, "gcn_hidden": 5, "gelaro": [12, 19], "gener": [5, 8, 10], "geodatabas": 13, "geograph": [9, 15], "geojson": [9, 15], "geolog": 13, "geometri": 15, "geopotenti": [8, 12], "geospati": [11, 15], "geostationari": [10, 19], "geotiff": [11, 13], "get": [16, 22, 24], "get_devic": [1, 6], "get_logg": [1, 6], "get_model_config": [1, 5], "get_split": [0, 1, 2], "gi": 15, "giglio": 9, "github": 17, "given": 22, "global": [8, 9, 12, 19], "gmao": [12, 19], "goe": [15, 19], "goesr": 19, "gov": [14, 19], "gpu": [16, 17, 20], "graph": 17, "graph_col": [1, 2, 17, 22], "graphtemporaldataset": [1, 2, 17, 22], "grib": 8, "grid": [3, 8, 9, 10, 11, 12, 14, 19, 20], "griffith": 10, "ground": [10, 15, 19], "growth": 10, "gru": [1, 5], "gsfc": [], "guid": 24, "gunshor": 10, "h": [5, 8], "h5netcdf": [], "handl": [20, 22], "hardwar": [0, 1, 20, 23], "hazard": [0, 1, 8, 9, 10, 11, 12, 14, 16, 17, 19, 24], "head": [0, 1, 16, 17, 22], "heat": 12, "height": [11, 12], "help": 24, "helper": [17, 20, 22, 23, 24], "hemispher": 10, "hersbach": [8, 19], "hidden": [16, 22], "hidden_dim": [1, 5, 16, 22], "high": [8, 10, 19], "highlight": 22, "histor": [8, 14, 15], "hold": 19, "home": [], "hotspot": [9, 15], "hourli": [8, 12, 19], "how": [16, 19], "howard": 13, "http": [8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 19], "humid": 12, "hurrican": [2, 12], "i": [2, 5, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 20, 22, 26], "id": [14, 19], "ident": 22, "identifi": 15, "ignit": [10, 11, 13, 15, 19], "imag": 10, "imageri": [10, 13, 19], "impact": [13, 14, 19], "implement": [2, 3, 17, 19, 24], "import": [16, 17, 19, 20, 21, 22, 24], "in_channel": [1, 5], "in_dim": [1, 5, 16, 17, 20, 22, 24], "incid": [15, 19], "includ": [8, 9, 10, 11, 12, 13, 14, 15], "index": [2, 16, 17, 18], "indic": [9, 10], "individu": 13, "infer": [0, 1, 20], "inform": [9, 14, 15], "infrar": 10, "initi": 9, "injuri": 14, "input": [0, 1, 2, 3, 5, 8, 12, 19, 22], "input_dim": [0, 1, 2, 5, 16, 17, 19, 22, 24], "ins": 22, "inspect_d": [], "int": [1, 2, 3, 6, 16, 22], "integr": [9, 10, 11, 13, 14, 15], "interag": [15, 19], "interfac": [1, 5, 17, 19, 21, 24], "intern": [11, 22], "iou": 21, "ipython": [], "isel": [], "iso": [14, 19], "item": [], "iter": [1, 3], "j": [9, 10, 12, 13], "jcli": 12, "journal": [8, 11, 12], "k": 13, "keep": [1, 2, 5, 22], "keyerror": [], "kind": [], "km": 10, "kml": 9, "kwarg": [1, 2, 5, 16, 22], "l": 9, "label": [1, 2, 9, 14, 15, 17, 19, 22], "label_spec": [0, 1, 2, 16, 17, 19, 22, 24], "labelspec": [0, 1, 2, 16, 17, 19, 22, 24], "labrai": 17, "land": [8, 9, 12, 14, 19], "landfir": 19, "landsat": [13, 19], "landscap": [11, 19], "landslid": 2, "larg": [3, 20], "latest": 10, "latitud": [8, 9, 10, 12], "layer": [8, 11, 13, 16, 19, 22], "learn": [8, 11, 12, 14, 17], "len": [], "let": [], "level": [8, 9, 12, 14, 15, 19], "librari": 17, "lightweight": [1, 3, 5, 19, 22], "like": [17, 22], "limit": 12, "line": 16, "linear": [16, 22], "list": [1, 3], "list_var": [], "liter": 3, "load": [0, 1, 2, 16, 17, 24], "load_dataset": [0, 1, 2, 19], "loader": 2, "local": 14, "locat": [9, 14, 15, 19], "log": [17, 23], "logger": 6, "logic": 3, "logit": [5, 17, 22], "long": [12, 13, 19], "longitud": [8, 9, 10, 12], "look": 10, "loop": [1, 3, 22], "loss": 5, "loss_fn": [1, 3, 16, 17, 20, 22, 24], "lower": [], "lr": [16, 17, 20, 22, 24], "m": [8, 9, 10, 11, 12, 13], "machin": [8, 11, 12, 17], "mae": 21, "maintain": 15, "mainten": 26, "make": [1, 2], "mamba": 5, "mamba_lay": 5, "manag": [9, 11, 14, 15, 17, 23], "map": [11, 13], "mask": [1, 5], "match": 18, "matplotlib": [], "matrix": [17, 22], "max": [], "max_epoch": [1, 3, 16, 17, 20, 22, 24], "max_show": [], "max_var": [], "mccarti": 12, "mean": [], "medium": 8, "merra": 19, "merra2": 19, "merra2_sfc_": [], "merra_pres_": [], "metadata": [0, 1, 2, 5, 13, 14, 15, 19], "meteorolog": [8, 9, 10, 11, 12, 14, 15, 19], "meteorologi": [8, 12, 13, 19], "metric": [0, 1, 3, 13, 17, 20, 24], "metricbas": [0, 1, 4, 16, 21], "min": [], "minim": [1, 3, 22], "minut": 10, "miss": [], "mix": [17, 22], "mixed_precis": [1, 3, 16, 17, 20, 22, 24], "mlp": [1, 5, 16, 17, 20, 22, 24], "mlpbackbon": [0, 1, 5], "modap": [], "mode": 10, "model": [0, 1, 2, 3, 8, 9, 11, 12, 13, 14, 15, 17, 19, 20, 24], "modern": [8, 12], "modi": [9, 19], "modul": [0, 16, 17, 23], "modular": [16, 17], "moistur": 12, "monitor": [9, 10, 13, 19], "monthli": 14, "more": [22, 24], "motion": 10, "mtb": 19, "multi": [1, 5, 12, 16, 17], "multipl": [9, 10, 11, 20], "multispectr": [10, 19], "must": [], "my_custom_build": 22, "my_hazard": [16, 19], "my_mlp": [16, 22], "my_model_build": 16, "myhazard": 16, "myhazarddataset": 19, "n": 5, "n_var": [], "name": [0, 1, 2, 5, 6, 13, 15, 16, 17, 19, 20, 22, 24], "namespac": 2, "narr": 14, "nasa": [9, 12, 19], "nation": [11, 13, 14, 15], "nationwid": [11, 19], "natur": [8, 12, 17], "nc": [], "ncdc": [14, 19], "ncei": [14, 19], "need": [3, 21, 22], "neighbor": 22, "netcdf": [8, 10, 12], "netcdf4": [], "new": 9, "next": [5, 17, 22], "nifc": 15, "nn": [16, 17, 20, 22, 24], "no_grad": [17, 22], "noaa": [10, 19], "noaa_flood": 19, "none": [1, 2, 3, 4, 5, 6, 17, 22], "normal": [1, 2, 16], "note": 18, "np": [], "num_class": [1, 4, 5], "num_counti": [2, 5, 17, 22], "num_devic": [1, 6], "num_featur": [2, 5, 17, 22], "num_lay": [1, 5], "num_target": [0, 1, 2, 16, 17, 19, 22, 24], "num_work": [1, 3], "numer": 12, "numpi": [], "o": [], "obj": [1, 3], "object": [1, 2, 3, 4, 19], "observ": [8, 9, 10, 11, 12], "occurr": [9, 14, 15, 19], "ocean": 14, "offic": [12, 14], "offici": 15, "often": 19, "oliva": 9, "one": 17, "ongo": 15, "onlinelibrari": [], "open": [], "open_dataset": [], "open_merra": [], "opendata": 15, "oper": [9, 10, 19], "optim": [1, 3, 16, 17, 20, 22, 24], "option": [1, 2, 5, 8, 16, 17, 20, 22], "org": [8, 9, 10, 11, 12, 13, 18], "other": 23, "otherwis": 20, "our": 26, "out": 17, "out_dim": [1, 5, 16, 17, 20, 22, 24], "output": [1, 5, 22], "over": [3, 10, 21, 22], "overpass": 9, "overrid": 5, "overview": 19, "own": [16, 22], "p": [8, 9, 10], "packag": 0, "page": [14, 17, 19], "pair": [14, 19], "panda": [], "paramet": [5, 16, 17, 20, 22, 24], "particularli": [10, 14], "pass": [16, 21, 22], "past_dai": [2, 5, 17, 22], "patch": [1, 5, 16, 21, 22], "path": [1, 3, 19], "pathlib": [], "pattern": [9, 15], "pattern_pr": [], "pattern_sfc": [], "pd": [], "per": [5, 9, 22], "perimet": [13, 15, 19], "physic": 12, "pick": [], "pip": 18, "pipelin": [8, 9, 11, 12, 15, 17], "pixel": 21, "placehold": [2, 3, 20], "plain": 22, "plan": [11, 26], "pleas": [7, 17, 24], "plt": [], "plu": [1, 2, 19, 22], "point": [9, 10, 14, 15], "polygon": [13, 15], "popul": 2, "portal": [9, 11, 13, 15], "post": [13, 19], "potenti": 9, "power": [9, 17], "pre": [], "precipit": [8, 12], "precis": 17, "pred": [1, 4, 20], "predict": [0, 1, 3, 8, 9, 11, 12, 13, 14, 16, 17, 19, 20, 21, 22], "prefer": [3, 6], "preprocess": [2, 16], "pressur": [8, 12, 19], "print": [17, 22, 24], "prithvi": [], "prob": [17, 22], "probabl": [5, 17, 22], "process": 10, "produc": [8, 11, 12, 13], "product": [9, 10, 11, 13, 15, 19], "profil": 12, "program": [10, 11, 13, 19], "project": [10, 11, 13, 15], "properti": 14, "protocol": 2, "provid": [1, 2, 8, 9, 10, 11, 12, 14, 15, 16, 17, 19, 22], "publicli": [9, 11, 13, 14, 15], "pyhazard": [16, 17, 19, 20, 21, 22, 23, 24, 26], "pyhazards2025": 17, "pyhazards_devic": [6, 24], "pyplot": [], "python": [17, 18, 24], "pytorch": [17, 18, 22], "qj": 8, "qualiti": [9, 26], "quarterli": 8, "quasi": 11, "quayl": 13, "quick": 17, "quickli": [19, 24], "r": [12, 19], "radi": 9, "radianc": 10, "radiat": 8, "rais": [], "randint": [16, 17, 19, 22, 24], "randn": [16, 17, 19, 22, 24], "random": 22, "rang": 8, "rapid": [9, 10], "raster": [1, 3, 5, 10, 11, 13, 17, 19, 20, 22], "rather": 15, "rdnbr": 13, "re": 22, "readi": [1, 2, 17], "real": [9, 10, 15, 19], "reanalysi": [8, 10, 12, 14, 19], "receiv": 22, "recommend": 18, "record": [9, 10, 14, 15, 19], "refer": 24, "refresh": 10, "regim": [11, 13, 19], "region": 14, "regist": [2, 16, 17], "register_dataset": [0, 1, 2, 16, 19], "register_model": [0, 1, 5, 16, 22], "registr": [22, 24], "registri": [0, 1, 16, 17, 19, 22], "regress": [1, 2, 5, 16, 17, 22], "regressionhead": [0, 1, 5], "regressionmetr": [0, 1, 4, 21], "regular": [8, 12], "relat": [8, 10, 14, 19], "releas": 11, "relu": [16, 22], "remot": [9, 11, 13], "replac": [1, 3, 17, 22], "report": [14, 15, 19], "repres": 15, "research": [12, 17, 26], "reset": [0, 1, 4, 16, 21], "reset_index": [], "resolut": [8, 9, 10, 11, 12, 13, 14, 15], "resourc": [9, 11], "respect": 6, "respons": 26, "result": [16, 17, 20, 24], "retrospect": 12, "return": [1, 2, 3, 4, 5, 6, 16, 17, 19, 22, 24], "reusabl": [2, 16, 22], "review": 26, "risk": [8, 11, 17, 19], "rmet": [], "rmse": 21, "rollin": 11, "root": 19, "row": [], "royal": 8, "rse": 9, "run": 20, "runyang": [], "sampl": [2, 17, 22], "satellit": [9, 10, 12, 15], "save": 20, "save_checkpoint": [0, 1, 3], "scalar": [1, 5], "scale": [11, 13], "schmit": 10, "schroeder": [9, 19], "schwind": 13, "search": 17, "see": 19, "seed": [6, 17, 23], "seed_al": [1, 6], "segment": [1, 5, 16, 17, 22], "segmentationhead": [0, 1, 5], "segmentationmetr": [0, 1, 4, 21], "select": [20, 22], "select_strategi": [1, 3], "self": [16, 17, 19, 24], "sens": [9, 11, 13], "sensibl": 20, "sensor": 9, "sequenti": [16, 22], "seri": [1, 5, 10, 19, 22], "serv": 19, "servic": [8, 9, 11, 12, 15], "set": [5, 8, 12, 24], "set_adjac": [1, 5], "set_aspect": [], "set_devic": [1, 6, 24], "sever": [13, 14, 19], "sfc": [], "shape": [1, 2, 5, 17, 22], "shapefil": [9, 13, 15], "ship": 22, "short": [], "should": [1, 2], "show": 16, "shuffl": [1, 3], "sigmoid": [5, 17, 22], "signal": [1, 5], "simpl": [1, 2, 5, 16, 17], "simplifi": 19, "simul": 11, "singl": [1, 2, 8, 19, 20], "situat": [9, 10], "size": 15, "skin": 12, "skipna": [], "slide": [3, 20], "slidingwindowinfer": [1, 3], "slowli": 11, "smoke": [10, 19], "smooth": 5, "so": [16, 22], "societi": [8, 10], "softwar": 17, "soil": 12, "sort_valu": [], "sourc": [1, 2, 3, 4, 5, 6, 15], "space": 22, "spatial": [5, 8, 9, 10, 11, 12, 13, 14, 15, 22], "spatio": 5, "spatiotempor": [8, 9, 12], "spec": [1, 2, 17, 19], "specif": [1, 2, 9, 22], "spectral": [10, 13], "split": [0, 1, 2, 3, 16, 17, 19, 20, 21, 22, 24], "spread": 11, "ssm": 22, "ssr": 22, "stack": [2, 22], "stamp": 9, "standard": [5, 8, 13], "start": [14, 17], "start_dat": 19, "state": [8, 11, 12, 13, 14, 15, 22, 26], "state_dim": 5, "static": [5, 11, 19], "statist": [], "statu": [15, 19], "std": [], "step": [], "stitch": 3, "store": [8, 22], "storm": [14, 19], "str": [1, 2, 3, 4, 5, 16, 22], "strateg": 26, "strategi": [1, 3, 20], "strftime": [], "structur": [8, 9, 10, 11, 12, 13, 14, 15, 19], "studi": [8, 12, 13, 14, 15, 19], "style": [2, 5, 12, 17, 22], "subclass": [1, 2, 16], "submodul": [0, 1], "subpackag": 0, "summarize_da": [], "supervis": [9, 14], "support": [11, 13, 16, 17, 19, 20, 26], "surfac": [8, 9, 10, 12], "survei": 13, "su\u00e1rez": 12, "switch": 22, "system": [8, 9, 10, 11, 12, 13, 14, 15], "t": 10, "t2m": 22, "tab": [], "tabl": [], "tabular": [1, 5, 14, 17, 19, 22], "target": [0, 1, 2, 3, 4, 5, 9, 14, 16, 19, 21, 22], "task": [1, 2, 5, 8, 16, 17, 20, 21, 22, 24], "task_typ": [0, 1, 2, 16, 17, 19, 22, 24], "technic": 26, "temperatur": [8, 10, 12], "tempor": [2, 5, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19], "temporalencod": [0, 1, 5], "tensor": [1, 2, 3, 5, 9, 14, 17, 22], "term": [12, 13, 19], "test": [1, 2, 3, 16, 17, 19, 20, 24], "test_dai": [], "than": 15, "them": [2, 16, 22], "themat": 11, "thermal": [9, 10, 19], "thi": [1, 5, 14, 16, 22, 24], "through": [9, 10, 13, 15, 19], "throughout": [], "time": [1, 5, 9, 10, 12, 14, 15, 19, 22], "timestamp": 14, "titl": 17, "toi": 22, "too": [], "tool": 11, "topographi": 13, "torch": [16, 17, 18, 19, 20, 22, 24], "toyhazard": [17, 24], "tp": 22, "train": [1, 2, 3, 13, 17, 19, 20, 22, 24], "train_d": 17, "train_split": [1, 3], "trainer": [0, 1, 16, 17, 20, 21, 22, 24], "transform": [0, 1, 17], "treat": 15, "trend": [8, 12, 13], "true": [1, 2, 3, 5, 16, 17, 20, 22, 24], "truth": [10, 15, 19], "tupl": [], "tverski": 5, "tverskyloss": [1, 5], "two": [16, 22], "type": [1, 2, 3, 4, 5, 6, 11, 14, 22], "u": [11, 13, 14, 15, 19], "u10": 22, "under": 8, "unifi": [17, 19], "uniqu": 15, "unit": [11, 13, 14, 15], "univers": 26, "updat": [0, 1, 4, 9, 11, 14, 15, 16, 21], "url": [17, 18], "us": [5, 7, 16, 17, 18, 19, 20, 22, 24], "usag": [17, 22], "usda": [], "user": [16, 19], "usf": 19, "usg": 13, "util": [0, 1, 17, 19, 20, 24], "v10": 22, "val": [1, 2, 16, 17, 19, 22, 24], "val_d": 17, "val_split": [1, 3], "valid": [13, 15], "valu": [], "valueerror": [], "var": [], "vari": 11, "variabl": [19, 24], "vast": 8, "vector": 13, "veget": [11, 19], "version": [11, 12], "vertic": [8, 12], "via": [8, 11, 12, 14, 16, 17, 19, 20, 22], "view": 10, "viir": [9, 19], "visibl": 10, "visual": [], "w": [5, 9, 12], "we": 18, "weather": [8, 10, 12, 14], "western": 10, "wf08088": 11, "wfig": 19, "wheel": 18, "when": [9, 14, 19, 20], "where": [10, 14], "which": [10, 14], "whl": 18, "who": 26, "wide": [8, 9, 10, 11, 12, 13, 14, 15, 19], "wildfir": [2, 5, 8, 9, 10, 11, 12, 13, 15, 19], "wildfire_aspp_build": [1, 5], "wildfire_mamba": [17, 22], "wildfire_mamba_build": [1, 5], "wildfireaspp": [1, 5], "wildfirecnnaspp": [1, 5], "wildfiremamba": [1, 5], "wildland": [11, 15], "wilei": [], "wind": [8, 12], "window": [2, 3, 16, 17, 20], "window_fn": 3, "with_count_head": [5, 22], "work": [1, 3, 7, 22], "workflow": [12, 19], "wrap": [20, 22], "www": [14, 19], "wxc": 12, "x": [1, 2, 5, 16, 17, 19, 22, 24], "xarrai": [], "xc25": 26, "xml": [], "xr": [], "xueqi": [17, 26], "y": [2, 16, 17, 19, 22, 24], "year": [13, 17], "you": [7, 17, 22, 24], "your": [16, 17, 22], "yushun": 26, "yyyymmdd": [], "z": 13, "zhu": 13, "zone": 14}, "titles": ["pyhazards", "pyhazards package", "pyhazards.datasets package", "pyhazards.engine package", "pyhazards.metrics package", "pyhazards.models package", "pyhazards.utils package", "How to Cite", "ERA5", "FIRMS", "GOES-R", "LANDFIRE", "MERRA-2", "MTBS", "NOAA Flood Events", "WFIGS", "Implementation Guide", "Wildfire Mamba (spatio-temporal toy)", "Installation", "Datasets", "Engine", "Metrics", "Models", "Utils", "Quick Start", "References", "Core Team"], "titleterms": {"1": [], "2": 12, "3": [], "4": [], "5": [], "6": [], "academ": 25, "access": [8, 9, 10, 11, 12, 13, 14, 15], "backbon": 5, "base": [2, 22], "basic": 24, "build": 22, "builder": 5, "built": 22, "case": [8, 9, 10, 11, 12, 13, 14, 15], "characterist": [8, 9, 10, 11, 12, 13, 14, 15], "cite": [7, 17], "class": [19, 21], "classif": 24, "common": 6, "compon": 17, "config": [], "content": [1, 2, 3, 5, 6], "contributor": 26, "coord": [], "core": [17, 19, 20, 21, 22, 26], "custom": 22, "data": [8, 9, 10, 11, 12, 13, 14, 15], "dataset": [2, 16, 19], "date": [], "design": 22, "develop": 26, "devic": 20, "dim": [], "distribut": [3, 20], "engin": [3, 20], "era5": 8, "event": 14, "exampl": [19, 24], "filenam": [], "firm": 9, "flood": 14, "goe": 10, "gpu": 24, "guid": 16, "hardwar": 6, "hazard": 2, "head": 5, "helper": [], "how": [7, 17], "implement": 16, "import": [], "indic": 17, "infer": 3, "inspect": 19, "instal": 18, "landfir": 11, "lat": [], "lead": 26, "level": [], "load": [], "lon": [], "maintain": 26, "mamba": [17, 22], "map": [], "merra": 12, "metric": [4, 16, 21], "model": [5, 16, 22], "modul": [1, 2, 3, 5, 6, 20, 22], "mtb": 13, "next": 24, "noaa": 14, "note": 22, "overview": [8, 9, 10, 11, 12, 13, 14, 15], "packag": [1, 2, 3, 4, 5, 6], "path": [], "pattern": [], "plot": [], "princip": 26, "public": 25, "pyhazard": [0, 1, 2, 3, 4, 5, 6, 18], "quick": 24, "r": 10, "refer": [8, 9, 10, 11, 12, 13, 14, 15, 25], "regist": 22, "registri": [2, 5], "requir": 18, "setup": [], "skeleton": 19, "spatio": [17, 22], "start": 24, "stat": [], "step": 24, "submodul": [2, 3, 5, 6, 23], "subpackag": 1, "summari": [19, 20, 21, 22, 23], "support": 24, "tabl": 17, "tabular": 24, "team": 26, "tempor": [17, 22], "toi": [17, 24], "train": 16, "trainer": 3, "transform": [2, 16], "typic": [8, 9, 10, 11, 12, 13, 14, 15, 20], "us": [8, 9, 10, 11, 12, 13, 14, 15], "usag": [20, 21, 24], "util": [6, 23], "variabl": [8, 9, 10, 11, 12, 13, 14, 15], "wfig": 15, "wildfir": [17, 22]}}) \ No newline at end of file diff --git a/docs/source/pyhazards_datasets.rst b/docs/source/pyhazards_datasets.rst index d175520..8cb9e6b 100644 --- a/docs/source/pyhazards_datasets.rst +++ b/docs/source/pyhazards_datasets.rst @@ -41,139 +41,23 @@ Datasets Dataset inspection ------------------ -A short, step-by-step example to inspect and visualize daily MERRA-2 NetCDF files. - -.. topic:: 1) Setup (imports the data) - - This block imports the dependencies used throughout the inspection workflow. - - .. code-block:: python - - import os - from pathlib import Path - from datetime import date - - import numpy as np - import pandas as pd - import xarray as xr - import matplotlib.pyplot as plt - from IPython.display import display - -.. topic:: 2) Config (paths + date + filename patterns) - - Set the root directory and choose a test day. The code assumes one file per day. - - .. code-block:: python - - ROOT = Path("/home/runyang/WxC/Prithvi-WxC/data/merra2") - - DATE_START = date(2024, 1, 1) - DATE_END = date(2025, 10, 31) - TEST_DAY = DATE_START - - PATTERN_SFC = "MERRA2_sfc_{yyyymmdd}.nc" - PATTERN_PRES = "MERRA_pres_{yyyymmdd}.nc" - - def yyyymmdd(d: date) -> str: - return d.strftime('%Y%m%d') - - def build_path(kind: str, d: date) -> Path: - if kind.lower() in ['sfc', 'surface']: - return ROOT / PATTERN_SFC.format(yyyymmdd=yyyymmdd(d)) - if kind.lower() in ['pres', 'pressure']: - return ROOT / PATTERN_PRES.format(yyyymmdd=yyyymmdd(d)) - raise ValueError("kind must be 'sfc' or 'pres'") - - build_path('sfc', TEST_DAY), build_path('pres', TEST_DAY) - -.. topic:: 3) Load helpers - - Use ``xarray.open_dataset`` so you can work with named dimensions and variables. - - .. code-block:: python - - def open_merra(kind: str, d: date, *, engine: str | None = None, chunks=None) -> xr.Dataset: - """Open one daily MERRA2 file as an xarray Dataset.""" - path = build_path(kind, d) - if not path.exists(): - raise FileNotFoundError(f"Missing file: {path}") - - # engine=None lets xarray pick; you can set engine='netcdf4' or 'h5netcdf' if needed. - ds = xr.open_dataset(path, engine=engine, chunks=chunks) - return ds - - def list_vars(ds: xr.Dataset, max_show: int = 60) -> pd.DataFrame: - rows = [] - for name, da in ds.data_vars.items(): - rows.append({ - 'var': name, - 'dims': str(da.dims), - 'shape': str(tuple(da.shape)), - 'dtype': str(da.dtype), - }) - df = pd.DataFrame(rows).sort_values('var').reset_index(drop=True) - return df.head(max_show) if len(df) > max_show else df - - def inspect_ds(ds: xr.Dataset, name: str = 'dataset', max_vars: int = 60): - print(f"=== {name} ===") - print('dims:', dict(ds.dims)) - print('coords:', list(ds.coords)) - print('n_vars:', len(ds.data_vars)) - display(list_vars(ds, max_show=max_vars)) - - def summarize_da(da: xr.DataArray, *, load: bool = False) -> pd.Series: - """Global numeric summary for a DataArray.""" - x = da - if load: - x = x.load() - # Works for dask-backed arrays too - s = xr.Dataset({ - 'min': x.min(skipna=True), - 'max': x.max(skipna=True), - 'mean': x.mean(skipna=True), - 'std': x.std(skipna=True), - }).compute() - return pd.Series({k: float(s[k].values) for k in s.data_vars}) - -.. topic:: 4) Load + quick inspect (dims, coords, basic stats) - - Load both surface and pressure-level files and print basic metadata. - - .. code-block:: python - - ds_sfc = open_merra('sfc', TEST_DAY) - ds_pres = open_merra('pres', TEST_DAY) - - inspect_ds(ds_sfc, 'SFC (one day)') - inspect_ds(ds_pres, 'PRES (one day)') - -.. topic:: 5) Variable-level inspect - - Pick a variable (e.g., `T2M`) and compute global statistics. - - .. code-block:: python - - VAR = 'T2M' # change if your file uses a different naming - - if VAR not in ds_sfc: - raise KeyError(f"{VAR} not found in ds_sfc. Pick one from the table above.") - - da = ds_sfc[VAR] - print('dims:', da.dims) - print('shape:', da.shape) - summarize_da(da) - -.. topic:: 6) Plot a lat-lon map for a variable - - .. code-block:: python - - var = "T2M" - t = 0 - Z = ds_sfc[var].isel(time=t).values - plt.contourf(ds_sfc["lon"], ds_sfc["lat"], Z, 100) - plt.gca().set_aspect("equal") - plt.title(f"{var} (t={t})") - plt.show() +PyHazards provides a built-in inspection utility that allows users to +quickly explore dataset structure and contents through a unified API. + +The example below demonstrates how to inspect a daily MERRA-2 file using +the PyHazards dataset interface. + +.. code-block:: python + + import pyhazards + + dataset = pyhazards.datasets.MERRA2( + root="/path/to/merra2", + start_date="2024-01-01", + end_date="2024-01-31", + ) + + dataset.inspect(day="2024-01-01") Core classes ------------