Csound Csound-dev Csound-tekno Search About

[Csnd] Questions about Signal flow and Adding partials in Csound

Date2014-03-30 15:24
FromAskwazzup
Subject[Csnd] Questions about Signal flow and Adding partials in Csound
Ok so today i started reading the very start of the:
http://en.flossmanuals.net/csound/a-additive-synthesis/ section. And in the
very beginning there is a statement, that a bunch of different oscilators
(serving as partials) can be abstracted to the form:

/aOsc     poscil    ibaseamp*iampfactor, ibasefrq*ifreqfactor, giSine/

*iampfactor* is p7 in the score that reads 1, [1/2], [1/3] ..etc
*ifreqfactor * is p5 in the score that reads 1, 2, 3, 4 ... etc

Maybe i'm just sleepy after the nightshift, but i can't wrap my head around
this. Firstly, "ibaseamp*iampfactor" wouldn't this just increase the single
base frequency to some bigger number like 2.75952381? How does every p7
statetement know which partial (p5) it belongs to? And how does
"ibasefrq*ifreqfactor" end up as different partials and not as (if the base
frequency is 440) 440*1*2*3*4... = 2217600 hz etc?

Signal flow seems to be a bit more clear in pure c (although i'm also only a
beginner there) and in csound i'm a bit fuzzy on how arithmetic and signal
flows works. Are there some underlying functions at work, that i don't see?



--
View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648.html
Sent from the Csound - General mailing list archive at Nabble.com.


Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2014-03-30 15:29
FromRory Walsh
SubjectRe: [Csnd] Questions about Signal flow and Adding partials in Csound
I think you are reading it the wrong way around. The frequency of the
successive partials are being multiplied by the harmonic number, 1, 2,
3, 4, 5, etc. And the amplitudes are all being reduced by 1 over the
harmonic number , 1/1, 1/2, 1/3, 1/4.


On 30 March 2014 15:24, Askwazzup  wrote:
> Ok so today i started reading the very start of the:
> http://en.flossmanuals.net/csound/a-additive-synthesis/ section. And in the
> very beginning there is a statement, that a bunch of different oscilators
> (serving as partials) can be abstracted to the form:
>
> /aOsc     poscil    ibaseamp*iampfactor, ibasefrq*ifreqfactor, giSine/
>
> *iampfactor* is p7 in the score that reads 1, [1/2], [1/3] ..etc
> *ifreqfactor * is p5 in the score that reads 1, 2, 3, 4 ... etc
>
> Maybe i'm just sleepy after the nightshift, but i can't wrap my head around
> this. Firstly, "ibaseamp*iampfactor" wouldn't this just increase the single
> base frequency to some bigger number like 2.75952381? How does every p7
> statetement know which partial (p5) it belongs to? And how does
> "ibasefrq*ifreqfactor" end up as different partials and not as (if the base
> frequency is 440) 440*1*2*3*4... = 2217600 hz etc?
>
> Signal flow seems to be a bit more clear in pure c (although i'm also only a
> beginner there) and in csound i'm a bit fuzzy on how arithmetic and signal
> flows works. Are there some underlying functions at work, that i don't see?
>
>
>
> --
> View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648.html
> Sent from the Csound - General mailing list archive at Nabble.com.
>
>
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"
>
>
>


Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2014-03-30 15:31
FromHlöðver Sigurðsson
SubjectRe: [Csnd] Questions about Signal flow and Adding partials in Csound
How I see this.

Is that aOscil1 is ibasefreq*1....aOscil8 is ibasefreq*8
then it's all added(+)
aOut = aOsc1 + aOsc2 + aOsc3 + aOsc4 + aOsc5 + aOsc6 + aOsc7 + aOsc8
So if you have 440Hz sine wave as base freq, then the other seven frequencies would be:
880+1760+3520+7040...etc In total one tone with other 7 partials, in this case 7 harmonics.


2014-03-30 14:24 GMT+00:00 Askwazzup <aistiskaikaris@mail.com>:
Ok so today i started reading the very start of the:
http://en.flossmanuals.net/csound/a-additive-synthesis/ section. And in the
very beginning there is a statement, that a bunch of different oscilators
(serving as partials) can be abstracted to the form:

/aOsc     poscil    ibaseamp*iampfactor, ibasefrq*ifreqfactor, giSine/

*iampfactor* is p7 in the score that reads 1, [1/2], [1/3] ..etc
*ifreqfactor * is p5 in the score that reads 1, 2, 3, 4 ... etc

Maybe i'm just sleepy after the nightshift, but i can't wrap my head around
this. Firstly, "ibaseamp*iampfactor" wouldn't this just increase the single
base frequency to some bigger number like 2.75952381? How does every p7
statetement know which partial (p5) it belongs to? And how does
"ibasefrq*ifreqfactor" end up as different partials and not as (if the base
frequency is 440) 440*1*2*3*4... = 2217600 hz etc?

