code: def __init__(
      self,
      emb_size,
      int_emb_size,
      basis_emb_size,
      num_radial,
      num_spherical,
      num_before_skip,
      num_after_skip,
      activation=None,
  ):
      super(InteractionPPBlock, self).__init__()
  
      self.activation = activation
      # Transformations of Bessel and spherical basis representations
      self.dense_rbf1 = nn.Linear(
          num_radial, basis_emb_size, bias=False
      )
      self.dense_rbf2 = nn.Linear(basis_emb_size, emb_size, bias=False)
      self.dense_sbf1 = nn.Linear(
          num_radial * num_spherical, basis_emb_size, bias=False
      )
      self.dense_sbf2 = nn.Linear(
          basis_emb_size, int_emb_size, bias=False
      )
      # Dense transformations of input messages
      self.dense_ji = nn.Linear(emb_size, emb_size)
      self.dense_kj = nn.Linear(emb_size, emb_size)
      # Embedding projections for interaction triplets
      self.down_projection = nn.Linear(
          emb_size, int_emb_size, bias=False
      )
      self.up_projection = nn.Linear(int_emb_size, emb_size, bias=False)
      # Residual layers before skip connection
      self.layers_before_skip = nn.ModuleList(
          [
              ResidualLayer(emb_size, activation=activation)
              for _ in range(num_before_skip)
          ]
      )
      self.final_before_skip = nn.Linear(emb_size, emb_size)
      # Residual layers after skip connection
      self.layers_after_skip = nn.ModuleList(
          [
              ResidualLayer(emb_size, activation=activation)
              for _ in range(num_after_skip)
          ]
      )
  
      self.reset_params()
  
file_path: dgl/examples/pytorch/dimenet/modules/interaction_pp_block.py
imports: import dgl
  import dgl.function
  import torch.nn
  from modules.initializers import GlorotOrthogonal
  from modules.residual_layer import ResidualLayer
label_desc: Use image node_id 1 to create a new InteractionPPBlock object from inherited base classes: nn with example: obj = InteractionPPBlock(emb_size, int_emb_size, basis_emb_size, num_radial, num_spherical, num_before_skip, num_after_skip, activation)