-
Notifications
You must be signed in to change notification settings - Fork 0
/
main_gui.pd
14406 lines (14406 loc) · 379 KB
/
main_gui.pd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
#N canvas 126 23 1914 1322 10;
#N canvas 900 184 594 557 control_damping 0;
#X floatatom 110 192 5 0 0 0 - - -, f 5;
#X obj 57 141 spigot;
#X obj 57 272 outlet;
#X obj 57 165 / 30;
#X obj 91 116 == 68;
#X floatatom 94 85 3 0 0 0 - - -, f 3;
#X floatatom 57 84 3 0 0 0 - - -, f 3;
#X obj 59 52 ctlin;
#X obj 139 76 inlet;
#X text 142 54 midi cc;
#X obj 7 52 inlet;
#X text 6 28 direct input;
#X msg 57 233 damping \$1;
#X connect 1 0 3 0;
#X connect 3 0 12 0;
#X connect 3 0 0 0;
#X connect 4 0 1 1;
#X connect 5 0 4 0;
#X connect 6 0 1 0;
#X connect 7 0 6 0;
#X connect 7 1 5 0;
#X connect 8 0 4 1;
#X connect 10 0 12 0;
#X connect 12 0 2 0;
#X restore 522 1602 pd control_damping;
#N canvas 339 88 524 702 control_freq 0;
#X floatatom 75 253 5 0 0 0 - - -, f 5;
#X obj 57 141 spigot;
#X obj 10 394 outlet;
#X obj 94 116 == 6;
#X obj 94 173 / 127;
#X floatatom 94 86 3 0 0 0 - - -, f 3;
#X floatatom 57 85 3 0 0 0 - - -, f 3;
#X obj 59 53 ctlin;
#X obj 139 77 inlet;
#X text 142 55 midi cc;
#X obj 7 52 inlet;
#X text 6 28 direct input;
#X floatatom 75 302 5 0 0 0 - - -, f 5;
#X obj 414 37 vsl 15 128 0.01 1 1 0 empty empty empty 0 -9 0 10 -262144
-1 -1 0 1;
#X text 235 278 logarithmic frequency scale;
#X obj 57 228 + 400;
#X obj 75 278 expr (log(2*$f1)*40) - 200;
#X obj 57 200 * 20000;
#X msg 10 355 freq \$1;
#X connect 0 0 16 0;
#X connect 1 0 4 0;
#X connect 3 0 1 1;
#X connect 4 0 17 0;
#X connect 5 0 3 0;
#X connect 6 0 1 0;
#X connect 7 0 6 0;
#X connect 7 1 5 0;
#X connect 8 0 3 1;
#X connect 10 0 17 0;
#X connect 10 0 18 0;
#X connect 13 0 17 0;
#X connect 15 0 0 0;
#X connect 16 0 12 0;
#X connect 17 0 15 0;
#X connect 18 0 2 0;
#X restore 65 1606 pd control_freq;
#X obj 826 442 vsl 15 128 0 2.5 0 0 empty empty modal_user 0 -9 0 10
-4096 -1 -1 4572 1;
#X obj 1741 639 s~ exc;
#N canvas 0 22 1694 891 excitation 0;
#X floatatom 872 157 4 0 0 0 - - -, f 4;
#X msg 805 56 bang;
#X msg 849 56 stop;
#X obj 805 211 bng 25 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X msg 893 55 tempo 2 msec;
#X obj 1050 113 loadbang;
#X obj 745 326 outlet~;
#X obj 733 47 inlet;
#X obj 872 134 inlet;
#X msg 1050 140 3000;
#N canvas 0 50 450 300 (subpatch) 0;
#X array excitation 441 float 2 black black;
#X coords 0 2 441 0 200 140 1;
#X restore 445 36 graph;
#X obj 230 144 + 1;
#X obj 230 115 f;
#X msg 265 81 -1;
#X obj 230 20 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 298 129 sel 100;
#X floatatom 230 273 5 0 0 0 - - -, f 5;
#X obj 230 47 t b b;
#X obj 268 183 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 261 219 spigot;
#X msg 294 188 1;
#X msg 332 187 0;
#X obj 256 247 del 0;
#X obj 273 395 hsl 128 15 0.001 0.01 0 0 empty empty pulse_duration
-2 -8 0 10 -262130 -1 -1 2667 1;
#X obj 125 395 hsl 128 15 0.02 1.5 0 0 empty empty initial_force -2
-8 0 10 -262130 -1 -1 6501 1;
#X floatatom 272 419 7 0.1 2 0 - - -, f 7;
#X floatatom 124 421 7 0 0 0 - - -, f 7;
#X floatatom 392 539 5 0 0 0 - - -, f 5;
#X obj 275 477 * 44100;
#X floatatom 113 271 5 0 0 0 - - -, f 5;
#X obj 146 230 t f f;
#X obj 93 334 expr $f2/2*(1-cos(2*4*atan(1)*$f1/$f3));
#X obj 102 571 tabwrite excitation;
#X obj 276 589 s excitation;
#X obj 805 252 tabplay~ excitation;
#X obj 805 185 metro 4000;
#X obj 594 531 loadbang;
#X obj 594 569 hradio 15 0 0 8 empty empty empty 0 -8 0 10 -262144
-1 -1 5;
#X obj 520 805 soundfiler;
#X obj 276 504 expr ceil($f1);
#X obj 29 335 inlet;
#X msg 121 360 1.5;
#X msg 271 362 0.001;
#X obj 392 337 inlet;
#X obj 781 497 inlet;
#X text 734 585 residual excitors;
#X obj 659 191 inlet;
#N canvas 90 87 1043 543 excitation_generator 0;
#X obj 163 118 vline~;
#X msg 217 65 0;
#X obj 170 228 *~;
#N canvas 0 50 450 300 dc_removal 0;
#X obj 137 107 hip~ 20;
#X obj 137 84 hip~ 20;
#X obj 137 152 hip~ 20;
#X obj 137 129 hip~ 20;
#X msg 199 83 50;
#X obj 132 47 inlet~;
#X obj 136 278 outlet~;
#X obj 137 207 hip~ 20;
#X obj 137 184 hip~ 20;
#X obj 137 252 hip~ 20;
#X obj 137 229 hip~ 20;
#X msg 199 183 50;
#X connect 0 0 3 0;
#X connect 1 0 0 0;
#X connect 2 0 8 0;
#X connect 3 0 2 0;
#X connect 4 0 1 1;
#X connect 4 0 0 1;
#X connect 4 0 3 1;
#X connect 4 0 2 1;
#X connect 5 0 1 0;
#X connect 7 0 10 0;
#X connect 8 0 7 0;
#X connect 9 0 6 0;
#X connect 10 0 9 0;
#X connect 11 0 8 1;
#X connect 11 0 7 1;
#X connect 11 0 10 1;
#X connect 11 0 9 1;
#X restore 118 262 pd dc_removal;
#X obj 128 19 inlet;
#X obj 116 285 outlet~;
#X obj 51 44 mtof;
#X obj 16 28 vsl 15 128 0 127 0 0 empty empty empty 0 -9 0 10 -262144
-1 -1 0 1;
#X obj 61 86 osc~;
#X obj 120 173 lop~ 20000;
#X obj 240 186 snapshot~ 1;
#X msg 196 26 150 3 \, 0 0 3;
#X msg 22 238 1000;
#X msg 49 167 50;
#X msg 14 260 2000;
#X msg 7 284 5000;
#X msg 31 214 500;
#X msg 40 191 200;
#X floatatom 99 349 5 0 0 0 - - -, f 5;
#X obj 80 318 snapshot~;
#X obj 195 293 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 186 320 metro 50;
#X connect 0 0 2 1;
#X connect 0 0 10 0;
#X connect 0 0 19 0;
#X connect 1 0 0 0;
#X connect 2 0 3 0;
#X connect 3 0 5 0;
#X connect 4 0 11 0;
#X connect 6 0 8 0;
#X connect 7 0 6 0;
#X connect 8 0 9 0;
#X connect 9 0 2 0;
#X connect 10 0 8 1;
#X connect 11 0 0 0;
#X connect 12 0 8 0;
#X connect 13 0 8 0;
#X connect 14 0 8 0;
#X connect 15 0 8 0;
#X connect 16 0 8 0;
#X connect 17 0 8 0;
#X connect 19 0 18 0;
#X connect 20 0 21 0;
#X connect 21 0 19 0;
#X restore 184 731 pd excitation_generator;
#X text 185 711 old;
#X text 659 173 bang;
#X text 917 134 strike metro;
#X msg 715 630 read -resize resMarimba.wav excitation;
#X msg 714 661 read -resize resVibraphone.wav excitation;
#X msg 718 693 read -resize resHang.wav excitation;
#X msg 721 725 read -resize resChime.wav excitation;
#X msg 725 755 read -resize resSantur.wav excitation;
#X msg 722 786 read -resize resClave.wav excitation;
#X obj 595 593 select 0 1 2 3 4 5 6 7;
#X obj 125 450 spigot;
#X obj 521 427 == 6;
#X obj 808 553 s exc_num;
#X obj 522 400 r exc_num;
#X msg 277 550 resize \$1;
#X obj 275 450 spigot;
#X text 557 426 change only if cosine inpulse is selected;
#X obj 780 528 t f f;
#X obj 819 278 r initial_force;
#X floatatom 520 827 5 0 0 0 - - -, f 5;
#X obj 805 299 *~;
#X floatatom 29 357 5 0 0 0 - - -, f 5;
#X floatatom 392 359 5 0 0 0 - - -, f 5;
#X connect 0 0 35 1;
#X connect 1 0 35 0;
#X connect 2 0 35 0;
#X connect 3 0 34 0;
#X connect 4 0 35 0;
#X connect 5 0 9 0;
#X connect 7 0 35 0;
#X connect 8 0 0 0;
#X connect 9 0 0 0;
#X connect 11 0 12 1;
#X connect 11 0 15 0;
#X connect 11 0 18 0;
#X connect 11 0 30 0;
#X connect 12 0 11 0;
#X connect 13 0 12 1;
#X connect 14 0 17 0;
#X connect 15 0 13 0;
#X connect 15 0 21 0;
#X connect 16 0 32 1;
#X connect 17 0 12 0;
#X connect 17 1 13 0;
#X connect 17 1 20 0;
#X connect 18 0 19 0;
#X connect 19 0 22 0;
#X connect 20 0 19 1;
#X connect 21 0 19 1;
#X connect 22 0 12 0;
#X connect 23 0 25 0;
#X connect 24 0 26 0;
#X connect 25 0 63 0;
#X connect 26 0 58 0;
#X connect 27 0 15 1;
#X connect 27 0 31 2;
#X connect 28 0 39 0;
#X connect 29 0 31 0;
#X connect 30 0 29 0;
#X connect 30 1 16 0;
#X connect 31 0 32 0;
#X connect 34 0 68 0;
#X connect 35 0 3 0;
#X connect 36 0 37 0;
#X connect 37 0 57 0;
#X connect 38 0 67 0;
#X connect 39 0 27 0;
#X connect 39 0 62 0;
#X connect 40 0 69 0;
#X connect 41 0 24 0;
#X connect 42 0 23 0;
#X connect 43 0 70 0;
#X connect 44 0 65 0;
#X connect 46 0 3 0;
#X connect 51 0 38 0;
#X connect 52 0 38 0;
#X connect 53 0 38 0;
#X connect 54 0 38 0;
#X connect 55 0 38 0;
#X connect 56 0 38 0;
#X connect 57 0 51 0;
#X connect 57 1 52 0;
#X connect 57 2 53 0;
#X connect 57 3 54 0;
#X connect 57 4 55 0;
#X connect 57 5 56 0;
#X connect 57 6 69 0;
#X connect 57 6 70 0;
#X connect 58 0 31 1;
#X connect 58 0 14 0;
#X connect 59 0 58 1;
#X connect 59 0 63 1;
#X connect 61 0 59 0;
#X connect 62 0 33 0;
#X connect 63 0 28 0;
#X connect 63 0 14 0;
#X connect 65 0 37 0;
#X connect 65 1 60 0;
#X connect 66 0 68 1;
#X connect 68 0 6 0;
#X connect 69 0 24 0;
#X connect 70 0 23 0;
#X restore 1741 602 pd excitation;
#X obj 107 142 vsl 15 128 0 127 0 0 empty empty empty 0 -9 0 10 -204786
-1 -1 7061 1;
#X obj 152 142 vsl 15 128 0 127 0 0 empty empty empty 0 -9 0 10 -204786
-1 -1 5375 1;
#X obj 242 141 vsl 15 128 0 127 0 0 empty empty empty 0 -9 0 10 -204786
-1 -1 6350 1;
#X obj 197 142 vsl 15 128 0 127 0 0 empty empty empty 0 -9 0 10 -204786
-1 -1 6350 1;
#X obj 326 142 vsl 15 128 0 127 0 0 empty empty empty 0 -9 0 10 -204786
-1 -1 3200 1;
#X obj 373 138 vsl 15 128 0 127 0 0 empty empty empty 0 -9 0 10 -204786
-1 -1 6750 1;
#X obj 460 142 vsl 15 128 0 127 0 0 empty empty empty 0 -9 0 10 -204786
-1 -1 11950 1;
#X obj 415 142 vsl 15 128 0 127 0 0 empty empty empty 0 -9 0 10 -204786
-1 -1 5200 1;
#X obj 550 141 vsl 15 128 0 200 0 0 empty empty empty 0 -9 0 10 -204786
-1 -1 5250 1;
#X obj 588 142 vsl 15 128 0 127 0 0 empty empty empty 0 -9 0 10 -204786
-1 -1 9800 1;
#X obj 677 142 vsl 15 128 0 127 0 0 empty empty empty 0 -9 0 10 -204786
-1 -1 12700 1;
#X obj 634 143 vsl 15 128 0 127 0 0 empty empty empty 0 -9 0 10 -204786
-1 -1 12700 1;
#X obj 70 1469 loadbang;
#X obj 89 43 r dg1;
#X obj 153 43 r dg2;
#X obj 196 50 r dg3;
#X obj 242 49 r dg4;
#X obj 327 48 r fg1;
#X obj 374 48 r fg2;
#X obj 414 48 r fg3;
#X obj 459 49 r fg4;
#X obj 543 41 r pm1;
#X obj 588 42 r pm2;
#X obj 632 42 r pm3;
#X obj 677 42 r pm4;
#X obj 70 1517 s n_partials;
#X msg 70 1493 16;
#X obj 1470 -137 *~;
#X obj 1559 -143 *~;
#X obj 1277 60 loadbang;
#X obj 1242 128 vsl 15 128 1 100 0 0 empty empty empty 0 -9 0 10 -262130
-1 -1 10720 1;
#X text 1133 120 striking position;
#X obj 1596 -172 r mesh_vol;
#X text 1450 -195 receive mesh audio and send to out;
#X obj 975 436 vsl 15 128 0 1 0 0 empty empty total_user 0 -9 0 10
-4096 -1 -1 7411 1;
#X obj 972 374 loadbang;
#X obj 65 1586 r modal_freq;
#X obj 109 544 vsl 15 128 20 1000 0 0 empty empty freq 0 -9 0 10 -204786
-1 -1 127 1;
#X obj 109 777 s modal_freq;
#X obj 748 1565 r modal_preset;
#X obj 1427 131 nbx 7 22 1 10 0 0 empty empty empty 0 -8 0 10 -204800
-1 -1 1 256 0;
#X obj 1430 32 s modal_preset;
#X obj 1063 566 tgl 30 0 empty empty empty 17 7 0 10 -262144 -1 -1
0 1;
#X obj 1067 757 s modal_couple;
#X text 1051 546 modal->mesh;
#X text 149 116 dg2;
#X text 196 116 dg3;
#X text 104 116 dg1;
#X text 239 116 dg4;
#X text 323 117 fb1;
#X text 368 117 fb2;
#X text 415 117 fb3;
#X text 458 117 fb4;
#X text 539 117 pm1;
#X text 584 117 pm2;
#X text 631 117 pm3;
#X text 674 117 pm4;
#X obj 153 544 vsl 15 128 1 2 1 0 empty empty damping 0 -9 0 10 -204786
-1 -1 425 1;
#X obj 154 709 s modal_damping;
#X obj 525 1570 r modal_damping;
#N canvas 24 44 769 618 control_release-fol 0;
#X floatatom 62 346 5 0 0 0 - - -, f 5;
#X obj 57 141 spigot;
#X obj 62 405 outlet;
#X obj 94 173 / 127;
#X obj 59 209 * 1;
#X obj 60 251 / 2;
#X obj 90 115 == 60;
#X obj 61 287 + 1;
#X floatatom 94 86 3 0 0 0 - - -, f 3;
#X floatatom 57 85 3 0 0 0 - - -, f 3;
#X obj 59 53 ctlin;
#X obj 139 77 inlet;
#X text 142 55 midi cc;
#X obj 7 52 inlet;
#X text 6 28 direct input;
#X msg 62 366 release-fol \$1;
#X connect 0 0 15 0;
#X connect 1 0 3 0;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 5 0 7 0;
#X connect 6 0 1 1;
#X connect 7 0 0 0;
#X connect 8 0 6 0;
#X connect 9 0 1 0;
#X connect 10 0 9 0;
#X connect 10 1 8 0;
#X connect 11 0 6 1;
#X connect 13 0 4 0;
#X connect 15 0 2 0;
#X restore 292 1607 pd control_release-fol;
#N canvas 77 215 656 436 control_preset 0;
#X floatatom 112 218 5 0 0 0 - - -, f 5;
#X obj 57 141 spigot;
#X obj 8 280 outlet;
#X floatatom 94 85 3 0 0 0 - - -, f 3;
#X floatatom 57 84 3 0 0 0 - - -, f 3;
#X obj 59 52 ctlin;
#X obj 139 76 inlet;
#X text 142 54 midi cc;
#X obj 7 52 inlet;
#X text 6 28 direct input;
#X obj 91 116 == 69;
#X obj 57 165 / 127;
#X msg 8 238 Preset \$1;
#X connect 1 0 11 0;
#X connect 3 0 10 0;
#X connect 4 0 1 0;
#X connect 5 0 4 0;
#X connect 5 1 3 0;
#X connect 6 0 10 1;
#X connect 8 0 12 0;
#X connect 10 0 1 1;
#X connect 11 0 0 0;
#X connect 12 0 2 0;
#X restore 751 1598 pd control_preset;
#X obj 748 1627 s percussion_instrument_input;
#X obj 65 1626 s percussion_instrument_input;
#X obj 520 1625 s percussion_instrument_input;
#X obj 292 1626 s percussion_instrument_input;
#X obj 292 1588 r modal_release_fol;
#X obj 65 1649 r modal_NLAP_intensity;
#N canvas 1204 209 473 695 control_NLAP_intensity 0;
#X floatatom 62 346 5 0 0 0 - - -, f 5;
#X obj 57 141 spigot;
#X obj 62 405 outlet;
#X obj 94 173 / 127;
#X obj 60 211 * 1;
#X obj 90 115 == 60;
#X floatatom 94 86 3 0 0 0 - - -, f 3;
#X floatatom 57 85 3 0 0 0 - - -, f 3;
#X obj 59 53 ctlin;
#X obj 139 77 inlet;
#X text 142 55 midi cc;
#X obj 7 52 inlet;
#X text 6 28 direct input;
#X msg 62 366 /percussion-instrument/Basic-Parameters/NLAPintensity
\$1;
#X connect 0 0 13 0;
#X connect 1 0 3 0;
#X connect 3 0 4 0;
#X connect 4 0 0 0;
#X connect 5 0 1 1;
#X connect 6 0 5 0;
#X connect 7 0 1 0;
#X connect 8 0 7 0;
#X connect 8 1 6 0;
#X connect 9 0 5 1;
#X connect 11 0 4 0;
#X connect 13 0 2 0;
#X restore 65 1668 pd control_NLAP_intensity;
#X obj 1946 654 vsl 15 128 0.001 1 1 0 empty empty empty 0 -9 0 10
-262130 -1 -1 10486 1;
#X obj 1984 658 loadbang;
#X msg 1984 702 0.3;
#X obj 1946 790 s exc_volume;
#X text 1381 273 excitation;
#X obj 1103 622 nbx 5 14 0.5 0.9 1 1 empty empty empty 0 -8 0 10 -262144
-1 -1 0.9 256 0;
#X obj 1071 780 s coupling_factor_to_mesh;
#X obj 1165 564 tgl 30 0 empty empty empty 17 7 0 10 -262144 -1 -1
0 1;
#X text 1139 544 mesh->modal;
#X obj 1158 757 s mesh_couple;
#X floatatom 1241 264 3 0 0 0 - - -, f 3;
#X obj 2192 504 outlet;
#X obj 108 -30 r get_bang;
#X obj 108 -7 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X obj 317 -37 r get_bang;
#X obj 317 -14 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 542 -28 r get_bang;
#X obj 542 -5 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X obj 148 751 s trim_it;
#X obj 148 731 list prepend modal damping;
#X obj 15 427 r m_damping;
#X obj 108 820 s trim_it;
#X obj 108 801 list prepend modal freq;
#X obj 9 483 r m_freq;
#X obj 1421 -4 r m_table;
#X obj 1431 78 s trim_it;
#X obj 1429 56 list prepend modal table;
#X obj 837 334 r m_volume;
#X obj 826 648 s trim_it;
#X obj 360 494 r get_bang;
#X obj 360 517 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 770 333 r get_bang;
#X obj 770 356 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 763 117 hsl 128 15 1 100 0 0 empty empty mesh_fine_gain -2 -8
0 10 -261234 -1 -1 4746 1;
#X obj 764 239 hsl 128 15 40 20000 0 0 empty empty Lp-Freq -2 -8 0
10 -261234 -1 -1 8255 1;
#X obj 928 241 hsl 128 15 1 99 0 0 empty empty Lp-Gain -2 -8 0 10 -261234
-1 -1 11080 1;
#X obj 926 115 hsl 128 15 0 100 0 0 empty empty mesh_gain_g -2 -8 0
10 -261234 -1 -1 12700 1;
#X obj 762 62 r s_fine_gain;
#X obj 720 -29 r get_bang;
#X obj 720 -6 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X obj 924 72 r s_gain_g;
#X obj 1086 241 hsl 128 15 1 100 0 0 empty empty Lp-Q -2 -8 0 10 -261234
-1 -1 9493 1;
#X obj 761 205 r s_lp_freq;
#X obj 929 206 r s_lp_gain;
#X obj 1086 207 r s_lp_q;
#X floatatom 151 684 5 0 0 0 - - -, f 5;
#X floatatom 109 680 5 0 0 0 - - -, f 5;
#X obj 199 544 vsl 15 128 0.8 1.2 0 0 empty empty detune 0 -9 0 10
-204786 -1 -1 6350 1;
#X floatatom 200 680 5 0 0 0 - - -, f 5;
#X obj 30 -435 hsl 128 15 0 127 0 0 empty empty percussionInstrument
-2 -8 0 52 -262144 -258113 -4160 0 1;
#X obj 109 486 loadbang;
#X obj 292 1647 r modal_NLAP_freq;
#X obj 748 1647 r detune;
#X obj 521 1647 r NL_dc;
#X msg 521 1668 NLAPdc \$1;
#X text 63 1557 INTERNAL FAUST PD PARAMETERS (modes and NL-AP);
#X text 65 1728 FAUST - MESH;
#X obj 1438 162 loadbang;
#X msg 1438 184 1;
#X text 1422 109 material table;
#X text 69 1439 number of modes (for spline patches);
#N canvas 1017 102 451 324 control_NLAP_freq 0;
#X floatatom 62 346 5 0 0 0 - - -, f 5;
#X obj 57 141 spigot;
#X obj 62 405 outlet;
#X obj 94 173 / 127;
#X obj 60 211 * 1;
#X obj 90 115 == 60;
#X floatatom 94 86 3 0 0 0 - - -, f 3;
#X floatatom 57 85 3 0 0 0 - - -, f 3;
#X obj 59 53 ctlin;
#X obj 139 77 inlet;
#X text 142 55 midi cc;
#X obj 7 52 inlet;
#X text 6 28 direct input;
#X msg 62 366 NLAPmodfreq \$1;
#X connect 0 0 13 0;
#X connect 1 0 3 0;
#X connect 3 0 4 0;
#X connect 4 0 0 0;
#X connect 5 0 1 1;
#X connect 6 0 5 0;
#X connect 7 0 1 0;
#X connect 8 0 7 0;
#X connect 8 1 6 0;
#X connect 9 0 5 1;
#X connect 11 0 4 0;
#X connect 13 0 2 0;
#X restore 292 1667 pd control_NLAP_freq;
#N canvas 0 23 450 300 control_detune 0;
#X floatatom 274 200 5 0 0 0 - - -, f 5;
#X obj 221 149 spigot;
#X obj 57 272 outlet;
#X obj 221 173 / 30;
#X obj 255 124 == 68;
#X floatatom 258 93 3 0 0 0 - - -, f 3;
#X floatatom 221 92 3 0 0 0 - - -, f 3;
#X obj 223 60 ctlin;
#X obj 303 84 inlet;
#X text 306 62 midi cc;
#X obj 7 52 inlet;
#X text 6 28 direct input;
#X msg 57 233 detune \$1;
#X connect 1 0 3 0;
#X connect 3 0 0 0;
#X connect 4 0 1 1;
#X connect 5 0 4 0;
#X connect 6 0 1 0;
#X connect 7 0 6 0;
#X connect 7 1 5 0;
#X connect 8 0 4 1;
#X connect 10 0 12 0;
#X connect 12 0 2 0;
#X restore 749 1668 pd control_detune;
#X obj 292 1687 s percussion_instrument_control;
#X obj 65 1687 s percussion_instrument_control;
#X obj 521 1688 s percussion_instrument_control;
#X obj 748 1688 s percussion_instrument_control;
#X obj 1743 392 r initial_force;
#X obj 1760 417 r pulse_dur;
#X obj 1779 442 r exc_bang;
#X obj 1795 467 r exc_start;
#X msg 1795 489 bang;
#X obj 1873 466 r exc_stop;
#X msg 1873 488 stop;
#X obj 1814 538 r select_ext;
#X obj 1831 566 r exc_metro;
#X obj 2342 728 hsl 128 15 0.01 1 0 0 empty empty exc_vol -2 -8 0 10
-262130 -1 -1 0 1;
#X obj 2417 749 s exc_volume;
#X floatatom 2340 745 5 0 0 0 - - -, f 5;
#X obj 2030 710 hsl 128 15 500 5000 0 0 empty empty metro -2 -8 0 10
-262130 -1 -1 0 1;
#X floatatom 2029 728 5 0 0 0 - - -, f 5;
#X msg 2179 693 3000;
#X obj 2180 741 s exc_metro;
#X obj 1387 530 hsl 128 15 0.01 1.5 0 0 empty empty initial_force -2
-8 0 10 -262130 -1 -1 6542 1;
#X floatatom 1386 548 5 0 0 0 - - -, f 5;
#X obj 1537 561 s initial_force;
#X obj 1387 600 hsl 128 15 0.001 0.01 0 0 empty empty pulse_dur -2
-8 0 10 -262130 -1 -1 2667 1;
#X floatatom 1386 618 5 0 0 0 - - -, f 5;
#X msg 1536 583 0.001;
#X obj 1540 631 s pulse_dur;
#X obj 1391 659 hradio 15 0 0 7 empty empty excitation_bank 0 -8 0
10 -262130 -1 -1 5;
#X floatatom 1390 680 5 0 0 0 - - -, f 5;
#X obj 1541 689 s select_ext;
#X obj 1442 343 bng 18 250 50 0 empty empty stop 17 7 0 10 -262130
-1 -1;
#X obj 1383 342 bng 18 250 50 0 empty empty start 17 7 0 10 -262130
-1 -1;
#X obj 1383 318 s exc_start;
#X obj 1442 295 s exc_stop;
#X obj 1562 480 loadbang;
#X obj 19 379 r m_detune;
#X obj 2329 789 list prepend excitation volume;
#X obj 1362 759 list prepend excitation initial force;
#X obj 1293 731 s trim_it;
#X obj 2331 816 s trim_it;
#X obj 1369 808 list prepend pulse duration;
#X obj 1316 832 s trim_it;
#X obj 1361 856 list prepend excitation bank;
#X obj 1361 878 s trim_it;
#X obj 826 626 list prepend modal volume;
#X obj 205 831 s detune;
#X obj 1532 257 r init_f;
#X obj 1531 221 r p_dur;
#X obj 1535 290 r bank;
#X obj 451 544 vsl 15 128 0.001 0.01 0 0 empty empty attack 0 -9 0
10 -203904 -1 -1 0 1;
#X obj 500 544 vsl 15 128 0.001 0.01 0 0 empty empty decay 0 -9 0 10
-203904 -1 -1 5644 1;
#X obj 554 543 vsl 15 128 0 1 0 0 empty empty baseGain 0 -9 0 10 -203904
-1 -1 12700 1;
#X obj 604 543 vsl 15 128 0 1 0 0 empty empty bowGain 0 -9 0 10 -203904
-1 -1 12700 1;
#X obj 650 543 vsl 15 128 0 1 0 0 empty empty bowPress 0 -9 0 10 -203904
-1 -1 0 1;
#X obj 722 547 vsl 15 128 0 1 0 0 empty empty IC 0 -9 0 10 -203904
-1 -1 0 1;
#X floatatom 451 680 5 0 0 0 - - -, f 5;
#X floatatom 500 680 5 0 0 0 - - -, f 5;
#X floatatom 554 679 5 0 0 0 - - -, f 5;
#X floatatom 604 679 5 0 0 0 - - -, f 5;
#X floatatom 650 679 5 0 0 0 - - -, f 5;
#X floatatom 723 692 5 0 0 0 - - -, f 5;
#X msg 451 704 a \$1;
#X msg 500 706 d \$1;
#X msg 554 732 Base-Gain \$1;
#X msg 604 709 gain \$1;
#X msg 722 714 Integration-Constant \$1;
#X obj 1381 394 bng 50 250 50 0 empty empty empty 17 7 0 10 -262130
-1 -1;
#X obj 1535 91 r get_bang;
#X obj 1535 117 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 500 728 s bowDec;
#X obj 452 753 s bowAtt;
#X obj 554 753 s bowBGain;
#X obj 604 816 s bowGain;
#X obj 650 789 s bowPress;
#X obj 722 739 s bowIntConst;
#X msg 724 511 0;
#X obj 247 544 vsl 15 128 0.01 0.7 0 0 empty empty NL_gain 0 -9 0 10
-260129 -1 -1 12700 1;
#X floatatom 247 680 5 0 0 0 - - -, f 5;
#X msg 398 1286 Nonlinearity \$1;
#X obj 304 550 hsl 128 15 0 4 0 0 empty empty NL_type -2 -8 0 10 -260129
-1 -1 3175 1;
#X obj 303 570 expr round($f1);
#X floatatom 303 592 5 0 0 0 - - -, f 5;
#X msg 301 804 Modulation-Type \$1;
#X obj 2040 817 hsl 128 15 1 10 0 0 empty empty NL_order -2 -8 0 10
-261682 -1 -1 0 1;
#X obj 2037 837 expr round($f1);
#X floatatom 2037 859 5 0 0 0 - - -, f 5;
#X msg 2088 890 nlfOrder \$1;
#X obj 398 1308 s nonL;
#X obj 301 828 s nonLmType;
#X obj 2088 912 s nonLorder;
#X msg 2107 787 2;
#X obj 2072 1156 print ERROR, f 15;
#N canvas 630 185 905 623 in&out 0;
#X obj 191 77 sel 10;
#X msg 191 185 32 78 117 109 67 111 110 116 97 99 116 115 32 48 13
;
#X obj 190 157 prepend set;
#X obj 193 236 gate;
#X msg 126 209 0;
#X msg 160 207 1;
#X obj 116 30 inlet;
#X obj 198 268 outlet;
#X obj 87 80 route 10;
#X obj 114 116 list-extend;
#X connect 0 0 5 0;
#X connect 0 0 1 0;
#X connect 0 0 9 1;
#X connect 0 1 4 0;
#X connect 1 0 3 1;
#X connect 2 0 1 0;
#X connect 3 0 7 0;
#X connect 4 0 3 0;
#X connect 5 0 3 0;
#X connect 6 0 0 0;
#X connect 6 0 8 0;
#X connect 8 1 9 0;
#X connect 9 0 2 0;
#X restore 1960 1084 pd in&out;
#X msg 1960 1037 devices;
#X text 2230 1060 SENSOR SECTION;
#X text 2474 1034 1 contact no;
#X text 2475 1054 2 x-position;
#X text 2475 1075 3 y-position;
#X text 2475 1096 4 total force;
#X text 2475 1117 5 type;
#X text 2476 1137 6 area;
#X text 2496 1007 INDEX;
#X msg 198 509 1;
#X msg 153 510 1.2;
#X msg 109 510 100;
#X obj 655 482 loadbang;
#N canvas 0 222 722 660 excitation_env_pablo 0;
#X obj 33 236 r~ exc;
#X obj 576 256 +;
#X floatatom 591 201 5 0 0 0 - - -, f 5;
#X obj 591 224 / 10;
#X obj 548 133 r envfol;
#X obj 549 224 * -1;
#X floatatom 548 197 5 0 0 0 - - -, f 5;
#X obj 33 314 s envfol;
#X obj 686 256 +;
#X floatatom 701 201 5 0 0 0 - - -, f 5;
#X obj 701 224 / 10;
#X obj 658 133 r envfol;
#X obj 659 224 * -1;
#X floatatom 658 197 5 0 0 0 - - -, f 5;
#X obj 658 168 / 20;
#X obj 394 258 +;
#X floatatom 423 179 5 0 0 0 - - -, f 5;
#X obj 366 73 r envfol;
#X floatatom 366 199 5 0 0 0 - - -, f 5;
#X obj 367 226 * -10;
#X obj 190 270 * -1;
#X obj 242 243 +;
#X floatatom 257 171 5 0 0 0 - - -, f 5;
#X obj 257 211 / 10;
#X obj 214 120 r envfol;
#X floatatom 214 184 5 0 0 0 - - -, f 5;
#X obj 215 211 * -10;
#X obj 214 155 / 40;
#X obj 548 168 / 20;
#N canvas 222 115 450 300 control_it 0;
#X floatatom 59 312 5 0 0 0 - - -, f 5;
#X obj 56 152 spigot;
#X obj 59 339 outlet;
#X obj 93 184 / 127;
#X obj 59 251 / 1;
#X obj 89 123 == 65;
#X obj 59 281 + 30;
#X obj 59 221 * 20;
#X obj 172 183 inlet;
#X obj 216 183 inlet;
#X obj 133 94 inlet;
#X floatatom 78 64 3 0 0 0 - - -, f 3;
#X floatatom 41 64 3 0 0 0 - - -, f 3;
#X obj 49 29 ctlin;
#X connect 0 0 2 0;
#X connect 1 0 3 0;
#X connect 3 0 7 0;
#X connect 4 0 6 0;
#X connect 5 0 1 1;
#X connect 6 0 0 0;
#X connect 7 0 4 0;
#X connect 8 0 7 1;
#X connect 9 0 6 1;
#X connect 10 0 5 1;
#X connect 11 0 5 0;
#X connect 12 0 1 0;
#X connect 13 0 12 0;
#X connect 13 1 11 0;
#X restore 761 224 pd control_it;
#X msg 757 183 65;
#X floatatom 853 138 3 0 0 0 - - -, f 3;
#X floatatom 816 137 3 0 0 0 - - -, f 3;
#X obj 818 105 ctlin;
#X msg 798 183 40;
#N canvas 222 115 450 300 control_it 0;
#X floatatom 59 312 5 0 0 0 - - -, f 5;
#X obj 56 152 spigot;
#X obj 59 339 outlet;
#X obj 93 184 / 127;
#X obj 59 251 / 1;
#X obj 89 123 == 65;
#X obj 59 281 + 30;
#X obj 59 221 * 20;
#X obj 172 183 inlet;
#X obj 216 183 inlet;
#X obj 133 94 inlet;
#X floatatom 78 64 3 0 0 0 - - -, f 3;
#X floatatom 41 64 3 0 0 0 - - -, f 3;
#X obj 49 29 ctlin;
#X connect 0 0 2 0;
#X connect 1 0 3 0;
#X connect 3 0 7 0;
#X connect 4 0 6 0;
#X connect 5 0 1 1;
#X connect 6 0 0 0;
#X connect 7 0 4 0;
#X connect 8 0 7 1;
#X connect 9 0 6 1;
#X connect 10 0 5 1;
#X connect 11 0 5 0;
#X connect 12 0 1 0;
#X connect 13 0 12 0;
#X connect 13 1 11 0;
#X restore 841 303 pd control_it;
#X msg 879 271 40;
#X obj 764 253 s pm3;
#X msg 832 183 30;
#X obj 767 141 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 847 327 s pm2;
#X msg 837 267 62;
#X obj 394 290 s pm4;
#X obj 196 299 s fg2;
#X obj 284 107 loadbang;
#X msg 461 158 633;
#X obj 449 132 loadbang;
#X msg 274 137 300;
#X obj 366 131 / 10;
#X text 213 69 envelope followers;
#X obj 387 101 r envfol1_scale;
#X obj 423 73 r envfol1_offset;
#X obj 34 92 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-262144 -1 -1 0 256 0;
#X obj 34 157 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-262144 -1 -1 0 256 0;
#X obj 34 115 s envfol1_scale;
#X obj 34 180 s envfol1_offset;
#X obj 442 230 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 423 204 / 10;
#X text 30 139 env_fol offset;
#X text 30 74 env_fol att;
#X text 30 214 exctitation -> integrator;
#X obj 33 274 env~ 9028;
#X connect 0 0 61 0;
#X connect 2 0 3 0;
#X connect 3 0 1 1;
#X connect 4 0 28 0;
#X connect 5 0 1 0;
#X connect 6 0 5 0;
#X connect 9 0 10 0;
#X connect 10 0 8 1;
#X connect 11 0 14 0;
#X connect 12 0 8 0;
#X connect 13 0 12 0;
#X connect 14 0 13 0;
#X connect 16 0 57 0;
#X connect 17 0 48 0;
#X connect 18 0 19 0;
#X connect 19 0 15 0;
#X connect 21 0 20 0;
#X connect 22 0 23 0;
#X connect 23 0 21 1;
#X connect 24 0 27 0;
#X connect 25 0 26 0;
#X connect 26 0 21 0;
#X connect 27 0 25 0;
#X connect 28 0 6 0;
#X connect 30 0 29 0;
#X connect 33 0 32 0;
#X connect 33 0 39 0;
#X connect 33 1 31 0;
#X connect 34 0 29 1;
#X connect 36 0 35 1;
#X connect 38 0 29 2;
#X connect 39 0 30 0;
#X connect 39 0 34 0;
#X connect 39 0 38 0;
#X connect 39 0 41 0;
#X connect 39 0 36 0;
#X connect 41 0 35 0;
#X connect 44 0 47 0;
#X connect 45 0 16 0;
#X connect 46 0 45 0;
#X connect 47 0 22 0;
#X connect 48 0 18 0;
#X connect 50 0 48 1;
#X connect 51 0 16 0;
#X connect 52 0 54 0;
#X connect 53 0 55 0;
#X connect 56 0 15 0;
#X connect 57 0 15 1;
#X connect 57 0 56 0;
#X connect 61 0 7 0;
#X restore 44 1222 pd excitation_env_pablo;
#X text 50 1197 envelope_pab;
#X msg 1542 655 6;
#X msg 245 508 0;
#X obj 1382 452 s exc_bang;
#N canvas 0 22 1694 891 (subpatch) 0;
#X array feedback_gains 16 float 7 #ffffff black;
#A 0 0.274961 0.275227 0.275337 0.275119 0.274355 0.272709 0.268708
0.24595 0.232809 0.228017 0.225168 0.223309 0.222192 0.221336 0.22092
0.220472;
#X coords 0 0.99999 16 0.1 200 135 1;
#X restore 322 328 graph;
#N canvas 0 50 450 278 (subpatch) 0;
#X array direct_gains 16 float 7 #ffffff black;
#A 0 0.464835 0.466711 0.470917 0.476971 0.484635 0.497619 0.512644
0.531478 0.551155 0.570703 0.589151 0.603625 0.615862 0.622872 0.628171
0.632686;
#X coords 0 1 16 0 200 150 1;
#X restore 107 328 graph;
#N canvas 0 22 1350 697 (subpatch) 0;
#X array partial_mods 16 float 7 #ffffff black;
#A 0 0.894977 0.895371 0.895433 0.89459 0.892501 0.891006 0.88715 0.882182
0.872764 0.865252 0.852271 0.837394 0.814923 0.776443 0.5 0.5;
#X coords 0 1.5 16 0.5 200 100 1;
#X restore 541 329 graph;
#X floatatom 326 280 5 0 0 0 - - -, f 5;
#X floatatom 373 276 5 0 0 0 - - -, f 5;
#X floatatom 415 280 5 0 0 0 - - -, f 5;
#X floatatom 460 280 5 0 0 0 - - -, f 5;
#X msg 1302 623 0;
#X floatatom 107 280 5 0 0 0 - - -, f 5;
#X floatatom 151 279 5 0 0 0 - - -, f 5;
#X floatatom 197 280 5 0 0 0 - - -, f 5;
#X floatatom 242 280 5 0 0 0 - - -, f 5;
#X floatatom 543 280 5 0 0 0 - - -, f 5;
#X floatatom 588 280 5 0 0 0 - - -, f 5;
#X floatatom 632 280 5 0 0 0 - - -, f 5;
#X floatatom 677 280 5 0 0 0 - - -, f 5;
#X obj 1172 38 r mesh_pos;
#X obj 1141 398 s mesh_cutoff;
#X obj 1108 341 hsl 128 15 20 5000 1 0 empty empty mesh/modes\ cutoff
-2 -8 0 10 -262144 -1 -1 0 1;
#X floatatom 1108 361 8 0 0 0 - - -, f 8;
#X obj 951 26 loadbang;
#X floatatom 762 137 5 0 0 0 - - -, f 5;
#X floatatom 926 137 5 0 0 0 - - -, f 5;
#X floatatom 764 259 7 0 0 0 - - -, f 7;
#X floatatom 928 261 5 0 0 0 - - -, f 5;
#X floatatom 1086 261 5 0 0 0 - - -, f 5;
#X obj 67 1776 r mesh_fine_gain;
#N canvas 0 50 736 430 control_mesh_fine_gain 0;
#X floatatom 244 216 5 0 0 0 - - -, f 5;
#X obj 246 153 spigot;
#X obj 22 133 outlet;
#X floatatom 283 97 3 0 0 0 - - -, f 3;
#X floatatom 246 96 3 0 0 0 - - -, f 3;
#X obj 248 64 ctlin;
#X obj 328 88 inlet;
#X text 331 66 midi cc;
#X obj 22 62 inlet;
#X text 21 38 direct input;
#X obj 280 128 == 69;
#X obj 246 177 / 127;
#X msg 22 100 fine-gain-g \$1;
#X text 250 41 midi \, unused;
#X connect 1 0 11 0;
#X connect 3 0 10 0;
#X connect 4 0 1 0;
#X connect 5 0 4 0;
#X connect 5 1 3 0;