Argmax: Difference between revisions

From GNU Radio
Jump to navigation Jump to search
No edit summary
No edit summary
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:Block Docs]]
[[Category:Block Docs]]
[[Category:Stub Docs]]
Compares vectors from multiple streams and determines the index in the vector and stream number where the maximum value occurred.
Compares vectors from multiple streams and determines the index in the vector and stream number where the maximum value occurred.


Data is passed in as a vector of length ''vlen'' from multiple input sources. It will look through these streams of data items and output two streams:
Data is passed in as a vector of length ''vlen'' from multiple input sources. The block analyzes the input streams of data items and outputs two streams:


# Stream 0 will contain the index value in the vector where the maximum value occurred.
# max_vec: Stream 0 will contain the index value in the vector where the maximum value occurred. This output is of short data type.
# Stream 1 will contain the number of the input stream that held the maximum value.
# max_inp: Stream 1 will contain the number of the input stream that held the maximum value. This output is of short data type.
 
As this is a basic template, it's also in the [[:Category:Stub_Docs|"Stub Docs category"]]. Please improve it.


== Parameters ==
== Parameters ==
(''R''): <span class="plainlinks">[https://wiki.gnuradio.org/index.php/GNURadioCompanion#Variable_Controls ''Run-time adjustable'']</span>
; IO Type
: Supported data types
:* Float
:* Int
:* Short


; Param 1 (''R'')
; Num Inputs
: Description of parameter, provide any tips or recommended values.  Note that the name of the parameter above should match the param's label that shows up in grc (e.g. Sample Rate).
: Number of input streams to include in the operation


; Param 2
; Vec Length
: blah blah blah
: Length of the vector


== Example Flowgraph ==
== Example Flowgraph ==
Line 26: Line 27:


; C++ files
; C++ files
: [https://github.com/gnuradio/gnuradio TODO]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/lib/argmax_impl.cc argmax_impl.cc]


; Header files
; Header files
: [https://github.com/gnuradio/gnuradio TODO]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/lib/argmax_impl.h argmax_impl.h]


; Public header files
; Public header files
: [https://github.com/gnuradio/gnuradio TODO]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/include/gnuradio/blocks/argmax.h argmax.h]


; Block definition
; Block definition
: [https://github.com/gnuradio/gnuradio TODO]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/grc/blocks_argmax_xx.block.yml blocks_argmax_xx.block.yml]

Latest revision as of 09:40, 25 August 2022

Compares vectors from multiple streams and determines the index in the vector and stream number where the maximum value occurred.

Data is passed in as a vector of length vlen from multiple input sources. The block analyzes the input streams of data items and outputs two streams:

  1. max_vec: Stream 0 will contain the index value in the vector where the maximum value occurred. This output is of short data type.
  2. max_inp: Stream 1 will contain the number of the input stream that held the maximum value. This output is of short data type.

Parameters

IO Type
Supported data types
  • Float
  • Int
  • Short
Num Inputs
Number of input streams to include in the operation
Vec Length
Length of the vector

Example Flowgraph

Insert description of flowgraph here, then show a screenshot of the flowgraph and the output if there is an interesting GUI. Currently we have no standard method of uploading the actual flowgraph to the wiki or git repo, unfortunately. The plan is to have an example flowgraph showing how the block might be used, for every block, and the flowgraphs will live in the git repo.

Source Files

C++ files
argmax_impl.cc
Header files
argmax_impl.h
Public header files
argmax.h
Block definition
blocks_argmax_xx.block.yml