Skip to content

Latest commit

 

History

History
59 lines (40 loc) · 1.74 KB

README.md

File metadata and controls

59 lines (40 loc) · 1.74 KB

👾 AlgoPärt

The project AlgoPärt attemps to reconstruct compositions of Arvo Pärt algorithmically. Compositions in his tintinnabuli style are often composed following strict rules. By trying to reconstruct those rules, we can better understand how his compositions work. We refer to this method of musical analysis as analysis by synthesis.

Works

Currently a full reconstruction has only been attempted for one work:

  • Summa (1977)

Tintinnabulipy

The directory tintinnabulipy contains some code that allows you to work with M- and T-spaces, tintinnabuli positions and tintinnabuli processes. In particular, it makes plotting them easier:

from tintinnabulipy import *
from music21.chord import Chord
from music21.scale import ConcreteScale

M = MelodicSpace(MinorScale('E2'))
T = TintinnabuliSpace(Chord('E2 G2 B2'))
M.plot(M.sequence('G3', 8), 'o-')
M.grid()

For more explanation, have a look at the notebook Tutorial.ipynb.

Python setup

You can find the Python version used in .python-version and all dependencies are listed in requirements.txt. If you use pyenv and venv to manage python versions and virtual environments, do the following:

# Install the right python version
pyenv install | cat .python-version

# Create a virtual environment
python -m venv env

# Activate the environment
source env/bin/activate

# Install dependencies
pip install -r requirements.txt