pow — Calcule l'élévation à la puissance d'un argument par l'autre argument.
ares pow aarg, kpow [, inorm]
ires pow iarg, ipow [, inorm]
kres pow karg, kpow [, inorm]
ires[] pow iarg[], ipow[]
kres[] pow karg[], kpow[]
ires[] pow iarg[], ipow
kres[] pow karg[], kpow
inorm (facultatif, par défault=1) -- Le nombre qui divisera le résultat (1 par défaut). Particulèrement utile si l'on calcule des puissances de signaux de taux -a ou de taux -k, ce qui produit très souvent des échantillons hors intervalle.
aarg, iarg, karg -- la base.
ipow, kpow -- l'exposant.
Note | |
---|---|
Utiliser ^ avec précaution dans les instructions arithmétiques, car les régles de précédence peuvent ne pas être correctes. Nouveau dans la version 3.493 de Csound. |
Voici un exemple de l'opcode pow. Il utilise le fichier pow.csd.
Exemple 777. Exemple de l'opcode pow.
Voir les sections Audio en Temps Réel et Options de la Ligne de Commande pour plus d'information sur l'utilisation des options de la ligne de commande.
<CsoundSynthesizer> <CsOptions> ; Select audio/midi flags here according to platform -odac ;;;realtime audio out ;-iadc ;;;uncomment -iadc if RT audio input is needed too ; For Non-realtime ouput leave only the line below: ;-o pow.wav ; output to audio file </CsOptions> <CsInstruments> sr = 44100 ksmps = 32 nchnls = 2 0dbfs = 1 instr 1 ; Lo-Fi sound kpow = 10 ;exponent kbase line 1, p3, 1.4 ;vary the base kQuantize pow kbase, kpow kQuantize = kQuantize*0.5 ;half the number of steps for each side of a bipolar signal printk2 kQuantize asig diskin2 "fox.wav", 1, 0, 1 ;loop the fox asig = round(asig * kQuantize) / kQuantize ;quantize and scale audio signal outs asig, asig endin </CsInstruments> <CsScore> i1 0 19.2 e </CsScore> </CsoundSynthesizer>
Sa sortie contiendra des lignes comme celles-ci :
i1 0.50000 i1 0.50007 i1 0.50014 ....... i1 14.45986 i1 14.46130\r