...
| Panel | ||||||
|---|---|---|---|---|---|---|
| ||||||
client = SimulationWebClient('http(s)://<server_host>:<server_port>', '<TWC_user_name><usename>', '<password>', '<TWC_user_password><token>', False) |
This request starts a work session and provides authentication to Teamwork Cloud.
The following table describes the parameters used in the request:
| Parameter | In | Required or optional | Description |
|---|---|---|---|
| server_host | path | required | The Teamwork Cloud server host name. |
| server_port | path | required | The Teamwork Cloud server port. |
| username | path | optional | The Teamwork Cloud user name. If you do not specify the user name in the request, an input field will be provided to specify it later. |
| password | path | optional | The Teamwork Cloud password. If you do not specify the password in the request, an input field will be provided to specify it later. |
token | path | optional | The Teamwork Cloud token. You can either provide a username/password or a token. To learn more about generating a token, click here. |
| Tip |
|---|
For instructions on how to run server-side simulation using SSL, refer to Running server-side simulation with SSL |
...
The following table describes the parameters used in the request:
| Parameter | In | Required or optional | Description | Options |
|---|---|---|---|---|
| project | path | required | The Teamwork Cloud project name or ID. | NA |
| version | path | optional | The Teamwork Cloud project version. | NA |
| branch | path | optional | The project branch name or ID. If the branch is omitted, the trunk is used instead. | NA |
| element | path | optional | The qualified name or server ID of the element to be executed. | NA |
| config | path | optional | The Simulation Configuration name or server ID. | NA |
| started_from | path | optional | Allows specifying the starting location of the simulation. The value of the started_from parameter is provided in the status endpoint response. | NA |
| commit_results | path | optional | Commits a new project version with the simulation results. Available values are True or False (default). | NA |
| verification | path | optional | Returns the selected verification results. Available values are:
| NA |
| data | path | optional | A set of output parameters, which will be obtained after the simulation is complete. | NA |
timeout | path | optional | Allows specifying the timeout duration in minutes. If the timeout parameter is not provided, the sim.timeout.min property will be taken from the webappplatform.properties instead. | NA |
sync | path | optional | Initiates a synchronous API call. If the sync is set to 'True', the call will return when it is completed. Available values are True or False (default). | NA |
| simconfig | body | optional | The set of simulation configuration properties along with their corresponding values. The simulation configuration options you specify will take precedence over the initial configuration option from a model. |
|
| Code Block | ||
|---|---|---|
| ||
# SpaceCraftMassRollup sample
parameters = {
"inputs":
{
"telecom.antenna.me":10,
"telecom.amplifier.me":20
},
"outputs":
[
"me",
"propulsion.me",
"propulsion.tank.me",
"propulsion.thruster.me",
"telecom.me",
"telecom.antenna.me",
"telecom.amplifier.me"
]
}
client.run('SpacecraftMassRollup_SimWeb', config='spacecraft mass analysis', commit_results=False, data=json.dumps(parameters)) |
...
The following table describes the parameters used in the request:
| Parameter | In | Required or optional | Description | ||
|---|---|---|---|---|---|
| simulation_id | path | optional | The ID of a specific simulation.
| ||
| sync | path | optional | Initiates a synchronous API call. If the sync is set to 'True', the call will return when it is completed. Available values are True or False (default). |
Start simulation
| Panel | ||||
|---|---|---|---|---|
| ||||
client.start(<simulation_id>) |
...
The following table describes the parameters used in the request:
| Parameter | In | Required or optional | Description | ||
|---|---|---|---|---|---|
| simulation_id | path | optional | The ID of a specific simulation.
|
Start simulation and get results
...
The following table describes the parameters used in the request:
| Parameter | In | Required or optional | Description | Options |
|---|---|---|---|---|
| project | path | required | The Teamwork Cloud project name or ID. | NA |
| version | path | optional | The Teamwork Cloud project version. | NA |
| branch | path | optional | The project branch name or ID. If the branch is omitted, the trunk is used instead. | NA |
| element | path | optional | The qualified name or server ID of the element to be executed. | NA |
| config | path | optional | The Simulation Configuration name or server ID. | NA |
| commit_results | path | optional | A new project version is committed with the simulation results. Available values are True or False (default). | NA |
| verification | path | optional | Returns the selected verification results. Available values are:
If the verification value is not specified, only the verification results with the fail status are returned when the get_results endpoint is called. | NA |
| data | path | optional | A set of output parameters, which will be obtained after the simulation is complete. | NA |
| simconfig | body | optional | The set of simulation configuration properties along with their corresponding values. The simulation configuration options you specify will take precedence over the initial configuration option from a model. |
|
| Code Block | ||
|---|---|---|
| ||
# SpaceCraftMassRollup sample
parameters = {
"inputs":
{
"telecom.antenna.me":10,
"telecom.amplifier.me":20
},
"outputs":
[
"me",
"propulsion.me",
"propulsion.tank.me",
"propulsion.thruster.me",
"telecom.me",
"telecom.antenna.me",
"telecom.amplifier.me"
]
}
client.simulate('SpacecraftMassRollup_SimWeb', config='spacecraft mass analysis', commit_results=False, data=json.dumps(parameters)) |
...
The following table describes the parameters used in the request:
| Parameter | In | Required or optional | Description | ||
|---|---|---|---|---|---|
| simulation_id | path | optional | The ID of a specific simulation.
|
| Code Block | ||
|---|---|---|
| ||
client.get_status('77d0c496-c1e2-42cd-8ba4-04e4c7f359d3')
{'state': 'RUNNING',
'simulationId': '77d0c496-c1e2-42cd-8ba4-04e4c7f359d3',
'simulationTime': '0 ms',
'indexUI': 'http://nm-simulation.dsone.3ds.com/simulation/api/ui/index/77d0c496-c1e2-42cd-8ba4-04e4c7f359d3?pages=Coffee%20Machine.html&pages=Water%20Heating%20Element.html&pages=Wallet.html',
'project': 'CoffeeMachine',
'config': 'Coffee Machine',
'elapsedTime': 0,
'podName': 'simulation-deployment-6989d5dfc9-r6llk',
'ui': ['http://nm-simulation.dsone.3ds.com/simulation/api/ui/77d0c496-c1e2-42cd-8ba4-04e4c7f359d3/Coffee%20Machine.html',
'http://nm-simulation.dsone.3ds.com/simulation/api/ui/77d0c496-c1e2-42cd-8ba4-04e4c7f359d3/Water%20Heating%20Element.html',
'http://nm-simulation.dsone.3ds.com/simulation/api/ui/77d0c496-c1e2-42cd-8ba4-04e4c7f359d3/Wallet.html']}
client.get_status('ce8c8215-0515-43fd-9d34-92d1d7a95d87')
{'state': 'COMPLETED',
'simulationId': 'ce8c8215-0515-43fd-9d34-92d1d7a95d87',
'simulationTime': '3000 ms',
'project': 'SpacecraftMassRollup',
'config': 'spacecraft mass analysis',
'elapsedTime': 6598}
client.get_status('b7bdf933-f58d-4e7e-b73b-8370c60485cd')
{'state': 'QUEUED',
'queueNumber': 3,
'simulationId': 'b7bdf933-f58d-4e7e-b73b-8370c60485cd',
'simulationTime': '0 ms',
'project': 'CarBrakingAnalysis',
'elapsedTime': 52} |
...
The following table describes the parameters used in the request:
| Parameter | In | Required or optional | Description | ||
|---|---|---|---|---|---|
| simulation_id | path | optional | The ID of the running simulation.
| ||
| variables | path | optional | The set of simulation variables that should be obtained. If no variables are specified, the values of all simulation variables are returned. |
Set simulation variables
| Panel | ||||||
|---|---|---|---|---|---|---|
| ||||||
client.set_variables(<simulation_id>, variables=json.dumps(<parameters>), context=<context ID>, property_path=<property path>) |
...
The following table describes the parameters used in the request:
| Parameter | In | Required or optional | Description | ||
|---|---|---|---|---|---|
| simulation_id | path | optional | The ID of the running simulation.
| ||
| variables | path | required | The set of simulation variables with values that should be used during the current simulation. | ||
| context | path | optional | The context ID. | ||
| property_path | path | optional | The property path of the context specified using property names or IDs. |
| Code Block | ||
|---|---|---|
| ||
var = {
"variables":
{
"position": 40
}
}
client.set_variables('23ceff24-28fa-47e4-b29f-b6b60b4b12e3', variables=json.dumps(var)) |
...
The following table describes the parameters used in the REST API request:
| Parameter | In | Required or optional | Description | ||
|---|---|---|---|---|---|
| simulation_id | path | optional | The ID of the running simulation.
|
Resume simulation
| Panel | ||||||
|---|---|---|---|---|---|---|
| ||||||
client.resume(<simulation_id>) |
...
The following table describes the parameters used in the REST API request:
| Parameter | In | Required or optional | Description | ||
|---|---|---|---|---|---|
| simulation_id | path | optional | The ID of the running simulation.
|
Get simulation results
| Panel | ||||||
|---|---|---|---|---|---|---|
| ||||||
client.get_result(<simulation_id>) |
...
The following table describes the parameters used in the request:
| Parameter | In | Required or optional | Description | ||
|---|---|---|---|---|---|
| simulation_id | path | optional | The ID of the running simulation.
|
Get the list of running simulations
...
The following table describes the parameters used in the request:
| Parameter | In | Required or optional | Description | ||
|---|---|---|---|---|---|
| simulation_id | path | optional | The ID of a specific simulation.
| ||
| sync | path | optional | Initiates a synchronous API call. If the sync is set to 'True', the call will return when it is completed. Available values are True or False (default). |
Check for Simulation Configurations
...
The following table describes the parameters used in the request:
| Parameter | In | Required or optional | Description |
|---|---|---|---|
| project | path | required | The Teamwork Cloud project name or ID. |
| version | path | optional | The Teamwork Cloud project version. |
| branch | path | optional | The project branch name or ID. If the branch is omitted, the trunk is used instead. |
Get Simulation Configurations
...
The following table describes the parameters used in the request:
| Parameter | In | Required or optional | Description |
|---|---|---|---|
| project | path | required | The Teamwork Cloud project name or ID. |
| version | path | optional | The Teamwork Cloud project version. |
| branch | path | optional | The project branch name or ID. If the branch is omitted, the trunk is used instead. |
| element | path | optional | The qualified name or server ID of the element to be executed. |
| filter | path | optional | Returns Simulations Configurations with a specified UI tag for a particular project. The only possible value for the filter parameter is ui. Only Simulations Configurations having at least one of the following UI elements are returned:
|
Get Simulation Configuration descriptor
...
The following table describes the parameters used in the request:
| Parameter | In | Required or optional | Description |
|---|---|---|---|
| project | path | required | The Teamwork Cloud project name or ID. |
| version | path | optional | The Teamwork Cloud project version. |
| branch | path | optional | The project branch name or ID. If the branch is omitted, the trunk is used instead. |
| config | path | optional | The Simulation Configuration name or server ID. |
| Code Block | ||
|---|---|---|
| ||
client.get_descriptor('SpacecraftMassPollup_SimWeb', config='spacecraft mass analysis')
{'config': 'spacecraft mass analysis',
'description': 'Simulation Config that is dedicated to run spacecraft mass rollup.',
'model': 'spacecraft',
'parameters': {'inputs': [{'parameter': 'telecom.amplifier.me',
'value': 32.0,
'type': 'mass[kilogram]',
'unit': 'kilogram',
'requirements': [{'id': '1',
'text': 'Estimated mass shall be less than allocated mass'}]},
{'parameter': 'telecom.antenna.me',
'value': 32.0,
'type': 'mass[kilogram]',
'unit': 'kilogram',
'requirements': [{'id': '1',
'text': 'Estimated mass shall be less than allocated mass'}]},
{'parameter': 'propulsion.tank.me',
'value': 68.0,
'type': 'mass[kilogram]',
'unit': 'kilogram',
'requirements': [{'id': '1',
'text': 'Estimated mass shall be less than allocated mass'}]},
{'parameter': 'propulsion.thruster.me',
'value': 68.0,
'type': 'mass[kilogram]',
'unit': 'kilogram',
'requirements': [{'id': '1',
'text': 'Estimated mass shall be less than allocated mass'}]}],
'outputs': [{'parameter': 'telecom.me',
'value': 32.0,
'type': 'mass[kilogram]',
'unit': 'kilogram',
'requirements': [{'id': '1',
'text': 'Estimated mass shall be less than allocated mass'}]},
{'parameter': 'propulsion.me',
'value': 68.0,
'type': 'mass[kilogram]',
'unit': 'kilogram',
'requirements': [{'id': '1',
'text': 'Estimated mass shall be less than allocated mass'}]},
{'parameter': 'me',
'value': 95.0,
'type': 'mass[kilogram]',
'unit': 'kilogram',
'requirements': [{'id': '1',
'text': 'Estimated mass shall be less than allocated mass'}]}]}}
client.get_descriptor('BouncingBall', config='Run BouncingBall')
{'config': 'Run BouncingBall',
'description': 'Simulation Config dedicated to run simulation with bouncingBall.fmu.',
'model': 'bouncingBall',
'timeStep': '10 ms'
} |
...