:mod:`ocelot.lib.genera.src.python.radiation.emsolver` ====================================================== .. py:module:: ocelot.lib.genera.src.python.radiation.emsolver Module Contents --------------- Functions ~~~~~~~~~ .. autoapisummary:: ocelot.lib.genera.src.python.radiation.emsolver.list_of_lists_to_LIST ocelot.lib.genera.src.python.radiation.emsolver.pointer_to_list ocelot.lib.genera.src.python.radiation.emsolver.radiation ocelot.lib.genera.src.python.radiation.emsolver.solver .. data:: __author__ :annotation: = Sergey Tomin .. data:: flag_pyOCL :annotation: = True .. data:: flag_pyOCL :annotation: = False .. data:: pathToDll .. function:: list_of_lists_to_LIST(list_lists) .. function:: pointer_to_list(list_motion) .. function:: radiation(em_screen, list_motion, gamma, beam_current, undulator, mode_proc) .. function:: solver(screen, cell, beam) 1. find trajectory and mag field on the trajectory. system of unit is [mm,rad] 2. display undulator parameter, for the controlling of calculation 3. creation new class EMScreen. transform units of Screen [m] to units of EMScreen [mm] New system of definition em_screen.x_start, x_step and etc 4. calculation of radiation. a. Current must be in mA. b. mode_proc can be "CPU" or "GPU". code can choose automatically mode_proc if OS has not pyopencl or dimentions of task are very large c. Code can choose right library (dll / so) automatically depend on OS d. list_lists_motion will be transform to list_motion