Signal flow seems to be a bit more clear in pure c (although i'm also only a
beginner there) and in csound i'm a bit fuzzy on how arithmetic and signal
flows works. Are there some underlying functions at work, that i don't see?



--
View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648.html
Sent from the Csound - General mailing list archive at Nabble.com.


Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"






--
Hlöðver Sigurðsson

Date2014-03-30 15:41
FromAskwazzup
Subject[Csnd] Re: Questions about Signal flow and Adding partials in Csound
This is confusing as hell to me (probably shouldn't have skipped math lessons
in school, seems my sense of logic is sh*t).

So let's say i have:

1) aOsc     poscil    ibaseamp*, ibasefrq*1*2*3*4*5*6*7, giSine
2) aOsc     poscil    ibaseamp*1*2*3*4*5*6*7, ibasefrq*1*2*3*4*5*6*7, giSine

The numbers are not in the score, does 1 make new partials, if not does 2
make new partials? 





--
View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733654.html
Sent from the Csound - General mailing list archive at Nabble.com.


Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2014-03-30 15:49
FromRory Walsh
SubjectRe: [Csnd] Re: Questions about Signal flow and Adding partials in Csound
In the example each poscil creates a single partial. The code you have
simply creates a sine wave with a very high frequency and loud
amplitude. You know what I mean? If you wish to sum partials together
you can simple add the a-rate output variables together, ala
aOsc1+aOsc+aOsc3..etc



On 30 March 2014 15:41, Askwazzup  wrote:
> This is confusing as hell to me (probably shouldn't have skipped math lessons
> in school, seems my sense of logic is sh*t).
>
> So let's say i have:
>
> 1) aOsc     poscil    ibaseamp*, ibasefrq*1*2*3*4*5*6*7, giSine
> 2) aOsc     poscil    ibaseamp*1*2*3*4*5*6*7, ibasefrq*1*2*3*4*5*6*7, giSine
>
> The numbers are not in the score, does 1 make new partials, if not does 2
> make new partials?
>
>
>
>
>
> --
> View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733654.html
> Sent from the Csound - General mailing list archive at Nabble.com.
>
>
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"
>
>
>


Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2014-03-30 15:55
FromAskwazzup
Subject[Csnd] Re: Questions about Signal flow and Adding partials in Csound
In the example each poscil creates a single partial. The code you have
simply creates a sine wave with a very high frequency and loud
amplitude. You know what I mean? If you wish to sum partials together
you can simple add the a-rate output variables together, ala
aOsc1+aOsc+aOsc3..etc

rory walsh wrote
> In the example each poscil creates a single partial. The code you have
> simply creates a sine wave with a very high frequency and loud
> amplitude. You know what I mean? If you wish to sum partials together
> you can simple add the a-rate output variables together, ala
> aOsc1+aOsc+aOsc3..etc
> 
> 
> 
> On 30 March 2014 15:41, Askwazzup <

> aistiskaikaris@

> > wrote:
>> This is confusing as hell to me (probably shouldn't have skipped math
>> lessons
>> in school, seems my sense of logic is sh*t).
>>
>> So let's say i have:
>>
>> 1) aOsc     poscil    ibaseamp*, ibasefrq*1*2*3*4*5*6*7, giSine
>> 2) aOsc     poscil    ibaseamp*1*2*3*4*5*6*7, ibasefrq*1*2*3*4*5*6*7,
>> giSine
>>
>> The numbers are not in the score, does 1 make new partials, if not does 2
>> make new partials?
>>
>>
>>
>>
>>
>> --
>> View this message in context:
>> http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733654.html
>> Sent from the Csound - General mailing list archive at Nabble.com.
>>
>>
>> Send bugs reports to
>>         https://github.com/csound/csound/issues
>> Discussions of bugs and features can be posted here
>> To unsubscribe, send email 

> sympa@.ac

>  with body "unsubscribe csound"
>>
>>
>>
> 
> 
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> To unsubscribe, send email 

> sympa@.ac

>  with body "unsubscribe csound"


Yes i do, however i don't understand why "ibasefrq*ifreqfactor" does a
different thing, even though ifreqfactor has all the same integers in it
(1,2,3,4,5,6,7) so as i understand by simple arithmetic, it should do the
same thing as  ibasefrq*1*2*3*4*5*6*7. I know it does not, but why is that
and how that works?



--
View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733656.html
Sent from the Csound - General mailing list archive at Nabble.com.


Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2014-03-30 16:41
FromRory Walsh
SubjectRe: [Csnd] Re: Questions about Signal flow and Adding partials in Csound
Can you quote the Csound code you are referring too?

