code: def add_node_to_network(self, node, network):
          
          network.add_node(node)
          node.receive()
  
          environment = network.nodes(type=Environment)[0]
          environment.connect(whom=node)
  
          gene = node.infos(type=LearningGene)[0].contents
          if (gene == "social"):
              prev_agents = RogersAgent.query\
                  .filter(and_(RogersAgent.failed == False,
                               RogersAgent.network_id == network.id,
                               RogersAgent.generation == node.generation - 1))\
                  .all()
              parent = random.choice(prev_agents)
              parent.connect(whom=node)
              parent.transmit(what=Meme, to_whom=node)
          elif (gene == "asocial"):
              environment.transmit(to_whom=node)
          else:
              raise ValueError("{} has invalid learning gene value of {}"
                               .format(node, gene))
          node.receive()
docs: Add participant's node to a network.