def main(): from simtbx.nanoBragg.sim_data import SimData import sys if "--cuda" in sys.argv: import os os.environ["DIFFBRAGG_USE_CUDA"] = "1" S = SimData(use_default_crystal=True) S.instantiate_diffBragg() S.D.nopolar = True S.D.oversample = 3 S.D.add_diffBragg_spots() S._add_background() diff_img = S.D.raw_pixels.as_numpy_array() S.D.raw_pixels *= 0 S.D.add_nanoBragg_spots() S._add_background() nano_img = S.D.raw_pixels.as_numpy_array() import numpy as np assert np.allclose(diff_img, nano_img, atol=1e-9)
SIM.detector = SimData.simple_detector(detdist, 0.1, shape) SIM.crystal = nbcryst SIM.instantiate_diffBragg(oversample=0, auto_set_spotscale=True) SIM.D.default_F = 0 SIM.D.F000 = 0 SIM.D.progress_meter = False SIM.water_path_mm = 0.005 SIM.air_path_mm = 0.1 SIM.add_air = True SIM.add_Water = True SIM.include_noise = True SIM.D.verbose = 2 SIM.D.add_diffBragg_spots() SIM.D.verbose = 0 spots = SIM.D.raw_pixels.as_numpy_array() SIM._add_background() SIM.D.readout_noise_adu = args.readout SIM._add_noise() # This is the ground truth image: img = SIM.D.raw_pixels.as_numpy_array() if args.plot: import pylab as plt plt.imshow(img, vmax=100) plt.title("Ground truth image") plt.show() SIM.D.raw_pixels *= 0 P = phil_scope.extract() E = Experiment()