On 30 March 2014 15:55, Askwazzup  wrote:
> In the example each poscil creates a single partial. The code you have
> simply creates a sine wave with a very high frequency and loud
> amplitude. You know what I mean? If you wish to sum partials together
> you can simple add the a-rate output variables together, ala
> aOsc1+aOsc+aOsc3..etc
>
> rory walsh wrote
>> In the example each poscil creates a single partial. The code you have
>> simply creates a sine wave with a very high frequency and loud
>> amplitude. You know what I mean? If you wish to sum partials together
>> you can simple add the a-rate output variables together, ala
>> aOsc1+aOsc+aOsc3..etc
>>
>>
>>
>> On 30 March 2014 15:41, Askwazzup <
>
>> aistiskaikaris@
>
>> > wrote:
>>> This is confusing as hell to me (probably shouldn't have skipped math
>>> lessons
>>> in school, seems my sense of logic is sh*t).
>>>
>>> So let's say i have:
>>>
>>> 1) aOsc     poscil    ibaseamp*, ibasefrq*1*2*3*4*5*6*7, giSine
>>> 2) aOsc     poscil    ibaseamp*1*2*3*4*5*6*7, ibasefrq*1*2*3*4*5*6*7,
>>> giSine
>>>
>>> The numbers are not in the score, does 1 make new partials, if not does 2
>>> make new partials?
>>>
>>>
>>>
>>>
>>>
>>> --
>>> View this message in context:
>>> http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733654.html
>>> Sent from the Csound - General mailing list archive at Nabble.com.
>>>
>>>
>>> Send bugs reports to
>>>         https://github.com/csound/csound/issues
>>> Discussions of bugs and features can be posted here
>>> To unsubscribe, send email
>
>> sympa@.ac
>
>>  with body "unsubscribe csound"
>>>
>>>
>>>
>>
>>
>> Send bugs reports to
>>         https://github.com/csound/csound/issues
>> Discussions of bugs and features can be posted here
>> To unsubscribe, send email
>
>> sympa@.ac
>
>>  with body "unsubscribe csound"
>
>
> Yes i do, however i don't understand why "ibasefrq*ifreqfactor" does a
> different thing, even though ifreqfactor has all the same integers in it
> (1,2,3,4,5,6,7) so as i understand by simple arithmetic, it should do the
> same thing as  ibasefrq*1*2*3*4*5*6*7. I know it does not, but why is that
> and how that works?
>
>
>
> --
> View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733656.html
> Sent from the Csound - General mailing list archive at Nabble.com.
>
>
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"
>
>
>


Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2014-03-30 20:39
FromAskwazzup
Subject[Csnd] Re: Questions about Signal flow and Adding partials in Csound
Seems like i have stumbled into another hurdle:

----------------------------------------------------------------------------------------------------------------------------

giNois    *ftgen     2, 0, 2^12, 9, 100,1,0,  102,1/2,0,  110,1/3,0, \*
                 *123,1/4,0,  126,1/5,0,  131,1/6,0,  139,1/7,0,  141,1/8,0*

    instr 1
iBasFreq  =         cpspch(p4)
iTabFreq  =         p7 ;base frequency of the table
iBasFreq  =         *iBasFreq / iTabFreq*
iBaseAmp  =         ampdb(p5)
iFtNum    =         p6
aOsc      poscil    iBaseAmp, iBasFreq, iFtNum
aEnv      linen     aOsc, p3/4, p3, p3/4
          outs      aEnv, aEnv
    endin



i 1 0 5    8.00      -10       2          *100*
i . 3 5    9.00      -14       .          .
i . 5 8    9.02      -12       .          .
i . 6 9    7.01      -12       .          .
i . 7 10   6.00      -10       .          .
----------------------------------------------------------------------------------------------------------------------------

Tried to tinker with this example for a few hours, but alas the
enlightenment never came....

The floss manual says "/As you can see, for non-harmonically related
partials, the construction of a table must be done with a special care. If
the frequency multipliers in our first example started with 1 and 1.02, the
resulting period is acually very long. For a base frequency of 100 Hz, you
will have the frequencies of 100 Hz and 102 Hz overlapping each other. So
you need 100 cycles from the 1.00 multiplier and 102 cycles from the 1.02
multiplier to complete one period and to start again both together from
zero. In other words, we have to create a table which contains 100
respectively 102 periods, instead of 1 and 1.02./"

As i understand, the partials in the GEN09 function need to be multiplied by
a 100, so that some mysterious period would not be too long and then the
base frequency needs to be divided by a 100. Well the multiplying and
dividing i understand, but what does "the resulting period is acually very
long" and "frequencies of 100 Hz and 102 Hz overlapping each other." mean ?
Is this somehow tied to the fact that the ftgen opcode is being read in k
rather than a samples?



--
View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733672.html
Sent from the Csound - General mailing list archive at Nabble.com.


Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2014-03-30 21:20
Fromjoachim heintz
SubjectRe: [Csnd] Re: Questions about Signal flow and Adding partials in
well, if you want to have the relation 1 to1.02 in a GEN09 table, you 
must ensure that the added partials result in complete periods. 
otherwise the table will not start and end with zeros, and you will hear 
a distortion.
everything else is a consequence of this.
best -
	joachim


