SecreC 2 language  2.8.0 (2023.09)
Language and standard library reference
Functions
selectK[[2]]

Functions

template<domain D :shared3p >
D uint8 selectK (D uint8[[2]] matrix, uint k, uint column)
 
template<domain D :shared3p >
D uint16 selectK (D uint16[[2]] matrix, uint k, uint column)
 
template<domain D :shared3p >
D uint32 selectK (D uint32[[2]] matrix, uint k, uint column)
 
template<domain D :shared3p >
D uint64 selectK (D uint64[[2]] matrix, uint k, uint column)
 
template<domain D :shared3p >
D int8 selectK (D int8[[2]] matrix, uint k, uint column)
 
template<domain D :shared3p >
D int16 selectK (D int16[[2]] matrix, uint k, uint column)
 
template<domain D :shared3p >
D int32 selectK (D int32[[2]] matrix, uint k, uint column)
 
template<domain D :shared3p >
D int64 selectK (D int64[[2]] matrix, uint k, uint column)
 
template<domain D :shared3p >
D xor_uint8 selectK (D xor_uint8[[2]] matrix, uint k, uint column)
 
template<domain D :shared3p >
D xor_uint16 selectK (D xor_uint16[[2]] matrix, uint k, uint column)
 
template<domain D :shared3p >
D xor_uint32 selectK (D xor_uint32[[2]] matrix, uint k, uint column)
 
template<domain D :shared3p >
D xor_uint64 selectK (D xor_uint64[[2]] matrix, uint k, uint column)
 

Detailed Description

Function for selecting k rows from a matrix ordered by a column.

Note
D - all protection domains
Supported types - uint8 / uint16 / uint32 / uint / int8 / int16 / int32 / int / xor_uint8 / xor_uint16 / xor_uint32 / xor_uint64
The number of rows of the input matrix has to be a power of two.
The algorithm behind this function is optimized for speed, accuracy is not guaranteed.
Parameters
matrix- a matrix of supported type
k- number of elements to select
column- column to select by
Returns
returns a matrix with k rows selected from the input vector according to the input column index

Function Documentation

◆ selectK() [1/12]

D int16 selectK ( D int16[[2]]  matrix,
uint  k,
uint  column 
)

◆ selectK() [2/12]

D int32 selectK ( D int32[[2]]  matrix,
uint  k,
uint  column 
)

◆ selectK() [3/12]

D int64 selectK ( D int64[[2]]  matrix,
uint  k,
uint  column 
)

◆ selectK() [4/12]

D int8 selectK ( D int8[[2]]  matrix,
uint  k,
uint  column 
)

◆ selectK() [5/12]

D uint16 selectK ( D uint16[[2]]  matrix,
uint  k,
uint  column 
)

◆ selectK() [6/12]

D uint32 selectK ( D uint32[[2]]  matrix,
uint  k,
uint  column 
)

◆ selectK() [7/12]

D uint64 selectK ( D uint64[[2]]  matrix,
uint  k,
uint  column 
)

◆ selectK() [8/12]

D uint8 selectK ( D uint8[[2]]  matrix,
uint  k,
uint  column 
)

◆ selectK() [9/12]

D xor_uint16 selectK ( D xor_uint16[[2]]  matrix,
uint  k,
uint  column 
)

◆ selectK() [10/12]

D xor_uint32 selectK ( D xor_uint32[[2]]  matrix,
uint  k,
uint  column 
)

◆ selectK() [11/12]

D xor_uint64 selectK ( D xor_uint64[[2]]  matrix,
uint  k,
uint  column 
)

◆ selectK() [12/12]

D xor_uint8 selectK ( D xor_uint8[[2]]  matrix,
uint  k,
uint  column 
)