v1.0.0-rc.178 (#88)
Build Packages / Create release (push) Successful in 17s
Build Packages / build:portable:macos-arm64:nocuda (push) Successful in 4m41s
Build Packages / HDF5 consumer tests (DIALS, XDS) (push) Successful in 20m49s
Build Packages / build:portable:windows-x86_64:nocuda (push) Successful in 13m6s
Build Packages / build:portable:windows-x86_64:cuda (push) Successful in 23m44s
Build Packages / build:rugnux:linux-aarch64:cuda (push) Successful in 7m28s
Build Packages / build:portable:linux-x86_64:nocuda (push) Successful in 11m50s
Build Packages / build:portable:linux-x86_64:cuda (push) Successful in 14m9s
Build Packages / build:jfjoch:rocky8:nocuda (push) Successful in 16m25s
Build Packages / build:jfjoch:ubuntu2204:nocuda (push) Successful in 15m42s
Build Packages / build:jfjoch:rocky9:nocuda (push) Successful in 20m50s
Build Packages / build:jfjoch:ubuntu2404:nocuda (push) Successful in 20m36s
Build Packages / build:jfjoch:rocky8:cuda-sls9 (push) Successful in 22m18s
Build Packages / build:jfjoch:rocky9:cuda-sls9 (push) Successful in 23m29s
Build Packages / Generate python client (push) Successful in 30s
Build Packages / Build documentation (push) Successful in 1m10s
Build Packages / build:jfjoch:rocky8:cuda (push) Successful in 21m38s
Build Packages / build:jfjoch:ubuntu2204:cuda (push) Successful in 17m8s
Build Packages / build:jfjoch:rocky9:cuda (push) Successful in 23m10s
Build Packages / build:jfjoch:ubuntu2404:cuda (push) Successful in 19m16s
Build Packages / Unit tests (push) Successful in 2h8m4s
Build Packages / Validation Battery (push) Successful in 40m53s
Build Packages / Create release (push) Successful in 17s
Build Packages / build:portable:macos-arm64:nocuda (push) Successful in 4m41s
Build Packages / HDF5 consumer tests (DIALS, XDS) (push) Successful in 20m49s
Build Packages / build:portable:windows-x86_64:nocuda (push) Successful in 13m6s
Build Packages / build:portable:windows-x86_64:cuda (push) Successful in 23m44s
Build Packages / build:rugnux:linux-aarch64:cuda (push) Successful in 7m28s
Build Packages / build:portable:linux-x86_64:nocuda (push) Successful in 11m50s
Build Packages / build:portable:linux-x86_64:cuda (push) Successful in 14m9s
Build Packages / build:jfjoch:rocky8:nocuda (push) Successful in 16m25s
Build Packages / build:jfjoch:ubuntu2204:nocuda (push) Successful in 15m42s
Build Packages / build:jfjoch:rocky9:nocuda (push) Successful in 20m50s
Build Packages / build:jfjoch:ubuntu2404:nocuda (push) Successful in 20m36s
Build Packages / build:jfjoch:rocky8:cuda-sls9 (push) Successful in 22m18s
Build Packages / build:jfjoch:rocky9:cuda-sls9 (push) Successful in 23m29s
Build Packages / Generate python client (push) Successful in 30s
Build Packages / Build documentation (push) Successful in 1m10s
Build Packages / build:jfjoch:rocky8:cuda (push) Successful in 21m38s
Build Packages / build:jfjoch:ubuntu2204:cuda (push) Successful in 17m8s
Build Packages / build:jfjoch:rocky9:cuda (push) Successful in 23m10s
Build Packages / build:jfjoch:ubuntu2404:cuda (push) Successful in 19m16s
Build Packages / Unit tests (push) Successful in 2h8m4s
Build Packages / Validation Battery (push) Successful in 40m53s
* Rugnux: Processes serial crystallography data from XFELs - SACLA (MPCCD), PAL-XFEL and European XFEL (CXI), LCLS (XTC) and SwissFEL Alvra (JUNGFRAU with a CrystFEL module geometry) - with several files or Jungfraujoch master files merged in one run (`rugnux *_master.h5`). * Rugnux: Stills processing takes a known unit cell and space group as a starting point, finds the beam centre (and, with a cell, the detector distance) from the images, detects the saturation level in other facilities' files and refines the placement of individual detector panels. * Rugnux: The stills report gives R_split and CC1/2 from frame half-sets, comparable with CrystFEL. * jfjoch_viewer: Opens the same XFEL file formats. * Validation: A stills battery checks Rugnux against deposited structures from SACLA, PAL-XFEL, LCLS, European XFEL and SwissFEL. * Rugnux: More reliable convergence of rotation scaling, and live molecular replacement starts as soon as the model is uploaded. * jfjoch_broker: Initialize clears the previous dataset's bearer tokens, image buffer and live Rugnux status, and a slow CUDA JIT cache is reported at start. Reviewed-on: #88 Co-authored-by: Filip Leonarski <filip.leonarski@psi.ch>
This commit was merged in pull request #88.
This commit is contained in:
1 parent
7ed32b899f
commit
afbe844b20
320 files changed
+8900
-901
No files matched your search
@@ -22,8 +22,8 @@ communicate through network calls or other mechanisms.
|
||||
|
||||
This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
|
||||
|
||||
- API version: 1.0.0-rc.177
|
||||
- Package version: 1.0.0-rc.177
|
||||
- API version: 1.0.0-rc.178
|
||||
- Package version: 1.0.0-rc.178
|
||||
- Generator version: 7.20.0
|
||||
- Build package: org.openapitools.codegen.languages.PythonClientCodegen
|
||||
|
||||
|
||||
@@ -1749,7 +1749,6 @@ Can be done anytime
|
||||
|
||||
### Example
|
||||
|
||||
* Bearer Authentication (bearerAuth):
|
||||
|
||||
```python
|
||||
import jfjoch_client
|
||||
@@ -1763,15 +1762,6 @@ configuration = jfjoch_client.Configuration(
|
||||
host = "http://localhost:5232"
|
||||
)
|
||||
|
||||
# The client must configure the authentication and authorization parameters
|
||||
# in accordance with the API server security policy.
|
||||
# Examples for each auth method are provided below, use the example that
|
||||
# satisfies your auth use case.
|
||||
|
||||
# Configure Bearer authorization: bearerAuth
|
||||
configuration = jfjoch_client.Configuration(
|
||||
access_token = os.environ["BEARER_TOKEN"]
|
||||
)
|
||||
|
||||
# Enter a context with an instance of the API client
|
||||
with jfjoch_client.ApiClient(configuration) as api_client:
|
||||
@@ -1799,18 +1789,17 @@ This endpoint does not need any parameter.
|
||||
|
||||
### Authorization
|
||||
|
||||
[bearerAuth](../README.md#bearerAuth)
|
||||
No authorization required
|
||||
|
||||
### HTTP request headers
|
||||
|
||||
- **Content-Type**: Not defined
|
||||
- **Accept**: text/plain, application/json
|
||||
- **Accept**: application/json
|
||||
|
||||
### HTTP response details
|
||||
|
||||
| Status code | Description | Response headers |
|
||||
|-------------|-------------|------------------|
|
||||
**401** | The current dataset is protected and no valid bearer token was presented. | - |
|
||||
**200** | Everything OK | - |
|
||||
|
||||
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
|
||||
@@ -1825,7 +1814,6 @@ This can only be done when detector is `Idle`, `Error` or `Inactive` states.
|
||||
|
||||
### Example
|
||||
|
||||
* Bearer Authentication (bearerAuth):
|
||||
|
||||
```python
|
||||
import jfjoch_client
|
||||
@@ -1838,15 +1826,6 @@ configuration = jfjoch_client.Configuration(
|
||||
host = "http://localhost:5232"
|
||||
)
|
||||
|
||||
# The client must configure the authentication and authorization parameters
|
||||
# in accordance with the API server security policy.
|
||||
# Examples for each auth method are provided below, use the example that
|
||||
# satisfies your auth use case.
|
||||
|
||||
# Configure Bearer authorization: bearerAuth
|
||||
configuration = jfjoch_client.Configuration(
|
||||
access_token = os.environ["BEARER_TOKEN"]
|
||||
)
|
||||
|
||||
# Enter a context with an instance of the API client
|
||||
with jfjoch_client.ApiClient(configuration) as api_client:
|
||||
@@ -1872,18 +1851,17 @@ void (empty response body)
|
||||
|
||||
### Authorization
|
||||
|
||||
[bearerAuth](../README.md#bearerAuth)
|
||||
No authorization required
|
||||
|
||||
### HTTP request headers
|
||||
|
||||
- **Content-Type**: Not defined
|
||||
- **Accept**: text/plain, application/json
|
||||
- **Accept**: application/json
|
||||
|
||||
### HTTP response details
|
||||
|
||||
| Status code | Description | Response headers |
|
||||
|-------------|-------------|------------------|
|
||||
**401** | The current dataset is protected and no valid bearer token was presented. | - |
|
||||
**200** | All good | - |
|
||||
**500** | Error within Jungfraujoch code - see output message. | - |
|
||||
|
||||
@@ -1902,7 +1880,6 @@ and validation of every following rugnux live collection, until it is removed wi
|
||||
|
||||
### Example
|
||||
|
||||
* Bearer Authentication (bearerAuth):
|
||||
|
||||
```python
|
||||
import jfjoch_client
|
||||
@@ -1915,15 +1892,6 @@ configuration = jfjoch_client.Configuration(
|
||||
host = "http://localhost:5232"
|
||||
)
|
||||
|
||||
# The client must configure the authentication and authorization parameters
|
||||
# in accordance with the API server security policy.
|
||||
# Examples for each auth method are provided below, use the example that
|
||||
# satisfies your auth use case.
|
||||
|
||||
# Configure Bearer authorization: bearerAuth
|
||||
configuration = jfjoch_client.Configuration(
|
||||
access_token = os.environ["BEARER_TOKEN"]
|
||||
)
|
||||
|
||||
# Enter a context with an instance of the API client
|
||||
with jfjoch_client.ApiClient(configuration) as api_client:
|
||||
@@ -1953,18 +1921,17 @@ void (empty response body)
|
||||
|
||||
### Authorization
|
||||
|
||||
[bearerAuth](../README.md#bearerAuth)
|
||||
No authorization required
|
||||
|
||||
### HTTP request headers
|
||||
|
||||
- **Content-Type**: application/octet-stream
|
||||
- **Accept**: text/plain, application/json
|
||||
- **Accept**: application/json
|
||||
|
||||
### HTTP response details
|
||||
|
||||
| Status code | Description | Response headers |
|
||||
|-------------|-------------|------------------|
|
||||
**401** | The current dataset is protected and no valid bearer token was presented. | - |
|
||||
**200** | All good | - |
|
||||
**400** | Empty body, or not a model that can be read (PDB or mmCIF, optionally gzipped) | - |
|
||||
**413** | Model larger than 64 MiB | - |
|
||||
@@ -1982,7 +1949,6 @@ This can only be done when detector is `Idle`, `Error` or `Inactive` states.
|
||||
|
||||
### Example
|
||||
|
||||
* Bearer Authentication (bearerAuth):
|
||||
|
||||
```python
|
||||
import jfjoch_client
|
||||
@@ -1996,15 +1962,6 @@ configuration = jfjoch_client.Configuration(
|
||||
host = "http://localhost:5232"
|
||||
)
|
||||
|
||||
# The client must configure the authentication and authorization parameters
|
||||
# in accordance with the API server security policy.
|
||||
# Examples for each auth method are provided below, use the example that
|
||||
# satisfies your auth use case.
|
||||
|
||||
# Configure Bearer authorization: bearerAuth
|
||||
configuration = jfjoch_client.Configuration(
|
||||
access_token = os.environ["BEARER_TOKEN"]
|
||||
)
|
||||
|
||||
# Enter a context with an instance of the API client
|
||||
with jfjoch_client.ApiClient(configuration) as api_client:
|
||||
@@ -2034,7 +1991,7 @@ void (empty response body)
|
||||
|
||||
### Authorization
|
||||
|
||||
[bearerAuth](../README.md#bearerAuth)
|
||||
No authorization required
|
||||
|
||||
### HTTP request headers
|
||||
|
||||
@@ -2045,7 +2002,6 @@ void (empty response body)
|
||||
|
||||
| Status code | Description | Response headers |
|
||||
|-------------|-------------|------------------|
|
||||
**401** | The current dataset is protected and no valid bearer token was presented. | - |
|
||||
**200** | Everything OK | - |
|
||||
**400** | Input parsing or validation error | - |
|
||||
**500** | Error within Jungfraujoch code - see output message. | - |
|
||||
@@ -3590,6 +3546,8 @@ X-ray shutter must be closed.
|
||||
This operation will reconfigure network interface of the detector.
|
||||
During operation of the detector it is recommended to use the `POST /pedestal` operation instead.
|
||||
If storage cells are used, the execution time might be few minutes.
|
||||
It also clears the image buffer, the previous collection's plots and live rugnux status, disables live rugnux analysis and removes the rugnux model.
|
||||
It drops the previous dataset's bearer tokens and resets its settings, so nothing of that dataset stays readable.
|
||||
|
||||
This is async function - one needs to use `POST /wait_till_done` to ensure operation is done.
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# RugnuxLiveStatus
|
||||
|
||||
Live rugnux processing of the last collection; kept until the next collection starts
|
||||
Live rugnux processing of the last collection; kept until the next collection starts or `POST /initialize`. Times are taken when the image puller received a message, and are in seconds since the first image (before it arrives, since now). The frame rate is `(images_received - 1) / last_image_s`.
|
||||
|
||||
## Properties
|
||||
|
||||
@@ -8,16 +8,18 @@ Name | Type | Description | Notes
|
||||
------------ | ------------- | ------------- | -------------
|
||||
**state** | **str** | |
|
||||
**probe** | **str** | Answer of the early lattice probe on the first 60 degrees; empty until it answers |
|
||||
**probe_s** | **float** | When the probe answered, since the collection started | [optional]
|
||||
**probe_s** | **float** | When the probe answered, since the first image | [optional]
|
||||
**start_to_first_image_s** | **float** | From the START message to the first image; set once the first image arrives | [optional]
|
||||
**message** | **str** | Why the run failed or was skipped |
|
||||
**images_expected** | **int** | |
|
||||
**expected_collection_s** | **float** | How long the collection is set up to take - images_expected times the image time; absent if not known | [optional]
|
||||
**images_received** | **int** | |
|
||||
**elapsed_s** | **float** | |
|
||||
**step_progress** | **float** | Fraction of the current pass's images | [optional]
|
||||
**steps** | [**List[RugnuxLiveStep]**](RugnuxLiveStep.md) | |
|
||||
**last_image_s** | **float** | When the last image arrived (and the cutoff timer started), since the collection started | [optional]
|
||||
**last_image_s** | **float** | When the last image arrived, since the first image; set once the collection is over | [optional]
|
||||
**cut** | **str** | Empty, or why the analysis was cut: `deadline` (`deadline_s` after the last image) or `cancel` (`POST /cancel`). The end message then carried what was established at the cut. | [optional]
|
||||
**cut_s** | **float** | When the analysis was cut, since the collection started | [optional]
|
||||
**cut_s** | **float** | When the analysis was cut, since the first image | [optional]
|
||||
**last_image_to_written_s** | **float** | From the last image received to all results written | [optional]
|
||||
**verdict** | **str** | OK, WARNINGS, UNUSABLE or FAILED; empty until the run is over |
|
||||
**verdict_text** | **str** | |
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
Name | Type | Description | Notes
|
||||
------------ | ------------- | ------------- | -------------
|
||||
**title** | **str** | |
|
||||
**started_s** | **float** | Start of the step, since the collection started |
|
||||
**started_s** | **float** | Start of the step, since the first image (negative if before it) |
|
||||
**duration_s** | **float** | Set once the next step starts or the run ends | [optional]
|
||||
**notes** | **List[str]** | What the step found (e.g. lattice, space group) |
|
||||
|
||||
|
||||
Reference in new issue
Block a user