Am 30.03.2014 21:39, schrieb Askwazzup:
> Seems like i have stumbled into another hurdle:
>
> ----------------------------------------------------------------------------------------------------------------------------
>
> giNois    *ftgen     2, 0, 2^12, 9, 100,1,0,  102,1/2,0,  110,1/3,0, \*
>                   *123,1/4,0,  126,1/5,0,  131,1/6,0,  139,1/7,0,  141,1/8,0*
>
>      instr 1
> iBasFreq  =         cpspch(p4)
> iTabFreq  =         p7 ;base frequency of the table
> iBasFreq  =         *iBasFreq / iTabFreq*
> iBaseAmp  =         ampdb(p5)
> iFtNum    =         p6
> aOsc      poscil    iBaseAmp, iBasFreq, iFtNum
> aEnv      linen     aOsc, p3/4, p3, p3/4
>            outs      aEnv, aEnv
>      endin
>
> 
> 
> i 1 0 5    8.00      -10       2          *100*
> i . 3 5    9.00      -14       .          .
> i . 5 8    9.02      -12       .          .
> i . 6 9    7.01      -12       .          .
> i . 7 10   6.00      -10       .          .
> ----------------------------------------------------------------------------------------------------------------------------
>
> Tried to tinker with this example for a few hours, but alas the
> enlightenment never came....
>
> The floss manual says "/As you can see, for non-harmonically related
> partials, the construction of a table must be done with a special care. If
> the frequency multipliers in our first example started with 1 and 1.02, the
> resulting period is acually very long. For a base frequency of 100 Hz, you
> will have the frequencies of 100 Hz and 102 Hz overlapping each other. So
> you need 100 cycles from the 1.00 multiplier and 102 cycles from the 1.02
> multiplier to complete one period and to start again both together from
> zero. In other words, we have to create a table which contains 100
> respectively 102 periods, instead of 1 and 1.02./"
>
> As i understand, the partials in the GEN09 function need to be multiplied by
> a 100, so that some mysterious period would not be too long and then the
> base frequency needs to be divided by a 100. Well the multiplying and
> dividing i understand, but what does "the resulting period is acually very
> long" and "frequencies of 100 Hz and 102 Hz overlapping each other." mean ?
> Is this somehow tied to the fact that the ftgen opcode is being read in k
> rather than a samples?
>
>
>
> --
> View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733672.html
> Sent from the Csound - General mailing list archive at Nabble.com.
>
>
> Send bugs reports to
>          https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"
>
>
>
>


Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2014-03-30 21:43
FromAskwazzup
Subject[Csnd] Re: Questions about Signal flow and Adding partials in
So the only multiplier that helps to complete a period is 100? Are their
cases where i would have to use some other number?



--
View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733677.html
Sent from the Csound - General mailing list archive at Nabble.com.


Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2014-03-31 00:39
Frompeiman khosravi
SubjectRe: [Csnd] Re: Questions about Signal flow and Adding partials in Csound
With a complex harmonic spectrum (one made up of the sum of sine waves that are integer multiples of a fundamental),  the period of the wave is the duration of one cycle of the fundamental. Within one cycle of the fundamental you get two cycles of the second harmonic, three cycles of the third harmonic, and so on. 

With a complex inharmonic spectrum, because of the non-integer relationship between the frequency rations, the number of cycles of the upper partials do not coincide exactly with the duration of one cycle of the 'fundamental'. As a result the partials will go in out of phase with one another, a bit like beating. It may take many cycles before the beginning of the wavecycle of the partials coincide again.  

Think of two metronomes, the tempo of one being exactly double that of the other (a harmonic relationship). For every two beats of the faster metronome you get one beat of the slower one (fundamental). Now if the faster metronome had a tempo that was not exactly double that of the fundamental - say, if it was 2.1 times faster -, then the two would go out of phase and after a number of beats they would come back in phase again. The time it takes for the metronomes to come back in sync is the 'period' of the resultant 'complex wave'.
     



On 30 March 2014 20:39, Askwazzup <aistiskaikaris@mail.com> wrote:
Seems like i have stumbled into another hurdle:

----------------------------------------------------------------------------------------------------------------------------

giNois    *ftgen     2, 0, 2^12, 9, 100,1,0,  102,1/2,0,  110,1/3,0, \*
                 *123,1/4,0,  126,1/5,0,  131,1/6,0,  139,1/7,0,  141,1/8,0*

    instr 1
iBasFreq  =         cpspch(p4)
iTabFreq  =         p7 ;base frequency of the table
iBasFreq  =         *iBasFreq / iTabFreq*
iBaseAmp  =         ampdb(p5)
iFtNum    =         p6
aOsc      poscil    iBaseAmp, iBasFreq, iFtNum
aEnv      linen     aOsc, p3/4, p3, p3/4
          outs      aEnv, aEnv
    endin

</CsInstruments>
<CsScore>
i 1 0 5    8.00      -10       2          *100*
i . 3 5    9.00      -14       .          .
i . 5 8    9.02      -12       .          .
i . 6 9    7.01      -12       .          .
i . 7 10   6.00      -10       .          .
----------------------------------------------------------------------------------------------------------------------------

