Block Library

This page briefly explains the structure of pSeven’s component library and introduces available blocks.

Tags

Blocks in the Block Library are grouped under several tags, based on their functions and intended usage.

  • Integration — blocks that control external programs and can process program input and output.
  • Modeling — blocks that build models using training data or load such models so other blocks can use them in calculations.
  • Exploration — blocks that implement various design space exploration methods.
  • General — general purpose blocks.
  • [Beta] — the blocks that are still under development (preview versions).

Integration

Integration blocks are used to control execution of external programs and process program input and output. In other words, they create an interface between a pSeven workflow and some program — for example, a CAD package or a solver — which allows to run simulation or analysis in this program and use its results in the workflow. This group includes direct (program-specific) integration blocks as well as generic blocks that allow integration using any program’s command line interface. Direct integration blocks are easier to configure, while generic blocks allow greater flexibility.

Direct integration blocks are:

  • ANSYSWorkbench: integrates ANSYS Workbench projects.
  • Creo: integrates PTC Creo parts and assemblies.
  • Excel: integrates Excel documents, supports formulas and macros.
  • FloEFD: integrates FloEFD analysis projects.
  • Kompas3D: integrates KOMPAS-3D parts and assemblies.
  • NX: integrates Siemens NX models.
  • SolidWorks: integrates SolidWorks parts and assemblies.

Generic integration blocks are:

  • Program: launches any program from the command line, executes shell (batch) scripts.
  • PythonScript: runs your Python script.
  • Text: can generate a file by writing values of variables into a template, or read values from any text file (for example, input and output files of an external program).

Modeling

This group includes two types of blocks:

  • Builders — blocks that receive data and use it to train a predictive model. A model can be saved to a file or sent directly to a player type block that makes it available to other blocks. Builder blocks use model training algorithms implemented in the pSeven Core.
  • Players — blocks that load models and connect to other blocks, allowing them to use these models in calculations.

Builder blocks are:

  • ApproxBuilder: builds an approximation model using pSeven Core Generic Tool for Approximation.
  • DFBuilder: builds a data prediction model using pSeven Core Generic Tool for Data Fusion.
  • DRBuilder: builds a dimension reduction model using pSeven Core Generic Tool for Dimension Reduction.

Player blocks are:

  • ApproxPlayer: evaluates approximation model values, gradients, estimates model accuracy and provides model information.
  • DFPlayer: evaluates data prediction model values, gradients, estimates model accuracy and provides model information.
  • DRCompressor: evaluates compressed vectors and compress transformation gradients using a dimension reduction model.
  • DRDecompressor: evaluates decompressed vectors and decompress transformation gradient using a dimension reduction model.

Exploration

Exploration blocks implement methods used in design space exploration and design optimization. These blocks use algorithms implemented in the pSeven Core — except the UQ block that is powered by the OpenTURNS library.

  • DoE: generates data samples using pSeven Core Generic Tool for Design of Experiments.
  • IVE: performs sensitivity analysis using pSeven Core Generic Tool for Important Variable Extraction.
  • Optimizer: solves optimization problems using pSeven Core Generic Tool for Optimization.
  • UQ: performs uncertainty quantification studies.

General

This group includes general purpose tools for handling your data flow, loading files and so on.

  • Composite: creates a custom component encapsulating other blocks.
  • Condition: creates a conditional node in the workflow, useful for data filtering and data flow redirection.
  • Const: outputs preset constant values.
  • CSVGenerator: writes a matrix with header to a CSV file.
  • CSVParser: parses a CSV file to a data matrix and a header.
  • File: performs file operations.
  • Map: maps a list of inputs to a list of responses.
  • Random: pseudo-random number generator.
  • Submatrix: selects specified rows and columns from input matrix.

[Beta]

This group includes preview versions of blocks that are still under development. Beta blocks are fully functional, but their properties, available settings, and functionality are still subject to changes. A workflow including beta blocks from the current version may become incompatible with future pSeven releases. Detailed documentation for beta blocks is not available since using them for production tasks is not recommended.

  • CATIA: integrates CATIA V5 models into a pSeven workflow.
  • Calculator: matrix calculator with scripting support.
  • Design of experiments: generates data samples with specific properties and allows evaluating responses on generated designs.
  • Distribution: creates a probabilistic model for uncertainty quantification studies.
  • Echo: echoes input value to the run log.
  • For: creates a for loop in a workflow.
  • Foreach: creates a foreach loop in a workflow.
  • Formula: calculates function and derivative values of user-defined functions.
  • Loader: reads data from a file.
  • Range: generates numeric progressions.
  • Reduce: implements the reduce loop.
  • Saver: writes data to a file.

Deprecated Blocks

Deprecated blocks existed in earlier versions of pSeven. An old workflow containing these blocks will load and run normally, but blocks themselves are no longer available from the Block Library.

  • If: conditional true-false operator; replaced with the Condition block.
  • Switch: conditional switch operator; replaced with the Condition block.
  • Toggle: conditional toggle operator; replaced with the Condition block.
  • TextGenerator: generates a text file by template; replaced with the Text block.
  • TextParser: parses data values from a text file; replaced with the Text block.
  • ShellScript: integrates any external executable in the workflow; replaced with the Program block.