# Week 2 lesson 2 - manipulating time with setcps, cps patterns and fast/slow functions

**URL:** <https://uzu.lurk.org/t/week-2-lesson-2-manipulating-time-with-setcps-cps-patterns-and-fast-slow-functions/466>\
**Category:** Week 2 - effects, time, arithmetic\
**Created:** [20 April 2020 14:05 UTC](https://uzu.lurk.org/t/week-2-lesson-2-manipulating-time-with-setcps-cps-patterns-and-fast-slow-functions/466 "2020-04-20T14:05:48Z")\
**Posts on this page:** 1\
**Showing post:** 5

<div class="post-metadata">

**Author:** ![heavy.lifting](https://uzu.lurk.org/user_avatar/uzu.lurk.org/heavy.lifting/32/150_2.png) [@heavy.lifting](https://uzu.lurk.org/u/heavy.lifting)\
**Post date:** [22 April 2020 09:54 UTC](https://uzu.lurk.org/t/week-2-lesson-2-manipulating-time-with-setcps-cps-patterns-and-fast-slow-functions/466/5 "2020-04-22T09:54:03Z")

</div>

Hey @gnozo

(First of all - this is hard to get your head round so don't worry if it doesn't make sense right away. Even Alex is confused about this in the video ha. Personally I avoid confusion by not really thinking about it and using my ear to decide what I like the sound of...)

Patterning `fast` in this way means you effectively switch between two versions of the pattern running at different speeds.

So imagine your original pattern `"0 1"` looks like this:

`0---1---|0---1---|0---1---|0---1---|`

If you applied `fast 0.5` to the whole thing it would look like this:

`0-------|1-------|0-------|1-------|`

If you applied `fast 2` to the whole thing it would look like this:

`0-1-0-1-|0-1-0-1-|0-1-0-1-|0-1-0-1-|`

When you pattern `fast` you switch between those two versions of the patterns. In this instance we will have half a cycle of `fast 0.5` and half a cycle of `fast 2`

So using `/` to indicate the two halves of the pattern, it's a bit like layering:

`0---/----|1---/----|0---/----|1---/----|`

and

`0-1-/0-1-|0-1-/0-1-|0-1-/0-1-|0-1-/0-1-|`

alternating parts each time:

`0---/0-1-|1---/0-1-|0---/0-1-|1---/0-1-|`

So thinking about your pattern:

`d1 $ n "<0 1> <[0 1]>" # sound "cpu"`

It works in the same way. Let's look at the first half `<0 1>` first:

`0-------|1-------|0-------|1-------|`

Then the second half `<[0 1]>`

`----0-1-|----0-1-|----0-1-|----0-1-|`

If we put these together we get:

`0---0-1-|1---0-1-|0---0-1-|1---0-1-|`

Which is the same as what we saw above.

Hopefully that helps! I think @yaxu has some really good diagrams that explain how Tidal handles patterns of effects and time, so hopefully he can share them!

---

_[View the full topic](https://uzu.lurk.org/t/week-2-lesson-2-manipulating-time-with-setcps-cps-patterns-and-fast-slow-functions/466)._