Tried to tinker with this example for a few hours, but alas the
enlightenment never came....

The floss manual says "/As you can see, for non-harmonically related
partials, the construction of a table must be done with a special care. If
the frequency multipliers in our first example started with 1 and 1.02, the
resulting period is acually very long. For a base frequency of 100 Hz, you
will have the frequencies of 100 Hz and 102 Hz overlapping each other. So
you need 100 cycles from the 1.00 multiplier and 102 cycles from the 1.02
multiplier to complete one period and to start again both together from
zero. In other words, we have to create a table which contains 100
respectively 102 periods, instead of 1 and 1.02./"

As i understand, the partials in the GEN09 function need to be multiplied by
a 100, so that some mysterious period would not be too long and then the
base frequency needs to be divided by a 100. Well the multiplying and
dividing i understand, but what does "the resulting period is acually very
long" and "frequencies of 100 Hz and 102 Hz overlapping each other." mean ?
Is this somehow tied to the fact that the ftgen opcode is being read in k
rather than a samples?



--
View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733672.html
Sent from the Csound - General mailing list archive at Nabble.com.


Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"





Date2014-03-31 06:29
FromAskwazzup
Subject[Csnd] Re: Questions about Signal flow and Adding partials in Csound
Thank you for the explanations peiman, however i'm still puzzled how that
relates to multipliers in the GEN09 table being 100 and 102 instead 1 and
1.02 The resulting ration is still the same:
100/102 = 1/1.02=0.980392157 How does that help the phase problem between
the partials. 

Are there any sources where i could read more about this?



--
View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733687.html
Sent from the Csound - General mailing list archive at Nabble.com.


Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2014-03-31 09:02
Frompeiman khosravi
SubjectRe: [Csnd] Re: Questions about Signal flow and Adding partials in Csound
With the tables, you can define a harmonic relationship, in which case the table contains one full cycle of the fundamental, two cycles of the second harmonic, three cycles of the fourth, and so on. 

Now if you define non-harmonic relationships, you need to make sure that the table contain an entire period of the complex wave. If it doesn't, then some of the partials will terminate midway a cycle, at amplitudes other than zero. This will then result in distortions because it is the table in its entirety that is looped by the oscillator. So the table must contain one entire cycle of the complex wave. (Not just of the fundamental). 

Therefore, with non-harmonic ratios the table needs to be as long as it takes for the partials to terminate together at zero amplitude. 

  



On 31 March 2014 06:29, Askwazzup <aistiskaikaris@mail.com> wrote:
Thank you for the explanations peiman, however i'm still puzzled how that
relates to multipliers in the GEN09 table being 100 and 102 instead 1 and
1.02 The resulting ration is still the same:
100/102 = 1/1.02=0.980392157 How does that help the phase problem between
the partials.

Are there any sources where i could read more about this?



--
View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733687.html
Sent from the Csound - General mailing list archive at Nabble.com.


Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"





Date2014-03-31 09:10
Frompeiman khosravi
SubjectRe: [Csnd] Re: Questions about Signal flow and Adding partials in Csound

The floss manual says "/As you can see, for non-harmonically related
partials, the construction of a table must be done with a special care. If
the frequency multipliers in our first example started with 1 and 1.02, the
resulting period is acually very long. For a base frequency of 100 Hz, you
will have the frequencies of 100 Hz and 102 Hz overlapping each other. So
you need 100 cycles from the 1.00 multiplier and 102 cycles from the 1.02
multiplier to complete one period and to start again both together from
zero. In other words, we have to create a table which contains 100
respectively 102 periods, instead of 1 and 1.02./"

I have to say thought, this paragraph is confusing. I think there is a typo somewhere towards the end, or something is missing...  

Date2014-03-31 09:15
FromVictor Lazzarini
SubjectRe: [Csnd] Questions about Signal flow and Adding partials in Csound
But note that if you are reading a table with an oscillator, you will always have a periodic signal, no matter what you do. 
========================
Dr Victor Lazzarini
Senior Lecturer
NUI Maynooth, Ireland
victor dot lazzarini at nuim dot ie




On 31 Mar 2014, at 09:02, peiman khosravi  wrote:

> Now if you define non-harmonic relationships, you need to make sure that the table contain an entire period of the complex wave. If it doesn't, then some of the partials will terminate midway a cycle, at amplitudes other than zero. This will then result in distortions because it is the table in its entirety that is looped by the oscillator. So the table must contain one entire cycle of the complex wave. (Not just of the fundamental). 
> 
> Therefore, with non-harmonic ratios the table needs to be as long as it takes for the partials to terminate together at zero amplitude. 



Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"




Date2014-03-31 10:12
FromAskwazzup
Subject[Csnd] Re: Questions about Signal flow and Adding partials in Csound
Thank you guys, you have been very helpful



