class_docstr: Mapping from logical cores in a computation to the physical TPU topology.
  
  Prefer to use the `DeviceAssignment.build()` helper to construct a
  `DeviceAssignment`; it is easier if less flexible than constructing a
  `DeviceAssignment` directly.
class_docstr_tok: ["Mapping","from","logical","cores","in","a","computation","to","the","physical","TPU","topology",".","Prefer","to","use","the","`","DeviceAssignment.build","(",")","`","helper","to","construct","a","`","DeviceAssignment","`",";","it","is","easier","if","less","flexible","than","constructing","a","`","DeviceAssignment","`","directly","."]
docstr: The logical to physical core mapping.
  
  Returns:
    An integer numpy array of rank 3, with shape
    `[num_replicas, num_cores_per_replica, topology_rank]`. Maps
    (replica, logical core) pairs to physical topology coordinates.
docstr_tok: ["The","logical","to","physical","core","mapping",".","Returns",":","An","integer","numpy","array","of","rank","3",",","with","shape","`","[","num_replicas",",","num_cores_per_replica",",","topology_rank","]","`",".","Maps","(","replica",",","logical","core",")","pairs","to","physical","topology","coordinates","."]
code: def core_assignment(self) -> np.ndarray:
      """The logical to physical core mapping.
  
      Returns:
        An integer numpy array of rank 3, with shape
        `[num_replicas, num_cores_per_replica, topology_rank]`. Maps
        (replica, logical core) pairs to physical topology coordinates.
      """
      return self._core_assignment
  
imports: import enum
  import math
  from typing import List, Optional, Tuple
  import numpy
  from tensorflow.python.platform import tf_logging
  from tensorflow.python.tpu.topology import Topology
  from tensorflow.python.util.tf_export import tf_export
label_desc: Use image node_id 5 for calling the DeviceAssignment obj's underlying member method code with example usage: obj.core_assignment() and returns: self