Default Nodes

code

CodeNode

Custom python coding node.

Input Terminals

arguments (list of strings):
comma separated list of terminal names which dynamically create input terminals

Output Terminals

functionOut (python function):
returns the function which consists of the custom code
returnOut (any):
the value of returnOut

general

BooleanComparatorNode

Compares two inputs

Input Terminals

a (object):
a single input object of any type
b (object):
a single input object of any type

Output Terminals

out (bool):
a single output boolean that is the result of the operation selected in the operation terminal

User Terminals

operation:
a user selection that determines the comparison to be made

BrowseDirectoryNode

Browse to a directory and return the path as a string to that directory.

Output Terminals

directory (str):
Path to the directory. If the directory at the path does not exist, returns the string ‘Does Not Exist’.

BrowseFileNode

Browse to a File and return the path as a string to that file.

Output Terminals

file (str):
Path to the file. If the file at the path does not exist, returns the string ‘Does Not Exist’.

PathJoin

This node will join two path elements

Input Terminals

path1 (str):
The first part of the path to join
path2 (str):
the secont part of the path to join

Output Terminals

output (str):
the joined path

PeriodTriggerNode

Checks if a monotonically increasing float pass a defined period and returns a True trigger whenever the float passes the trigger period. Useful for limiting a task only to equally spaced values.

Input Terminals

Value (float):
a single input float that is expected to increase monotonically
Period (float):
the period between desired event triggers

Output Terminals

Trigger (bool):
a single output boolean which can be used to trigger other events
Delta (float):
The true period between the last trigger and the current.

PickleObjectsNode

Uses pickle to save and load objects to file

Input Terminals

In (serializable object):
an input object that is able to be serialized and saved
filepath (str):
a string which is the filepath for the file to be saved or loaded

Output Terminals

Out (python object):
an object that was deserialized from file

User Terminals

Pickler (str):
a string that defines the type of pickler to use on the object
mode (str):
a string that switches between saving and loading of the object

PrintNode

Print an object to stout (i.e. print(object))

Input Terminals

object (object):
An object to print.

PrintTypeNode

Print the type of an object to stout (i.e. print(type(object))).

Input Terminals

object (object):
An object to print the type of.

SliceNode

This node will slice an iterable

Input Terminals

iterable (object):
An iterable object that you wish to slice
slice (str):
a string descrbing a slice of the iterable (i.e. [2:5, 4])

Output Terminals

output (object):
the resulting slice

StopNode

This node will stop the loop that it is placed inside.

Input Terminals

stop (bool):
Set the value to True to emit a stop signal to the loop. If you want the loop to continue, this value should be False (default)

StringJoin

This node will join two path elements

Input Terminals

path1 (str):
The first part of the path to join
path2 (str):
the secont part of the path to join

Output Terminals

output (str):
the joined path

TestOutput

Node dedicated to simplifying test harness testing. Attach to desired output and reference in the test method.

math

AddNode

Sum the inputs

Input Terminals

input (numerical):
multi input of numeric values to be summed

Output Terminals

result (numerical):
the value of those summed inputs

DivideNode

Divide the inputs

Input Terminals

numerator (numerical):
number to be divided
denominator (numerical):
number to divide by

Output Terminals

result (numerical):
the value of those divided inputs

FactorialNode

calculate the factorial of a number.

Input Terminals

input (numerical):
number to calculate the factorial of

Output Terminals

result (numerical):
the resulting factorial

MultiplyNode

Multiply the inputs

Input Terminals

input (numerical):
multi input of numeric values to be multiplied

Output Terminals

result (numerical):
the value of those multiplied inputs

PowerNode

Raise base to a power

Input Terminals

base (numerical):
number to be multiplied
exponent (numerical):
the power to be raised

Output Terminals

result (numerical):
the value of those multiplied inputs

RootNode

nth root of a number

Input Terminals

radicand (numerical):
number to be reduced
degree (numerical):
number of degrees to reduce

Output Terminals

result (numerical):
the resulting base

SubtractNode

Subtract the inputs

Input Terminals

minuend (numerical):
number to be subtracted from
subtrahend (numerical):
number to subtract

