Jump to content

PatrickMimran

Members
  • Posts

    89
  • Joined

  • Last visited

Everything posted by PatrickMimran

  1. Hello Julio if you are like me and you do not know lisp this is a very useful link where you can find the main lisp functions . I found it very useful. cl-reference-brian.pdf LispResumé.pdf
  2. That's exactly what i was looking for Thank you Patrick
  3. How could we have access to the chord library ? I tried (library 'chord-library 'triads 'maj ) without success Triads maj m min dim mb5 sus sus4 sus2 aug majs5 + -5 Basic seventh chords maj7 m7 min7 7 dom7 dim7 m7b5 min7b5 mmaj7 m/maj7 7sus2 7sus 7sus4 Added tone chords 5 6 maj6 m6 min6 6/7 6/9 69 6add9 6/9s11 69s11 6add9s11 m6/9 m6add9 m69 Extended nondominant seventh chords maj7b5 mmaj7a11 m/maj7a11 maj7s11 m/maj7a13 mmaj7a13 m7sus4 m7s5 m7a11 m7a13 m7b13 m7b6 dim/maj7 dim7/maj7 m7b9b5 7b9sus4 phrig maj7s5
  4. Je vais vous envoyer plus tard la copie du score . Mais le problème est que meme lorsque j'évalue mon chord list , les accords "mapées ",me sortent des secondes alors que je m'attends à ce qu'ils donnent le premier quatrième et cinquième degré de la mineur . Je vais essayer votre suggestion et je vous tiens au courant . Merci pour votre réponse Patrick
  5. I try to map a tonality on a very simple chord suite 1 4 5 from Major to natural minor in the folowing way (Setq chordlist (tonality-map '(natural-minor :root a4 ) '(c3c4e4g4c5 f3f4a4c5f5 G3G4b4d5g5) )) But it doesn't seems to work the way i want , i am just looking to transform degree 1 4 5 from c major to 1 4 5 a minor with no success there is probably something i am missing or another easiest way Thanks Patrick
  6. i looked at it and i tried to put it in the function , but without success This is what i did (defun patkaos ( lambda long &key seed ) (rnd-seed seed ) (let ((res (cons seed nil)) (xn seed)) (dotimes (n long res) (setf res (cons (setf xn (* lambda xn (- 1 xn))) res))) (reverse res))) when i evaluate this is what i gat Error: floating-point-overflow detected > performing * on (-2.5452163E+36 2.5452163E+36) > While executing: ccl::*-2, in process Listener-1(7). > Type cmd-. to abort, cmd-\ for a list of available restarts. > Type :? for other options. Thanks Patrick
  7. I try to put a seed as an option in this function with a default value of nil or no seed , how may i add it as optional Thanks Patrick (defun patkaos ( seed lambda long ) (let ((res (cons seed nil)) (xn seed)) (dotimes (n long res) (setf res (cons (setf xn (* lambda xn (- 1 xn))) res))) (reverse res)))
  8. I have this error message, is there a new argument in this function following the last update ? when evaluating this score, it wasn't doing it before i cannot find out why. Thanks for your help Patrick SpringTonality_1.opmo
  9. Thank you to all of you for your time and your help Patrick
  10. (trans '((1 2 3) (a b c) (4 5 6)) => ((1 a 4) (2 b 5) (3 c 6)) is it somewhere in Opusmodus ? Any idea how to make it ? Thanks Patrick
  11. This is from Stephane Jeu2 pour piano example , i am looking to add computation on this omn2-1 i would like it to do as well : (< (omn-encode (car x)) 1/16) (chord-interval-add '(-12 5 6 ) x) Plus as well (= (omn-encode (car x)) 1/16) (chord-interval-add '(36 ) x) for example , but i do not know how to group all operation within the same loop for i or even if it is possible , ;; omn post processing (adding interval if length > 1/16) (setf omn2-1 (ambitus '(c2 c5) (loop for i in (single-events omn2) collect (mapcar (lambda(x) (if (> (omn-encode (car x)) 1/16) (chord-interval-add '(-4) x) x)) i)))) Thank you for your answer Patrick Jeu2aPourPiano.opmo
  12. Thank you , but it is not exactly what i want i did not express myself well , in fact it is the scale expansion based on The Schillinger System Of Musical Composition , what it does it replacing in a melody each pitch for his next third , skipping each time a third then a fourth etc .... it goes like that expansion one all c for d all d for e all e for f all f for g all g for a all a for b all b for c as well as c# for d# etc ... expansion one all c for e all d for f all e for g all f for a all g for b all a for c all b for d as well as c# for f etc ... expansion two all c for f all d for g all e for a all f for b all g for c all a for d all b for e as well as c# for f# etc ... expansion three all c for g all d for a all e for b all f for c all g for d all a for e all b for f as well as c# for g# etc ... expansion four all c for a all d for b all e for c all f for d all g for e all a for f all b for g as well as c# for a# etc ... expansion five all c for b all d for c all e for d all f for e all g for f all a for g all b for a as well as c# for c etc ... Each expansion is used separately and is an option in the function . But i realise it is quite a lot of work and i do not want you to loose too much time on that if you are not interested in the idea . In any event Thanks for your time patrick
  13. Hello Torsten thank you for your help , here are the functions i would like to use , unfortunately they work well with even number of items but not with odds i did not find a way to code that , maybe you have a solution , i am sure there is an easiest way but as my lisp knowledge is poor ... anyway here they are : (defun exp1 (lis) (let ((newlist nil) (newlist2 nil)) (loop (cond ((equal (cdr lis) nil) (return (append (reverse newlist2) (reverse newlist))))) (setq newlist (cons (second lis) newlist)) (setq newlist2 (cons (car lis) newlist2)) (setq lis (cdr (cdr lis)))))) ;(exp1 '( 1 2 3 4 5 6 7 8 9 )) (defun exp1do (lis) (do ((oldlist lis (cdr (cdr oldlist))) (newlist nil (cons (second oldlist) newlist)) (newlist2 nil (cons (car oldlist) newlist2))) ((equal (cdr oldlist) nil) (append (reverse newlist2) (reverse newlist))))) ;(dosecondone '(1 2 3 4 5 )) ;thirdoneorg reorganize by three (defun exp2 (lis) (let ((newlist nil) (newlist2 nil) (newlist3 nil)) (loop (cond ((equal (cdr lis) nil) (return (remove nil (append (reverse newlist3) (reverse newlist2) (reverse newlist)))))) (setq newlist (cons (caddr lis) newlist)) (setq newlist2 (cons (cadr lis) newlist2)) (setq newlist3 (cons (car lis) newlist3)) (setq lis (cdddr lis))))) ;(exp2 '(1 2 3 4 5 )) added 11 minutes later Hi just another question is there a way in this function to have included all options for omn , pitches , velocity , articulation (defun my-omn (xs &optional (type :length)) (getf (disassemble-omn xs) type)) (my-omn '(q c4 e d4 e4 h f4 q g4) :pitches) => (c4 d4 e4 f4 g4 ) etc.. same for velocity and articulation Thanks Patrick
  14. I did something which seems easier for me (defun my-omn (lis &optional (nbr 0) ) (nth nbr (disassemble-omn lis ))) from there i mapcar any functions Ex: (setf lenomn (my-omn pianomain )) ;pianomain is a omn list or lists (setf newlen (mapcar 'anyfunction lenomn )) then : (omn-replace :pitch newlen pianomain ) Now if i would like to embed everything in one function with the options ? ( nbr 0 for length 3 for pitch 5 for velocity and 7 for articulation ) plus the omn options for :pitch :length :velocity and :art with anyfuntion as an additional argument That's what i would like to know how to do , now that i have the useful functions set , then i could concentrate everything in one function Thanks For any help Patrick
  15. I did something which seems easier for me (defun my-omn (lis &optional (nbr 0) ) (nth nbr (disassemble-omn lis ))) from there i mapcar any functions Ex: (setf lenomn (my-omn pianomain )) ;pianomain is a omn list or lists (setf newlen (mapcar 'anyfunction lenomn )) then : (omn-replace :pitch newlen pianomain ) Now if i would like to embed everything in one function with the options ? ( nbr 0 for length 3 for pitch 5 for velocity and 7 for articulation ) plus the omn options for :pitch :length :velocity and :art with anyfuntion as an additional argument That's what i would like to know how to do , now that i have the useful functions set , then i could concentrate everything in one function Thanks For any help Patrick
  16. Hi torsten when i evaluate (defun edit-omn (type notation fun &key (flat T))) i gat this error message maybe i missed something ;Compiler warnings for "/Users/patrickmimran/Opusmodus/AllPat_Comp/Patrick_2/OMN_Translator.opmo" : ; In edit-omn: Unused lexical variable flat ;Compiler warnings for "/Users/patrickmimran/Opusmodus/AllPat_Comp/Patrick_2/OMN_Translator.opmo" : ; In edit-omn: Unused lexical variable fun ;Compiler warnings for "/Users/patrickmimran/Opusmodus/AllPat_Comp/Patrick_2/OMN_Translator.opmo" : ; In edit-omn: Unused lexical variable notation ;Compiler warnings for "/Users/patrickmimran/Opusmodus/AllPat_Comp/Patrick_2/OMN_Translator.opmo" : ; In edit-omn: Unused lexical variable type
  17. Thank you Torsten that's exactly what i was looking for , as i compose using Opusmodus first to generate several ideas which once in omn form i like to process again or edit afterwards with some home made functions and at the end manual edits . I will try it and come back to you if i have some questions . Patrick
  18. Thank you but what i am looking for is to create a new function X which could apply his functionality directly in a omn function like ( rnd-order '(h. g3 mp e. bb4 mf q. c5 ff e. bb5 mf)) automatically render all omn component , but if i write a function x it will not automatically understand in the list what is pitch or length etc... I would like to find a way to have direct access without having to extract first length or pitch and to recombine it in omn later Thanks Patrick
×
×
  • Create New...

Important Information

Terms of Use Privacy Policy