class_docstr: Class providing functionality for computing operations related to getting lower and upper bounds on zonotopes.
class_docstr_tok: ["Class","providing","functionality","for","computing","operations","related","to","getting","lower","and","upper","bounds","on","zonotopes","."]
docstr: Compute the upper and lower bounds for the final zonotopes
  
  :param cent: center/zeroth zonotope term.
  :param eps: zonotope error terms.
  :return: lists with the upper and lower bounds.
docstr_tok: ["Compute","the","upper","and","lower","bounds","for","the","final","zonotopes",":","param","cent",":","center\/zeroth","zonotope","term",".",":","param","eps",":","zonotope","error","terms",".",":","return",":","lists","with","the","upper","and","lower","bounds","."]
code: def zonotope_get_bounds(
      self, cent: "torch.Tensor", eps: "torch.Tensor"
  ) -> Tuple[list, list]:
      """
      Compute the upper and lower bounds for the final zonotopes
  
      :param cent: center/zeroth zonotope term.
      :param eps: zonotope error terms.
      :return: lists with the upper and lower bounds.
      """
      upper_bounds_output = []
      lower_bounds_output = []
  
      for j in range(cent.shape[0]):
          # compute lower bounds
          lbs = self.compute_lb(eps=eps[:, j], cent=cent[j])
          # compute upper bounds
          ubs = self.compute_ub(eps=eps[:, j], cent=cent[j])
  
          upper_bounds_output.append(ubs)
          lower_bounds_output.append(lbs)
      return upper_bounds_output, lower_bounds_output
  
imports: from typing import Tuple, Union
  import numpy
  import torch
label_desc: Use image node_id 5 for calling the ZonoBounds obj's underlying member method code with example usage: obj.zonotope_get_bounds(cent, eps) and returns: upper_bounds_output,  lower_bounds_output