====== .inp file format ====== An //.inp// file is an ASCII file which serves as an input file for the [[software:polyxsim|PolyXSim]] simulation algorithm. The code below shows an example of how a basic //.inp// file looks like. For a more advanced version * with simulation of background: [[fileformat:inp:background|here]], * more advanced examples in the section on [[processing:synthetic_dataset|creation of the synthetic dataset]]. The code basically shows two columns. The left one shows the input parameters and the code which the PolyXSim algorithm can read. The second column to the right shows the respective explanations. Note that every passage which starts with a # symbol is skipped by the algorithm. So all explanations (right column) start with a # in front. Some input code (left column) is also labelled with a #. By doing this you can force the algorithm to skip the labelled passage, for example in line 3: //#beam_width//. Depending on the kind of simulation you want to perform, it might be necessary to switch on/switch off certain input parameters. ## Instrumental, looks like P02 in PETRA wavelength 0.289 # wavelength in Angstrom #beam_width 1 # Beam width (mm) If no beam width is specified it is assumed that the entire sample width is illuminated beamflux 1e17 # Beam flux (Ph/s/mm2) beampol_factor 1 # Polarisation factor beampol_direct 0 # Polarisation direction dety_center 1024 # beamcenter, y in pixel coordinates detz_center 1024 # beamcenter, z in pixel coordinates y_size 0.2000 # Pixel size y (mm) z_size 0.2000 # Pixel size z (mm) dety_size 2048 # detector y size (pixels) detz_size 2048 # detector z size (pixels) distance 400 # sample-detector distance (mm) tilt_x 0.0 # detector tilt counterclockwise around laboratory x axis (beam direction) in radians tilt_y 0.0 # detector tilt counterclockwise around laboratory y axis in radians tilt_z 0.0 # detector tilt counterclockwise around laboratory z axis (same as omega axis) in radians o11 1 # PerkinElmer detector orientation o12 0 # o21 0 # o22 -1 # theta_min 2 # Minimum theta angle for reflection generation theta_max 10 # Maximum theta angle for reflection generation #spatial 'spatial2k.spline' # Add spatial distortion of frelon4m detector omega_start -28.0 # Minimum Omega in range of interest (in deg) omega_end 28.0 # Maximum Omega in range of interest (in deg) omega_step 0.5 # Omega step size (in deg) omega_sign 1 # Sign of omega rotation (cw = +1, ccw = -1) ### Grains no_grains 10 # Total number of grains summed over all phases to be simulated. This number needs to match the number of e.g. U_grains_X keywords gen_U 1 # Generate orientations #gen_U flag [0= do not, or 1= do] gen_pos 1 1 # gen_pos flag1 [0= do not, or 1= do] flag2 [0= all at (0,0,0), 1= generate randomly within box or cylinder] # sample_cyl 0.01 0.045 # Cylindrical sample shape #sample_cyl diameter height (dimensions given in mm) #OR sample_xyz 0.010 0.010 0.010 # Box shaped sample #sample_xyz x_dimension y_dimension z_dimension (all in mm) gen_eps 0 0.0 0.003 0.0 0.0003 # Generate random diagonal strain tensors #gen_eps flag [0= do not, or 1= do] mean-value-for-diagonal-elemets-of-strain-tensor spread-for- diagonal-elements-of-strain-tensor mean-value-for-offdiagonal-elemets-of-strain-tensor spread-for-offdiagonal-elements-of-strain-tensor gen_size 1 0.001 0.0005 0.0015 # gen_size flag [0= do not, or 1= do] median-grain-size-of-distribution [mm] minimum-grain-size [mm] maximum-grain-size [mm] # Examples for more complex input #U_grains_0 -0.888246 0.411253 -0.204671 -0.201101 -0.748709 -0.631659 -0.413011 -0.519909 0.747741 # U_grains__X_ U11 U12 U13 U21 U22 U23 U31 U32 U33 (X is an integer number) #pos_grains_0 0.0 0 0 #pos_grains__X_ x y z [mm] (X is an integer number) #eps_grains 0.00 0.00 0.0 0 0 0 # strain tensor eps_grains__X_ eps11 eps12 eps13 eps22 eps23 eps33 (X is an integer number) #size_grains 0.004 ### Structural parameters unit_cell 2.4457 7.984 6.07 90.0 90.0 90.0 #unit_cell a [Å] b [Å] c [Å] alpha [°] beta [°] gamma [°] , Y being the phase number id sgno 63 #space group number # OR # sgname_phase_0 'Cmcm' #remember to put quotation marks around the string if more phases then have the keywords unit_cell_phase_1, sgno_phase_1 etc. # OR # structure_phase_0 'glycine.cif' # ### Files direc 'pPv-10grains' #Directory to save output from PolyXSim If the specified directory does not exist it will be created. stem 'pPv-10grains' #The base of all out put files output '.edf' '.par' '.gve' '.ini' '.ubi' '.flt' # possible: '.edf' and '.tif' for image types #'.edf' or '.tif' - presently the two supported diffraction image formats #'.ref' - reflection files (one per grain) having all the information about the reflections. #'.flt' - a peak file of the same format as output by ImageD11 peaksearch and can be loaded in ImageD11_gui #'.gve' - a g-vector file. Where the peaks are transformed into scattering vectors (g-vectors). This file can be used for indexing in either GrainSpotter or ImageD11- index #'.ini' - an input file for indexing with GrainSpotter using the .gve file is written. It will then be possible to try the GrainSpotter indexing program imidiately. #'.ubi' - grain orientations as inv(U*B) #'.par' - the input parameters for PolyXSim written in the par format of ImageD11 ### Images make_image 1 bg 0 # Add 10 counts to background noise 0 #noise flag [0= no noise, 1= add Poisson noise] #psf 2 # Add Gaussian detector point spread with a FWHM of 2 pixel peakshape 3 0.002 0.005 0.005 # Make the gaussian peak, peak FWHM 0.02 deg in 2theta, 0.5deg in eta(deformed) and 0.5 deg in omega #intensity_const 100