Example #1
0
def ex2_4(simulations):
    print(f'simulations: {len(simulations)}')
    for simulation in simulations:
        velocities = [step.speeds() for step in simulation.getSecondHalf()]
        velocities = [item for sublist in velocities
                      for item in sublist]  #flatten
        bin_size = 200
        print("Plotting\n")
        fig, ax = plt.subplots()
        values = np.histogram(velocities, density=True, bins=bin_size)
        bin_centres = (values[1][:-1] + values[1][1:]) / 2.
        bin_centres_x = (values[0][:-1] + values[0][1:]) / 2.
        ax.plot(bin_centres, values[0], 'o', markersize=2)

        adjustment = [mb(x) for x in bin_centres]
        ax.plot(bin_centres, adjustment, '-')

        ax.set_xlabel('Velocidad (m/s)')
        ax.set_ylabel('PDF')
        fig.tight_layout()

        saveFig(fig, '2_4')

        # plot error
        results, rang = errorFn(bin_centres, values[0])
        fig, ax = plt.subplots()
        ax.plot(rang, results, 'o', markersize=2)
        ax.set_ylabel('Error')
        ax.set_xlabel('Parámetro Libre (a)')
        fig.tight_layout()

        saveFig(fig, '2_4_error')
Example #2
0
def error(simulations):
  diffusionSlope, diffusionB, averageSquaredDistances, deviations = calculateDiffusion(simulations)
  print(f'Coeficiente de difusion aproximado: {diffusionSlope}')
  
  fig, ax = plt.subplots()
  y_axis, x_axis = errorFn(range(len(averageSquaredDistances)),averageSquaredDistances)
  ax.plot([x * 10 ** 5 for x in x_axis], y_axis) 
  ax.set_xlabel('C (10^-5)')
  ax.set_ylabel('Error')
  ax.set_title(f'Error del ajuste por función lineal') 
  fig.tight_layout()
  saveFig(fig, 'error')
Example #3
0
def bev():
  xs = [0.15, 0.17, 0.22, 0.25] # Acá van los valores usados de D 
  ys = [1, 2, 3, 4] # Acá van los valores de caudales para cada D
  err = [0.1, 0.1, 0.1, 0.1] #Acá van los errores del caudal para cada D
  results, rang = errorFn(xs, ys)
  fig, ax = plt.subplots()
  ax.set_ylabel('Caudal promedio [p/s]')
  ax.set_xlabel('Ancho de apertura [m]')
  fig.tight_layout()
  ax.plot(xs, ys, 'o-', markersize=4)
  ax.plot(rang, results, 'o', markersize=2) 
  saveFig(fig, '1_1bev')