Vector package
#define MAL_VECTOR(name, type)
 declare a vector named name with type type
#define MAL_VECTOR_DIM(name, type, nb_rows)
 declare a vector named name with type type and of size nb_rows
#define MAL_VECTOR_SIZE(name)
 returns the size of the vector named name
#define MAL_VECTOR_RESIZE(name, nb_rows)
 Resizes of the vector named name . It acts as a function.
#define MAL_VECTOR_FILL(name, value)
 Fill the vector named name with the value value. The user is responsible to make sure that the type are compatible. It acts as a function.
#define MAL_VECTOR_NORM(name)
 Returns the two norms of the vector named name. More precisely if the vector name is of size $ n $, the norm is defined as: $ \sqrt{\sum_{i=0}^{i=n-1}x_i^2} $.
#define MAL_VECTOR_3D_CROSS_PRODUCT(res, v1, v2)
 Returns in res the cross product of two vectors $ v_1,v_2 \in \mathbb{R}^3 $. The cross product $ res = v_1 \times v_2 $ is defined as:

\begin{eqnarray*} res^x &= v_1^y v_2^z - v_2^y v_1^x \\ res^y &= v_1^z v_2^x - v_2^z v_1^x \\ res^z &= v_1^x v_2^y - v_2^x v_1^y \\ \end{eqnarray*}

.

#define MAL_RET_VECTOR_DATABLOCK(name)
 Returns a direct access to the data information. It is implementation dependent. However most of the time, it is assume to be an array of data.
#define MAL_S3_VECTOR(name, type)
 declare a vector named name with type type
#define MAL_S3_VECTOR_SIZE(name)
 returns the size of the vector named name
#define MAL_S3_VECTOR_FILL(name, value)
 Fill the vector named name with the value value. The user is responsible to make sure that the type are compatible. It acts as a function.
#define MAL_S3_VECTOR_NORM(name)
 Returns the two norms of the vector named name. More precisely if the vector name is of size $ n $, the norm is defined as: $ \sqrt{\sum_{i=0}^{i=n-1}x_i^2} $.
#define MAL_S3_VECTOR_CROSS_PRODUCT(res, v1, v2)
 Returns in res the cross product of two vectors $ v_1,v_2 \in \mathbb{R}^3 $. The cross product $ res = v_1 \times v_2 $ is defined as:

\begin{eqnarray*} res^x &= v_1^y v_2^z - v_2^y v_1^z \\ res^y &= v_1^z v_2^x - v_2^z v_1^x \\ res^z &= v_1^x v_2^y - v_2^x v_1^y \\ \end{eqnarray*}

.

#define MAL_S3_RET_VECTOR_DATABLOCK(name)
 Returns a direct access to the data information. It is implementation dependent. However most of the time, it is assume to be an array of data.
#define MAL_S3_VECTOR_ACCESS(name, i)
 Returns a reference to the element at position i name(i)

Detailed Description

This part of the documentation specifies what is the functionnality of each macro, it is the responsability of the implemtor to comply with this specification.

This part of the documentation specifies what is the functionnality of each macro, it is the responsability of the implementor to comply with this specification.


Define Documentation

#define MAL_RET_VECTOR_DATABLOCK (   name)

Returns a direct access to the data information. It is implementation dependent. However most of the time, it is assume to be an array of data.

#define MAL_S3_RET_VECTOR_DATABLOCK (   name)

Returns a direct access to the data information. It is implementation dependent. However most of the time, it is assume to be an array of data.

#define MAL_S3_VECTOR (   name,
  type 
)

declare a vector named name with type type

#define MAL_S3_VECTOR_ACCESS (   name,
 
)

Returns a reference to the element at position i name(i)

#define MAL_S3_VECTOR_CROSS_PRODUCT (   res,
  v1,
  v2 
)

Returns in res the cross product of two vectors $ v_1,v_2 \in \mathbb{R}^3 $. The cross product $ res = v_1 \times v_2 $ is defined as:

\begin{eqnarray*} res^x &= v_1^y v_2^z - v_2^y v_1^z \\ res^y &= v_1^z v_2^x - v_2^z v_1^x \\ res^z &= v_1^x v_2^y - v_2^x v_1^y \\ \end{eqnarray*}

.

#define MAL_S3_VECTOR_FILL (   name,
  value 
)

Fill the vector named name with the value value. The user is responsible to make sure that the type are compatible. It acts as a function.

#define MAL_S3_VECTOR_NORM (   name)

Returns the two norms of the vector named name. More precisely if the vector name is of size $ n $, the norm is defined as: $ \sqrt{\sum_{i=0}^{i=n-1}x_i^2} $.

#define MAL_S3_VECTOR_SIZE (   name)

returns the size of the vector named name

#define MAL_VECTOR (   name,
  type 
)

declare a vector named name with type type

#define MAL_VECTOR_3D_CROSS_PRODUCT (   res,
  v1,
  v2 
)

Returns in res the cross product of two vectors $ v_1,v_2 \in \mathbb{R}^3 $. The cross product $ res = v_1 \times v_2 $ is defined as:

\begin{eqnarray*} res^x &= v_1^y v_2^z - v_2^y v_1^x \\ res^y &= v_1^z v_2^x - v_2^z v_1^x \\ res^z &= v_1^x v_2^y - v_2^x v_1^y \\ \end{eqnarray*}

.

#define MAL_VECTOR_DIM (   name,
  type,
  nb_rows 
)

declare a vector named name with type type and of size nb_rows

#define MAL_VECTOR_FILL (   name,
  value 
)

Fill the vector named name with the value value. The user is responsible to make sure that the type are compatible. It acts as a function.

#define MAL_VECTOR_NORM (   name)

Returns the two norms of the vector named name. More precisely if the vector name is of size $ n $, the norm is defined as: $ \sqrt{\sum_{i=0}^{i=n-1}x_i^2} $.

#define MAL_VECTOR_RESIZE (   name,
  nb_rows 
)

Resizes of the vector named name . It acts as a function.

#define MAL_VECTOR_SIZE (   name)

returns the size of the vector named name

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines