class_docstr: The HydroNet dataest from the
  `"HydroNet: Benchmark Tasks for Preserving Intermolecular Interactions and
  Structural Motifs in Predictive and Generative Models for Molecular Data"
  <https://arxiv.org/abs/2012.00131>`_ paper, consisting of 5 million water
  clusters held together by hydrogen bonding networks.  This dataset
  provides atomic coordinates and total energy in kcal/mol for the cluster.
  
  Args:
      root (str): Root directory where the dataset should be saved.
      name (str, optional): Name of the subset of the full dataset to use:
          :obj:`"small"` uses 500k graphs sampled from the :obj:`"medium"`
          dataset, :obj:`"medium"` uses 2.7m graphs with maximum size of 75
          nodes.
          Mutually exclusive option with the clusters argument.
          (default :obj:`None`)
      transform (callable, optional): A function/transform that takes in an
          :obj:`torch_geometric.data.Data` object and returns a transformed
          version. The data object will be transformed before every access.
          (default: :obj:`None`)
      pre_transform (callable, optional): A function/transform that takes in
          an :obj:`torch_geometric.data.Data` object and returns a
          transformed version. The data object will be transformed before
          being saved to disk. (default: :obj:`None`)
      force_reload (bool, optional): Whether to re-process the dataset.
          (default: :obj:`False`)
      num_workers (int): Number of multiprocessing workers to use for
          pre-processing the dataset. (default :obj:`8`)
      clusters (int or List[int], optional): Select a subset of clusters
          from the full dataset. If set to :obj:`None`, will select all.
          (default :obj:`None`)
      use_processed (bool): Option to use a pre-processed version of the
          original :obj:`xyz` dataset. (default: :obj:`True`)
class_docstr_tok: ["The","HydroNet","dataest","from","the","`","``","HydroNet",":","Benchmark","Tasks","for","Preserving","Intermolecular","Interactions","and","Structural","Motifs","in","Predictive","and","Generative","Models","for","Molecular","Data","''","<","https",":","\/\/arxiv.org\/abs\/2012.00131",">","`","_","paper",",","consisting","of","5","million","water","clusters","held","together","by","hydrogen","bonding","networks",".","This","dataset","provides","atomic","coordinates","and","total","energy","in","kcal\/mol","for","the","cluster",".","Args",":","root","(","str",")",":","Root","directory","where","the","dataset","should","be","saved",".","name","(","str",",","optional",")",":","Name","of","the","subset","of","the","full","dataset","to","use",":",":","obj",":","`","``","small","''","`","uses","500k","graphs","sampled","from","the",":","obj",":","`","``","medium","''","`","dataset",",",":","obj",":","`","``","medium","''","`","uses","2.7m","graphs","with","maximum","size","of","75","nodes",".","Mutually","exclusive","option","with","the","clusters","argument",".","(","default",":","obj",":","`","None","`",")","transform","(","callable",",","optional",")",":","A","function\/transform","that","takes","in","an",":","obj",":","`","torch_geometric.data.Data","`","object","and","returns","a","transformed","version",".","The","data","object","will","be","transformed","before","every","access",".","(","default",":",":","obj",":","`","None","`",")","pre_transform","(","callable",",","optional",")",":","A","function\/transform","that","takes","in","an",":","obj",":","`","torch_geometric.data.Data","`","object","and","returns","a","transformed","version",".","The","data","object","will","be","transformed","before","being","saved","to","disk",".","(","default",":",":","obj",":","`","None","`",")","force_reload","(","bool",",","optional",")",":","Whether","to","re-process","the","dataset",".","(","default",":",":","obj",":","`","False","`",")","num_workers","(","int",")",":","Number","of","multiprocessing","workers","to","use","for","pre-processing","the","dataset",".","(","default",":","obj",":","`","8","`",")","clusters","(","int","or","List","[","int","]",",","optional",")",":","Select","a","subset","of","clusters","from","the","full","dataset",".","If","set","to",":","obj",":","`","None","`",",","will","select","all",".","(","default",":","obj",":","`","None","`",")","use_processed","(","bool",")",":","Option","to","use","a","pre-processed","version","of","the","original",":","obj",":","`","xyz","`","dataset",".","(","default",":",":","obj",":","`","True","`",")"]
code: def get(self, idx: int) -> Data:
      return self._dataset[idx]
  
imports: import copy
  import os
  import os.path
  from dataclasses import dataclass
  from functools import cached_property
  from glob import glob
  from pathlib import Path
  from typing import Callable, List, MutableSequence, Optional, Tuple, Union
  import numpy
  import torch
  from torch.utils.data import ConcatDataset, Subset
  from torch_geometric.data import Data, InMemoryDataset, download_url, extract_zip
  from torch_geometric.data.data import BaseData
label_desc: Use image node_id 13 for calling the HydroNet obj's underlying member method code with example usage: obj.get(idx) and returns: self