Did you know ... Search Documentation:
Pack ffimatrix -- prolog/ffimatrix.mac.pl
PublicShow source
 matrix_write(+M1)
Print elements of a matrix
 matrix_new(+Type, +Dimension, -M1)
Create a new matrix. In the matrix it must be specified Type (ints,floats,doubles) and the dimension with Nrows and Ncolumns. The matrix will not be initialised.
 matrix_new(+Type, +Dimension, +Elements, -M1)
Create a new matrix. In the matrix it must be specified Type (ints,floats,doubles) and the dimension with NRows and NColumns. The matrix will be initialised with elements specified in a list.
 matrix_mul(+M1, +M2, -M3)
Multiplication between two matrices using "cblas_dgemm" function from "cblas.h"
 matrix_dims(+M1, -Dimension)
Calculates the total number of elements in the matrix. The value is contained in Dimension.
 matrix_size(+M1, -Nelements)
Calculates the number of elements in the matrix. We have to pass the number of the rows and the number of the column.
 matrix_type(+M1, -Type)
Function that return the Type of the matrix passed.
 matrix_to_list(+M1, -List)
Function that transforms the matrix passed in input in a list.
 matrix_get(+M1, +Position, -Element)
matrix_get(M,[Row,Column],E) unifies E with the element of M at position [Row, Column]
 matrix_set(+Type, +Position, -Element)
matrix_set(M,[Row,Column],E) update the element of M at position [Row, Column] with the element specified in Element.
 matrix_map(+Predicate, +M1, -M2)
Function that return true if Predicate can successfully be applied on all elements of M1.
 matrix_foreach(+M1, +Predicate)
For each element E of M1, enumerated by rows, calls Predicate(+E,-F) and replaces E with F.
 matrix_foldl(+M1, +Predicate, -Max)
Fold a matrix, using arguments of the matrix as left argument.
 matrix_set_all(+Number, +M1)
matrix_set_all set all element of the matrix to Element.
 matrix_add(+M1, Position, +Number)
matrix_add(M,[Row,Column],Number) add Number to the element of matrix M in position [Row,Column].
 matrix_inc(+M1, +Position)
matrix_inc(M,[Row,Column]) add 1 (one) to the element of matrix M in position [Row,Column].
 matrix_inc(+M1, +Position, -NewElement)
matrix_inc(M,[Row,Column],NewElement) add 1 (one) to the element of matrix M in position [Row,Column] and unify the new element with NewElement.
 matrix_dec(+M1, +Position)
matrix_dec(M,[Row,Column]) decrement 1 (one) to the element of matrix M in position [Row,Column].
 matrix_dec(+M1, +Position, -NewElement)
matrix_dec(M,[Row,Column],NewElement) decrement 1 (one) to the element of matrix M in position [Row,Column] and unify the new element with NewElement.
 matrix_max(+M1, -Max)
matrix_max(M,Max) unify Max with the maximum element of the matrix M.
 matrix_min(+M1, -Min)
matrix_min(M,Min) unify Min with the minimum element of the matrix M.
 matrix_sum(+M1, -Sum)
matrix_sum(M,Sum) unify Sum with the sum of the elements in M.
 matrix_transpose(+M1, -M2)
matrix_transpose(M1,M2) transpose matrix M1 to M2.
 matrix_maxarg(+M1, -MaxPosition)
matrix_maxarg(M,[NRowMax, NColumnMax]) unify [NRowsMax, NColumnMax] with the position of the maximum in matrix M.
 matrix_minarg(+M1, -MinPosition)
matrix_minarg(M,[NRowMax, NColumnMax]) unify [NRowsMax, NColumnMax] with the position of the minimum in matrix M.
 matrix_agg_lines(+M1, +AggregationMatrix)
matrix_agg_lines (M,AggregationMatrix) sum all the elements of every row of M and the new value will be insert in the AggregationMatrix.
 matrix_agg_cols(+M1, +AggregationMatrix)
matrix_agg_cols (M,AggregationMatrix) sum all the elements of every column of M and the new value will be insert in the AggregationMatrix.
 matrix_op(+M1, +M2, +Operator, -M3)
matrix_op(M1,M2,Op,M3) apply Op an operator entered in input (+,-,*,/) element by element of matrix M1 and M2 and the result will be insert in M3.
 matrix_op_to_all(+M1, +Operator, +Operand, -M2)
matrix_op_to_all(M1,Operator,Operand,M2) apply Operator (+,-,*,/) and Operand (an integer, a float...) element by element at matrix M1 and the result will be insert in M2. Example: input (+3) sum 3 to each elements of M1.
 matrix_select(+M1, +Number, +List, +Result)
matrix_select(M1,Number,List,Result) select from M1 a list of rows or columns (to select rows Number will be 1, to select columns Number will be 2) and these will be copied in Result.
 matrix_createZeroes(+Type, +Dimension, -M1)
matrix_createZeroes(M1) create a new matrix with all elements set to 0.
 matrix_read(+Dimension, -M1)
Read from keyboard values and these will be insert in M1.
 matrixSetZeroes(+NRows, +NColumns, +Elements)
matrixSetZeroes sets to 0 all its argument matrix's elements.
 matrixSetOnes(+NRows, +NColumns, +Elements)
matrixSetOnes(M1) create a new matrix with all elements set to 1.
 matrix_setAllNumbers(+NRows, +NColumns, +Elements)
matrix_setAll sets to Number given in input all the matrix's elements.
 matrix_eye(+NRows, +NColumns, +Elements)
matrix_eye create a identity matrix
 matrix_equal(+M1, +M2)
matrix_equal(M1,M2) compares two matrix (M1 and M2).
 matrix_from_list(+List, +M1)
matrix_from_list(List,M1) sect the elements of the matrix M1 with new element passed in a List.

Undocumented predicates

The following predicates are exported, but not or incorrectly documented.

 cholesky_function(Arg1)
 matrix_random(Arg1, Arg2, Arg3)
 matrix_to_list_of_lists(Arg1, Arg2)