Simulators
SimulatorsAPI
List simulators
- SimulatorsAPI.list(limit: int = 25) SimulatorList
-
- Parameters
limit (int) – Maximum number of results to return. Defaults to 25. Set to -1, float(“inf”) or None to return all items.
- Returns
List of simulators
- Return type
Examples
- List simulators:
>>> from cognite.client import CogniteClient >>> client = CogniteClient() >>> res = client.simulators.list(limit=10)
Simulator Integrations
List simulator integrations
- SimulatorIntegrationsAPI.list(limit: int | None = 25, simulator_external_ids: Optional[Union[str, SequenceNotStr[str]]] = None, active: Optional[bool] = None) SimulatorIntegrationList
-
Retrieves a list of simulator integrations that match the given criteria.
- Parameters
limit (int | None) – The maximum number of simulator integrations to return, pass None to return all.
simulator_external_ids (str | SequenceNotStr[str] | None) – Filter on simulator external ids.
active (bool | None) – Filter on active status of the simulator integration.
- Returns
List of simulator integrations
- Return type
Examples
- List a few simulator integrations:
>>> from cognite.client import CogniteClient >>> client = CogniteClient() >>> res = client.simulators.integrations.list(limit=10)
- Filter simulator integrations by simulator external ids and active status:
>>> res = client.simulators.integrations.list( ... simulator_external_ids=["sim1", "sim2"], ... active=True, ... )
Delete simulator integrations
- SimulatorIntegrationsAPI.delete(ids: Optional[Union[int, Sequence[int]]] = None, external_ids: Optional[Union[str, SequenceNotStr[str]]] = None) None
-
- Parameters
ids (int | Sequence[int] | None) – Id(s) of simulator integrations to delete
external_ids (str | SequenceNotStr[str] | None) – External_id(s) of simulator integrations to delete
Examples
- Delete simulator integrations by id or external id:
>>> from cognite.client import CogniteClient >>> client = CogniteClient() >>> client.simulators.integrations.delete(ids=[1,2,3], external_ids="foo")
Simulator Models
List simulator models
- SimulatorModelsAPI.list(limit: int = 25, simulator_external_ids: Optional[Union[str, SequenceNotStr[str]]] = None, sort: Optional[PropertySort] = None) SimulatorModelList
-
Retrieves a list of simulator models that match the given criteria.
- Parameters
limit (int) – Maximum number of results to return. Defaults to 25. Set to -1, float(“inf”) or None to return all items.
simulator_external_ids (str | SequenceNotStr[str] | None) – Filter by simulator external id(s).
sort (PropertySort | None) – The criteria to sort by.
- Returns
List of simulator models
- Return type
Examples
- List simulator models:
>>> from cognite.client import CogniteClient >>> client = CogniteClient() >>> res = client.simulators.models.list(limit=10)
- Specify filter and sort order:
>>> from cognite.client.data_classes.simulators.filters import PropertySort >>> res = client.simulators.models.list( ... simulator_external_ids=["simulator_external_id"], ... sort=PropertySort( ... property="createdTime", ... order="asc" ... ) ... )
Retrieve simulator models
- SimulatorModelsAPI.retrieve(ids: None = None, external_ids: None = None) NoReturn
- SimulatorModelsAPI.retrieve(ids: int, external_ids: None = None) cognite.client.data_classes.simulators.models.SimulatorModel | None
- SimulatorModelsAPI.retrieve(ids: None, external_ids: str) cognite.client.data_classes.simulators.models.SimulatorModel | None
- SimulatorModelsAPI.retrieve(ids: collections.abc.Sequence[int] | None = None, external_ids: Optional[SequenceNotStr[str]] = None) cognite.client.data_classes.simulators.models.SimulatorModelList | None
-
Retrieve one or more simulator models by ID(s) or external ID(s).
- Parameters
ids (int | Sequence[int] | None) – The id of the simulator model(s).
external_ids (str | SequenceNotStr[str] | None) – The external id of the simulator model(s).
- Returns
Requested simulator model(s)
- Return type
SimulatorModel | SimulatorModelList | None
Examples
- Get simulator model by id:
>>> from cognite.client import CogniteClient >>> client = CogniteClient() >>> res = client.simulators.models.retrieve(ids=1)
- Get simulator model by external id:
>>> res = client.simulators.models.retrieve(external_ids="model_external_id")
- Get multiple simulator models by ids:
>>> res = client.simulators.models.retrieve(ids=[1,2])
- Get multiple simulator models by external ids:
>>> res = client.simulators.models.retrieve( ... external_ids=["model_external_id", "model_external_id2"] ... )
Create simulator models
- SimulatorModelsAPI.create(items: SimulatorModelWrite) SimulatorModel
- SimulatorModelsAPI.create(items: Sequence[SimulatorModelWrite]) SimulatorModelList
-
- Parameters
items (SimulatorModelWrite | Sequence[SimulatorModelWrite]) – The model(s) to create.
- Returns
Created simulator model(s)
- Return type
Examples
- Create new simulator models:
>>> from cognite.client import CogniteClient >>> from cognite.client.data_classes.simulators import SimulatorModelWrite >>> client = CogniteClient() >>> models = [ ... SimulatorModelWrite( ... name="model1", simulator_external_id="sim1", type="SteadyState", ... data_set_id=1, external_id="model_external_id" ... ), ... SimulatorModelWrite( ... name="model2", simulator_external_id="sim2", type="SteadyState", ... data_set_id=2, external_id="model_external_id2" ... ) ... ] >>> res = client.simulators.models.create(models)
Update simulator models
- SimulatorModelsAPI.update(items: Sequence[cognite.client.data_classes.simulators.models.SimulatorModel | cognite.client.data_classes.simulators.models.SimulatorModelWrite | cognite.client.data_classes.simulators.models.SimulatorModelUpdate]) SimulatorModelList
- SimulatorModelsAPI.update(items: cognite.client.data_classes.simulators.models.SimulatorModel | cognite.client.data_classes.simulators.models.SimulatorModelWrite | cognite.client.data_classes.simulators.models.SimulatorModelUpdate) SimulatorModel
-
- Parameters
items (SimulatorModel | SimulatorModelWrite | SimulatorModelUpdate | Sequence[SimulatorModel | SimulatorModelWrite | SimulatorModelUpdate]) – The model to update.
- Returns
Updated simulator model(s)
- Return type
Examples
- Update a simulator model that you have fetched. This will perform a full update of the model:
>>> from cognite.client import CogniteClient >>> client = CogniteClient() >>> model = client.simulators.models.retrieve(external_ids="model_external_id") >>> model.name = "new_name" >>> res = client.simulators.models.update(model)
Delete simulator models
- SimulatorModelsAPI.delete(ids: Optional[Union[int, Sequence[int]]] = None, external_ids: Optional[Union[str, SequenceNotStr[str]]] = None) None
-
- Parameters
ids (int | Sequence[int] | None) – id (or sequence of ids) for the model(s) to delete.
external_ids (str | SequenceNotStr[str] | None) – external id (or sequence of external ids) for the model(s) to delete.
Examples
- Delete simulator models by id or external id:
>>> from cognite.client import CogniteClient >>> client = CogniteClient() >>> client.simulators.models.delete(ids=[1,2,3], external_ids="model_external_id")
Simulator Model Revisions
List simulator model revisions
- SimulatorModelRevisionsAPI.list(limit: int = 25, sort: Optional[PropertySort] = None, model_external_ids: Optional[Union[str, SequenceNotStr[str]]] = None, all_versions: Optional[bool] = None, created_time: Optional[TimestampRange] = None, last_updated_time: Optional[TimestampRange] = None) SimulatorModelRevisionList
Filter simulator model revisions
Retrieves a list of simulator model revisions that match the given criteria.
- Parameters
limit (int) – Maximum number of results to return. Defaults to 25. Set to -1, float(“inf”) or None to return all items.
sort (PropertySort | None) – The criteria to sort by.
model_external_ids (str | SequenceNotStr[str] | None) – The external ids of the simulator models to filter by.
all_versions (bool | None) – If True, all versions of the simulator model revisions are returned. If False, only the latest version is returned.
created_time (TimestampRange | None) – Filter by created time.
last_updated_time (TimestampRange | None) – Filter by last updated time.
- Returns
List of simulator model revisions
- Return type
Examples
- List simulator model revisions:
>>> from cognite.client import CogniteClient >>> client = CogniteClient() >>> res = client.simulators.models.revisions.list(limit=10)
- Specify filter and sort order:
>>> from cognite.client.data_classes.simulators.filters import PropertySort >>> from cognite.client.data_classes.shared import TimestampRange >>> res = client.simulators.models.revisions.list( ... model_external_ids=["model1", "model2"], ... all_versions=True, ... created_time=TimestampRange(min=0, max=1000000), ... last_updated_time=TimestampRange(min=0, max=1000000), ... sort=PropertySort(order="asc", property="createdTime"), ... limit=10 ... )
Retrieve simulator model revisions
- SimulatorModelRevisionsAPI.retrieve(ids: None = None, external_ids: None = None) NoReturn
- SimulatorModelRevisionsAPI.retrieve(ids: int, external_ids: None = None) cognite.client.data_classes.simulators.models.SimulatorModelRevision | None
- SimulatorModelRevisionsAPI.retrieve(ids: None, external_ids: str) cognite.client.data_classes.simulators.models.SimulatorModelRevision | None
- SimulatorModelRevisionsAPI.retrieve(ids: int | collections.abc.Sequence[int] | None = None, external_ids: Optional[Union[str, SequenceNotStr[str]]] = None) cognite.client.data_classes.simulators.models.SimulatorModelRevision | cognite.client.data_classes.simulators.models.SimulatorModelRevisionList | None
Retrieve simulator model revisions
Retrieve one or more simulator model revisions by ID(s) or external ID(s).
- Parameters
ids (int | Sequence[int] | None) – The ids of the simulator model revisions.
external_ids (str | SequenceNotStr[str] | None) – The external ids of the simulator model revisions.
- Returns
Requested simulator model revision(s)
- Return type
Examples
- Get simulator model revision by id:
>>> from cognite.client import CogniteClient >>> client = CogniteClient() >>> res = client.simulators.models.revisions.retrieve(ids=1)
- Get simulator model revision by external id:
>>> res = client.simulators.models.revisions.retrieve( ... external_ids="revision_external_id" ... )
- Get multiple simulator model revisions by ids:
>>> res = client.simulators.models.revisions.retrieve(ids=[1,2])
- Get multiple simulator model revisions by external ids:
>>> res = client.simulators.models.revisions.retrieve( ... external_ids=["revision1", "revision2"] ... )
Create simulator model revisions
- SimulatorModelRevisionsAPI.create(items: SimulatorModelRevisionWrite) SimulatorModelRevision
- SimulatorModelRevisionsAPI.create(items: Sequence[SimulatorModelRevisionWrite]) SimulatorModelRevisionList
Create simulator model revisions
- Parameters
items (SimulatorModelRevisionWrite | Sequence[SimulatorModelRevisionWrite]) – The model revision(s) to create.
- Returns
Created simulator model revision(s)
- Return type
Examples
- Create new simulator model revisions:
>>> from cognite.client import CogniteClient >>> from cognite.client.data_classes.simulators import SimulatorModelRevisionWrite >>> from cognite.client.data_classes.simulators.models import SimulatorExternalDependencyFileInternalId, SimulatorModelRevisionExternalDependency >>> client = CogniteClient() >>> revisions = [ ... SimulatorModelRevisionWrite( ... external_id="revision1", ... file_id=1, ... model_external_id="a_1", ... ), ... SimulatorModelRevisionWrite( ... external_id="revision2", ... file_id=2, ... model_external_id="a_2", ... external_dependencies = [ ... SimulatorModelRevisionExternalDependency( ... file=SimulatorExternalDependencyFileInternalId(id=123), ... arguments={ ... "fieldA": "value1", ... "fieldB": "value2", ... }, ... ) ... ] ... ), ... ] >>> res = client.simulators.models.revisions.create(revisions)
Simulator Routines
List simulator routines
- SimulatorRoutinesAPI.list(limit: int = 25, model_external_ids: Optional[Sequence[str]] = None, simulator_integration_external_ids: Optional[Sequence[str]] = None, sort: Optional[PropertySort] = None) SimulatorRoutineList
-
Retrieves a list of simulator routines that match the given criteria.
- Parameters
limit (int) – Maximum number of results to return. Defaults to 25. Set to -1, float(“inf”) or None to return all items.
model_external_ids (Sequence[str] | None) – Filter on model external ids.
simulator_integration_external_ids (Sequence[str] | None) – Filter on simulator integration external ids.
sort (PropertySort | None) – The criteria to sort by.
- Returns
List of simulator routines
- Return type
SimulatorRoutineList
Examples
- List simulator routines:
>>> from cognite.client import CogniteClient >>> client = CogniteClient() >>> res = client.simulators.routines.list(limit=10)
- Specify filter and sort order:
>>> from cognite.client.data_classes.simulators.filters import PropertySort >>> res = client.simulators.routines.list( ... simulator_integration_external_ids=["integration_ext_id"], ... sort=PropertySort( ... property="createdTime", ... order="desc" ... ) ... )
Create simulator routines
- SimulatorRoutinesAPI.create(routine: Sequence[SimulatorRoutineWrite]) SimulatorRoutineList
- SimulatorRoutinesAPI.create(routine: SimulatorRoutineWrite) SimulatorRoutine
-
- Parameters
routine (SimulatorRoutineWrite | Sequence[SimulatorRoutineWrite]) – Simulator routine(s) to create.
- Returns
Created simulator routine(s)
- Return type
SimulatorRoutine | SimulatorRoutineList
Examples
- Create new simulator routines:
>>> from cognite.client import CogniteClient >>> from cognite.client.data_classes.simulators.routines import SimulatorRoutineWrite >>> client = CogniteClient() >>> routines = [ ... SimulatorRoutineWrite( ... name="routine1", ... external_id="routine_ext_id", ... simulator_integration_external_id="integration_ext_id", ... model_external_id="model_ext_id", ... ), ... SimulatorRoutineWrite( ... name="routine2", ... external_id="routine_ext_id_2", ... simulator_integration_external_id="integration_ext_id_2", ... model_external_id="model_ext_id_2", ... ) ... ] >>> res = client.simulators.routines.create(routines)
Delete simulator routines
- SimulatorRoutinesAPI.delete(ids: Optional[Union[int, Sequence[int]]] = None, external_ids: Optional[Union[str, SequenceNotStr[str]]] = None) None
-
- Parameters
ids (int | Sequence[int] | None) – ids (or sequence of ids) for the routine(s) to delete.
external_ids (str | SequenceNotStr[str] | SequenceNotStr[str] | None) – external ids (or sequence of external ids) for the routine(s) to delete.
Examples
- Delete simulator routines by id or external id:
>>> from cognite.client import CogniteClient >>> client = CogniteClient() >>> client.simulators.routines.delete(ids=[1,2,3], external_ids="foo")
Run simulator routines
- SimulatorRoutinesAPI.run(routine_external_id: str, inputs: Optional[Sequence[SimulationInputOverride]] = None, run_time: Optional[int] = None, queue: Optional[bool] = None, log_severity: Optional[Literal['Debug', 'Information', 'Warning', 'Error']] = None, wait: bool = True, timeout: float = 60) SimulationRun
-
Run a simulation for a given simulator routine.
- Parameters
routine_external_id (str) – External id of the simulator routine to run
inputs (Sequence[SimulationInputOverride] | None) – List of input overrides
run_time (int | None) – Run time in milliseconds. Reference timestamp used for data pre-processing and data sampling.
queue (bool | None) – Queue the simulation run when connector is down.
log_severity (Literal['Debug', 'Information', 'Warning', 'Error'] | None) – Override the minimum severity level for the simulation run logs. If not provided, the minimum severity is read from the connector logger configuration.
wait (bool) – Wait until the simulation run is finished. Defaults to True.
timeout (float) – Timeout in seconds for waiting for the simulation run to finish. Defaults to 60 seconds.
- Returns
Created simulation run
- Return type
Examples
- Create new simulation run:
>>> from cognite.client import CogniteClient >>> client = CogniteClient() >>> run = client.simulators.routines.run( ... routine_external_id="routine1", ... log_severity="Debug" ... )
Simulator Routine Revisions
List simulator routine revisions
- SimulatorRoutineRevisionsAPI.list(routine_external_ids: Optional[SequenceNotStr[str]] = None, model_external_ids: Optional[SequenceNotStr[str]] = None, simulator_integration_external_ids: Optional[SequenceNotStr[str]] = None, simulator_external_ids: Optional[SequenceNotStr[str]] = None, created_time: Optional[TimestampRange] = None, all_versions: bool = False, include_all_fields: bool = False, limit: Optional[int] = None, sort: Optional[PropertySort] = None) SimulatorRoutineRevisionList
Filter simulator routine revisions
Retrieves a list of simulator routine revisions that match the given criteria.
- Parameters
routine_external_ids (SequenceNotStr[str] | None) – Filter on routine external ids.
model_external_ids (SequenceNotStr[str] | None) – Filter on model external ids.
simulator_integration_external_ids (SequenceNotStr[str] | None) – Filter on simulator integration external ids.
simulator_external_ids (SequenceNotStr[str] | None) – Filter on simulator external ids.
created_time (TimestampRange | None) – Filter on created time.
all_versions (bool) – If all versions of the routine should be returned. Defaults to false which only returns the latest version.
include_all_fields (bool) – If all fields should be included in the response. Defaults to false which does not include script, configuration.inputs and configuration.outputs in the response.
limit (int | None) – Maximum number of simulator routine revisions to return. Defaults to return all items.
sort (PropertySort | None) – The criteria to sort by.
- Returns
List of simulator routine revisions
- Return type
SimulatorRoutineRevisionList
Examples
- List simulator routine revisions:
>>> from cognite.client import CogniteClient >>> client = CogniteClient() >>> res = client.simulators.routines.revisions.list(limit=10)
- List simulator routine revisions with filter:
>>> res = client.simulators.routines.revisions.list( ... routine_external_ids=["routine_1"], ... all_versions=True, ... sort=PropertySort(order="asc", property="createdTime"), ... include_all_fields=True ... )
Retrieve simulator routine revisions
- SimulatorRoutineRevisionsAPI.retrieve(ids: None = None, external_ids: None = None) NoReturn
- SimulatorRoutineRevisionsAPI.retrieve(ids: int, external_ids: None = None) cognite.client.data_classes.simulators.routine_revisions.SimulatorRoutineRevision | None
- SimulatorRoutineRevisionsAPI.retrieve(ids: None, external_ids: str) cognite.client.data_classes.simulators.routine_revisions.SimulatorRoutineRevision | None
- SimulatorRoutineRevisionsAPI.retrieve(ids: collections.abc.Sequence[int] | None = None, external_ids: Optional[SequenceNotStr[str]] = None) cognite.client.data_classes.simulators.routine_revisions.SimulatorRoutineRevisionList | None
Retrieve simulator routine revisions
Retrieve simulator routine revisions by ID or External Id.
- Parameters
ids (int | Sequence[int] | None) – Simulator routine revision ID or list of IDs
external_ids (str | SequenceNotStr[str] | None) – Simulator routine revision External ID or list of external IDs
- Returns
Requested simulator routine revision
- Return type
SimulatorRoutineRevision | SimulatorRoutineRevisionList | None
Examples
- Get simulator routine revision by id:
>>> from cognite.client import CogniteClient >>> client = CogniteClient() >>> res = client.simulators.routines.revisions.retrieve(ids=123)
- Get simulator routine revision by external id:
>>> res = client.simulators.routines.revisions.retrieve(external_ids="routine_v1")
Create simulator routine revisions
- SimulatorRoutineRevisionsAPI.create(items: Sequence[SimulatorRoutineRevisionWrite]) SimulatorRoutineRevisionList
- SimulatorRoutineRevisionsAPI.create(items: SimulatorRoutineRevisionWrite) SimulatorRoutineRevision
Create simulator routine revisions
- Parameters
items (SimulatorRoutineRevisionWrite | Sequence[SimulatorRoutineRevisionWrite]) – Simulator routine revisions to create.
- Returns
Created simulator routine revision(s)
- Return type
SimulatorRoutineRevision | SimulatorRoutineRevisionList
Examples
- Create new simulator routine revisions:
>>> from cognite.client import CogniteClient >>> from cognite.client.data_classes.simulators.routine_revisions import ( ... SimulatorRoutineRevisionWrite, ... SimulatorRoutineConfiguration, ... SimulatorRoutineInputConstant, ... SimulatorRoutineOutput, ... SimulatorRoutineDataSampling, ... SimulatorRoutineStep, ... SimulatorRoutineStepArguments, ... SimulatorRoutineStage, ... SimulationValueUnitInput, ... ) >>> client = CogniteClient() >>> routine_revisions = [ ... SimulatorRoutineRevisionWrite( ... external_id="routine_rev_1", ... routine_external_id="routine_1", ... configuration=SimulatorRoutineConfiguration( ... data_sampling=SimulatorRoutineDataSampling( ... sampling_window=15, ... granularity=1, ... ), ... inputs=[ ... SimulatorRoutineInputConstant( ... name="Tubing Head Pressure", ... reference_id="THP", ... value=124.3, ... value_type="DOUBLE", ... unit=SimulationValueUnitInput( ... name="bar", ... quantity="pressure", ... ), ... save_timeseries_external_id="TEST-ROUTINE-INPUT-THP", ... ), ... ], ... outputs=[ ... SimulatorRoutineOutput( ... name="Bottom Hole Pressure", ... reference_id="BHP", ... unit=SimulationValueUnitInput( ... name="bar", ... quantity="pressure", ... ), ... value_type="DOUBLE", ... save_timeseries_external_id="TEST-ROUTINE-OUTPUT-BHP", ... ), ... ], ... ), ... script=[ ... SimulatorRoutineStage( ... order=1, ... description="Define simulation inputs", ... steps=[ ... SimulatorRoutineStep( ... order=1, ... step_type="Set", ... arguments=SimulatorRoutineStepArguments( ... { ... "referenceId": "THP", ... "objectName": "WELL", ... "objectProperty": "WellHeadPressure", ... } ... ), ... ), ... ], ... ), ... SimulatorRoutineStage( ... order=2, ... description="Solve", ... steps=[ ... SimulatorRoutineStep( ... order=1, ... step_type="Command", ... arguments=SimulatorRoutineStepArguments( ... {"command": "Solve"} ... ), ... ), ... ], ... ), ... SimulatorRoutineStage( ... order=3, ... description="Define simulation outputs", ... steps=[ ... SimulatorRoutineStep( ... order=1, ... step_type="Get", ... arguments=SimulatorRoutineStepArguments( ... { ... "referenceId": "BHP", ... "objectName": "WELL", ... "objectProperty": "BottomHolePressure", ... } ... ), ... ), ... ], ... ), ... ], ... ), ... ] >>> res = client.simulators.routines.revisions.create(routine_revisions)
Simulation Runs
List simulation runs
- SimulatorRunsAPI.list(limit: int | None = 25, status: Optional[str] = None, run_type: Optional[str] = None, model_external_ids: Optional[SequenceNotStr[str]] = None, simulator_integration_external_ids: Optional[SequenceNotStr[str]] = None, simulator_external_ids: Optional[SequenceNotStr[str]] = None, routine_external_ids: Optional[SequenceNotStr[str]] = None, routine_revision_external_ids: Optional[SequenceNotStr[str]] = None, model_revision_external_ids: Optional[SequenceNotStr[str]] = None) SimulationRunList
-
Retrieves a list of simulation runs that match the given criteria.
- Parameters
limit (int | None) – The maximum number of simulation runs to return, pass None to return all.
status (str | None) – Filter by simulation run status
run_type (str | None) – Filter by simulation run type
model_external_ids (SequenceNotStr[str] | None) – Filter by simulator model external ids
simulator_integration_external_ids (SequenceNotStr[str] | None) – Filter by simulator integration external ids
simulator_external_ids (SequenceNotStr[str] | None) – Filter by simulator external ids
routine_external_ids (SequenceNotStr[str] | None) – Filter by routine external ids
routine_revision_external_ids (SequenceNotStr[str] | None) – Filter by routine revision external ids
model_revision_external_ids (SequenceNotStr[str] | None) – Filter by model revision external ids
- Returns
List of simulation runs
- Return type
Examples
- List simulation runs:
>>> from cognite.client import CogniteClient >>> client = CogniteClient() >>> res = client.simulators.runs.list()
- Filter runs by status and simulator external ids:
>>> res = client.simulators.runs.list( ... simulator_external_ids=["PROSPER", "DWSIM"], ... status="success" ... )
Retrieve simulation runs
- SimulatorRunsAPI.retrieve(ids: int) cognite.client.data_classes.simulators.runs.SimulationRun | None
- SimulatorRunsAPI.retrieve(ids: Sequence[int]) cognite.client.data_classes.simulators.runs.SimulationRunList | None
Retrieve simulation runs by ID
- Parameters
ids (int | Sequence[int]) – The ID(s) of the simulation run(s) to retrieve.
- Returns
The simulation run(s) with the given ID(s)
- Return type
SimulationRun | SimulationRunList | None
Examples
- Retrieve a single simulation run by id:
>>> from cognite.client import CogniteClient >>> client = CogniteClient() >>> run = client.simulators.runs.retrieve(ids=2)
Create simulation runs
- SimulatorRunsAPI.create(items: SimulationRunWrite) SimulationRun
- SimulatorRunsAPI.create(items: Sequence[SimulationRunWrite]) SimulationRunList
-
- Parameters
items (SimulationRunWrite | Sequence[SimulationRunWrite]) – The simulation run(s) to execute.
- Returns
Created simulation run(s)
- Return type
Examples
- Create new simulation run:
>>> from cognite.client import CogniteClient >>> from cognite.client.data_classes.simulators.runs import SimulationRunWrite >>> client = CogniteClient() >>> run = [ ... SimulationRunWrite( ... routine_external_id="routine1", ... log_severity="Debug", ... run_type="external", ... ), ... ] >>> res = client.simulators.runs.create(run)
List simulation run data
- SimulatorRunsAPI.list_run_data(run_id: int) SimulationRunDataList
-
Retrieve data associated with a simulation run by ID.
- Parameters
run_id (int) – Simulation run id.
- Returns
List of simulation run data
- Return type
SimulationRunDataList
Examples
- Get simulation run data by run id:
>>> from cognite.client import CogniteClient >>> client = CogniteClient() >>> res = client.simulators.runs.list_run_data(run_id=12345)
- Get simulation run data directly on a simulation run object:
>>> run = client.simulators.runs.retrieve(ids=2) >>> res = run.get_data()
Simulator Logs
Retrieve simulator logs
- SimulatorLogsAPI.retrieve(ids: int) cognite.client.data_classes.simulators.logs.SimulatorLog | None
- SimulatorLogsAPI.retrieve(ids: Sequence[int]) cognite.client.data_classes.simulators.logs.SimulatorLogList | None
-
Simulator logs track what happens during simulation runs, model parsing, and generic connector logic. They provide valuable information for monitoring, debugging, and auditing.
Simulator logs capture important events, messages, and exceptions that occur during the execution of simulations, model parsing, and connector operations. They help users identify issues, diagnose problems, and gain insights into the behavior of the simulator integrations.
- Parameters
ids (int | Sequence[int]) – The ids of the simulator log.
- Returns
Requested simulator log(s)
- Return type
SimulatorLogList | SimulatorLog | None
Examples
- Get simulator logs by simulator model id:
>>> from cognite.client import CogniteClient >>> client = CogniteClient() >>> model = client.simulators.models.retrieve(ids=1) >>> logs = client.simulators.logs.retrieve(ids=model.log_id)
- Get simulator logs by simulator integration id:
>>> integrations = client.simulators.integrations.list() >>> logs = client.simulators.logs.retrieve(ids=integrations[0].log_id)
- Get simulator logs by simulation run id:
>>> run = client.simulators.runs.retrieve(ids=1) >>> logs = client.simulators.logs.retrieve(ids=run.log_id)
- Get simulator logs directly on a simulation run object:
>>> run = client.simulators.runs.retrieve(ids=2) >>> res = run.get_logs()
Data classes
- class cognite.client.data_classes.simulators.SimulationRun(id: int, simulator_external_id: str, simulator_integration_external_id: str, model_external_id: str, model_revision_external_id: str, routine_revision_external_id: str, routine_external_id: str, run_type: Literal['external', 'manual', 'scheduled'], status: Literal['ready', 'running', 'success', 'failure'], data_set_id: int, user_id: str, log_id: int, created_time: int, last_updated_time: int, status_message: str | None = None, simulation_time: int | None = None, run_time: int | None = None, cognite_client: CogniteClient | None = None)
Bases:
SimulationRunCore
Every time a simulation routine executes, a simulation run object is created.
This object ensures that each execution of a routine is documented and traceable. Each run has an associated simulation data resource, which stores the inputs and outputs of a simulation run, capturing the values set into and read from the simulator model to ensure the traceability and integrity of the simulation data.
Simulation runs provide a historical record of the simulations performed, allowing users to analyze and compare different runs, track changes over time, and make informed decisions based on the simulation results.
This is the read/response format of a simulation run.
- Parameters
id (int) – The id of the simulation run
simulator_external_id (str) – External id of the associated simulator
simulator_integration_external_id (str) – External id of the associated simulator integration
model_external_id (str) – External id of the associated simulator model
model_revision_external_id (str) – External id of the associated simulator model revision
routine_revision_external_id (str) – External id of the associated simulator routine revision
routine_external_id (str) – External id of the associated simulator routine
run_type (Literal['external', 'manual', 'scheduled']) – The type of the simulation run
status (Literal['ready', 'running', 'success', 'failure']) – The status of the simulation run
data_set_id (int) – The id of the dataset associated with the simulation run
user_id (str) – The id of the user who executed the simulation run
log_id (int) – The id of the log associated with the simulation run
created_time (int) – The number of milliseconds since epoch
last_updated_time (int) – The number of milliseconds since epoch
status_message (str | None) – The status message of the simulation run
simulation_time (int | None) – Simulation time in milliseconds. Timestamp when the input data was sampled. Used for indexing input and output time series.
run_time (int | None) – Run time in milliseconds. Reference timestamp used for data pre-processing and data sampling.
cognite_client (CogniteClient | None) – An optional CogniteClient to associate with this data class.
- get_data() cognite.client.data_classes.simulators.runs.SimulationRunDataItem | None
Retrieve data associated with this simulation run.
- Returns
Data for the simulation run.
- Return type
SimulationRunDataItem | None
- get_logs() cognite.client.data_classes.simulators.logs.SimulatorLog | None
Retrieve logs for this simulation run.
- Returns
Log for the simulation run.
- Return type
SimulatorLog | None
- update() None
Update the simulation run object to the latest state. Useful if the run was created with wait=False.
- wait(timeout: float = 60) None
Waits for simulation status to become either success or failure. This is generally not needed to call directly, as client.simulators.routines.run(…) will wait for the simulation to finish by default.
- Parameters
timeout (float) – Time out after this many seconds. Defaults to 60 seconds.
- class cognite.client.data_classes.simulators.SimulationRunList(resources: Iterable[Any], cognite_client: CogniteClient | None = None)
Bases:
WriteableCogniteResourceList
[SimulationRunWrite
,SimulationRun
],IdTransformerMixin
- class cognite.client.data_classes.simulators.SimulationRunWrite(routine_external_id: str, run_type: Optional[str] = None, run_time: Optional[int] = None, queue: Optional[bool] = None, log_severity: Optional[str] = None, inputs: Optional[list[cognite.client.data_classes.simulators.runs.SimulationInputOverride]] = None)
Bases:
SimulationRunCore
Request to run a simulator routine asynchronously.
- Parameters
routine_external_id (str) – External id of the associated simulator routine
run_type (str | None) – The type of the simulation run
run_time (int | None) – Run time in milliseconds. Reference timestamp used for data pre-processing and data sampling.
queue (bool | None) – Queue the simulation run when connector is down.
log_severity (str | None) – Override the minimum severity level for the simulation run logs. If not provided, the minimum severity is read from the connector logger configuration.
inputs (list[SimulationInputOverride] | None) – List of input overrides
- dump(camel_case: bool = True) dict[str, Any]
Dump the instance into a json serializable Python data type.
- Parameters
camel_case (bool) – Use camelCase for attribute names. Defaults to True.
- Returns
A dictionary representation of the instance.
- Return type
dict[str, Any]
- class cognite.client.data_classes.simulators.SimulationRunWriteList(resources: Iterable[Any], cognite_client: CogniteClient | None = None)
Bases:
CogniteResourceList
[SimulationRunWrite
],ExternalIDTransformerMixin
- class cognite.client.data_classes.simulators.Simulator(external_id: str, id: int, name: str, file_extension_types: Sequence[str], model_types: Optional[Sequence[SimulatorModelType]] = None, model_dependencies: Optional[Sequence[SimulatorModelDependency]] = None, step_fields: Optional[Sequence[SimulatorStep]] = None, unit_quantities: Optional[Sequence[SimulatorQuantity]] = None)
Bases:
CogniteResource
The simulator resource contains the definitions necessary for Cognite Data Fusion (CDF) to interact with a given simulator.
It serves as a central contract that allows APIs, UIs, and integrations (connectors) to utilize the same definitions when dealing with a specific simulator. Each simulator is uniquely identified and can be associated with various file extension types, model types, step fields, and unit quantities. Simulators are essential for managing data flows between CDF and external simulation tools, ensuring consistency and reliability in data handling.
This is the read/response format of the simulator.
- Parameters
external_id (str) – External id of the simulator
id (int) – Id of the simulator.
name (str) – Name of the simulator
file_extension_types (Sequence[str]) – File extension types supported by the simulator
model_types (Sequence[SimulatorModelType] | None) – Model types supported by the simulator
model_dependencies (Sequence[SimulatorModelDependency] | None) – Model dependencies supported by the simulator
step_fields (Sequence[SimulatorStep] | None) – Step types supported by the simulator when creating routines
unit_quantities (Sequence[SimulatorQuantity] | None) – Quantities and their units supported by the simulator
- dump(camel_case: bool = True) dict[str, Any]
Dump the instance into a json serializable Python data type.
- Parameters
camel_case (bool) – Use camelCase for attribute names. Defaults to True.
- Returns
A dictionary representation of the instance.
- Return type
dict[str, Any]
- class cognite.client.data_classes.simulators.SimulatorIntegration(id: int, external_id: str, simulator_external_id: str, heartbeat: int, data_set_id: int, connector_version: str, log_id: int, active: bool, created_time: int, last_updated_time: int, license_status: Optional[str] = None, simulator_version: Optional[str] = None, license_last_checked_time: Optional[int] = None, connector_status: Optional[str] = None, connector_status_updated_time: Optional[int] = None)
Bases:
CogniteResource
The simulator integration resource represents a simulator connector in Cognite Data Fusion (CDF).
It provides information about the configured connectors for a given simulator, including their status and additional details such as dataset, name, license status, connector version, simulator version, and more. This resource is essential for monitoring and managing the interactions between CDF and external simulators, ensuring proper data flow and integration.
This is the read/response format of the simulator integration.
- Parameters
id (int) – Id of the simulator integration.
external_id (str) – External id of the simulator integration
simulator_external_id (str) – External id of the associated simulator
heartbeat (int) – The interval in seconds between the last heartbeat and the current time
data_set_id (int) – The id of the dataset associated with the simulator integration
connector_version (str) – The version of the connector
log_id (int) – Id of the log associated with this simulator integration.
active (bool) – Indicates if the simulator integration is active (i.e., a connector is linked to CDF for this integration).
created_time (int) – The time when this simulator integration resource was created.
last_updated_time (int) – The last time the simulator integration resource was updated.
license_status (str | None) – The status of the license
simulator_version (str | None) – The version of the simulator
license_last_checked_time (int | None) – The time when the license was last checked
connector_status (str | None) – The status of the connector
connector_status_updated_time (int | None) – The time when the connector status was last updated
- class cognite.client.data_classes.simulators.SimulatorIntegrationFilter(simulator_external_ids: Optional[Union[str, SequenceNotStr[str]]] = None, active: Optional[bool] = None)
Bases:
CogniteFilter
- class cognite.client.data_classes.simulators.SimulatorIntegrationList(resources: Iterable[Any], cognite_client: CogniteClient | None = None)
Bases:
CogniteResourceList
[SimulatorIntegration
],IdTransformerMixin
- class cognite.client.data_classes.simulators.SimulatorList(resources: Iterable[Any], cognite_client: CogniteClient | None = None)
Bases:
CogniteResourceList
[Simulator
],IdTransformerMixin
- class cognite.client.data_classes.simulators.SimulatorModel(id: int, external_id: str, simulator_external_id: str, data_set_id: int, name: str, type: str, created_time: int, last_updated_time: int, description: Optional[str] = None)
Bases:
SimulatorModelCore
The simulator model resource represents an asset modeled in a simulator.
This asset could range from a pump or well to a complete processing facility or refinery. The simulator model is the root of its associated revisions, routines, runs, and results. The dataset assigned to a model is inherited by its children. Deleting a model also deletes all its children, thereby maintaining the integrity and hierarchy of the simulation data. Simulator model revisions track changes and updates to a simulator model over time. Each revision ensures that modifications to models are traceable and allows users to understand the evolution of a given model.
This is the read/response format of a simulator model.
- Parameters
id (int) – A unique id of a simulator model
external_id (str) – External id of the simulator model
simulator_external_id (str) – External id of the associated simulator
data_set_id (int) – The id of the dataset associated with the simulator model
name (str) – The name of the simulator model
type (str) – The type key of the simulator model
created_time (int) – The time when the simulator model was created
last_updated_time (int) – The time when the simulator model was last updated
description (str | None) – The description of the simulator model
- as_write() SimulatorModelWrite
Returns this SimulatorModel in its writing version.
- class cognite.client.data_classes.simulators.SimulatorModelList(resources: Iterable[Any], cognite_client: CogniteClient | None = None)
Bases:
WriteableCogniteResourceList
[SimulatorModelWrite
,SimulatorModel
],IdTransformerMixin
- class cognite.client.data_classes.simulators.SimulatorModelRevision(id: int, external_id: str, model_external_id: str, file_id: int, created_time: int, last_updated_time: int, simulator_external_id: str, data_set_id: int, created_by_user_id: str, status: str, version_number: int, log_id: int, description: Optional[str] = None, status_message: Optional[str] = None, external_dependencies: Optional[list[cognite.client.data_classes.simulators.models.SimulatorModelRevisionExternalDependency]] = None)
Bases:
SimulatorModelRevisionCore
Simulator model revisions track changes and updates to a simulator model over time.
Each revision ensures that modifications to models are traceable and allows users to understand the evolution of a given model.
- Parameters
id (int) – Internal id of the simulator model revision
external_id (str) – External id of the simulator model revision
model_external_id (str) – External id of the associated simulator model
file_id (int) – The id of the file associated with the simulator model revision
created_time (int) – The time when the simulator model revision was created
last_updated_time (int) – The time when the simulator model revision was last updated
simulator_external_id (str) – External id of the simulator associated with the simulator model revision
data_set_id (int) – The id of the dataset associated with the simulator model revision
created_by_user_id (str) – The id of the user who created the simulator model revision
status (str) – The status of the simulator model revision
version_number (int) – The version number of the simulator model revision
log_id (int) – The id of the log associated with the simulator model revision
description (str | None) – The description of the simulator model revision
status_message (str | None) – The current status message of the simulator model revision
external_dependencies (list[SimulatorModelRevisionExternalDependency] | None) – A list of external dependencies for the simulator model revision
- as_write() SimulatorModelRevisionWrite
Returns this SimulatorModelRevision in its writing version.
- class cognite.client.data_classes.simulators.SimulatorModelRevisionList(resources: Iterable[Any], cognite_client: CogniteClient | None = None)
Bases:
WriteableCogniteResourceList
[SimulatorModelRevisionWrite
,SimulatorModelRevision
],IdTransformerMixin
- class cognite.client.data_classes.simulators.SimulatorModelRevisionWrite(external_id: str, model_external_id: str, file_id: int, description: Optional[str] = None, external_dependencies: Optional[list[cognite.client.data_classes.simulators.models.SimulatorModelRevisionExternalDependency]] = None)
Bases:
SimulatorModelRevisionCore
- as_write() SimulatorModelRevisionWrite
Returns a writeable version of this resource
- class cognite.client.data_classes.simulators.SimulatorModelRevisionsFilter(model_external_ids: Optional[Union[str, SequenceNotStr[str]]] = None, all_versions: Optional[bool] = None, created_time: Optional[TimestampRange] = None, last_updated_time: Optional[TimestampRange] = None)
Bases:
CogniteFilter
- class cognite.client.data_classes.simulators.SimulatorModelWrite(external_id: str, simulator_external_id: str, data_set_id: int, name: str, type: str, description: Optional[str] = None)
Bases:
SimulatorModelCore
- class cognite.client.data_classes.simulators.SimulatorModelsFilter(simulator_external_ids: Optional[Union[str, SequenceNotStr[str]]] = None)
Bases:
CogniteFilter
- class cognite.client.data_classes.simulators.SimulatorStep(step_type: 'str', fields: 'Sequence[SimulatorStepField]')
Bases:
CogniteObject
- dump(camel_case: bool = True) dict[str, Any]
Dump the instance into a json serializable Python data type.
- Parameters
camel_case (bool) – Use camelCase for attribute names. Defaults to True.
- Returns
A dictionary representation of the instance.
- Return type
dict[str, Any]
- class cognite.client.data_classes.simulators.SimulatorStepField(name: 'str', label: 'str', info: 'str', options: 'Sequence[SimulatorStepOption] | None' = None)
Bases:
CogniteObject
- dump(camel_case: bool = True) dict[str, Any]
Dump the instance into a json serializable Python data type.
- Parameters
camel_case (bool) – Use camelCase for attribute names. Defaults to True.
- Returns
A dictionary representation of the instance.
- Return type
dict[str, Any]
- class cognite.client.data_classes.simulators.SimulatorStepOption(label: 'str', value: 'str')
Bases:
CogniteObject
- class cognite.client.data_classes.simulators.SimulatorUnitEntry(label: 'str', name: 'str')
Bases:
CogniteObject