10.4 Fluent TPA

Fluent TPA is a completely unique approach to working with Transfer Path Analysis. It originates from the idea that every TPA analysis can be brought down to essential processing steps on datasets (operational data or transfer function data), often formulated as matrix equations (linear algebra). Fluent TPA provides you with the building blocks for these matrix equations, combined with steps that focus on batch processing. As such, it combines the power of SOURCE to efficiently handle large data collections, with the freedom to decide on your own specific analysis.

Module overview

  1. Fluent TPA analysis.
  2. Fluent TPA editor.
  3. Sections.
  4. Instructions.
  5. Result output categories.
  6. Result names (tokenizable).
  7. Saving and loading existing scripts.

Working with Fluent TPA

When working with Fluent TPA you have to imagine yourself in front of a blackboard writing steps and equations of your workflow. We made Fluent TPA in such a way that when you write an instruction in the editor, you have to organize it as if you are writing an equation on paper, so by adding terms and operations one after the other.

A Fluent TPA analysis works like any other analysis in SOURCE concerning analysis creation, inputs, settings and computing.

Creating analyses

To create a new analysis, complete the following steps:

  1. Go to the Analyze module.
  2. Click on this button . A menu will appear.
  3. Select Fluent TPA analysis from the list.

The inputs and settings of the analysis are defined in the Inputs (link) and in the Settings (link), respectively.

Computing analyses

To compute the analysis, within the Analyses card, you have to:

  1. Click on the calculator symbol on the right of the Fluent TPA analysis.

SOURCE will only compute the sections of the analysis that are set as active in the Fluent TPA editor.

Working with scripts

Accessing the Fluent TPA editor

To access the Fluent TPA editor, you have to:

  1. Click on the three dots in the correct analysis.

Renaming scripts

You can name scripts according to your liking. The name of the script will appear in the script and in the analysis.

To name a script, complete the next steps:

  1. Click on the Name field at the top left of the editor.
  2. Type the desired name and press ENTER.

Saving scripts

After creating a script in the Fluent TPA editor, you can easily save it and export it to use in a different project or share it with a colleague.

To save a script, complete the next steps:

  1. Click on .
  2. Browse for the desired location.
  3. Type the file name.
  4. Press Save.

Loading scripts

You can load an already existing Fluent TPA script in the editor.

To load a script, complete the next steps:

  1. Click on .
  2. Browse for the script location.
  3. Select the script.
  4. Press Open.


In your script, you can define multiple sections that you can rename and activate or deactivate according to your needs.

Adding sections

To add a new section, complete the next steps:

  1. Click the + button  at the top right corner of the editor.
  2. Rename the section.
  3. Press Enter.

Clicking on the – button will remove the last section.

Renaming sections

To rename a section, complete the next steps:

  1. Click on the section name.
  2. Type the desired name and press Enter.

Deactivating sections

By default, all the sections added in the editor are set as active and are computed by SOURCE. You can deactivate sections so that they do not get computed. All instructions that are part of a non-active section will not be computed, so the variables created in a non-active section cannot be used in the next active section.

To deactivate sections, you have to:

  1. Untick the checkbox next to the section.


Each line in the section is called instruction. When you write an instruction in the Fluent TPA editor, you have to organize it as if you are writing an equation on the blackboard, so by adding operations consecutively.

Adding instructions

To add an instruction, you have to:

  1. Click the + button   next to the correct section.
  2. Fill in the instructions by typing the variable name and choosing the desired operations (read more below).

Showing output variables in the results

After creating an instruction, you can decide whether you want to visualize the outputs of that specific instruction in the results section. By doing it, SOURCE will create a new category in the results. You can create and rename the result category in the Fluent TPA editor.

To create a new category containing the outputs in the results, complete the next steps:

  1. Tick the checkbox of the instruction in the Result column of the editor.
  2. Select a category from the drop-down.

You can also create a new category by typing the desired name.

Setting the result names

When computing the results, you can define the name of the results in that category. Instead of manually typing a name (which could lead to confusion in case of multiple inputs), you can use the tokenizer.

To setting the result names, complete the next steps:

  1. Activate the result checkbox.
  2. Type { to visualize the existing tokens.
  3. Select the desired token(s).


Each building block of an instruction is called an operation. Three operation types are defined:

  1. Selection operations (blue)
  2. Query (specification) operations (grey)
  3. Mathematical computations (green)

There are some general rules regarding operations in an instruction:

  • The first operation of an instruction is always a selection (blue).
  • There can only be one selection type operation.
  • There can be multiple query, or mathematical operations in the same instruction.
  • There cannot be a selection after a query or a mathematical operation.
  • There cannot be a query after a mathematical operation.

Selection operations

  • Take: an operation starting with Take will obtain datasets from the inputs of the analysis. These will be either operational or FRF data.
  • Get: take the outcome of a previous instruction.

Query (specification) operations

  • Where: filter the inputs according to a property (e.g. Test Assembly).
  • Match: to pair up operational and FRF data according to a shared property. A typical use case is to match the operational data with the respective FRF matrix (same test assembly) for matrix inversion.
  • Channels: downselect your dataset to channels of one or multiple specific types. The channel types are defined in the channel card.
  • Ref. Channels: downselect your FRF dataset to reference channels (columns). The channel types are defined in the channel card.
  • Split: splits up datasets into either individual channels or groups of channels according to the partial group set in the setting card. It can be used to create, for example, partial contributions. For this to work you need to activate the partial contribution setting in the settings.

Mathematical operations

  • As: converts data to the specified type. Block and Fourier settings of the Analysis are applied. If you select frequency blocks, then order blocks and order cuts are left unchanged (as these are compatible for frequency domain calculations).
  • Multiply: multiplies the specified variable ( $$  \mathbf{u} = \mathbf{Y f} $$ ).
  • Inverse: multiplies the pseudo-inverse of the specified variable ( $$  \mathbf{f} = \mathbf{Y \setminus u} $$). The matrix inverse settings of the analysis are applied.
  • PCA: calculates the Principal Component Analysis, using the specified variable as reference channels.
  • Transmissibility: calculates the transmissibility matrix between two operational datasets, or two FRF datasets.
  • Scalar + Plus/Minus/Multiply/Divide/Power: arithmetic operation, scalar.
  • Elementwise + Plus/Minus/Multiply/Divide/Power: arithmetic operation, elementwise.

Adding operations

To add operations in an instructions, complete the next steps:

  1. Type a unique variable in the first available field.
  2. Press .
  3. Select the desired operation and dataset/variable(s).

    Contact us for more VIBES

    Contact our support team or call us on +31 85 822 50 49