Files
Jungfraujoch/TOOLS.html
T
2026-06-25 21:18:12 +00:00

38 lines
58 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html> <html lang=en data-content_root="./"> <meta charset=utf-8 /> <meta name=viewport content="width=device-width, initial-scale=1.0" /><meta name=viewport content="width=device-width, initial-scale=1" /> <meta name=viewport content="width=device-width,initial-scale=1"> <meta http-equiv=x-ua-compatible content="ie=edge"> <meta name="lang:clipboard.copy" content="Copy to clipboard"> <meta name="lang:clipboard.copied" content="Copied to clipboard"> <meta name="lang:search.language" content=en > <meta name="lang:search.pipeline.stopwords" content=True > <meta name="lang:search.pipeline.trimmer" content=True > <meta name="lang:search.result.none" content="No matching documents"> <meta name="lang:search.result.one" content="1 matching document"> <meta name="lang:search.result.other" content="# matching documents"> <meta name="lang:search.tokenizer" content="[\s\-]+"> <link href="https://fonts.gstatic.com/" rel=preconnect crossorigin> <link href="https://fonts.googleapis.com/css?family=Roboto+Mono:400,500,700|Roboto:300,400,400i,700&display=fallback" rel=stylesheet > <style> body, input { font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif } code, kbd, pre { font-family: "Roboto Mono", "Courier New", Courier, monospace } </style> <link rel=stylesheet href="_static/stylesheets/application.css"/> <link rel=stylesheet href="_static/stylesheets/application-palette.css"/> <link rel=stylesheet href="_static/stylesheets/application-fixes.css"/> <link rel=stylesheet href="_static/fonts/material-icons.css"/> <meta name=theme-color content="#3f51b5"> <script src="_static/javascripts/modernizr.js"></script> <title>Tools &#8212; Jungfraujoch 1.0.0-rc.155 documentation</title> <link rel=stylesheet type="text/css" href="_static/pygments.css?v=83e35b93" /> <link rel=stylesheet type="text/css" href="_static/material.css?v=79c92029" /> <script src="_static/documentation_options.js?v=502bdfb1"></script> <script src="_static/doctools.js?v=9bcbadda"></script> <script src="_static/sphinx_highlight.js?v=dc90522c"></script> <link rel=icon href="_static/jfjoch.png"/> <link rel=index title=Index href=genindex.html /> <link rel=search title=Search href=search.html /> <link rel=next title="FPGA smartNIC" href=FPGA.html /> <link rel=prev title="Integration with MX data processing software" href=SOFTWARE_INTEGRATION.html /> <body dir=ltr data-md-color-primary=indigo data-md-color-accent=lime> <svg class=md-svg > <defs data-children-count=0 > <svg xmlns="http://www.w3.org/2000/svg" width=500 height=500 viewBox="0 0 500 500" id=__gitlab ><path fill=currentColor d="M93.667 473.347l90.684-279.097H2.983l90.684 279.097z" transform="translate(156.198 1.16)"/><path fill=currentColor d="M221.333 473.345L130.649 194.25H3.557l217.776 279.095z" transform="translate(28.531 1.16)" opacity=.7 /><path fill=currentColor d="M32 195.155L4.441 279.97a18.773 18.773 0 0 0 6.821 20.99l238.514 173.29L32 195.155z" transform="translate(.089 .256)" opacity=.5 /><path fill=currentColor d="M2.667-84.844h127.092L75.14-252.942c-2.811-8.649-15.047-8.649-17.856 0L2.667-84.844z" transform="translate(29.422 280.256)"/><path fill=currentColor d="M2.667 473.345L93.351 194.25h127.092L2.667 473.345z" transform="translate(247.198 1.16)" opacity=.7 /><path fill=currentColor d="M221.334 195.155l27.559 84.815a18.772 18.772 0 0 1-6.821 20.99L3.557 474.25l217.777-279.095z" transform="translate(246.307 .256)" opacity=.5 /><path fill=currentColor d="M130.667-84.844H3.575l54.618-168.098c2.811-8.649 15.047-8.649 17.856 0l54.618 168.098z" transform="translate(336.974 280.256)"/></svg> </defs> </svg> <input class=md-toggle data-md-toggle=drawer type=checkbox id=__drawer > <input class=md-toggle data-md-toggle=search type=checkbox id=__search > <label class=md-overlay data-md-component=overlay for=__drawer ></label> <a href="#TOOLS" tabindex=1 class=md-skip > Skip to content </a> <header class=md-header data-md-component=header > <nav class="md-header-nav md-grid"> <div class="md-flex navheader"> <div class="md-flex__cell md-flex__cell--shrink"> <a href=index.html title="Jungfraujoch 1.0.0-rc.155 documentation" class="md-header-nav__button md-logo"> <i class=md-icon >&#xe30d</i> </a> </div> <div class="md-flex__cell md-flex__cell--shrink"> <label class="md-icon md-icon--menu md-header-nav__button" for=__drawer ></label> </div> <div class="md-flex__cell md-flex__cell--stretch"> <div class="md-flex__ellipsis md-header-nav__title" data-md-component=title > <span class=md-header-nav__topic >PSI Jungfraujoch</span> <span class=md-header-nav__topic > Tools </span> </div> </div> <div class="md-flex__cell md-flex__cell--shrink"> <label class="md-icon md-icon--search md-header-nav__button" for=__search ></label> <div class=md-search data-md-component=search role=dialog > <label class=md-search__overlay for=__search ></label> <div class=md-search__inner role=search > <form class=md-search__form action=search.html method=get name=search > <input type=text class=md-search__input name=q placeholder=""Search"" autocapitalize=off autocomplete=off spellcheck=false data-md-component=query data-md-state=active > <label class="md-icon md-search__icon" for=__search ></label> <button type=reset class="md-icon md-search__icon" data-md-component=reset tabindex=-1 > &#xE5CD; </button> </form> <div class=md-search__output > <div class=md-search__scrollwrap data-md-scrollfix> <div class=md-search-result data-md-component=result > <div class=md-search-result__meta > Type to start searching </div> <ol class=md-search-result__list ></ol> </div> </div> </div> </div> </div> </div> <div class="md-flex__cell md-flex__cell--shrink"> <div class=md-header-nav__source > <a href="https://gitea.psi.ch/mx/jungfraujoch" title="Go to repository" class=md-source data-md-source=github > <div class=md-source__icon > <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 24 24" width=28 height=28 > <use xlink:href="#__gitlab" width=24 height=24 ></use> </svg> </div> <div class=md-source__repository > Jungfraujoch </div> </a> </div> </div> <script src="_static/javascripts/version_dropdown.js"></script> <script> var json_loc = ""versions.json"", target_loc = "../", text = "Versions"; $( document ).ready( add_version_dropdown(json_loc, target_loc, text)); </script> </div> </nav> </header> <div class=md-container > <nav class=md-tabs data-md-component=tabs > <div class="md-tabs__inner md-grid"> <ul class=md-tabs__list > <li class=md-tabs__item ><a href=index.html class=md-tabs__link >Jungfraujoch 1.0.0-rc.155 documentation</a> </ul> </div> </nav> <main class=md-main > <div class="md-main__inner md-grid" data-md-component=container > <div class="md-sidebar md-sidebar--primary" data-md-component=navigation > <div class=md-sidebar__scrollwrap > <div class=md-sidebar__inner > <nav class="md-nav md-nav--primary" data-md-level=0 > <label class="md-nav__title md-nav__title--site" for=__drawer > <a href=index.html title="Jungfraujoch 1.0.0-rc.155 documentation" class="md-nav__button md-logo"> <i class=md-icon >&#xe30d</i> </a> <a href=index.html title="Jungfraujoch 1.0.0-rc.155 documentation">PSI Jungfraujoch</a> </label> <div class=md-nav__source > <a href="https://gitea.psi.ch/mx/jungfraujoch" title="Go to repository" class=md-source data-md-source=github > <div class=md-source__icon > <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 24 24" width=28 height=28 > <use xlink:href="#__gitlab" width=24 height=24 ></use> </svg> </div> <div class=md-source__repository > Jungfraujoch </div> </a> </div> <ul class=md-nav__list > <li class=md-nav__item > <span class="md-nav__link caption"><span class=caption-text >General</span></span> <li class=md-nav__item > <a href=ACKNOWLEDGEMENT.html class=md-nav__link >Acknowledgements</a> <li class=md-nav__item > <a href=LICENSE.html class=md-nav__link >License</a> <li class=md-nav__item > <a href=DETECTORS.html class=md-nav__link >Supported detectors</a> <li class=md-nav__item > <a href="DETECTORS.html#dectris-detectors" class=md-nav__link >DECTRIS detectors</a> <li class=md-nav__item > <a href=HARDWARE.html class=md-nav__link >Hardware requirements</a> <li class=md-nav__item > <a href=SOFTWARE.html class=md-nav__link >Software requirements</a> <li class=md-nav__item > <a href=VERSIONING.html class=md-nav__link >Semantic versioning</a> <li class=md-nav__item > <a href=DEPLOYMENT.html class=md-nav__link >Deployment</a> <li class=md-nav__item > <a href=REPOSITORIES.html class=md-nav__link >Linux package repositories</a> <li class=md-nav__item > <a href=CHANGELOG.html class=md-nav__link >Changelog</a> <li class=md-nav__item > <span class="md-nav__link caption"><span class=caption-text >Software</span></span> <li class=md-nav__item > <a href=JFJOCH_BROKER.html class=md-nav__link >jfjoch_broker</a> <li class=md-nav__item > <a href=JFJOCH_WRITER.html class=md-nav__link >jfjoch_writer</a> <li class=md-nav__item > <a href=JFJOCH_PROCESS.html class=md-nav__link >jfjoch_process</a> <li class=md-nav__item > <a href=JFJOCH_VIEWER.html class=md-nav__link >jfjoch_viewer</a> <li class=md-nav__item > <a href=SOFTWARE_INTEGRATION.html class=md-nav__link >Integration with MX data processing software</a> <li class=md-nav__item > <input class="md-toggle md-nav__toggle" data-md-toggle=toc type=checkbox id=__toc > <label class="md-nav__link md-nav__link--active" for=__toc > Tools </label> <a href="#" class="md-nav__link md-nav__link--active">Tools</a> <nav class="md-nav md-nav--secondary"> <ul class=md-nav__list data-md-scrollfix=""> </ul> </nav> <ul class=md-nav__list > <li class=md-nav__item > <a href="#data-analysis" class=md-nav__link >Data analysis</a> <li class=md-nav__item > <a href="#fpga-pcie-card-management" class=md-nav__link >FPGA / PCIe card management</a> <li class=md-nav__item > <a href="#testing-benchmarking-and-simulation" class=md-nav__link >Testing, benchmarking and simulation</a> </ul> <li class=md-nav__item > <span class="md-nav__link caption"><span class=caption-text >FPGA</span></span> <li class=md-nav__item > <a href=FPGA.html class=md-nav__link >FPGA smartNIC</a> <li class=md-nav__item > <a href=FPGA_LICENSE.html class=md-nav__link >FPGA license</a> <li class=md-nav__item > <a href=FPGA_DESIGN.html class=md-nav__link >FPGA data flow</a> <li class=md-nav__item > <a href=FPGA_NETWORK.html class=md-nav__link >FPGA network</a> <li class=md-nav__item > <a href=FPGA_PCIE_DRIVER.html class=md-nav__link >FPGA PCIe driver</a> <li class=md-nav__item > <a href=FPGA_SETTINGS.html class=md-nav__link >FPGA advanced reference</a> <li class=md-nav__item > <a href=FPGA_DATA_ANALYSIS.html class=md-nav__link >FPGA data analysis</a> <li class=md-nav__item > <span class="md-nav__link caption"><span class=caption-text >Reference</span></span> <li class=md-nav__item > <a href=DETECTOR_GEOMETRY.html class=md-nav__link >Detector geometry</a> <li class=md-nav__item > <a href=CPU_DATA_ANALYSIS.html class=md-nav__link >CPU-side crystallographic data analysis (Jungfraujoch)</a> <li class=md-nav__item > <a href=OPENAPI.html class=md-nav__link >OpenAPI</a> <li class=md-nav__item > <a href=OPENAPI_SPECS.html class=md-nav__link >OpenAPI specification</a> <li class=md-nav__item > <a href=CBOR.html class=md-nav__link >CBOR messages</a> <li class=md-nav__item > <a href=HDF5.html class=md-nav__link >HDF5 / NeXus data format</a> <li class=md-nav__item > <a href=IMAGE_STREAM.html class=md-nav__link >Data streams</a> <li class=md-nav__item > <a href=PIXEL_MASK.html class=md-nav__link >Pixel mask</a> <li class=md-nav__item > <a href=WEB_FRONTEND.html class=md-nav__link >Web frontend</a> <li class=md-nav__item > <a href=TESTS.html class=md-nav__link >Tests</a> <li class=md-nav__item > <span class="md-nav__link caption"><span class=caption-text >OpenAPI Python client</span></span> <li class=md-nav__item > <a href="python_client/README.html" class=md-nav__link >jfjoch-client</a> <li class=md-nav__item > <a href="python_client/README.html#license-clarification" class=md-nav__link >License Clarification</a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html" class=md-nav__link >jfjoch_client.DefaultApi</a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#cancel-post" class=md-nav__link ><strong>cancel_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-azim-int-get" class=md-nav__link ><strong>config_azim_int_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-azim-int-put" class=md-nav__link ><strong>config_azim_int_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-dark-mask-get" class=md-nav__link ><strong>config_dark_mask_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-dark-mask-put" class=md-nav__link ><strong>config_dark_mask_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-detector-get" class=md-nav__link ><strong>config_detector_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-detector-put" class=md-nav__link ><strong>config_detector_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-file-writer-get" class=md-nav__link ><strong>config_file_writer_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-file-writer-put" class=md-nav__link ><strong>config_file_writer_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-image-format-conversion-post" class=md-nav__link ><strong>config_image_format_conversion_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-image-format-get" class=md-nav__link ><strong>config_image_format_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-image-format-put" class=md-nav__link ><strong>config_image_format_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-image-format-raw-post" class=md-nav__link ><strong>config_image_format_raw_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-indexing-get" class=md-nav__link ><strong>config_indexing_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-indexing-put" class=md-nav__link ><strong>config_indexing_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-instrument-get" class=md-nav__link ><strong>config_instrument_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-instrument-put" class=md-nav__link ><strong>config_instrument_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-internal-generator-image-put" class=md-nav__link ><strong>config_internal_generator_image_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-internal-generator-image-tiff-put" class=md-nav__link ><strong>config_internal_generator_image_tiff_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-mask-get" class=md-nav__link ><strong>config_mask_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-mask-tiff-get" class=md-nav__link ><strong>config_mask_tiff_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-roi-get" class=md-nav__link ><strong>config_roi_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-roi-put" class=md-nav__link ><strong>config_roi_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-select-detector-get" class=md-nav__link ><strong>config_select_detector_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-select-detector-put" class=md-nav__link ><strong>config_select_detector_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-spot-finding-get" class=md-nav__link ><strong>config_spot_finding_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-spot-finding-put" class=md-nav__link ><strong>config_spot_finding_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-user-mask-get" class=md-nav__link ><strong>config_user_mask_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-user-mask-put" class=md-nav__link ><strong>config_user_mask_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-user-mask-tiff-get" class=md-nav__link ><strong>config_user_mask_tiff_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-user-mask-tiff-put" class=md-nav__link ><strong>config_user_mask_tiff_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-zeromq-metadata-get" class=md-nav__link ><strong>config_zeromq_metadata_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-zeromq-metadata-put" class=md-nav__link ><strong>config_zeromq_metadata_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-zeromq-preview-get" class=md-nav__link ><strong>config_zeromq_preview_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-zeromq-preview-put" class=md-nav__link ><strong>config_zeromq_preview_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#deactivate-post" class=md-nav__link ><strong>deactivate_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#detector-status-get" class=md-nav__link ><strong>detector_status_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#fpga-status-get" class=md-nav__link ><strong>fpga_status_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#image-buffer-clear-post" class=md-nav__link ><strong>image_buffer_clear_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#image-buffer-image-cbor-get" class=md-nav__link ><strong>image_buffer_image_cbor_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#image-buffer-image-jpeg-get" class=md-nav__link ><strong>image_buffer_image_jpeg_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#image-buffer-image-tiff-get" class=md-nav__link ><strong>image_buffer_image_tiff_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#image-buffer-start-cbor-get" class=md-nav__link ><strong>image_buffer_start_cbor_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#image-buffer-status-get" class=md-nav__link ><strong>image_buffer_status_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#image-pusher-status-get" class=md-nav__link ><strong>image_pusher_status_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#initialize-post" class=md-nav__link ><strong>initialize_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#pedestal-post" class=md-nav__link ><strong>pedestal_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#preview-pedestal-tiff-get" class=md-nav__link ><strong>preview_pedestal_tiff_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#preview-plot-bin-get" class=md-nav__link ><strong>preview_plot_bin_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#preview-plot-get" class=md-nav__link ><strong>preview_plot_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#result-scan-get" class=md-nav__link ><strong>result_scan_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#start-post" class=md-nav__link ><strong>start_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#statistics-calibration-get" class=md-nav__link ><strong>statistics_calibration_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#statistics-data-collection-get" class=md-nav__link ><strong>statistics_data_collection_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#statistics-get" class=md-nav__link ><strong>statistics_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#status-get" class=md-nav__link ><strong>status_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#trigger-post" class=md-nav__link ><strong>trigger_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#version-get" class=md-nav__link ><strong>version_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#wait-till-done-post" class=md-nav__link ><strong>wait_till_done_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#wait-until-running-post" class=md-nav__link ><strong>wait_until_running_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#xfel-event-code-get" class=md-nav__link ><strong>xfel_event_code_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#xfel-pulse-id-get" class=md-nav__link ><strong>xfel_pulse_id_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/AzimIntSettings.html" class=md-nav__link >AzimIntSettings</a> <li class=md-nav__item > <a href="python_client/docs/BrokerStatus.html" class=md-nav__link >BrokerStatus</a> <li class=md-nav__item > <a href="python_client/docs/CalibrationStatisticsInner.html" class=md-nav__link >CalibrationStatisticsInner</a> <li class=md-nav__item > <a href="python_client/docs/ColorScale.html" class=md-nav__link >ColorScale</a> <li class=md-nav__item > <a href="python_client/docs/DarkMaskSettings.html" class=md-nav__link >DarkMaskSettings</a> <li class=md-nav__item > <a href="python_client/docs/DatasetSettings.html" class=md-nav__link >DatasetSettings</a> <li class=md-nav__item > <a href="python_client/docs/DatasetSettingsUnitCell.html" class=md-nav__link >DatasetSettingsUnitCell</a> <li class=md-nav__item > <a href="python_client/docs/DatasetSettingsXrayFluorescenceSpectrum.html" class=md-nav__link >DatasetSettingsXrayFluorescenceSpectrum</a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html" class=md-nav__link >jfjoch_client.DefaultApi</a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#cancel-post" class=md-nav__link ><strong>cancel_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-azim-int-get" class=md-nav__link ><strong>config_azim_int_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-azim-int-put" class=md-nav__link ><strong>config_azim_int_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-dark-mask-get" class=md-nav__link ><strong>config_dark_mask_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-dark-mask-put" class=md-nav__link ><strong>config_dark_mask_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-detector-get" class=md-nav__link ><strong>config_detector_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-detector-put" class=md-nav__link ><strong>config_detector_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-file-writer-get" class=md-nav__link ><strong>config_file_writer_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-file-writer-put" class=md-nav__link ><strong>config_file_writer_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-image-format-conversion-post" class=md-nav__link ><strong>config_image_format_conversion_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-image-format-get" class=md-nav__link ><strong>config_image_format_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-image-format-put" class=md-nav__link ><strong>config_image_format_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-image-format-raw-post" class=md-nav__link ><strong>config_image_format_raw_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-indexing-get" class=md-nav__link ><strong>config_indexing_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-indexing-put" class=md-nav__link ><strong>config_indexing_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-instrument-get" class=md-nav__link ><strong>config_instrument_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-instrument-put" class=md-nav__link ><strong>config_instrument_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-internal-generator-image-put" class=md-nav__link ><strong>config_internal_generator_image_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-internal-generator-image-tiff-put" class=md-nav__link ><strong>config_internal_generator_image_tiff_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-mask-get" class=md-nav__link ><strong>config_mask_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-mask-tiff-get" class=md-nav__link ><strong>config_mask_tiff_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-roi-get" class=md-nav__link ><strong>config_roi_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-roi-put" class=md-nav__link ><strong>config_roi_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-select-detector-get" class=md-nav__link ><strong>config_select_detector_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-select-detector-put" class=md-nav__link ><strong>config_select_detector_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-spot-finding-get" class=md-nav__link ><strong>config_spot_finding_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-spot-finding-put" class=md-nav__link ><strong>config_spot_finding_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-user-mask-get" class=md-nav__link ><strong>config_user_mask_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-user-mask-put" class=md-nav__link ><strong>config_user_mask_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-user-mask-tiff-get" class=md-nav__link ><strong>config_user_mask_tiff_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-user-mask-tiff-put" class=md-nav__link ><strong>config_user_mask_tiff_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-zeromq-metadata-get" class=md-nav__link ><strong>config_zeromq_metadata_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-zeromq-metadata-put" class=md-nav__link ><strong>config_zeromq_metadata_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-zeromq-preview-get" class=md-nav__link ><strong>config_zeromq_preview_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#config-zeromq-preview-put" class=md-nav__link ><strong>config_zeromq_preview_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#deactivate-post" class=md-nav__link ><strong>deactivate_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#detector-status-get" class=md-nav__link ><strong>detector_status_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#fpga-status-get" class=md-nav__link ><strong>fpga_status_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#image-buffer-clear-post" class=md-nav__link ><strong>image_buffer_clear_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#image-buffer-image-cbor-get" class=md-nav__link ><strong>image_buffer_image_cbor_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#image-buffer-image-jpeg-get" class=md-nav__link ><strong>image_buffer_image_jpeg_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#image-buffer-image-tiff-get" class=md-nav__link ><strong>image_buffer_image_tiff_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#image-buffer-start-cbor-get" class=md-nav__link ><strong>image_buffer_start_cbor_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#image-buffer-status-get" class=md-nav__link ><strong>image_buffer_status_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#image-pusher-status-get" class=md-nav__link ><strong>image_pusher_status_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#initialize-post" class=md-nav__link ><strong>initialize_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#pedestal-post" class=md-nav__link ><strong>pedestal_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#preview-pedestal-tiff-get" class=md-nav__link ><strong>preview_pedestal_tiff_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#preview-plot-bin-get" class=md-nav__link ><strong>preview_plot_bin_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#preview-plot-get" class=md-nav__link ><strong>preview_plot_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#result-scan-get" class=md-nav__link ><strong>result_scan_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#start-post" class=md-nav__link ><strong>start_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#statistics-calibration-get" class=md-nav__link ><strong>statistics_calibration_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#statistics-data-collection-get" class=md-nav__link ><strong>statistics_data_collection_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#statistics-get" class=md-nav__link ><strong>statistics_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#status-get" class=md-nav__link ><strong>status_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#trigger-post" class=md-nav__link ><strong>trigger_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#version-get" class=md-nav__link ><strong>version_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#wait-till-done-post" class=md-nav__link ><strong>wait_till_done_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#wait-until-running-post" class=md-nav__link ><strong>wait_until_running_post</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#xfel-event-code-get" class=md-nav__link ><strong>xfel_event_code_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/DefaultApi.html#xfel-pulse-id-get" class=md-nav__link ><strong>xfel_pulse_id_get</strong></a> <li class=md-nav__item > <a href="python_client/docs/Detector.html" class=md-nav__link >Detector</a> <li class=md-nav__item > <a href="python_client/docs/DetectorList.html" class=md-nav__link >DetectorList</a> <li class=md-nav__item > <a href="python_client/docs/DetectorListDetectorsInner.html" class=md-nav__link >DetectorListDetectorsInner</a> <li class=md-nav__item > <a href="python_client/docs/DetectorListElement.html" class=md-nav__link >DetectorListElement</a> <li class=md-nav__item > <a href="python_client/docs/DetectorModule.html" class=md-nav__link >DetectorModule</a> <li class=md-nav__item > <a href="python_client/docs/DetectorModuleDirection.html" class=md-nav__link >DetectorModuleDirection</a> <li class=md-nav__item > <a href="python_client/docs/DetectorPowerState.html" class=md-nav__link >DetectorPowerState</a> <li class=md-nav__item > <a href="python_client/docs/DetectorSelection.html" class=md-nav__link >DetectorSelection</a> <li class=md-nav__item > <a href="python_client/docs/DetectorSettings.html" class=md-nav__link >DetectorSettings</a> <li class=md-nav__item > <a href="python_client/docs/DetectorState.html" class=md-nav__link >DetectorState</a> <li class=md-nav__item > <a href="python_client/docs/DetectorStatus.html" class=md-nav__link >DetectorStatus</a> <li class=md-nav__item > <a href="python_client/docs/DetectorTiming.html" class=md-nav__link >DetectorTiming</a> <li class=md-nav__item > <a href="python_client/docs/DetectorType.html" class=md-nav__link >DetectorType</a> <li class=md-nav__item > <a href="python_client/docs/ErrorMessage.html" class=md-nav__link >ErrorMessage</a> <li class=md-nav__item > <a href="python_client/docs/FileWriterFormat.html" class=md-nav__link >FileWriterFormat</a> <li class=md-nav__item > <a href="python_client/docs/FileWriterSettings.html" class=md-nav__link >FileWriterSettings</a> <li class=md-nav__item > <a href="python_client/docs/FpgaStatusInner.html" class=md-nav__link >FpgaStatusInner</a> <li class=md-nav__item > <a href="python_client/docs/GeomRefinementAlgorithm.html" class=md-nav__link >GeomRefinementAlgorithm</a> <li class=md-nav__item > <a href="python_client/docs/GridPlot.html" class=md-nav__link >GridPlot</a> <li class=md-nav__item > <a href="python_client/docs/GridPlots.html" class=md-nav__link >GridPlots</a> <li class=md-nav__item > <a href="python_client/docs/GridScan.html" class=md-nav__link >GridScan</a> <li class=md-nav__item > <a href="python_client/docs/GridScanResult.html" class=md-nav__link >GridScanResult</a> <li class=md-nav__item > <a href="python_client/docs/GridScanResultImagesInner.html" class=md-nav__link >GridScanResultImagesInner</a> <li class=md-nav__item > <a href="python_client/docs/ImageBufferStatus.html" class=md-nav__link >ImageBufferStatus</a> <li class=md-nav__item > <a href="python_client/docs/ImageFormatSettings.html" class=md-nav__link >ImageFormatSettings</a> <li class=md-nav__item > <a href="python_client/docs/ImagePusherStatus.html" class=md-nav__link >ImagePusherStatus</a> <li class=md-nav__item > <a href="python_client/docs/ImagePusherType.html" class=md-nav__link >ImagePusherType</a> <li class=md-nav__item > <a href="python_client/docs/IndexingAlgorithm.html" class=md-nav__link >IndexingAlgorithm</a> <li class=md-nav__item > <a href="python_client/docs/IndexingSettings.html" class=md-nav__link >IndexingSettings</a> <li class=md-nav__item > <a href="python_client/docs/InstrumentMetadata.html" class=md-nav__link >InstrumentMetadata</a> <li class=md-nav__item > <a href="python_client/docs/JfjochBrokerApi.html" class=md-nav__link >jfjoch_client.JfjochBrokerApi</a> <li class=md-nav__item > <a href="python_client/docs/JfjochBrokerApi.html#config-zeromq-metadata-put" class=md-nav__link ><strong>config_zeromq_metadata_put</strong></a> <li class=md-nav__item > <a href="python_client/docs/JfjochSettings.html" class=md-nav__link >JfjochSettings</a> <li class=md-nav__item > <a href="python_client/docs/JfjochSettingsSsl.html" class=md-nav__link >JfjochSettingsSsl</a> <li class=md-nav__item > <a href="python_client/docs/JfjochStatistics.html" class=md-nav__link >JfjochStatistics</a> <li class=md-nav__item > <a href="python_client/docs/MeasurementStatistics.html" class=md-nav__link >MeasurementStatistics</a> <li class=md-nav__item > <a href="python_client/docs/PcieDevicesInner.html" class=md-nav__link >PcieDevicesInner</a> <li class=md-nav__item > <a href="python_client/docs/PixelMaskStatistics.html" class=md-nav__link >PixelMaskStatistics</a> <li class=md-nav__item > <a href="python_client/docs/Plot.html" class=md-nav__link >Plot</a> <li class=md-nav__item > <a href="python_client/docs/PlotTypeEnum.html" class=md-nav__link >PlotTypeEnum</a> <li class=md-nav__item > <a href="python_client/docs/PlotUnitX.html" class=md-nav__link >PlotUnitX</a> <li class=md-nav__item > <a href="python_client/docs/Plots.html" class=md-nav__link >Plots</a> <li class=md-nav__item > <a href="python_client/docs/PreviewSettings.html" class=md-nav__link >PreviewSettings</a> <li class=md-nav__item > <a href="python_client/docs/RoiAzimList.html" class=md-nav__link >RoiAzimList</a> <li class=md-nav__item > <a href="python_client/docs/RoiAzimuthal.html" class=md-nav__link >RoiAzimuthal</a> <li class=md-nav__item > <a href="python_client/docs/RoiBox.html" class=md-nav__link >RoiBox</a> <li class=md-nav__item > <a href="python_client/docs/RoiBoxList.html" class=md-nav__link >RoiBoxList</a> <li class=md-nav__item > <a href="python_client/docs/RoiCircle.html" class=md-nav__link >RoiCircle</a> <li class=md-nav__item > <a href="python_client/docs/RoiCircleList.html" class=md-nav__link >RoiCircleList</a> <li class=md-nav__item > <a href="python_client/docs/RoiDefinitions.html" class=md-nav__link >RoiDefinitions</a> <li class=md-nav__item > <a href="python_client/docs/RotationAxis.html" class=md-nav__link >RotationAxis</a> <li class=md-nav__item > <a href="python_client/docs/ScanResult.html" class=md-nav__link >ScanResult</a> <li class=md-nav__item > <a href="python_client/docs/ScanResultImagesInner.html" class=md-nav__link >ScanResultImagesInner</a> <li class=md-nav__item > <a href="python_client/docs/SpotFindingSettings.html" class=md-nav__link >SpotFindingSettings</a> <li class=md-nav__item > <a href="python_client/docs/StandardDetectorGeometry.html" class=md-nav__link >StandardDetectorGeometry</a> <li class=md-nav__item > <a href="python_client/docs/TcpSettings.html" class=md-nav__link >TcpSettings</a> <li class=md-nav__item > <a href="python_client/docs/UnitCell.html" class=md-nav__link >UnitCell</a> <li class=md-nav__item > <a href="python_client/docs/ZeromqMetadataSettings.html" class=md-nav__link >ZeromqMetadataSettings</a> <li class=md-nav__item > <a href="python_client/docs/ZeromqPreviewSettings.html" class=md-nav__link >ZeromqPreviewSettings</a> <li class=md-nav__item > <a href="python_client/docs/ZeromqSettings.html" class=md-nav__link >ZeromqSettings</a> </ul> </nav> </div> </div> </div> <div class="md-sidebar md-sidebar--secondary" data-md-component=toc > <div class=md-sidebar__scrollwrap > <div class=md-sidebar__inner > <nav class="md-nav md-nav--secondary"> <ul class=md-nav__list data-md-scrollfix=""> </ul> </nav> </div> </div> </div> <div class=md-content > <article class="md-content__inner md-typeset" role=main > <section class="tex2jax_ignore mathjax_ignore" id=tools > <h1 id=tools--page-root >Tools<a class=headerlink href="#tools--page-root" title="Link to this heading"></a></h1> <p>Besides the main services (<a class="reference internal" href=JFJOCH_BROKER.html ><span class="std std-doc"><code class="docutils literal notranslate"><span class=pre >jfjoch_broker</span></code></span></a>, <a class="reference internal" href=JFJOCH_WRITER.html ><span class="std std-doc"><code class="docutils literal notranslate"><span class=pre >jfjoch_writer</span></code></span></a>, <a class="reference internal" href=JFJOCH_VIEWER.html ><span class="std std-doc"><code class="docutils literal notranslate"><span class=pre >jfjoch_viewer</span></code></span></a>), the repository ships a number of command-line tools. Each prints its own usage when run with <code class="docutils literal notranslate"><span class=pre >-h</span></code> or without arguments.</p> <section id=data-analysis > <h2 id=data-analysis >Data analysis<a class=headerlink href="#data-analysis" title="Link to this heading"></a></h2> <section id=jfjoch-process > <h3 id=jfjoch-process >jfjoch_process<a class=headerlink href="#jfjoch-process" title="Link to this heading"></a></h3> <p>Offline CLI tool that runs the full crystallographic analysis pipeline (spot finding, indexing, integration, scaling/merging) on a stored HDF5 dataset, producing a <code class="docutils literal notranslate"><span class=pre >_process.h5</span></code> file and, when merging, reflection files. See <a class="reference internal" href=JFJOCH_PROCESS.html ><span class="std std-doc">jfjoch_process</span></a>.</p> </section> <section id=jfjoch-scale > <h3 id=jfjoch-scale >jfjoch_scale<a class=headerlink href="#jfjoch-scale" title="Link to this heading"></a></h3> <p>Re-scales and merges the already-integrated reflections from one or more <code class="docutils literal notranslate"><span class=pre >_process.h5</span></code> files (no re-integration). Useful to re-merge with a different space group, partiality, resolution limit or reference MTZ, or to combine several runs. See <a class="reference internal" href=JFJOCH_PROCESS.html ><span class="std std-doc">jfjoch_process</span></a>.</p> </section> <section id=jfjoch-extract-hkl > <h3 id=jfjoch-extract-hkl >jfjoch_extract_hkl<a class=headerlink href="#jfjoch-extract-hkl" title="Link to this heading"></a></h3> <p>Extracts reflections (HKL list) from a Jungfraujoch master file; can sum the same HKL across neighbouring images and compare against an XDS <code class="docutils literal notranslate"><span class=pre >INTEGRATE.HKL</span></code> reference.</p> </section> </section> <section id=fpga-pcie-card-management > <h2 id=fpga-pcie-card-management >FPGA / PCIe card management<a class=headerlink href="#fpga-pcie-card-management" title="Link to this heading"></a></h2> <section id=jfjoch-pcie-status > <h3 id=jfjoch-pcie-status >jfjoch_pcie_status<a class=headerlink href="#jfjoch-pcie-status" title="Link to this heading"></a></h3> <p>Prints detailed status information about the card. Safe to run during data collection:</p> <div class="highlight-default notranslate"><div class=highlight ><pre><span></span><span class=o >./</span><span class=n >jfjoch_pcie_status</span> <span class=o >/</span><span class=n >dev</span><span class=o >/</span><span class=n >jfjoch0</span>
</pre></div> </div> </section> <section id=jfjoch-pcie-net-cfg > <h3 id=jfjoch-pcie-net-cfg >jfjoch_pcie_net_cfg<a class=headerlink href="#jfjoch-pcie-net-cfg" title="Link to this heading"></a></h3> <p>Reads and modifies the network configuration of the cards interfaces:</p> <div class="highlight-default notranslate"><div class=highlight ><pre><span></span><span class=n >jfjoch_pcie_net_cfg</span> <span class=o >&lt;</span><span class=n >device</span> <span class=n >name</span><span class=o >&gt;</span>
<span class=n >Read</span> <span class=n >configuration</span> <span class=k >for</span> <span class=nb >all</span> <span class=n >network</span> <span class=n >interfaces</span> <span class=n >of</span> <span class=n >a</span> <span class=n >device</span>
<span class=n >jfjoch_pcie_net_cfg</span> <span class=o >&lt;</span><span class=n >device</span> <span class=n >name</span><span class=o >&gt;</span> <span class=o >&lt;</span><span class=k >if</span> <span class=n >number</span><span class=o >&gt;|</span><span class=n >fgen</span>
<span class=n >Read</span> <span class=n >configuration</span> <span class=k >for</span> <span class=n >a</span> <span class=n >particular</span> <span class=n >network</span> <span class=n >interface</span> <span class=o >/</span> <span class=n >internal</span> <span class=n >frame</span> <span class=n >generator</span>
<span class=n >jfjoch_pcie_net_cfg</span> <span class=o >&lt;</span><span class=n >device</span> <span class=n >name</span><span class=o >&gt;</span> <span class=o >&lt;</span><span class=k >if</span> <span class=n >number</span><span class=o >&gt;|</span><span class=n >fgen</span> <span class=n >ipv4</span> <span class=o >&lt;</span><span class=n >IPv4</span> <span class=n >address</span><span class=o >&gt;</span>
<span class=n >Set</span> <span class=n >IPv4</span> <span class=n >address</span> <span class=k >for</span> <span class=n >a</span> <span class=n >particular</span> <span class=n >network</span> <span class=n >interface</span> <span class=o >/</span> <span class=n >internal</span> <span class=n >frame</span> <span class=n >generator</span>
<span class=n >jfjoch_pcie_net_cfg</span> <span class=o >&lt;</span><span class=n >device</span> <span class=n >name</span><span class=o >&gt;</span> <span class=o >&lt;</span><span class=k >if</span> <span class=n >number</span><span class=o >&gt;|</span><span class=n >fgen</span> <span class=n >direct</span> <span class=mi >0</span><span class=o >|</span><span class=mi >1</span>
<span class=n >Set</span> <span class=n >direct</span> <span class=n >mode</span> <span class=k >for</span> <span class=n >a</span> <span class=n >particular</span> <span class=n >network</span> <span class=n >interface</span> <span class=o >/</span> <span class=n >internal</span> <span class=n >frame</span> <span class=n >generator</span>
<span class=n >jfjoch_pcie_net_cfg</span> <span class=o >&lt;</span><span class=n >device</span> <span class=n >name</span><span class=o >&gt;</span> <span class=o >&lt;</span><span class=k >if</span> <span class=n >number</span><span class=o >&gt;|</span><span class=n >fgen</span> <span class=n >clear</span>
<span class=n >Clear</span> <span class=n >Ethernet</span> <span class=n >counters</span> <span class=k >for</span> <span class=n >a</span> <span class=n >particular</span> <span class=n >network</span> <span class=n >interface</span> <span class=o >/</span> <span class=n >internal</span> <span class=n >frame</span> <span class=n >generator</span>
</pre></div> </div> </section> <section id=jfjoch-pcie-clear-net-counters > <h3 id=jfjoch-pcie-clear-net-counters >jfjoch_pcie_clear_net_counters<a class=headerlink href="#jfjoch-pcie-clear-net-counters" title="Link to this heading"></a></h3> <p>Resets the cards Ethernet, UDP and ICMP packet counters (which otherwise run from power-on):</p> <div class="highlight-default notranslate"><div class=highlight ><pre><span></span><span class=o >./</span><span class=n >jfjoch_pcie_clear_net_counters</span> <span class=o >/</span><span class=n >dev</span><span class=o >/</span><span class=n >jfjoch0</span>
</pre></div> </div> </section> </section> <section id=testing-benchmarking-and-simulation > <h2 id=testing-benchmarking-and-simulation >Testing, benchmarking and simulation<a class=headerlink href="#testing-benchmarking-and-simulation" title="Link to this heading"></a></h2> <section id=jfjoch-udp-simulator > <h3 id=jfjoch-udp-simulator >jfjoch_udp_simulator<a class=headerlink href="#jfjoch-udp-simulator" title="Link to this heading"></a></h3> <p>UDP packet simulator used to test the Jungfraujoch FPGA receiver.</p> </section> <section id=jfjoch-fpga-test > <h3 id=jfjoch-fpga-test >jfjoch_fpga_test<a class=headerlink href="#jfjoch-fpga-test" title="Link to this heading"></a></h3> <p>Exercises and benchmarks the FPGA data path and receiver. With <code class="docutils literal notranslate"><span class=pre >-H</span></code> it runs the high-level synthesis C model on the CPU, so no FPGA device is required.</p> </section> <section id=jfjoch-lite-perf-test > <h3 id=jfjoch-lite-perf-test >jfjoch_lite_perf_test<a class=headerlink href="#jfjoch-lite-perf-test" title="Link to this heading"></a></h3> <p>Performance test of the lite (CPU/GPU) analysis path — indexing, integration and optional file writing.</p> </section> <section id=jfjoch-hdf5-test > <h3 id=jfjoch-hdf5-test >jfjoch_hdf5_test<a class=headerlink href="#jfjoch-hdf5-test" title="Link to this heading"></a></h3> <p>Tests single-threaded HDF5 writer performance.</p> </section> <section id=jfjoch-simplon-test > <h3 id=jfjoch-simplon-test >jfjoch_simplon_test<a class=headerlink href="#jfjoch-simplon-test" title="Link to this heading"></a></h3> <p>Minimal test client for a DECTRIS SIMPLON detector API.</p> </section> <section id=jfjoch-azint > <h3 id=jfjoch-azint >jfjoch_azint<a class=headerlink href="#jfjoch-azint" title="Link to this heading"></a></h3> <p>Runs CPU azimuthal integration on an existing Jungfraujoch HDF5 file using <code class="docutils literal notranslate"><span class=pre >N</span></code> threads and writes the result to <code class="docutils literal notranslate"><span class=pre >&lt;prefix&gt;_process.h5</span></code>. Example:</p> <div class="highlight-default notranslate"><div class=highlight ><pre><span></span><span class=o >./</span><span class=n >jfjoch_azint</span> <span class=o >-</span><span class=n >o</span> <span class=n >output</span> <span class=o >-</span><span class=n >N</span> <span class=mi >8</span> <span class=nb >input</span><span class=o >.</span><span class=n >h5</span>
</pre></div> </div> <p>The integration settings and geometry default to the values stored in the input file; any of them can be overridden on the command line:</p> <div class="highlight-default notranslate"><div class=highlight ><pre><span></span><span class=n >jfjoch_azint</span> <span class=p >{</span><span class=o >&lt;</span><span class=n >options</span><span class=o >&gt;</span><span class=p >}</span> <span class=o >&lt;</span><span class=nb >input</span><span class=o >.</span><span class=n >h5</span><span class=o >&gt;</span>
<span class=o >-</span><span class=n >o</span><span class=p >,</span> <span class=o >--</span><span class=n >output</span><span class=o >-</span><span class=n >prefix</span> <span class=o >&lt;</span><span class=n >txt</span><span class=o >&gt;</span> <span class=n >Output</span> <span class=n >file</span> <span class=n >prefix</span> <span class=p >(</span><span class=n >default</span><span class=p >:</span> <span class=n >output</span><span class=p >)</span>
<span class=o >-</span><span class=n >N</span><span class=p >,</span> <span class=o >--</span><span class=n >threads</span> <span class=o >&lt;</span><span class=n >num</span><span class=o >&gt;</span> <span class=n >Number</span> <span class=n >of</span> <span class=n >threads</span> <span class=p >(</span><span class=n >default</span><span class=p >:</span> <span class=mi >1</span><span class=p >)</span>
<span class=o >-</span><span class=n >s</span><span class=p >,</span> <span class=o >--</span><span class=n >start</span><span class=o >-</span><span class=n >image</span> <span class=o >&lt;</span><span class=n >num</span><span class=o >&gt;</span> <span class=n >Start</span> <span class=n >image</span> <span class=n >number</span> <span class=p >(</span><span class=n >default</span><span class=p >:</span> <span class=mi >0</span><span class=p >)</span>
<span class=o >-</span><span class=n >e</span><span class=p >,</span> <span class=o >--</span><span class=n >end</span><span class=o >-</span><span class=n >image</span> <span class=o >&lt;</span><span class=n >num</span><span class=o >&gt;</span> <span class=n >End</span> <span class=n >image</span> <span class=n >number</span> <span class=p >(</span><span class=n >default</span><span class=p >:</span> <span class=nb >all</span><span class=p >)</span>
<span class=o >-</span><span class=n >t</span><span class=p >,</span> <span class=o >--</span><span class=n >stride</span> <span class=o >&lt;</span><span class=n >num</span><span class=o >&gt;</span> <span class=n >Image</span> <span class=n >stride</span> <span class=p >(</span><span class=n >default</span><span class=p >:</span> <span class=mi >1</span><span class=p >)</span>
<span class=o >-</span><span class=n >v</span><span class=p >,</span> <span class=o >--</span><span class=n >verbose</span> <span class=n >Verbose</span> <span class=n >output</span>
<span class=n >Azimuthal</span> <span class=n >integration</span><span class=p >:</span>
<span class=o >--</span><span class=nb >min</span><span class=o >-</span><span class=n >q</span> <span class=o >&lt;</span><span class=n >num</span><span class=o >&gt;</span> <span class=n >Minimum</span> <span class=n >Q</span> <span class=k >for</span> <span class=n >integration</span> <span class=p >(</span><span class=mi >1</span><span class=o >/</span><span class=n >A</span><span class=p >)</span>
<span class=o >--</span><span class=nb >max</span><span class=o >-</span><span class=n >q</span> <span class=o >&lt;</span><span class=n >num</span><span class=o >&gt;</span> <span class=n >Maximum</span> <span class=n >Q</span> <span class=k >for</span> <span class=n >integration</span> <span class=p >(</span><span class=mi >1</span><span class=o >/</span><span class=n >A</span><span class=p >)</span>
<span class=o >--</span><span class=n >q</span><span class=o >-</span><span class=n >spacing</span> <span class=o >&lt;</span><span class=n >num</span><span class=o >&gt;</span> <span class=n >Q</span> <span class=nb >bin</span> <span class=n >spacing</span> <span class=p >(</span><span class=mi >1</span><span class=o >/</span><span class=n >A</span><span class=p >)</span>
<span class=o >--</span><span class=n >azimuthal</span><span class=o >-</span><span class=n >bins</span> <span class=o >&lt;</span><span class=n >num</span><span class=o >&gt;</span> <span class=n >Number</span> <span class=n >of</span> <span class=n >azimuthal</span> <span class=n >bins</span> <span class=p >(</span><span class=n >default</span><span class=p >:</span> <span class=mi >1</span><span class=p >)</span>
<span class=o >--</span><span class=n >polarization</span><span class=o >-</span><span class=n >correction</span> <span class=o >&lt;</span><span class=n >on</span><span class=o >|</span><span class=n >off</span><span class=o >&gt;</span> <span class=n >Enable</span><span class=o >/</span><span class=n >disable</span> <span class=n >polarization</span> <span class=n >correction</span>
<span class=o >--</span><span class=n >solid</span><span class=o >-</span><span class=n >angle</span><span class=o >-</span><span class=n >correction</span> <span class=o >&lt;</span><span class=n >on</span><span class=o >|</span><span class=n >off</span><span class=o >&gt;</span> <span class=n >Enable</span><span class=o >/</span><span class=n >disable</span> <span class=n >solid</span> <span class=n >angle</span> <span class=n >correction</span>
<span class=n >Geometry</span> <span class=n >overrides</span><span class=p >:</span>
<span class=o >--</span><span class=n >beam</span><span class=o >-</span><span class=n >x</span> <span class=o >&lt;</span><span class=n >num</span><span class=o >&gt;</span> <span class=n >Beam</span> <span class=n >center</span> <span class=n >X</span> <span class=p >(</span><span class=n >pixel</span><span class=p >)</span>
<span class=o >--</span><span class=n >beam</span><span class=o >-</span><span class=n >y</span> <span class=o >&lt;</span><span class=n >num</span><span class=o >&gt;</span> <span class=n >Beam</span> <span class=n >center</span> <span class=n >Y</span> <span class=p >(</span><span class=n >pixel</span><span class=p >)</span>
<span class=o >--</span><span class=n >detector</span><span class=o >-</span><span class=n >distance</span> <span class=o >&lt;</span><span class=n >num</span><span class=o >&gt;</span> <span class=n >Detector</span> <span class=n >distance</span> <span class=p >(</span><span class=n >mm</span><span class=p >)</span>
<span class=o >--</span><span class=n >wavelength</span> <span class=o >&lt;</span><span class=n >num</span><span class=o >&gt;</span> <span class=n >Wavelength</span> <span class=p >(</span><span class=n >A</span><span class=p >)</span>
<span class=o >--</span><span class=n >rot1</span> <span class=o >&lt;</span><span class=n >num</span><span class=o >&gt;</span> <span class=n >PONI</span> <span class=n >rotation</span> <span class=mi >1</span> <span class=p >(</span><span class=n >rad</span><span class=p >)</span>
<span class=o >--</span><span class=n >rot2</span> <span class=o >&lt;</span><span class=n >num</span><span class=o >&gt;</span> <span class=n >PONI</span> <span class=n >rotation</span> <span class=mi >2</span> <span class=p >(</span><span class=n >rad</span><span class=p >)</span>
<span class=o >--</span><span class=n >polarization</span> <span class=o >&lt;</span><span class=n >num</span><span class=o >&gt;</span> <span class=n >Polarization</span> <span class=n >factor</span>
</pre></div> </div> </section> </section> </section> </article> </div> </div> </main> </div> <footer class=md-footer > <div class=md-footer-nav > <nav class="md-footer-nav__inner md-grid"> <a href=SOFTWARE_INTEGRATION.html title="Integration with MX data processing software" class="md-flex md-footer-nav__link md-footer-nav__link--prev" rel=prev > <div class="md-flex__cell md-flex__cell--shrink"> <i class="md-icon md-icon--arrow-back md-footer-nav__button"></i> </div> <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title"> <span class=md-flex__ellipsis > <span class=md-footer-nav__direction > "Previous" </span> Integration with MX data processing software </span> </div> </a> <a href=FPGA.html title="FPGA smartNIC" class="md-flex md-footer-nav__link md-footer-nav__link--next" rel=next > <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title"><span class=md-flex__ellipsis > <span class=md-footer-nav__direction > "Next" </span> FPGA smartNIC </span> </div> <div class="md-flex__cell md-flex__cell--shrink"><i class="md-icon md-icon--arrow-forward md-footer-nav__button"></i> </div> </a> </nav> </div> <div class="md-footer-meta md-typeset"> <div class="md-footer-meta__inner md-grid"> <div class=md-footer-copyright > <div class=md-footer-copyright__highlight > &#169; Copyright 2024, Paul Scherrer Institute. </div> Created using <a href="http://www.sphinx-doc.org/">Sphinx</a> 8.1.3. and <a href="https://github.com/bashtage/sphinx-material/">Material for Sphinx</a> </div> </div> </div> </footer> <script src="_static/javascripts/application.js"></script> <script>app.initialize({version: "1.0.4", url: {base: ".."}})</script>