Output Terminals

result (numerical):
the value of those subtracted inputs

matplotlib

BasePlotNode

base node for all the seaborn nodes, not meant to be used directly

ImageNode

Display an image

Input Terminals

image (np.ndarray):
a 2D or 3D array

MultiPlotNode

multiple x, y plots

Input Terminals

x (iterable):
a 1D iterable (list, np.ndarray, etc.)
y (iterable):
a 1D iterable (list, np.ndarray, etc.)

PlotNode

x, y plot

Input Terminals

x (iterable):
a 1D iterable (list, np.ndarray, etc.)
y (iterable):
a 1D iterable (list, np.ndarray, etc.)

numpy

ABSNode

Calculate the absolute value of the input array

Input Terminals

array (iterable):
an iterable to calculate the FFT of

Output Terminals

abs(array) (np.array):
the absolute value of the array

ArrayNode

Create an array

Input Terminals

shape (str):
a string of comma seporated integers defining the array extents
type (str):
a string selecting the data format of the array
value (float):
an initial value to fill the array with

Output Terminals

array (np.ndarray):
the resulting array

AsArrayNode

Create an array from an iterable

Input Terminals

input (iterable):
an iterable that can be converted to an array

Output Terminals

array (np.ndarray):
the resulting array

ConditionalIndexNode

Create an array of zeros witht he same shape as the inout array

Input Terminals

array (np.array):
an array to copy the shape of

Output Terminals

zeros (np.array):
an array with the same shape, but filled with zeros

DivideNode

Divide numpy arrays that have the same shape, connection order matters

Input Terminals

array (np.ndarray):
array to divide

Output Terminals

result (np.ndarray):
the resulting array

FFTNode

Calculate the FFT of the input array

Input Terminals

array (iterable):
an iterable to calculate the FFT of
rate(float):
sample rate to determine the freuency range (Hz)

Output Terminals

frequency (np.array):
the calculated frequency range (Hz)
fft (np.array):
the fft

HistogramNode

Compute the histogram of a set of data

Input Terminals

array (np.ndarray):
Input data. The histogram is computed over the flattened array.
bins (int):
the number of bins

Output Terminals

hist (np.ndarray):
the values of the histogram
edges(np.ndarray):
the bin edges (length(hist)+1)
centers (np.ndarray):
the bin centers

IndexNode

Indexes into an array. Click the plus or minus button to add dimension arguments

Input Terminals

array (np.ndarray):
the input array to be indexed
assign (np.ndarray):
an array, float, or int to assign to the indexed region. Note: an array needs to have the same dimensions as the index.

Output Terminals

array (np.ndarray):
the indexed array
array (np.ndarray):
the input array with the assignment if provided

LoadTXT

Loads an array from a text file

Input Terminals

file (str):
path to the file of interest
skiprows (str):
skip the first skiprows lines; default: 0.

Output Terminals

array (numpy.array):
the array read from the file

MeanNode

Calculate the mean of the input array

Input Terminals

array (iterable):
an iterable to calculate the mean of

Output Terminals

mean (float):
the calculated mean

MultiplyNode

Multiply numpy arrays that have the same shape

Input Terminals

array (np.ndarray):
array to multiply

Output Terminals

result (np.ndarray):
the resulting array

RandomNode

Generate an array of random values

Input Terminals

shape (str):
a string of comma seporated integer values (i.e. 3,6,3,4) defining the shape of the array

Output Terminals

array (np.ndarray):
the randomly generated array

RangeNode

Generate an array of floats given a starting value, ending value, and a step.

Input Terminals

start (float):
the starting value
stop (float):
the ending value
step (float):
the step between values
type (str):
the dtype of the resulting array

Output Terminals

range (np.ndarray):
the resulting range

SubtractNode

Subtract numpy arrays that have the same shape, connection order matters.

Input Terminals

array (np.ndarray):
array to subtract

Output Terminals

result (np.ndarray):
the resulting array

SumNode

Add numpy arrays that have the same shape

Input Terminals

array (np.ndarray):
array to add

Output Terminals

result (np.ndarray):
the resulting array

TransposeNode

Transpose the input array

