—- July 14, 2011
To guide the study of Nels' Sequence class, make a Class Diagram listing the attributes and methods. Also determine where the getNextNote method is called (both within the class and in other files).
The main attributes are the melody and duration arrays. melody holds integer midi values representing each note, while duration holds values representing the length of each note. Based on this and the comments in the code, try to write out (either in paragraph form or step-by-step) what the getNextNote method does. I can help with this.
One alternative way of experimenting with a chaos-melody version of getNextNote is to “fork” the Grid project and rewrite the getNextNote method, right in the Sequence class. That way you can test your ideas for making it work without having to write a subclass and fixing up the places in the program which create Sequence objects to be the new class type, etc. Of course, eventually we'll have to do all that.
—- June 23, 2011
Review pages 7-10 of Chaos Melody Theory for help with implementation details. Post questions to the wiki.
Test complex classes by attempting to reproduce Figures 12-18. Note this includes implmenting an object (or a derived class) for the complex version of 1-rx^2 (algorithm - Figure 8 on page 13).
—- May 28, 2011
Read through page 19 of Chaos Melody Theory
Create and test polynomials using a Polynomial class. It should have a method to modify the coefficient of the x-squared term and another to print the polynomial in the form c - bx - ax2 to mimic equations like 1 - rx2 from the thesis.
Here's an idea - add a method
eval2 that takes two parameters
r. It changes the coefficient
r and evaluates the polynomial given
We'll need a test harness that graphs the results of evaluating this way as
r varies from 0 to 2 (non inclusive). I will try to find time to work up a simple Processing sketch for a starting point this week, but if you figure something out first, great!
AFTER ALL THAT WORKS - move on to the transcendental functions for the complex versions of the non-linear functions developed in the next section of the thesis. Two more classes: one represents the complex-valued function, and one represents a transcendental function of the form ex(a cos(w) - b sin(w)) or ex(a sin(w) + b cos(w)) for the real/imaginary breakdown given by Figure 12 on page 16. The complex function class will have two of the transcendental function objects representing the real/imaginary parts.
The actual class relationships for the complex functions need a bit more thought. Feel free to suggest alternatives.
—- May 13, 2011
tracy444a/todocmt.txt · Last modified: 2011/07/14 17:53 by scarl