v1.0.0-rc.179 (#90)
Build Packages / Create release (push) Successful in 8s
Build Packages / build:portable:macos-arm64:nocuda (push) Successful in 5m11s
Build Packages / build:rugnux:linux-aarch64:cuda (push) Successful in 10m32s
Build Packages / build:portable:linux-x86_64:nocuda (push) Successful in 18m26s
Build Packages / build:portable:linux-x86_64:cuda (push) Successful in 22m11s
Build Packages / build:jfjoch:ubuntu2204:nocuda (push) Successful in 23m32s
Build Packages / build:portable:windows-x86_64:nocuda (push) Successful in 25m36s
Build Packages / build:jfjoch:rocky8:nocuda (push) Successful in 27m28s
Build Packages / HDF5 consumer tests (DIALS, XDS) (push) Successful in 28m10s
Build Packages / build:jfjoch:rocky9:nocuda (push) Successful in 28m10s
Build Packages / build:portable:windows-x86_64:cuda (push) Successful in 29m24s
Build Packages / build:jfjoch:ubuntu2404:nocuda (push) Successful in 21m45s
Build Packages / Generate python client (push) Successful in 31s
Build Packages / Build documentation (push) Successful in 1m21s
Build Packages / build:jfjoch:rocky8:cuda-sls9 (push) Successful in 24m2s
Build Packages / build:jfjoch:rocky9:cuda-sls9 (push) Successful in 29m25s
Build Packages / build:jfjoch:rocky8:cuda (push) Successful in 30m27s
Build Packages / build:jfjoch:ubuntu2204:cuda (push) Successful in 27m12s
Build Packages / build:jfjoch:ubuntu2404:cuda (push) Successful in 32m20s
Build Packages / build:jfjoch:rocky9:cuda (push) Successful in 33m36s
Build Packages / Unit tests (push) Successful in 2h7m18s
Build Packages / Validation Battery (push) Successful in 33m19s

* Rugnux: Stills processing needs only the unit cell and space group beyond what the file records - detector distance, beam centre, tilt, panel placement, saturation level, gain and polarisation plane are found from the images - and is up to twice as fast.
* Rugnux: Stills can be indexed without a GPU, with a CPU implementation of the fast-feedback indexer (macOS, computers without a GPU).
* Rugnux: Rotation and stills data are integrated in the detector's own units with one gain model, improving data from CCD detectors.
* Web frontend: The Rugnux live page shows the placed model with its electron density and anomalous difference map in a Mol* viewer.

Reviewed-on: #90
Co-authored-by: Filip Leonarski <filip.leonarski@psi.ch>
This commit was merged in pull request #90.
This commit is contained in:
leonarski_f authored and leonarski_f committed 2026-10-24 14:52:29 +02:00
1 parent afbe844b20
commit b00c668e3a
394 files changed
+57778 -2178

No files matched your search

+4 -2
View File
@@ -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.178
- Package version: 1.0.0-rc.178
- API version: 1.0.0-rc.179
- Package version: 1.0.0-rc.179
- Generator version: 7.20.0
- Build package: org.openapitools.codegen.languages.PythonClientCodegen
@@ -159,6 +159,8 @@ Class | Method | HTTP request | Description
*DefaultApi* | [**preview_plot_bin_get**](docs/DefaultApi.md#preview_plot_bin_get) | **GET** /preview/plot.bin | Generate 1D plot from Jungfraujoch and send in raw binary format. Data are provided as (32-bit) float binary array. This format doesn&#39;t transmit information about X-axis, only values, so it is of limited use for azimuthal integration.
*DefaultApi* | [**preview_plot_get**](docs/DefaultApi.md#preview_plot_get) | **GET** /preview/plot | Generate 1D plot from Jungfraujoch
*DefaultApi* | [**result_scan_get**](docs/DefaultApi.md#result_scan_get) | **GET** /result/scan | Get full scan result
*DefaultApi* | [**rugnux_map_ccp4_get**](docs/DefaultApi.md#rugnux_map_ccp4_get) | **GET** /rugnux/map.ccp4 | Get an electron-density map of the last rugnux live run
*DefaultApi* | [**rugnux_model_cif_get**](docs/DefaultApi.md#rugnux_model_cif_get) | **GET** /rugnux/model.cif | Get the model as placed by the last rugnux live run
*DefaultApi* | [**rugnux_status_get**](docs/DefaultApi.md#rugnux_status_get) | **GET** /rugnux/status | Get live rugnux processing status of the last collection
*DefaultApi* | [**start_post**](docs/DefaultApi.md#start_post) | **POST** /start | Start detector
*DefaultApi* | [**statistics_calibration_get**](docs/DefaultApi.md#statistics_calibration_get) | **GET** /statistics/calibration | Get calibration statistics
+164
View File
@@ -62,6 +62,8 @@ Method | HTTP request | Description
[**preview_plot_bin_get**](DefaultApi.md#preview_plot_bin_get) | **GET** /preview/plot.bin | Generate 1D plot from Jungfraujoch and send in raw binary format. Data are provided as (32-bit) float binary array. This format doesn&#39;t transmit information about X-axis, only values, so it is of limited use for azimuthal integration.
[**preview_plot_get**](DefaultApi.md#preview_plot_get) | **GET** /preview/plot | Generate 1D plot from Jungfraujoch
[**result_scan_get**](DefaultApi.md#result_scan_get) | **GET** /result/scan | Get full scan result
[**rugnux_map_ccp4_get**](DefaultApi.md#rugnux_map_ccp4_get) | **GET** /rugnux/map.ccp4 | Get an electron-density map of the last rugnux live run
[**rugnux_model_cif_get**](DefaultApi.md#rugnux_model_cif_get) | **GET** /rugnux/model.cif | Get the model as placed by the last rugnux live run
[**rugnux_status_get**](DefaultApi.md#rugnux_status_get) | **GET** /rugnux/status | Get live rugnux processing status of the last collection
[**start_post**](DefaultApi.md#start_post) | **POST** /start | Start detector
[**statistics_calibration_get**](DefaultApi.md#statistics_calibration_get) | **GET** /statistics/calibration | Get calibration statistics
@@ -4073,6 +4075,168 @@ This endpoint does not need any parameter.
[[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)
# **rugnux_map_ccp4_get**
> bytearray rugnux_map_ccp4_get(type=type)
Get an electron-density map of the last rugnux live run
The map of the placed model (`/rugnux/model.cif`) in CCP4 format (mode 2, float), made from the map
coefficients written to `_maps.mtz` (FWT/PHWT, DELFWT/PHDELWT, ANOM/PHANOM). It covers one unit cell centred on the model - along an axis where
the model reaches further than the cell, the model plus 5 A instead - sampled every d_min/3; the mean and
RMS in its header are those of the unit cell, so contour levels in sigma are the usual ones.
### Example
* Bearer Authentication (bearerAuth):
```python
import jfjoch_client
from jfjoch_client.rest import ApiException
from pprint import pprint
# Defining the host is optional and defaults to http://localhost:5232
# See configuration.py for a list of all supported configuration parameters.
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:
# Create an instance of the API class
api_instance = jfjoch_client.DefaultApi(api_client)
type = 2fofc # str | `2fofc`: the 2mFo-DFc map; `fofc`: the mFo-DFc difference map; `anom`: the anomalous difference map, (F(+) - F(-)) on the model phases less 90 degrees, where the merge kept the Bijvoet pairs (`anomalous_map` in `/rugnux/status`) (optional) (default to 2fofc)
try:
# Get an electron-density map of the last rugnux live run
api_response = api_instance.rugnux_map_ccp4_get(type=type)
print("The response of DefaultApi->rugnux_map_ccp4_get:\n")
pprint(api_response)
except Exception as e:
print("Exception when calling DefaultApi->rugnux_map_ccp4_get: %s\n" % e)
```
### Parameters
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**type** | **str**| &#x60;2fofc&#x60;: the 2mFo-DFc map; &#x60;fofc&#x60;: the mFo-DFc difference map; &#x60;anom&#x60;: the anomalous difference map, (F(+) - F(-)) on the model phases less 90 degrees, where the merge kept the Bijvoet pairs (&#x60;anomalous_map&#x60; in &#x60;/rugnux/status&#x60;) | [optional] [default to 2fofc]
### Return type
**bytearray**
### Authorization
[bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: application/octet-stream, text/plain
### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
**200** | Map | - |
**400** | Unknown map type | - |
**401** | The current dataset is protected and no valid bearer token was presented. | - |
**404** | The last rugnux live run placed no model or made no maps, or (&#x60;anom&#x60;) has no Bijvoet pairs | - |
[[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)
# **rugnux_model_cif_get**
> bytearray rugnux_model_cif_get()
Get the model as placed by the last rugnux live run
The model placed against the data by molecular replacement or validation, as mmCIF - the same text as the
`_model.cif` file written beside the data: the data's cell and space group, with the input model's own
metadata (entities, sequences, references, authors, software) kept. Kept as long as `/rugnux/status`.
### Example
* Bearer Authentication (bearerAuth):
```python
import jfjoch_client
from jfjoch_client.rest import ApiException
from pprint import pprint
# Defining the host is optional and defaults to http://localhost:5232
# See configuration.py for a list of all supported configuration parameters.
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:
# Create an instance of the API class
api_instance = jfjoch_client.DefaultApi(api_client)
try:
# Get the model as placed by the last rugnux live run
api_response = api_instance.rugnux_model_cif_get()
print("The response of DefaultApi->rugnux_model_cif_get:\n")
pprint(api_response)
except Exception as e:
print("Exception when calling DefaultApi->rugnux_model_cif_get: %s\n" % e)
```
### Parameters
This endpoint does not need any parameter.
### Return type
**bytearray**
### Authorization
[bearerAuth](../README.md#bearerAuth)
### HTTP request headers
- **Content-Type**: Not defined
- **Accept**: chemical/x-mmcif, text/plain
### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
**200** | Placed model | - |
**401** | The current dataset is protected and no valid bearer token was presented. | - |
**404** | The last rugnux live run placed no model | - |
[[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)
# **rugnux_status_get**
> RugnuxLiveStatus rugnux_status_get()
@@ -7,6 +7,8 @@ Live rugnux processing of the last collection; kept until the next collection st
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**state** | **str** | |
**placed_model** | **bool** | The run placed the model: it can be fetched from &#x60;/rugnux/model.cif&#x60; and its maps from &#x60;/rugnux/map.ccp4&#x60;. |
**anomalous_map** | **bool** | The merge kept the Bijvoet pairs, so with the placed model there is an anomalous difference map (&#x60;/rugnux/map.ccp4?type&#x3D;anom&#x60;). |
**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 first image | [optional]
**start_to_first_image_s** | **float** | From the START message to the first image; set once the first image arrives | [optional]