PLEX86  x86- Virtual Machine (VM) Program
 Plex86  |  CVS  |  Mailing List  |  Download  |  Linux  |  Newsgroups

Teaching Mathematics Distribution: world 3360


Your Ad Here

Your Ad Here

why a graphical libary? Another idea would be something with music, perhaps building a ringing tone and explaining the math behind it. You avaible for many languages and for Linux. An example in Lisp:

Start with a short explanation what sound is, frequency, sonic speed. Then produce some simple sound. With CLM in Lisp you can create your own instrument, which produces a sine wave:

(definstrument sine-instrument (start-time duration frequency amplitude) (let ((osc (make-oscil :frequency frequency)) (amp-env (make-env :envelope '(0 0 .5 1.0 1.0 0) :scaler amplitude :duration duration))) (run (loop for i from beg below end do (outa i (* (env amp-env) (oscil osc))))))))

and then just play standard pitch:

(with-sound () (sine-instrument 0.0 0.5 440.0 1.0))

rename shell utility
Hi, I'm trying to create a rename shell utility. I would use it to copy certain folders to a given new folder and rename certain files in that folder. The folders and the names of...

After this you can explain the math behind chromatic scale, notes, envelope etc. A Lisp function can create the scale:

(defun create-pitches (base count) (loop for i from 0 below count with factor = (expt 2 (12)) collect (* base (expt factor i))))

Teaching Mathematics Distribution: world 3361
Frank Buss Nifty. One of the professors at my university, teaching signal analysis, is also a rock...

Example call: (create-pitches 440.0 13)

(440.00 466.16 493.88 523.25 554.36 587.33 622.25 659.26 68 plus 18.46 739.99 783.99 830.61 880.00)

And finally the ringing tone. First a function for creating the notes:

(defun create-octaves (count) (nreverse (loop for i from 1 to count with result = '() with notes = '(c c# d d# e f f# g g# a a# b) finally (return result) do (loop for note in notes collect (push (intern (format nil "~A~A" note i)) result)))))

example: (format t "~A" (create-octaves 2))

(C1 C#1 D1 D#1 E1 F1 F#1 G1 G#1 A1 A#1 B1 C2 C#2 D2 D#2 E2 F2 F#2 G2 G#2 A2 A#2 B2)

The ringing tone creation function:

(defun for-elise () (let* ((note-names (create-octaves 4)) (pitches (create-pitches 440 (length note-names))) (music '((e2 . 16) (d#2 . 16) (e2 . 16) (d#2 . 16) (e2 . 16) (b1 . 16) (d2 . 16) (c2 . 16) (a1 . 8) (c1 . 16) (e1 . 16) (a1 . 16) (b1 . 8) (e1 . 16) (g#1 . 16) (b1 . 16) (c2 . 8) (e1 . 16) (e2 . 16) (d#2 . 16) (e2 . 16) (d#2 . 16) (e2 . 16) (b1 . 16) (d2 . 16) (c2 . 16) (a1 . 8) (c1 . 16) (e1 . 16) (a1 . 16) (b1 . 8) (e1 . 16) (c2 . 16) (b1 . 16) (a1 . 8)))) (with-sound () (loop for note in music with start-time = 0 do (let* ((note-name (car note)) (note-duration (cdr note)) (note-index (position note-name note-names)) (pitch (elt pitches note-index)) (duration (* 5 (note-duration)))) (sine-instrument start-time duration pitch 1.0) (incf start-time duration))))))

--



Your Ad Here

List | Previous | Next

Teaching Mathematics Distribution: world 3361

Linux groups from Newsgroups

The #1 Usenet Provider on the Internet

Teaching Mathematics