SUMMATION

Block Screenshot

Contents

Palette

Description

This block performs addition or subtraction on scalar, vector or matrix inputs. The input datatype
is set with the Datatype parameter. The Number of inputs or sign vector
parameter defines the number of inputs and operation. For
a single vector's input the block collapse the elements of the vector. Vectors/matrices inputs
must have the same size.

The behavior of the block is summarized in the following table :

Number of inputs

Operation

Remarks

One

y = (+/-)u

u is a scalar value and the block has the behavior of a unitary gain.

One

y = u[1]+u[2]+...+u[N]

u is a vector or a matrix and the block output is the sum of the elements of the input
vector or matrix.

Two or more

y = k[1]*u1+k[2]*u2+...+k[N]*uN

k is the scalar or vector value write in the Number of inputs or sign vector
parameter. For the addition of all inputs, simply set this
parameter to the number of inputs. To add/subtract the input ui, set in this
parameter a vector k with k[i] = +1 (addition) or -1 (subtraction)
for the input ui.

With integer input, on overflow the result can take different forms:

1- A normal non saturated result. By example, if type is int8 and the result 128, the block output
value will be -128.

2- A saturated result. For the previous example the block output value will be 127.

3- An error message warning the user about the overflow.

The user can select one of these three forms by setting the
Do on Overflow field to 0, 1 or 2.

Dialog box

Datatype (1=real double 2=complex 3=int32 ...)

It indicates the type of the input/output data. It support all datatype, number must be between 1 and 8.

Properties : Type 'vec' of size 1.

Number of inputs or sign vector (of +1,-1)

It indicates the number of inputs and the operation see the description for more detail. If you set a value
other of -1 or +1, you get an error message box.

Properties : Type 'vec' of size -1.

Do on Overflow(0=Nothing 1=Saturate 2=Error)

When this parameter is set to zero the result is similar to a
normal summation of two integer matrix. When it is set to 1, on
overflow the block saturate the result. When it is set to 2, on
overflow an error message box appears. If the Data type is double or
complex this parameter is not used.

Properties : Type 'vec' of size 1.

Default properties

always active: no

direct-feedthrough: yes

zero-crossing: no

mode: no

regular inputs:

- port 1 : size [-1,-2] / type 1

- port 2 : size [-1,-2] / type 1

regular outputs:

- port 1 : size [-1,-2] / type 1

number/sizes of activation inputs: 0

number/sizes of activation outputs: 0

continuous-time state: no

discrete-time state: no

object discrete-time state: no

name of computational function:summation

Interfacing function

SCI/modules/scicos_blocks/macros/Linear/SUMMATION.sci

Computational function

SCI/modules/scicos_blocks/src/c/summation.c

SCI/modules/scicos_blocks/src/c/summation_z.c

SCI/modules/scicos_blocks/src/c/summation_i32n.c

SCI/modules/scicos_blocks/src/c/summation_i16n.c

SCI/modules/scicos_blocks/src/c/summation_i8n.c

SCI/modules/scicos_blocks/src/c/summation_ui32n.c

SCI/modules/scicos_blocks/src/c/summation_ui16n.c

SCI/modules/scicos_blocks/src/c/summation_ui8n.c

SCI/modules/scicos_blocks/src/c/summation_i32s.c

SCI/modules/scicos_blocks/src/c/summation_i16s.c

SCI/modules/scicos_blocks/src/c/summation_i8s.c

SCI/modules/scicos_blocks/src/c/summation_ui32s.c

SCI/modules/scicos_blocks/src/c/summation_ui16s.c

SCI/modules/scicos_blocks/src/c/summation_ui8s.c

SCI/modules/scicos_blocks/src/c/summation_i32e.c

SCI/modules/scicos_blocks/src/c/summation_i16e.c

SCI/modules/scicos_blocks/src/c/summation_i8e.c

SCI/modules/scicos_blocks/src/c/summation_ui32e.c

SCI/modules/scicos_blocks/src/c/summation_ui16e.c

SCI/modules/scicos_blocks/src/c/summation_ui8e.c

See also

Comments

Author : Tushar Chaskar posted the 07/01/2015 06:58

Hello ,

By looking at SUMMATION.sci file we can see how to enter block parameters. But how does block knows to take input from other two blocks and add these two inputs. There is no Addition function. OR if i am not wrong is model.sim=list("summation",4) takes care of all addition process?