--
View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733692.html
Sent from the Csound - General mailing list archive at Nabble.com.


Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2014-03-31 13:55
Fromjoachim heintz
SubjectRe: [Csnd] Re: Questions about Signal flow and Adding partials in
hi peiman -

what is confusing? if you can suggest a better way to express, please 
do, and i am happy to include it in the next release. this would exactly 
be the process for improving the csound floss manual.

best -

	joachim


Am 31.03.2014 10:10, schrieb peiman khosravi:
>
>     The floss manual says "/As you can see, for non-harmonically related
>     partials, the construction of a table must be done with a special
>     care. If
>     the frequency multipliers in our first example started with 1 and
>     1.02, the
>     resulting period is acually very long. For a base frequency of 100
>     Hz, you
>     will have the frequencies of 100 Hz and 102 Hz overlapping each
>     other. So
>     you need 100 cycles from the 1.00 multiplier and 102 cycles from the
>     1.02
>     multiplier to complete one period and to start again both together from
>     zero. In other words, we have to create a table which contains 100
>     respectively 102 periods, instead of 1 and 1.02./"
>
> I have to say thought, this paragraph is confusing. I think there is a
> typo somewhere towards the end, or something is missing...


Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2014-03-31 14:17
FromRichard Dobson
SubjectRe: [Csnd] Re: Questions about Signal flow and Adding partials in
Sometimes the solution in such cases is a picture/diagram, might well be 
useful here. Assuming I have underswtood it myself,the general idea is 
that of finding the "lowest common multiple" (LCM). For example, if you 
want frequencies that are (relatively) prime,   e.g. 5 and 11, and need 
a table with an exact number of cycles of each, you need a table with 
size 5 * 11 = 55. Where both frequencies have common factors, as do 100 
and 102, you can reduce the size of the table accordingly - so not 100 * 
102 =  10200 but 50*51 = 2550. Of course, as you increase the number of 
target frequencies, the likelihood of finding common factors decreases.

Unfortunately, just now, I have to leave the writing of an algorithm to 
do this for N frequencies "as an exercise"...


Richard Dobson


On 31/03/2014 13:55, joachim heintz wrote:
> hi peiman -
>
> what is confusing? if you can suggest a better way to express, please
> do, and i am happy to include it in the next release. this would exactly
> be the process for improving the csound floss manual.
>
> best -
>
>      joachim
>
>
> Am 31.03.2014 10:10, schrieb peiman khosravi:
>>
>>     The floss manual says "/As you can see, for non-harmonically related
>>     partials, the construction of a table must be done with a special
>>     care. If
>>     the frequency multipliers in our first example started with 1 and
>>     1.02, the
>>     resulting period is acually very long. For a base frequency of 100
>>     Hz, you
>>     will have the frequencies of 100 Hz and 102 Hz overlapping each
>>     other. So
>>     you need 100 cycles from the 1.00 multiplier and 102 cycles from the
>>     1.02
>>     multiplier to complete one period and to start again both together
>> from
>>     zero. In other words, we have to create a table which contains 100
>>     respectively 102 periods, instead of 1 and 1.02./"
>>
>> I have to say thought, this paragraph is confusing. I think there is a
>> typo somewhere towards the end, or something is missing...
>
>
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe
> csound"
>
>
>
>



Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2014-03-31 18:16
Frompeiman khosravi
SubjectRe: [Csnd] Re: Questions about Signal flow and Adding partials in

Hi Joachim,

This bit doesn't make sense to me:

 
"
In other words, we have to create a table which contains 100
respectively 102 periods, instead of 1 and 1.02./"






--
View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733672.html
Sent from the Csound - General mailing list archive at Nabble.com.


Send bugs reports to
         https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"






Send bugs reports to
       https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"





Date2014-03-31 18:27
FromJustin Smith
SubjectRe: [Csnd] Re: Questions about Signal flow and Adding partials in
Since the partials are ratios, you can make the same sounds with 102 cycles juxtaposed with 100 cycles as you can with 1 juxtaposed with 1.02 (and in fact you would be even better off using 50 and 51). You would lower your oscillator frequencies to account for the number of cycles in the table, of course.

The reason we need a bigger table is that 1.02 cycles does not end at 0, you will get a plethora of  non harmonic artifacts, as you have effectively inserted a broadband impulse into the table if it does not start and end at the same amplitudes.


On Mon, Mar 31, 2014 at 10:16 AM, peiman khosravi <peimankhosravi@gmail.com> wrote:

Hi Joachim,

This bit doesn't make sense to me:

 
"
In other words, we have to create a table which contains 100
respectively 102 periods, instead of 1 and 1.02./"






--
View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733672.html
Sent from the Csound - General mailing list archive at Nabble.com.


Send bugs reports to
         https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"






Send bugs reports to
       https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"






Date2014-03-31 18:27
FromChet Udell
Subject[Csnd] eMersion sensing, 19 days left.
Hi Csound community,

I wanted to let you know that eMersion Gesture Control (an OSC-based wireless sensing system) has 19 days left for their project. Almost instantly add wireless sensing to your .csd through the OSCinit and OSClisten opcodes!