Input Terminals

input (np.ndarray):
the input array

Output Terminals

array (np.ndarray):
the resulting array

TrigNode

Compute the selected trig function of the input one dimensional array

Input Terminals

input (np.ndarray):
the input one dimensional array
operation (str):
trig function

Output Terminals

array (np.ndarray):
the resulting array

VStackNode

Combine (stack) arrays in the vertically

Input Terminals

transpose (bool):
transpose the resulting array

Output Terminals

array (np.ndarray):
the resulting array

ZerosLikeNode

Create an array of zeros witht he same shape as the inout array

Input Terminals

array (np.array):
an array to copy the shape of

Output Terminals

zeros (np.array):
an array with the same shape, but filled with zeros

optimization toolset

DOENode

Used to construct a Design of Experiments. The node is designed to work both inside and outside of the MFIX GUI and has special capabilities in both environments. See the Optimization examples for detailed explanations and use cases.

FunctionFit

Fit the provided function to the provided data

Input Terminals

function (str):
function to fit to the data
data (np.ndarray):
a 1D array to fit the function to

Output Terminals

parameters (np.ndarray):
the resulting parameters for the best fit

GeneralOptimizer

Optimization of scalar function of one or more variables

Input Terminals

function (str):
the function to be minimized
initialGuess (list):
initial guess

Output Terminals

result (str):
the solution

ResponseSurfaceModel

Fits a Response Surface Model (RSM) to a dataset created with the design of experiments node and a response generated from that dataset and provides tools to evaluate the RSM, optimize, conduct sensitivity studies, and do forward propigation of uncertainty. See the Optimization examples for detailed explanations and use cases.

SplineFit

Fit a univariate spline to the data

Input Terminals

x (np.ndarray):
a 1D array of x values, must be increasing
y (np.ndarray):
a 1D array that the spline is fit to or a 2D array where [:, 0] are the x values and [:, 1] are the y values.
degree (int):
degree of the spline, must be <= 5 (default: 3)
smoothness (float):
Positive smoothing factor used to choose the number of knots. Number of knots will be increased until the smoothing condition is satisfied. If 0, spline will interpolate through all data points (default: None)

Output Terminals

spline (np.ndarray):
the resulting spline function
spline (np.ndarray):
the spline evaluated at x

pandas

CsvNode

Read a csv file into a Pandas DataFrame

Input Terminals

file (str):
path to a file
sep (str):
seporation character (i.e. ,)
dates (bool):
attempt to convert strings to datetime objects
column (str):
the column to use as the index of the DataFrame

Output Terminals

dataframe (pd.DataFrame):
the resulting Pandas DataFrame

SliceNode

Slice a Pandas DataFrame

Input Terminals

dataframe (pf.DataFrame):
the DataFrame to slice
column (str):
the column name to extract from the DataFrame

Output Terminals

series (pd.DataFrame):
the sliced column of the DataFrame

shell

ShellRun

Runs a shell command

Input Terminals

Command (str):
The command to execute

Through Terminals

directory (str):
The working directory to run the command

structure

BaseStructure

This is the base of the structures and is not meant to be used directly

Loop

Node for creating for and while loops

Input Terminals

<dynamic> (any):
user created input terminal(s) - terminals can be passthough, indexed, and shift

Output Terminals

<dynamic> (any):
user created output terminal(s)

types

BoolNode

Bool Type

Output Terminals

(int):
the bool value of the checkbox

FloatNode

Float Type

Output Terminals

(float):
the float value of the spinbox

IntNode

Integer Type

Output Terminals

(int):
the integer value of the spinbox

ListNode

List Type

Input Terminals

<dynamic>(any)
the values to put in the list

Output Terminals

list(list):
the list of input values

RangeNode

Range Type

Input Terminals

start(int):
the start value of the range
stop(int):
the ending value of the range
step(int):
the number of steps between start and stop

Output Terminals

range(list):
the list of int values created

SetNode

Set Type - creates a set from the provided input

Input Terminals

in(any):
the values to add to the set

Output Terminals

out(any):
a set of the input values

StringNode

String Type

Output Terminals

(string):
the string value of the line edit