Matrix_flt |
Overview
Matrix_flt is a two-dimensional array of single precision floating point data, i.e. each element in the matrix takes 4 bytes of computer memory.
A matrix_flt can have a null data, so that a particular element whose value equal to the specified value of nulldata will be omitted in matrix computation, for example calculation of minimum, maximum, or in matrix operation, for e.g. matrix overlay.
A matrix_flt also has a flag_null, and its value can be 0 (off) or 1 (on). When flag_null = 0, there is no omission of nulldata.
Member data
Name | Data type | Meaning |
nrow | int | number of rows |
ncol | int | number of columns |
flag_null | bool | a flag indicates whether the null data is omitted in computation(0 = no, 1 = yes) |
nulldata | bool | value of null data (not application if flag_null = 0) |
Operator
See details in operator section.
Construction function
{Matrix_flt} ret = MATRIX_FLT([{int} argm1, {int} argm2, {float} argm3])
argm1 = no of row (default = 0)
argm2 = no of column (default = 0)
argm3 = initial value (default = 0)
Example:
->A = Matrix_flt() ->print A no of row : 0 no of column : 0 ->B = Matrix_flt(3,2, 10.15) ->B ans = no of row : 3 no of column : 2 0: 10.150 10.150 1: 10.150 10.150 2: 10.150 10.150 |
Lfunction
object({int} argm1, {int} argm2) = {float} left-value
argm1 = row index
argm2 = column index
object.FLAG_NULL() = {bool} left-value
object.NULLDATA() = {double} left-value
Example:
->B(0,0) = 999
->B ans = no of row : 3 no of column : 2 0: 999.000 10.150 1: 10.150 10.150 2: 10.150 10.15 ->B.flag_null() ans = 0 ->B.flag_null() = 1 ->B.flag_null() ans = 1 ->B.nulldata() ans = 0.000 ->B.nulldata() = -90 ->B.nulldata() ans = -90.000 |
Class function