Here's what some people have already done with eMersion:

What will *you* use motion sensing for?

Warm Thanks,
Chet
========
Dr. Chet Udell
Music Composition (+Electrical Engineering)
University of Florida

On Mar 31, 2014, at 10:16 AM, peiman khosravi wrote:


Hi Joachim,

This bit doesn't make sense to me:

 
"
In other words, we have to create a table which contains 100
respectively 102 periods, instead of 1 and 1.02./"






--
View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733672.html
Sent from the Csound - General mailing list archive at Nabble.com.


Send bugs reports to
         https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"






Send bugs reports to
       https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"






Date2014-03-31 18:33
Frompeiman khosravi
SubjectRe: [Csnd] Re: Questions about Signal flow and Adding partials in
I know what it means but the the english doesn't make sense:

"...contains 100 respectively 102 periods
"



On 31 March 2014 18:27, Justin Smith <noisesmith@gmail.com> wrote:
Since the partials are ratios, you can make the same sounds with 102 cycles juxtaposed with 100 cycles as you can with 1 juxtaposed with 1.02 (and in fact you would be even better off using 50 and 51). You would lower your oscillator frequencies to account for the number of cycles in the table, of course.

The reason we need a bigger table is that 1.02 cycles does not end at 0, you will get a plethora of  non harmonic artifacts, as you have effectively inserted a broadband impulse into the table if it does not start and end at the same amplitudes.


On Mon, Mar 31, 2014 at 10:16 AM, peiman khosravi <peimankhosravi@gmail.com> wrote:

Hi Joachim,

This bit doesn't make sense to me:

 
"
In other words, we have to create a table which contains 100
respectively 102 periods, instead of 1 and 1.02./"






--
View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733672.html
Sent from the Csound - General mailing list archive at Nabble.com.


Send bugs reports to
         https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"






Send bugs reports to
       https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"







Date2014-03-31 19:21
FromRichard Dobson
SubjectRe: [Csnd] Re: Questions about Signal flow and Adding partials in
It should probably read "... contains respectively 100 and 102 periods..."

Richard Dobson

On 31/03/2014 18:33, peiman khosravi wrote:
> I know what it means but the the english doesn't make sense:
>
> "...contains 100 respectively 102 periods
> "
>
>
>
>



Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2014-03-31 19:32
FromIain McCurdy
SubjectRE: [Csnd] Re: Questions about Signal flow and Adding partials in
I shall amend this in the FLOSS manual now. The manual is due to be republished very soon so the changes will appear in the 'read' version shortly.

> Date: Mon, 31 Mar 2014 19:21:14 +0100
> From: richarddobson@blueyonder.co.uk
> To: csound@lists.bath.ac.uk
> Subject: Re: [Csnd] Re: Questions about Signal flow and Adding partials in
>
> It should probably read "... contains respectively 100 and 102 periods..."
>
> Richard Dobson
>
> On 31/03/2014 18:33, peiman khosravi wrote:
> > I know what it means but the the english doesn't make sense:
> >
> > "...contains 100 respectively 102 periods
> > "
> >
> >
> >
> >
>
>
>
> Send bugs reports to
> https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"
>
>
>

Date2014-03-31 20:52
Fromjoachim heintz
SubjectRe: [Csnd] Re: Questions about Signal flow and Adding partials in
thanks!
	j


Am 31.03.2014 20:32, schrieb Iain McCurdy:
> I shall amend this in the FLOSS manual now. The manual is due to be
> republished very soon so the changes will appear in the 'read' version
> shortly.
>
>  > Date: Mon, 31 Mar 2014 19:21:14 +0100
>  > From: richarddobson@blueyonder.co.uk
>  > To: csound@lists.bath.ac.uk
>  > Subject: Re: [Csnd] Re: Questions about Signal flow and Adding
> partials in
>  >
>  > It should probably read "... contains respectively 100 and 102
> periods..."
>  >
>  > Richard Dobson
>  >
>  > On 31/03/2014 18:33, peiman khosravi wrote:
>  > > I know what it means but the the english doesn't make sense:
>  > >
>  > > "...contains 100 respectively 102 periods
>  > > "
>  > >
>  > >
>  > >
>  > >
>  >
>  >
>  >
>  > Send bugs reports to
>  > https://github.com/csound/csound/issues
>  > Discussions of bugs and features can be posted here
>  > To unsubscribe, send email sympa@lists.bath.ac.uk with body
> "unsubscribe csound"
>  >
>  >
>  >


Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2014-04-04 21:07
FromAskwazzup
Subject[Csnd] Re: Questions about Signal flow and Adding partials in
Didn't want to create a new thread, so i will just ask here. 

It seems i'm just stuck in the additive synthesis chapter, i roughly
understand the examples, but clearly have too many holes in my understanding
of how the tables are read to replicate the examples on my own, without
peeking at the ones in the book. 

