class_docstr: A list of box decompositions.
class_docstr_tok: ["A","list","of","box","decompositions","."]
docstr: Compute hypervolume that is dominated by the Pareto Froniter.
  
  Returns:
      A `(batch_shape)`-dim tensor containing the hypervolume dominated by
          each Pareto frontier.
docstr_tok: ["Compute","hypervolume","that","is","dominated","by","the","Pareto","Froniter",".","Returns",":","A","`","(","batch_shape",")","`","-dim","tensor","containing","the","hypervolume","dominated","by","each","Pareto","frontier","."]
code: def compute_hypervolume(self) -> Tensor:
      r"""Compute hypervolume that is dominated by the Pareto Froniter.
  
      Returns:
          A `(batch_shape)`-dim tensor containing the hypervolume dominated by
              each Pareto frontier.
      """
      return torch.stack(
          [p.compute_hypervolume() for p in self.box_decompositions],
          dim=0,
      )
  
file_path: botorch/botorch/utils/multi_objective/box_decompositions/box_decomposition_list.py
imports: from __future__ import annotations
  from typing import List, Union
  import torch
  from botorch.exceptions.errors import BotorchTensorDimensionError
  from botorch.utils.multi_objective.box_decompositions.box_decomposition import BoxDecomposition
  from torch import Tensor
  from torch.nn import Module, ModuleList
label_desc: Use image node_id 6 for calling the BoxDecompositionList obj's underlying member method code with example usage: obj.compute_hypervolume() and returns: torch