Exponentiate Const Int: Difference between revisions

From GNU Radio
Jump to navigation Jump to search
No edit summary
No edit summary
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
[[Category:Block Docs]]
[[Category:Block Docs]]
Exponentiates a complex stream with an integer exponent. This block raises a complex stream to an integer exponent. The exponent must be at least 1. There is a callback function so the exponent can be changed at runtime.
Exponentiates a complex stream with an integer exponent. This block raises a complex stream to an integer exponent.


NOTE: The algorithm uses iterative multiplication to achieve exponentiation, hence it is O(exponent). Therefore, this block could be inefficient for large exponents.
NOTE: The algorithm uses iterative multiplication to achieve exponentiation, hence it is O(exponent). Therefore, this block could be inefficient for large exponents.
Line 8: Line 8:


; Exponent (''R'')
; Exponent (''R'')
: Exponent that the stream is raised to.  Must be an integer.  
: Exponent that the stream is raised to.  Must be a positive integer.
 
; Num Ports
: Number of input streams to apply the operation on.  


== Example Flowgraph ==
== Example Flowgraph ==
Line 17: Line 20:


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


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


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


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

Latest revision as of 08:45, 1 October 2019

Exponentiates a complex stream with an integer exponent. This block raises a complex stream to an integer exponent.

NOTE: The algorithm uses iterative multiplication to achieve exponentiation, hence it is O(exponent). Therefore, this block could be inefficient for large exponents.

Parameters

(R): Run-time adjustable

Exponent (R)
Exponent that the stream is raised to. Must be a positive integer.
Num Ports
Number of input streams to apply the operation on.

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
[1]
Header files
[2]
Public header files
[3]
Block definition
[4]