Can anyone give me some advice how to cement the basics better, so i could
actually finish these later chapters? I'm reading the floss manual in a
linear way, from start to finish (of course i can't finish since i'm stuck).
Maybe i'm reading it the wrong way? Or should i just try out the csound
book? Or is it a bit too out dated, seeing as it's already 14 years old.

I really want to get a working understanding of csound, so i would really
appreciate any advice.



--
View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733903.html
Sent from the Csound - General mailing list archive at Nabble.com.

Date2014-04-04 21:33
Fromjoachim heintz
SubjectRe: [Csnd] Re: Questions about Signal flow and Adding partials in
i'd suggest this:

read chapter 02 (Quick Start).

then read whatever you are most interested in. if this is additive 
synth, ok; but if you want to work with samples, read chapter 06, etc.

if you come to something you don't understand (in your case: tables), 
have a look at chapter 03 about the csound language (in this case 03D).

of course, there are many other ways to learn csound. in my opinion, jim 
aikin's "csound power" is one of the best.

and: we are always very much interested to improve the csound floss 
manual. so if you find something hard to understand or have any 
suggestion for improvements, please let us know -- either here on the 
list or to iain and me off-list.

hope this helps -

	joachim


Am 04.04.2014 22:07, schrieb Askwazzup:
> Didn't want to create a new thread, so i will just ask here.
>
> It seems i'm just stuck in the additive synthesis chapter, i roughly
> understand the examples, but clearly have too many holes in my understanding
> of how the tables are read to replicate the examples on my own, without
> peeking at the ones in the book.
>
> Can anyone give me some advice how to cement the basics better, so i could
> actually finish these later chapters? I'm reading the floss manual in a
> linear way, from start to finish (of course i can't finish since i'm stuck).
> Maybe i'm reading it the wrong way? Or should i just try out the csound
> book? Or is it a bit too out dated, seeing as it's already 14 years old.
>
> I really want to get a working understanding of csound, so i would really
> appreciate any advice.
>
>
>
> --
> View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733903.html
> Sent from the Csound - General mailing list archive at Nabble.com.
>
>
> Send bugs reports to
>          https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"
>
>
>
>

Date2014-04-04 22:43
FromAskwazzup
Subject[Csnd] Re: Questions about Signal flow and Adding partials in
Already read the first 3 chapters three two times (i'm interested in learning
all the concepts, i don't have a  one particular chapter that interests me).
Most of the problems i encountered were with sections which only have these
big examples (for example: "EXAMPLE 04A05_Flexible_number_of_partials.csd",
"EXAMPLE 04A07_Risset_variations.csd") as opposed to beginning with the very
basic, bare bones examples and then growing into these bigger ones. And then
some sections seem to be more in depth, while others are shorter than they
could be. So it sometimes feels like walking on a smooth surface and then
suddenly you're falling down a mountain he, he.

Otherwise it's a wonderful manual, from which i learned very much already.
Maybe i will try to read through it again and write down parts that seem to
be problematic, so that i'm not just rambling on. 

As for the "csound power!" book you have suggested, it seems, from the
contents at least, that it covers the very bare basics, or does it go more
in depth?



--
View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733906.html
Sent from the Csound - General mailing list archive at Nabble.com.

Date2014-04-05 17:27
Fromjoachim heintz
SubjectRe: [Csnd] Re: Questions about Signal flow and Adding partials in
yes, if you read again and can tell us which are problematic portions 
from your point of view, this would be much appreciated.

there are certainly very different levels of examples, and it would be 
very helpful to hear from a user like you which examples need more 
explanations, or perhaps a preparing example in advance.

we had also the suggestion to give more comments in the examples which i 
tried in my new examples for random.

thanks for your support in advance -

	joachim


Am 04.04.2014 23:43, schrieb Askwazzup:
> Already read the first 3 chapters three two times (i'm interested in learning
> all the concepts, i don't have a  one particular chapter that interests me).
> Most of the problems i encountered were with sections which only have these
> big examples (for example: "EXAMPLE 04A05_Flexible_number_of_partials.csd",
> "EXAMPLE 04A07_Risset_variations.csd") as opposed to beginning with the very
> basic, bare bones examples and then growing into these bigger ones. And then
> some sections seem to be more in depth, while others are shorter than they
> could be. So it sometimes feels like walking on a smooth surface and then
> suddenly you're falling down a mountain he, he.
>
> Otherwise it's a wonderful manual, from which i learned very much already.
> Maybe i will try to read through it again and write down parts that seem to
> be problematic, so that i'm not just rambling on.
>
> As for the "csound power!" book you have suggested, it seems, from the
> contents at least, that it covers the very bare basics, or does it go more
> in depth?
>
>
>
> --
> View this message in context: http://csound.1045644.n5.nabble.com/Questions-about-Signal-flow-and-Adding-partials-in-Csound-tp5733648p5733906.html
> Sent from the Csound - General mailing list archive at Nabble.com.
>
>
> Send bugs reports to
>          https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here
> To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"
>
>
>
>