parameters: (
              self, 
              ntypes: int,
              reuse = None, 
              suffix = '',
      )
return_statement: return self.ebd_type
docstring: Build the computational graph for the descriptor
  
          Parameters
          ----------
          ntypes
                  Number of atom types.
          reuse
                  The weights in the networks should be reused when get the variable.
          suffix
                  Name suffix to identify this descriptor
  
          Returns
          -------
          embedded_types
                  The computational graph for embedded types
docstring_summary: Build the computational graph for the descriptor
docstring_tokens: Build the computational graph for the descriptor
function: def build(
              self, 
              ntypes: int,
              reuse = None, 
              suffix = '',
      ):
          """
          Build the computational graph for the descriptor
  
          Parameters
          ----------
          ntypes
                  Number of atom types.
          reuse
                  The weights in the networks should be reused when get the variable.
          suffix
                  Name suffix to identify this descriptor
  
          Returns
          -------
          embedded_types
                  The computational graph for embedded types        
          """
          types = tf.convert_to_tensor(
              [ii for ii in range(ntypes)],
              dtype = tf.int32
          )
          ebd_type = tf.cast(tf.one_hot(tf.cast(types,dtype=tf.int32),int(ntypes)), self.filter_precision)
          ebd_type = tf.reshape(ebd_type, [-1, ntypes])
          name = 'type_embed_net' + suffix
          with tf.variable_scope(name, reuse=reuse):
              ebd_type = embedding_net(
                  ebd_type,
                  self.neuron,
                  activation_fn = self.filter_activation_fn,
                  precision = self.filter_precision,
                  resnet_dt = self.filter_resnet_dt,
                  seed = self.seed,
                  trainable = self.trainable, 
                  uniform_seed = self.uniform_seed)
          ebd_type = tf.reshape(ebd_type, [-1, self.neuron[-1]]) # nnei * neuron[-1]
          self.ebd_type = tf.identity(ebd_type, name ='t_typeebd')
          return self.ebd_type
function_tokens: def build ( self , ntypes : int , reuse = None , suffix = '' , ) : types = tf . convert_to_tensor ( [ ii for ii in range ( ntypes ) ] , dtype = tf . int32 ) ebd_type = tf . cast ( tf . one_hot ( tf . cast ( types , dtype = tf . int32 ) , int ( ntypes ) ) , self . filter_precision ) ebd_type = tf . reshape ( ebd_type , [ - 1 , ntypes ] ) name = 'type_embed_net' + suffix with tf . variable_scope ( name , reuse = reuse ) : ebd_type = embedding_net ( ebd_type , self . neuron , activation_fn = self . filter_activation_fn , precision = self . filter_precision , resnet_dt = self . filter_resnet_dt , seed = self . seed , trainable = self . trainable , uniform_seed = self . uniform_seed ) ebd_type = tf . reshape ( ebd_type , [ - 1 , self . neuron [ - 1 ] ] ) # nnei * neuron[-1] self . ebd_type = tf . identity ( ebd_type , name = 't_typeebd' ) return self . ebd_type