vmult_i
Multiplies a vector in a table by a scalar value.
Syntax
Initialization
ifn - number of the table hosting the vectorial signal to be processed
ival - scalar value to be multiplied
ielements - number of elements of the vector
idstoffset - index offset for the destination table
Performance
vmult_i multiplies each element of the vector contained in the table ifn by ival, starting from table index idstoffset. This enables you to process a specific section of a table by specifying the offset and the number of elements to be processed. Offset is counted starting from 0, so if no offset is specified (or set to 0), the table will be modified from the beginning.
This opcode runs only on initialization, there is a k-rate version of this opcode called vmult.
Negative values for idstoffset are valid. Elements from the vector that are outside the table, will be discarded, and they will not wrap around the table.
In all these opcodes, the resulting vectors are stored in ifn, overriding the intial vectors. If you want to keep initial vector, use vcopy or vcopy_i to copy it in another table. All these operators are designed to be used together with other opcodes that operate with vectorial signals such as , vcella, adsynt, adsynt2, etc. They can also be useful in conjunction with the spectral opcodes pvsftw and pvsftr.
Examples
Here is an example of the vmult_i opcode. It uses the file vmult_i.csd.
See also
Operations Vectorial/Scalar Signal
Credits
Written by Gabriel Maldonado. Optional arguments added by Andres Cabrera and Istvan Varga.
Example by Andres Cabrera.
New in Csound 5 (Previously available only on CsoundAV)