class_docstr: The GripNet model.
  
  Args:
      supergraph (SuperGraph): the supergraph.
  
  Reference:
      Xu, H., Sang, S., Bai, P., Li, R., Yang, L. and Lu, H., 2022. GripNet: Graph Information
      Propagation on Supergraph for Heterogeneous Graphs. Pattern Recognition, p.108973.
class_docstr_tok: ["The","GripNet","model",".","Args",":","supergraph","(","SuperGraph",")",":","the","supergraph",".","Reference",":","Xu",",","H.",",","Sang",",","S.",",","Bai",",","P.",",","Li",",","R.",",","Yang",",","L.","and","Lu",",","H.",",","2022",".","GripNet",":","Graph","Information","Propagation","on","Supergraph","for","Heterogeneous","Graphs",".","Pattern","Recognition",",","p.108973","."]
code: def __init_module_supervertex__(
      self, supervertex: SuperVertex, setting: SuperVertexParaSetting
  ):
      module_list = torch.nn.ModuleList()
  
      if not supervertex.start_supervertex:
          # add the external modules from all parent supervertices
          for in_name in supervertex.in_supervertex_list:
              in_channels = self.supervertex_module_dict[in_name][
                  -1
              ].out_channels
  
              if setting.exter_agg_channels_dict is None:
                  error_msg = "`exter_agg_channels_dict` is not set."
                  logging.error(error_msg)
                  raise ValueError(error_msg)
  
              out_channels = setting.exter_agg_channels_dict[in_name]
              module_list.append(
                  GripNetExternalModule(
                      in_channels, out_channels, supervertex.num_node
                  )
              )
  
      # add the internal module
      module_list.append(
          GripNetInternalModule(
              supervertex.num_node_feat,
              supervertex.num_edge_type,
              supervertex.start_supervertex,
              setting,
          )
      )
  
      self.supervertex_module_dict[supervertex.name] = module_list
  
imports: import logging
  from typing import Dict
  import torch
  import torch.nn.functional
  from torch.nn import Module
  from kale.embed.gcn import GCNEncoderLayer, RGCNEncoderLayer
  from kale.prepdata.supergraph_construct import SuperGraph, SuperVertex, SuperVertexParaSetting
label_desc: Use image node_id 4 for calling the GripNet obj's underlying member method code with example usage: obj.__init_module_supervertex__(supervertex, setting) without return types