experiment_list_filename = join(path, "experiments.json")

    if len(sys.argv) > 1:
        nproc = int(sys.argv[1])
    else:
        nproc = 1

    print("Reading Experiments")
    from math import pi

    experiments = ExperimentListFactory.from_json_file(
        experiment_list_filename)

    profile_model = ProfileModelList()
    profile_model.append(
        ProfileModel(n_sigma=3,
                     sigma_b=0.024 * pi / 180,
                     sigma_m=0.044 * pi / 180))

    print("Predicting Reflections")
    rlist = flex.reflection_table.from_predictions(experiments[0])
    rlist["id"] = flex.int(len(rlist), 0)
    rlist.compute_bbox(experiments, profile_model)
    rlist.compute_zeta_multi(experiments)
    rlist.compute_d(experiments)
    print("")

    print("Creating params")
    from dials.algorithms.integration.integrator import IntegratorFactory
    from dials.algorithms.integration.integrator import phil_scope
    from libtbx import phil
  path = '/home/upc86896/Data/Data/i04-BAG-training/dials_processed/'

  experiment_list_filename = join(path, "experiments.json")

  if len(sys.argv) > 1:
    nproc = int(sys.argv[1])
  else:
    nproc = 1

  print "Reading Experiments"
  from math import pi
  experiments = ExperimentListFactory.from_json_file(experiment_list_filename)

  profile_model = ProfileModelList()
  profile_model.append(ProfileModel(
    n_sigma=3,
    sigma_b=0.024*pi/180,
    sigma_m=0.044*pi/180))


  print "Predicting Reflections"
  rlist = flex.reflection_table.from_predictions(experiments[0])
  rlist['id'] = flex.int(len(rlist), 0)
  rlist.compute_bbox(experiments, profile_model)
  rlist.compute_zeta_multi(experiments)
  rlist.compute_d(experiments)
  print ""

  print "Creating params"
  from dials.algorithms.integration.integrator import IntegratorFactory
  from dials.algorithms.integration.integrator import phil_scope
  from libtbx import phil