Engee documentation

Data Store Memory

Page in progress.

Memory for data storage.

data store memory

Description

Block Data Store Memory defines and initialises a named shared data store, which is the memory area used by blocks Data Store Read и *Data Store Write*that specify the same data store name.

The location of the block Data Store Memory, determines which of the blocks Data Store Read и Data Store Write can access the data store:

  • If the block Data Store Memory is in the upper-level system, Data Store Read и Data Store Write anywhere in the model can access the data store.

  • If the block Data Store Memory is in a subsystem, the data store can be accessed by blocks Data Store Read и Data Store Write in the same subsystem or in any subsystem below it in the model hierarchy.

  • Blocks Data Store Read и Data Store Write*defined within a referenced model can access data stored at a higher level in the model hierarchy. To allow a block *Data Store Read и Data Store Write access data stored at a higher level in the model hierarchy from within the referenced model:

  • Place the block Data Store Memory inside the referenced model.

Do not include the block Data Store Memory in the For Each subsystem.

Obtaining correct results from data stores requires ensuring that reading and writing data from the store occurs in the expected order.

Ports

None.

Parameters

Parameters

# Data store name — data storage name
String

Details

The name of the datastore you define with this block. Blocks Data Store Read и Data Store Write and blocks with the same name can read from and write to the datastore *Data Store Memory*initialised by this block and write to it.

Default value

A

Program usage name

DataStoreName

Tunable

No

Evaluatable

Yes

Parameters

# Initial value — datastore initial value
Scalar / array of real and/or complex numbers

Details

The initial value or values of a data store specified as a scalar, vector, matrix, or - -array.

Parameters Minimum sets the minimum value of this parameter, and the parameters Maximum - maximum.

  • If you specify a non-scalar value and set parameters to -1 (default), the data store will have the same size as an array. Dimensions value -1 (by default), the datastore will have the same dimensions as the array. The data you write to the datastore must match these dimensions (they can be smaller, for example, a vector to can be written to the matrix to defined in the block Data Store Memory). It is important that in the block Data Store Write the indices of the storage elements are correctly specified in the block.

  • If you set for the parameters Dimensions value other than -1, the dimensions of the initial value must match the dimensions you specify. If you specify a scalar, each datastore element will use the scalar as the initial value. Use this technique to apply the same initial value (the scalar you specified) to each element without manually matching the dimensionality of the initial value to the dimensionality of the datastore.

Default value

0.0

Program usage name

InitialValue

Tunable

No

Evaluatable

Yes

# Minimum — minimum output value for range check

Details

The minimum value the block should output, specified as a finite real number with double precision. The value by default is [] (undefined).

Default value

[]

Program usage name

OutMin

Tunable

No

Evaluatable

Yes

# Maximum — maximum output value for range check

Details

The maximum value the block should output, specified as a finite real number with double precision. The value by default is [] (undefined).

Default value

[]

Program usage name

OutMax

Tunable

No

Evaluatable

Yes

# Data type — output data type
Inherit: auto | Float64 | Float32 | Float16 | Int8 | UInt8 | Int16 | UInt16 | Int32 | UInt32 | Int64 | UInt64 | Int128 | UInt128 | Bool

Details

Output Data Type. Defined as:

  • Inherit: auto

  • Float64

  • Float32

  • Float16

  • Int8

  • UInt8

  • Int16

  • UInt16

  • Int32

  • UInt32

  • Int64

  • UInt64

  • Int128

  • UInt128

  • Bool

Values

Inherit: auto | Float64 | Float32 | Float16 | Int8 | UInt8 | Int16 | UInt16 | Int32 | UInt32 | Int64 | UInt64 | Int128 | UInt128 | Bool

Default value

Inherit: auto

Program usage name

OutDataTypeStr

Tunable

No

Evaluatable

No

# Dimensions — data warehouse size
Int64 or tuple of Int64

Details

The dimensions of the data store, specified as a scalar, vector, or matrix. The by default value, -1, allows you to set the dimensions of the datastore using the parameters Initial value. However, in this case you cannot use a scalar with an initial value. You must set the initial value using an array.

If you set a value other than -1, specify the same dimensions as the parameters . Initial value, unless you specify the initial value as a scalar.

Default value

-1

Program usage name

Dimensions

Tunable

No

Evaluatable

Yes

# Signal type — Complexity of data warehouse values
auto | real | complex

Details

Specify the numeric, real, or complex type of values in the data store.

Values

auto | real | complex

Default value

auto

Program usage name

SignalType

Tunable

No

Evaluatable

No