def runMutationdevelopment_independentPopulations(self, N, r, d, K, b1, b2, m):
     bValues = np.zeros((15000,3))
     time = 1
     resultPosition = 0
     population1 = Population(m, mutationON=False)
     population1.addIndividual(r, d, N, b1, K, resident=True)
     population2 = Population(m, mutationON=False)
     population2.addIndividual(r, d, N, b2, K, resident=True)
     while time <= 30000:
         population1.updatePopulation(1)
         population2.updatePopulation(1)
         if time % 100 == 1: 
             bValues[resultPosition] = [time, population1.getAverageB(), population2.getAverageB()]
             resultPosition += 1
         time += 1
     population1.mutationON = True
     population2.mutationON = True
     while time <= 150000:
         population1.updatePopulation(1)
         population2.updatePopulation(1)
         if time % 100 == 1: 
             bValues[resultPosition] = [time, population1.getAverageB(), population2.getAverageB()]
             resultPosition += 1
         time += 1
     return bValues
 def runMutationdevelopment_coexistingCommunity(self, N, r, d, K, b1, b2, m):
     bValues = np.zeros((15000,3))
     time = 1
     resultPosition = 0
     population = Population(m, mutationON=False)
     population.addIndividual(r, d, N, b1, K, resident=True)
     population.addIndividual(r, d, N, b2, K, resident=False)
     while time <= 30000:
         population.updatePopulation(1)
         if time % 100 == 1: 
             bValues[resultPosition]= [time, population.getResidentAverageB(),population.getInvaderAverageB()]
             resultPosition += 1
         time += 1
     population.mutationON = True
     while time <= 150000:
         population.updatePopulation(1)
         if time % 100 == 1: 
             bValues[resultPosition] = [time, population.getResidentAverageB(),population.getInvaderAverageB()]
             resultPosition += 1
         time += 1
     return bValues