MeasurementClient¶
- class pystclient.clients.MeasurementClient(session: Session)¶
Bases:
BaseClientClient for accessing simulation result data from the STC platform.
In STC, a measurement is the recorded simulation result for a single model instance — i.e. the time-series data produced by one FMU during a simulation run. A single simulation therefore produces one measurement per model instance involved.
This client provides methods to list, retrieve, and query those per-instance measurements, as well as a convenience method to obtain a paginated iterator over all measurements from a given simulation.
- __init__(session: Session) None¶
Methods
__init__(session)measurement(measurement_id)Retrieve the full metadata for the simulation result of a single model instance.
measurements(project_id[, simulation_id])List all per-instance simulation result records for a project.
query(measurement_id, q)Query time-series variable data from a single model instance's simulation result.
simulation_results(project_id, simulation_id)Obtain a paginated iterator over all per-instance simulation results for a run.
Attributes
session- measurement(measurement_id: Annotated[str | UUID, PlainSerializer(func=str, return_type=str, when_used=always)]) Measurements¶
Retrieve the full metadata for the simulation result of a single model instance.
A measurement represents the recorded output of one FMU model instance during a simulation run. The returned object includes the list of recorded variables and their instance information.
- Parameters:
measurement_id – Unique identifier of the per-instance simulation result to retrieve
- Returns:
Complete simulation result metadata for the model instance, including its recorded variables and instance details
- measurements(project_id: Annotated[str | UUID, PlainSerializer(func=str, return_type=str, when_used=always)], simulation_id: Annotated[str | UUID, PlainSerializer(func=str, return_type=str, when_used=always)] | None = None) list[Measurements]¶
List all per-instance simulation result records for a project.
Each returned object represents the simulation result (measurement) of a single model instance. A simulation with N model instances will therefore produce N measurement records.
When
simulation_idis provided, only the measurements produced by that specific simulation run are returned.- Parameters:
project_id – ID of the project whose measurement records to retrieve
simulation_id – Restrict results to a specific simulation run, by default None
- Returns:
One metadata object per model instance that recorded data in the matching simulation(s)
- query(measurement_id: Annotated[str | UUID, PlainSerializer(func=str, return_type=str, when_used=always)], q: MeasurementQuery) list[QueryResult]¶
Query time-series variable data from a single model instance’s simulation result.
A measurement is the recorded simulation result for one model instance. This method retrieves variable values from that result within a specified time range. If any variable in
qis missing itsinstance_id, it is resolved automatically from the model instance metadata using the variable’sinstance_name.- Parameters:
measurement_id – Unique identifier of the per-instance simulation result to query
q – Query specification including the time range and the list of variables to retrieve
- Returns:
Time-series data for each requested variable from this model instance
- simulation_results(project_id: Annotated[str | UUID, PlainSerializer(func=str, return_type=str, when_used=always)], simulation_id: Annotated[str | UUID, PlainSerializer(func=str, return_type=str, when_used=always)]) SimulationResults | None¶
Obtain a paginated iterator over all per-instance simulation results for a run.
Each measurement in the iterator represents the recorded result of one model instance from the specified simulation. The returned
SimulationResultsiterator lets you page through the time-series data of all model instances in configurable time steps.- Parameters:
project_id – ID of the project containing the simulation
simulation_id – ID of the simulation run whose per-instance results to iterate over
- Returns:
A results iterator over all model-instance measurements, or
Noneif the simulation has not yet produced any measurement data