class_docstr: The distribution that returns the input values directly.
  
  This is similar to DiagGaussian with standard deviation zero (thus only
  requiring the "mean" values as NN output).
  
  Note: entropy is always zero, ang logp and kl are not implemented.
  
  .. testcode::
      :skipif: True
  
      m = TorchDeterministic(loc=torch.tensor([0.0, 0.0]))
      m.sample(sample_shape=(2,))
  
  .. testoutput::
  
      tensor([[ 0.0, 0.0], [ 0.0, 0.0]])
  
  Args:
      loc: the determinsitic value to return
class_docstr_tok: ["The","distribution","that","returns","the","input","values","directly",".","This","is","similar","to","DiagGaussian","with","standard","deviation","zero","(","thus","only","requiring","the","``","mean","''","values","as","NN","output",")",".","Note",":","entropy","is","always","zero",",","ang","logp","and","kl","are","not","implemented",".","..","testcode",":",":",":","skipif",":","True","m","=","TorchDeterministic","(","loc=torch.tensor","(","[","0.0",",","0.0","]",")",")","m.sample","(","sample_shape=","(","2",",",")",")","..","testoutput",":",":","tensor","(","[","[","0.0",",","0.0","]",",","[","0.0",",","0.0","]","]",")","Args",":","loc",":","the","determinsitic","value","to","return"]
code: def __init__(self, loc: torch.Tensor) -> None:
      super().__init__()
      self.loc = loc
  
imports: import gymnasium
  import numpy
  from typing import Optional, List, Mapping, Iterable, Dict
  import tree
  import abc
  from ray.rllib.models.distributions import Distribution
  from ray.rllib.utils.annotations import override, DeveloperAPI
  from ray.rllib.utils.framework import try_import_torch
  from ray.rllib.utils.typing import TensorType, Union, Tuple
label_desc: Use image node_id 1 to create a new TorchDeterministic object from inherited base classes: Distribution with example: obj = TorchDeterministic(loc)