Materials & Methods
This use case is organized into a sequential scientific workflow, implemented through a nuRemics App called CANTILEVER_SHEAR_APP.
Workflow
The workflow is composed of the following software processes:
GeometryProc: Create a geometric representation of a physical system.
A/create_geometry: Create and export a simple geometric entity (beam, plate, or block) in STEP or BREP format.LabelingProc: Define and label the entities of a physical system from its geometric representation.
A/label_entities: Assign labels to the entities of a geometric model.
flowchart RL
**GeometryProc** e1@--1--o **CANTILEVER_SHEAR_APP**
**LabelingProc** e2@--2--o **CANTILEVER_SHEAR_APP**
**create_geometry** e3@--A--o **GeometryProc**
**label_entities** e4@--A--o **LabelingProc**
e1@{ animate: true }
e2@{ animate: true }
e3@{ animate: true }
e4@{ animate: true }
I/O Interface
The following I/O interface describes the input data required and the output data generated by the workflow:
flowchart LR
subgraph **INPUTS**
direction TB
subgraph **Paths**
direction LR
path["_"]
end
subgraph **Parameters**
direction LR
param1["dimension _(int)_"]
end
end
subgraph **CANTILEVER_SHEAR_APP**
direction RL
proc1["GeometryProc"]
proc2["LabelingProc"]
end
subgraph **OUTPUTS**
direction RL
out1["geometry.(step/brep) _(file)_"]
out2["labels.json _(file)_"]
end
**INPUTS** --> **CANTILEVER_SHEAR_APP**
**CANTILEVER_SHEAR_APP** --> **OUTPUTS**
The GeometryProc software process handles the following input and output data:
flowchart LR
subgraph **INPUTS**
direction TB
subgraph **Paths**
direction LR
path["_"]
end
subgraph **Parameters**
direction LR
param1["dimension _(int)_"]
end
end
subgraph **CANTILEVER_SHEAR_APP**
direction RL
proc1["GeometryProc"]
end
subgraph **OUTPUTS**
direction RL
out1["geometry.(step/brep) _(file)_"]
end
**INPUTS** --> proc1
proc1 --> **OUTPUTS**
The LabelingProc software process handles the following input and output data:
flowchart LR
subgraph **INPUTS**
direction TB
subgraph **Paths**
direction LR
out1["geometry.(step/brep) _(file)_"]
end
subgraph **Parameters**
direction LR
param1["dimension _(int)_"]
end
end
subgraph **CANTILEVER_SHEAR_APP**
direction RL
proc2["LabelingProc"]
end
subgraph **OUTPUTS**
direction RL
out2["labels.json _(file)_"]
end
**INPUTS** --> proc2
proc2 --> **OUTPUTS**
classDef blueBox fill:#d0e6ff,stroke:#339,stroke-width:1.5px;
class out1 blueBox;
Inputs
The input data are divided into two categories: Parameters and Paths.
Parameters
These are scalar values that must be defined to configure the workflow:
dimension: Dimension of the geometry: 1 for a line (beam), 2 for a rectangle (plate), 3 for a box (block).
Paths
These are either files or folders that must be provided to configure the workflow:
N/A
Outputs
The output data are either files or folders generated by the workflow and written to disk:
geometry.(step/brep): File containing the geometric model (in .step ifdim= 3|2 or .brep ifdim= 1).labels.json: File containing the labeled geometric entities.