Matrix_bln |
Overview
Matrix_bln is a two-dimensional array of boolean data (0-1), i.e. each element in the matrix takes 1 bytes of computer memory.
A matrix_bln 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_bln 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_bln} ret = MATRIX_BLN([{int} argm1, {int} argm2, {bool} argm3])
argm1 = no of row (default = 0)
argm2 = no of column (default = 0)
argm3 = initial value (default = 0)
Example:
->A = Matrix_bln() ->print A no of row : 0 no of column : 0 ->B = Matrix_bln(3,2, 10.15) ->B ans = no of row : 3 no of column : 2 0: 1 1 1: 1 1 2: 1 1 |
Lfunction
object({int} argm1, {int} argm2) = {bool} left-value
argm1 = row index
argm2 = column index
object.FLAG_NULL() = {bool} left-value
object.NULLDATA() = {double} left-value
Example:
->B(0,0) = 0
->B ans = no of row : 3 no of column : 2 0: 0 1 1: 1 1 2: 1 1 ->B.flag_null() ans = 0 ->B.flag_null() = 1 ->B.flag_null() ans = 1 ->B.nulldata() ans = 0.000 ->B.nulldata() = -90 (*** not reasonable, data can only be 0 or 1) ->B.nulldata() ans = -90.000 |
Class function