synthesizer 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +11 -0
- data/.travis.yml +7 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +21 -0
- data/README.md +39 -0
- data/Rakefile +10 -0
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/examples/adsr.ipynb +90 -0
- data/examples/curves.ipynb +105 -0
- data/examples/mono.rb +85 -0
- data/examples/poly.rb +79 -0
- data/examples/shapes.ipynb +116 -0
- data/lib/audio_stream/audio_input_synth.rb +26 -0
- data/lib/synthesizer.rb +22 -0
- data/lib/synthesizer/amplifier.rb +27 -0
- data/lib/synthesizer/modulation.rb +4 -0
- data/lib/synthesizer/modulation/adsr.rb +136 -0
- data/lib/synthesizer/modulation/curve.rb +9 -0
- data/lib/synthesizer/modulation/glide.rb +72 -0
- data/lib/synthesizer/modulation/lfo.rb +64 -0
- data/lib/synthesizer/modulation_value.rb +83 -0
- data/lib/synthesizer/mono.rb +76 -0
- data/lib/synthesizer/note.rb +40 -0
- data/lib/synthesizer/note_perform.rb +39 -0
- data/lib/synthesizer/oscillator.rb +41 -0
- data/lib/synthesizer/poly.rb +62 -0
- data/lib/synthesizer/processor.rb +10 -0
- data/lib/synthesizer/processor/high.rb +63 -0
- data/lib/synthesizer/processor/low.rb +63 -0
- data/lib/synthesizer/quality.rb +6 -0
- data/lib/synthesizer/shape.rb +35 -0
- data/lib/synthesizer/shape_pos.rb +29 -0
- data/lib/synthesizer/unison.rb +51 -0
- data/lib/synthesizer/utils.rb +45 -0
- data/lib/synthesizer/version.rb +3 -0
- data/synthesizer.gemspec +39 -0
- metadata +209 -0
@@ -0,0 +1,116 @@
|
|
1
|
+
{
|
2
|
+
"cells": [
|
3
|
+
{
|
4
|
+
"cell_type": "code",
|
5
|
+
"execution_count": 2,
|
6
|
+
"metadata": {},
|
7
|
+
"outputs": [
|
8
|
+
{
|
9
|
+
"data": {
|
10
|
+
"text/html": [
|
11
|
+
"\n",
|
12
|
+
" <script>\n",
|
13
|
+
" requirejs.config({paths: { 'plotly': ['https://cdn.plot.ly/plotly-latest.min'] }})\n",
|
14
|
+
" </script>\n",
|
15
|
+
"\n",
|
16
|
+
"\n",
|
17
|
+
"<div id=\"e5d9f583-7308-4775-b496-c3848bcb3384\" style=\"height: 100%; width: 100%;\"></div>\n",
|
18
|
+
"\n",
|
19
|
+
"<script>\n",
|
20
|
+
" require(['plotly'], function(Plotly) { \n",
|
21
|
+
"Plotly.newPlot(\n",
|
22
|
+
" 'e5d9f583-7308-4775-b496-c3848bcb3384',\n",
|
23
|
+
" [{\"x\":[0,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],\"y\":[0.06264832417874369,0.1250505236945281,0.18696144082725336,0.2481378479437379,0.3083394030591003,0.3673295940613788,0.42487666788983836,0.4807545410165316,0.5347436876541295,0.5866320022005455,0.6362156325320928,0.6832997808714386,0.7276994690840093,0.7692402653962486,0.8077589696806922,0.8431042546155973,0.8751372602002243,0.9037321392901133,0.9287765520091285,0.9501721070958866,0.9678347484506664,0.9816950853641806,0.991698665130853,0.9978061869755915,0.9999936564536084,0.9982524797167028,0.992589497275665,0.9830269571261583,0.969602427343661,0.9523686484908523,0.9313933264172864,0.9067588662653752,0.878562048727684,0.8469136498274179,0.811938005715857,0.773772524196507,0.7325671448950293,0.688483750195759,0.6416955292590559,0.5923862976180484,0.5407497750278535,0.48698882440436786,0.43131465484258347,0.3739459918455135,0.31510821802362127,0.2550324876406651,0.19395481848461218,0.13211516463136846,0.06975647374412641,0.007123732611892247,-0.055536995323039316,-0.11797953666742966,-0.17995857521140174,-0.24123061569515172,-0.30155494042174913,-0.360694554957803,-0.41841711920665464,-0.4744958601962072,-0.5287104629953566,-0.5808479362589023,-0.6307034490004961,-0.6780811353062289,-0.7227948638273908,-0.76466896902933,-0.8035389413235665,-0.8392520733718676,-0.8716680600231558,-0.9006595495263083,-0.9261126438533073,-0.9479273461671313,-0.9660179536764466,-0.980313394333687,-0.9907575060537568,-0.9973092573563939,-0.999942908565361,-0.9986481129311697,-0.9934299572800558,-0.9843089420295122,-0.9713209006488905,-0.9545168588814844,-0.9339628342811637,-0.9097395768511175,-0.8819422518036468,-0.8506800656873403,-0.8160758373504615,-0.7782655154260834,-0.7373976442346157,-0.6936327802020255,-0.6471428610864344,-0.598110530491217,-0.546728420318345,-0.49319839398099236,-0.43773075334857514,-0.3805434125398613,-0.32186104181006747,-0.26191418489530965,-0.20093835328207885,-0.13917310096006763,-0.07686108329331846,-0.014247103707104703,0.04842284806422373,0.11090256239000881,0.1729465770199531,0.23431114142458104,0.2947551744109026,0.3540412112511445,0.4119363366035666,0.4682130995602444,0.5226504072268886,0.5750343933241125,0.625159258397714,0.672828078337052,0.7178535780251124,0.7600588670808597,0.7992781348033668,0.835357301587532,0.8681546242521777,0.8975412529023916,0.9234017371383938,0.9456344796221863,0.9641521352200848,0.9788819541530244,0.9897660678065149,0.9967617160773984,0.9998414153642309,0.9989930665413147,0.9942200024921843,0.9855409750158026,0.9729900811569105,0.9566166292499501,0.9364849452028347,0.912674119781613,0.8852776978888562,0.8544033110565005,0.820172254596957,0.7827190110737137,0.7421907219635737,0.6987466095861797,0.6525573515718878,0.6038044103254797,0.5526793201200546,0.4993829346218631,0.4441246378022972,0.38712152133712957,0.3285975317247181,0.268782590473852,0.20791169081776084,0.1462239745029878,0.08396179228010156,0.021369751787304794,-0.041306243432537484,-0.10381996000604198,-0.16592580209926466,-0.22737977628295955,-0.28794045010251645,-0.3473699005866874,-0.4054346489686911,-0.4619065779475002,-0.5165638278857074,-0.5691916684230731,-0.6195833420814962,-0.6675408765471458,-0.7128758624385838,-0.7554101935052605,-0.794976766348396,-0.831420136915287,-0.8645971311878672,-0.8943774076663356,-0.9206439694380514,-0.9432936238199242,-0.9622373877685281,-0.9774008374652197,-0.9887244007028437,-0.996163590925345,-0.9996891820008162,-0.9992873230413597,-0.9949595928186703,-0.9867229935615612,-0.9746098841597979,-0.9586678530366614,-0.9389595311896851,-0.9155623461340605,-0.888568217715394,-0.8580831969868614,-0.8242270495695003,-0.7871327851324659,-0.7469461348417854,-0.7038249788305359,-0.6579387259397156,-0.6094676481666236,-0.5586021724354711,-0.5055421324726126,-0.45049598372555716,-0.39367998441007296,-0.33531734590276796,-0.27563735581700344,-0.214874477207262,-0.15326742744091962,-0.0910582403562046,-0.028491315390848104,0.03418754258292727,0.09673208894492658,0.15889660674110198,0.2204368720246652,0.2811111133316561,0.34068096152151495,0.39891238625104486,0.4555766154026677,0.5104510338548328,0.5633200580636295,0.6139759830196267,0.6622197982525507,0.707861969677975,0.7507231842144073,0.7906350542454174,0.8274407791592056,0.8609957613666404,0.8911681743776332,0.917839480704066,0.9409048975545964,0.9602738084917902,0.9758701194343005,0.9876325576054895,0.9955149122540178,0.9994862162006888,0.9995308674983127,0.995648690726625,0.9878549376814562,0.9761802274554408,0.9606704261456717,0.9413864666608904,0.9184041093361243,0.8918136442952469,0.861719536730774,0.8282400164944765,0.7915066136111754,0.7516636415405281,0.7088676302169064,0.6632867110947601,0.6150999566154255,0.564496676690392,0.5116756749649229,0.4568444677839033,0.400218468928372,0.34202014332561553,0.2824781330576296,0.22182635910157106,0.16030310233116643,0.09815006738952108,0.035611433111064225,-0.02706710677679009,-0.08963930890350012,-0.15185934766461173,-0.2134827809897259,-0.2742675106749982,-0.3339747335073663,-0.39236987944383867,-0.44922353316006025,-0.5043123353476607,-0.5574198602195314,-0.6083374657755762,-0.656865113488495,-0.7028121541893949,-0.7459980770656558,-0.7862532188285695,-0.8234194302645867,-0.8573506975515852,-0.8879137158991414,-0.9149884132592281,-0.9384684220497923,-0.9582614970380094,-0.9742898777414704,-0.9864905939235369,-0.9948157129826994,-0.9992325282640006,-0.9997236875527291,-0.9962872612455639,-0.9889367499313508,-0.9777010313517301,-0.9626242469499838,-0.9437656284538246,-0.9211992651734164,-0.8950138129288354,-0.8653121457505171,-0.8322109517210116,-0.7958402745458943,-0.7563430026547986,-0.7138743078397833,-0.6686010356363735,-0.6207010498423408,-0.5703625337493137,-0.5177832508325304,-0.4631697678031738,-0.4067366430756862,-0.3487055838383405,-0.2893045750385841,-0.22876698370518198,-0.16733064212587995,-0.1052369134825877,-0.042729743614784835],\"name\":\"Sine\"},{\"x\":[0,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],\"y\":[0.01995464852607709,0.03990929705215418,0.05986394557823127,0.07981859410430836,0.09977324263038545,0.11972789115646254,0.13968253968253963,0.15963718820861672,0.1795918367346938,0.1995464852607709,0.219501133786848,0.23945578231292508,0.25941043083900217,0.27936507936507926,0.29931972789115635,0.31927437641723344,0.33922902494331053,0.3591836734693876,0.3791383219954647,0.3990929705215418,0.4190476190476189,0.439002267573696,0.45895691609977307,0.47891156462585016,0.49886621315192725,0.5188208616780043,0.5387755102040814,0.5587301587301585,0.5786848072562356,0.5986394557823127,0.6185941043083898,0.6385487528344669,0.658503401360544,0.6784580498866211,0.6984126984126982,0.7183673469387752,0.7383219954648523,0.7582766439909294,0.7782312925170065,0.7981859410430836,0.8181405895691607,0.8380952380952378,0.8580498866213149,0.878004535147392,0.897959183673469,0.9179138321995461,0.9378684807256232,0.9578231292517003,0.9777777777777774,0.9977324263038545,-0.982312925170068,-0.9623582766439913,-0.9424036281179138,-0.9224489795918371,-0.9024943310657596,-0.882539682539683,-0.8625850340136054,-0.8426303854875288,-0.8226757369614512,-0.8027210884353746,-0.7827664399092971,-0.7628117913832204,-0.7428571428571429,-0.7229024943310662,-0.7029478458049887,-0.6829931972789121,-0.6630385487528345,-0.6430839002267579,-0.6231292517006803,-0.6031746031746037,-0.5832199546485262,-0.5632653061224495,-0.543310657596372,-0.5233560090702953,-0.5034013605442178,-0.48344671201814116,-0.4634920634920636,-0.443537414965987,-0.42358276643990944,-0.4036281179138328,-0.38367346938775526,-0.3637188208616786,-0.3437641723356011,-0.32380952380952444,-0.3038548752834469,-0.28390022675737026,-0.2639455782312927,-0.24399092970521608,-0.22403628117913854,-0.2040816326530619,-0.18412698412698436,-0.16417233560090772,-0.14421768707483018,-0.12426303854875353,-0.104308390022676,-0.08435374149659935,-0.06439909297052182,-0.044444444444445175,-0.02448979591836764,-0.004535147392290995,0.01541950113378654,0.03537414965986363,0.05532879818594072,0.07528344671201781,0.0952380952380949,0.11519274376417199,0.13514739229024908,0.15510204081632617,0.17505668934240326,0.19501133786848035,0.21496598639455744,0.23492063492063453,0.2548752834467116,0.2748299319727887,0.2947845804988658,0.3147392290249429,0.33469387755102,0.35464852607709707,0.37460317460317416,0.39455782312925125,0.41451247165532834,0.43446712018140543,0.4544217687074825,0.4743764172335596,0.4943310657596367,0.5142857142857138,0.5342403628117909,0.554195011337868,0.5741496598639451,0.5941043083900222,0.6140589569160992,0.6340136054421763,0.6539682539682534,0.6739229024943305,0.6938775510204076,0.7138321995464847,0.7337868480725618,0.7537414965986389,0.773696145124716,0.793650793650793,0.8136054421768701,0.8335600907029472,0.8535147392290243,0.8734693877551014,0.8934240362811785,0.9133786848072556,0.9333333333333327,0.9532879818594098,0.9732426303854869,0.993197278911564,-0.986848072562359,-0.9668934240362823,-0.9469387755102048,-0.9269841269841272,-0.9070294784580506,-0.887074829931974,-0.8671201814058964,-0.8471655328798189,-0.8272108843537422,-0.8072562358276656,-0.7873015873015881,-0.7673469387755105,-0.7473922902494339,-0.7274376417233572,-0.7074829931972797,-0.6875283446712022,-0.6675736961451255,-0.6476190476190489,-0.6276643990929713,-0.6077097505668938,-0.5877551020408172,-0.5678004535147405,-0.547845804988663,-0.5278911564625854,-0.5079365079365088,-0.48798185941043215,-0.4680272108843546,-0.4480725623582771,-0.42811791383220044,-0.4081632653061238,-0.38820861678004626,-0.3682539682539687,-0.3482993197278921,-0.32834467120181543,-0.3083900226757379,-0.28843537414966036,-0.2684807256235837,-0.24852607709750707,-0.22857142857142954,-0.208616780045352,-0.18866213151927536,-0.1687074829931987,-0.14875283446712118,-0.12879818594104364,-0.108843537414967,-0.08888888888889035,-0.06893424036281282,-0.04897959183673528,-0.029024943310658635,-0.00907029478458199,0.010884353741495545,0.03083900226757308,0.05079365079365061,0.07074829931972815,0.09070294784580568,0.11065759637188322,0.13061224489796075,0.15056689342403828,0.17052154195011582,0.19047619047619335,0.2104308390022709,0.23038548752834842,0.25034013605442595,0.2702947845805035,0.290249433106581,0.31020408163265856,0.3301587301587361,0.3501133786848136,0.37006802721089116,0.3900226757369687,0.40997732426304623,0.42993197278912376,0.4498866213152013,0.46984126984127883,0.48979591836735636,0.5097505668934339,0.5297052154195114,0.549659863945589,0.5696145124716665,0.589569160997744,0.6095238095238216,0.6294784580498991,0.6494331065759766,0.6693877551020542,0.6893424036281317,0.7092970521542092,0.7292517006802868,0.7492063492063643,0.7691609977324418,0.7891156462585194,0.8090702947845969,0.8290249433106744,0.848979591836752,0.8689342403628295,0.888888888888907,0.9088435374149846,0.9287981859410621,0.9487528344671396,0.9687074829932172,0.9886621315192947,-0.9913832199546277,-0.9714285714285502,-0.9514739229024727,-0.9315192743763951,-0.9115646258503176,-0.8916099773242401,-0.8716553287981625,-0.851700680272085,-0.8317460317460075,-0.8117913832199299,-0.7918367346938524,-0.7718820861677749,-0.7519274376416973,-0.7319727891156198,-0.7120181405895423,-0.6920634920634647,-0.6721088435373872,-0.6521541950113097,-0.6321995464852321,-0.6122448979591546,-0.5922902494330771,-0.5723356009069995,-0.552380952380922,-0.5324263038548445,-0.5124716553287669,-0.4925170068026894,-0.47256235827661186,-0.4526077097505343,-0.4326530612244568,-0.41269841269837926,-0.3927437641723017,-0.3727891156462242,-0.35283446712014666,-0.3328798185940691,-0.3129251700679916,-0.29297052154191405,-0.2730158730158365,-0.253061224489759,-0.23310657596368145,-0.21315192743760392,-0.19319727891152638,-0.17324263038544885,-0.15328798185937131,-0.13333333333329378,-0.11337868480721625,-0.09342403628113871,-0.07346938775506118,-0.05351473922898364,-0.03356009070290611,-0.013605442176828575],\"name\":\"Sawtooth\"},{\"x\":[0,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],\"y\":[1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0],\"name\":\"Square\"},{\"x\":[0,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],\"y\":[0.039909297052154194,0.07981859410430839,0.11972789115646258,0.15963718820861678,0.19954648526077096,0.23945578231292514,0.2793650793650793,0.3192743764172335,0.3591836734693877,0.39909297052154186,0.43900226757369604,0.4789115646258502,0.5188208616780045,0.5587301587301586,0.5986394557823128,0.638548752834467,0.6784580498866212,0.7183673469387754,0.7582766439909295,0.7981859410430837,0.8380952380952379,0.8780045351473921,0.9179138321995463,0.9578231292517004,0.9977324263038546,0.9623582766439911,0.9224489795918369,0.8825396825396827,0.8426303854875286,0.8027210884353744,0.7628117913832202,0.722902494331066,0.6829931972789118,0.6430839002267577,0.6031746031746035,0.5632653061224493,0.5233560090702951,0.48344671201814093,0.44353741496598675,0.4036281179138326,0.3637188208616784,0.3238095238095242,0.28390022675737003,0.24399092970521585,0.20408163265306167,0.1641723356009075,0.12426303854875331,0.08435374149659913,0.04444444444444495,0.004535147392290773,-0.03537414965986363,-0.07528344671201781,-0.11519274376417199,-0.15510204081632617,-0.19501133786848035,-0.23492063492063453,-0.2748299319727887,-0.3147392290249429,-0.35464852607709707,-0.39455782312925125,-0.43446712018140543,-0.4743764172335596,-0.5142857142857138,-0.554195011337868,-0.5941043083900222,-0.6340136054421763,-0.6739229024943305,-0.7138321995464847,-0.7537414965986389,-0.793650793650793,-0.8335600907029472,-0.8734693877551014,-0.9133786848072556,-0.9532879818594098,-0.993197278911564,-0.9668934240362819,-0.9269841269841277,-0.8870748299319735,-0.8471655328798193,-0.8072562358276651,-0.767346938775511,-0.7274376417233568,-0.6875283446712026,-0.6476190476190484,-0.6077097505668942,-0.5678004535147401,-0.5278911564625859,-0.4879818594104317,-0.4480725623582775,-0.40816326530612335,-0.36825396825396917,-0.328344671201815,-0.2884353741496608,-0.24852607709750663,-0.20861678004535245,-0.16870748299319827,-0.12879818594104409,-0.0888888888888899,-0.048979591836735725,-0.009070294784581545,0.03083900226757308,0.07074829931972726,0.11065759637188144,0.15056689342403562,0.1904761904761898,0.23038548752834398,0.27029478458049816,0.31020408163265234,0.3501133786848065,0.3900226757369607,0.4299319727891149,0.46984126984126906,0.5097505668934232,0.5496598639455774,0.5895691609977316,0.6294784580498858,0.66938775510204,0.7092970521541941,0.7492063492063483,0.7891156462585025,0.8290249433106567,0.8689342403628109,0.908843537414965,0.9487528344671192,0.9886621315192734,0.9714285714285724,0.9315192743764182,0.8916099773242641,0.8517006802721099,0.8117913832199557,0.7718820861678015,0.7319727891156473,0.6920634920634932,0.652154195011339,0.6122448979591848,0.5723356009070306,0.5324263038548764,0.49251700680272226,0.4526077097505681,0.4126984126984139,0.3727891156462597,0.33287981859410554,0.29297052154195136,0.2530612244897972,0.213151927437643,0.17324263038548882,0.13333333333333464,0.09342403628118046,0.053514739229026276,0.013605442176872096,-0.026303854875282084,-0.06621315192743626,-0.10612244897959044,-0.14603174603174462,-0.1859410430838988,-0.22585034013605298,-0.26575963718820717,-0.30566893424036135,-0.3455782312925155,-0.3854875283446697,-0.4253968253968239,-0.46530612244897807,-0.5052154195011322,-0.5451247165532864,-0.5850340136054406,-0.6249433106575948,-0.664852607709749,-0.7047619047619031,-0.7446712018140573,-0.7845804988662115,-0.8244897959183657,-0.8643990929705199,-0.904308390022674,-0.9442176870748282,-0.9841269841269824,-0.9759637188208634,-0.9360544217687092,-0.896145124716555,-0.8562358276644009,-0.8163265306122467,-0.7764172335600925,-0.7365079365079383,-0.6965986394557842,-0.65668934240363,-0.6167800453514758,-0.5768707482993216,-0.5369614512471674,-0.49705215419501325,-0.45714285714285907,-0.4172335600907049,-0.3773242630385507,-0.33741496598639653,-0.29750566893424235,-0.25759637188208817,-0.217687074829934,-0.1777777777777798,-0.13786848072562563,-0.09795918367347145,-0.05804988662131727,-0.01814058956916309,0.02176870748299109,0.06167800453514616,0.10158730158730123,0.1414965986394563,0.18140589569161136,0.22131519274376643,0.2612244897959215,0.30113378684807657,0.34104308390023164,0.3809523809523867,0.4208616780045418,0.46077097505669684,0.5006802721088519,0.540589569161007,0.580498866213162,0.6204081632653171,0.6603174603174722,0.7002267573696273,0.7401360544217823,0.7800453514739374,0.8199546485260925,0.8598639455782475,0.8997732426304026,0.9396825396825577,0.9795918367347127,0.9804988662131322,0.9405895691609771,0.9006802721088221,0.860770975056667,0.8208616780045119,0.7809523809523569,0.7410430839002018,0.7011337868480467,0.6612244897958917,0.6213151927437366,0.5814058956915815,0.5414965986394265,0.5015873015872714,0.4616780045351163,0.42176870748296125,0.3818594104308062,0.3419501133786511,0.30204081632649604,0.262131519274341,0.2222222222221859,0.18231292517003084,0.14240362811787577,0.1024943310657207,0.06258503401356563,0.022675736961410564,-0.017233560090744504,-0.05714285714289957,-0.09705215419505464,-0.1369614512472097,-0.17687074829936478,-0.21678004535151985,-0.2566893424036749,-0.29659863945583,-0.33650793650798505,-0.3764172335601401,-0.4163265306122952,-0.45623582766445026,-0.4961451247166053,-0.5360544217687604,-0.5759637188209155,-0.6158730158730705,-0.6557823129252256,-0.6956916099773807,-0.7356009070295357,-0.7755102040816908,-0.8154195011338459,-0.8553287981860009,-0.895238095238156,-0.9351473922903111,-0.9750566893424661,-0.9850340136053788,-0.9451247165532237,-0.9052154195010687,-0.8653061224489136,-0.8253968253967585,-0.7854875283446034,-0.7455782312924484,-0.7056689342402933,-0.6657596371881382,-0.6258503401359832,-0.5859410430838281,-0.546031746031673,-0.506122448979518,-0.4662131519273629,-0.42630385487520783,-0.38639455782305276,-0.3464852607708977,-0.30657596371874263,-0.26666666666658756,-0.2267573696144325,-0.18684807256227742,-0.14693877551012235,-0.10702947845796729,-0.06712018140581222,-0.02721088435365715],\"name\":\"Triangle\"},{\"x\":[0,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],\"y\":[-0.9800453514739229,-0.9600907029478458,-0.9401360544217687,-0.9201814058956916,-0.9002267573696145,-0.8802721088435375,-0.8603174603174604,-0.8403628117913833,-0.8204081632653062,-0.8004535147392291,-0.780498866213152,-0.7605442176870749,-0.7405895691609978,-0.7206349206349207,-0.7006802721088436,-0.6807256235827666,-0.6607709750566895,-0.6408163265306124,-0.6208616780045353,-0.6009070294784582,-0.5809523809523811,-0.560997732426304,-0.5410430839002269,-0.5210884353741498,-0.5011337868480727,-0.48117913832199555,-0.46122448979591846,-0.44126984126984137,-0.4213151927437643,-0.4013605442176872,-0.3814058956916101,-0.361451247165533,-0.3414965986394559,-0.3215419501133788,-0.30158730158730174,-0.28163265306122465,-0.26167800453514756,-0.24172335600907047,-0.22176870748299338,-0.2018140589569163,-0.1818594104308392,-0.1619047619047621,-0.14195011337868502,-0.12199546485260793,-0.10204081632653084,-0.08208616780045375,-0.062131519274376656,-0.042176870748299566,-0.022222222222222476,-0.0022675736961453863,0.017687074829931815,0.037641723356008905,0.057596371882085995,0.07755102040816308,0.09750566893424018,0.11746031746031727,0.13741496598639436,0.15736961451247145,0.17732426303854854,0.19727891156462563,0.21723356009070272,0.2371882086167798,0.2571428571428569,0.277097505668934,0.2970521541950111,0.31700680272108817,0.33696145124716526,0.35691609977324235,0.37687074829931944,0.3968253968253965,0.4167800453514736,0.4367346938775507,0.4566893424036278,0.4766439909297049,0.496598639455782,0.5165532879818591,0.5365079365079362,0.5564625850340132,0.5764172335600903,0.5963718820861674,0.6163265306122445,0.6362811791383216,0.6562358276643987,0.6761904761904758,0.6961451247165529,0.71609977324263,0.7360544217687071,0.7560090702947841,0.7759637188208612,0.7959183673469383,0.8158730158730154,0.8358276643990925,0.8557823129251696,0.8757369614512467,0.8956916099773238,0.9156462585034009,0.935600907029478,0.955555555555555,0.9755102040816321,0.9954648526077092,-0.9845804988662135,-0.9646258503401364,-0.9446712018140593,-0.9247165532879822,-0.9047619047619051,-0.884807256235828,-0.8648526077097509,-0.8448979591836738,-0.8249433106575967,-0.8049886621315196,-0.7850340136054426,-0.7650793650793655,-0.7451247165532884,-0.7251700680272113,-0.7052154195011342,-0.6852607709750571,-0.66530612244898,-0.6453514739229029,-0.6253968253968258,-0.6054421768707487,-0.5854875283446717,-0.5655328798185946,-0.5455782312925175,-0.5256235827664404,-0.5056689342403633,-0.4857142857142862,-0.4657596371882091,-0.44580498866213203,-0.42585034013605494,-0.40589569160997785,-0.38594104308390076,-0.36598639455782367,-0.3460317460317466,-0.3260770975056695,-0.3061224489795924,-0.2861678004535153,-0.2662131519274382,-0.24625850340136113,-0.22630385487528404,-0.20634920634920695,-0.18639455782312986,-0.16643990929705277,-0.14648526077097568,-0.1265306122448986,-0.1065759637188215,-0.08662131519274441,-0.06666666666666732,-0.04671201814059023,-0.026757369614513138,-0.006802721088436048,0.013151927437641042,0.03310657596371813,0.05306122448979522,0.07301587301587231,0.0929705215419494,0.11292517006802649,0.13287981859410358,0.15283446712018067,0.17278911564625776,0.19274376417233485,0.21269841269841194,0.23265306122448903,0.2526077097505661,0.2725623582766432,0.2925170068027203,0.3124716553287974,0.3324263038548745,0.3523809523809516,0.37233560090702866,0.39229024943310575,0.41224489795918284,0.43219954648525993,0.452154195011337,0.4721088435374141,0.4920634920634912,0.5120181405895683,0.5319727891156454,0.5519274376417225,0.5718820861677996,0.5918367346938767,0.6117913832199537,0.6317460317460308,0.6517006802721079,0.671655328798185,0.6916099773242621,0.7115646258503392,0.7315192743764163,0.7514739229024934,0.7714285714285705,0.7913832199546476,0.8113378684807246,0.8312925170068017,0.8512471655328788,0.8712018140589559,0.891156462585033,0.9111111111111101,0.9310657596371872,0.9510204081632643,0.9709750566893414,0.9909297052154185,-0.9891156462585045,-0.9691609977324269,-0.9492063492063494,-0.9292517006802719,-0.9092970521541943,-0.8893424036281168,-0.8693877551020393,-0.8494331065759617,-0.8294784580498842,-0.8095238095238066,-0.7895691609977291,-0.7696145124716516,-0.749659863945574,-0.7297052154194965,-0.709750566893419,-0.6897959183673414,-0.6698412698412639,-0.6498866213151864,-0.6299319727891088,-0.6099773242630313,-0.5900226757369538,-0.5700680272108762,-0.5501133786847987,-0.5301587301587212,-0.5102040816326436,-0.4902494331065661,-0.47029478458048857,-0.45034013605441103,-0.4303854875283335,-0.41043083900225596,-0.39047619047617843,-0.3705215419501009,-0.35056689342402336,-0.33061224489794583,-0.3106575963718683,-0.29070294784579076,-0.2707482993197132,-0.2507936507936357,-0.23083900226755816,-0.21088435374148062,-0.1909297052154031,-0.17097505668932556,-0.15102040816324802,-0.1310657596371705,-0.11111111111109295,-0.09115646258501542,-0.07120181405893788,-0.05124716553286035,-0.031292517006782816,-0.011337868480705282,0.008616780045372252,0.028571428571449786,0.04852607709752732,0.06848072562360485,0.08843537414968239,0.10839002267575992,0.12834467120183746,0.148299319727915,0.16825396825399253,0.18820861678007006,0.2081632653061476,0.22811791383222513,0.24807256235830266,0.2680272108843802,0.28798185941045773,0.30793650793653526,0.3278911564626128,0.34784580498869033,0.36780045351476787,0.3877551020408454,0.40770975056692293,0.42766439909300047,0.447619047619078,0.46757369614515554,0.48752834467123307,0.5074829931973106,0.5274376417233881,0.5473922902494657,0.5673469387755432,0.5873015873016207,0.6072562358276983,0.6272108843537758,0.6471655328798533,0.6671201814059309,0.6870748299320084,0.707029478458086,0.7269841269841635,0.746938775510241,0.7668934240363185,0.7868480725623961,0.8068027210884736,0.8267573696145512,0.8467120181406287,0.8666666666667062,0.8866213151927838,0.9065759637188613,0.9265306122449388,0.9464852607710164,0.9664399092970939,0.9863945578231714],\"name\":\"RampUp\"},{\"x\":[0,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],\"y\":[0.9800453514739229,0.9600907029478458,0.9401360544217687,0.9201814058956916,0.9002267573696145,0.8802721088435375,0.8603174603174604,0.8403628117913833,0.8204081632653062,0.8004535147392291,0.780498866213152,0.7605442176870749,0.7405895691609978,0.7206349206349207,0.7006802721088436,0.6807256235827666,0.6607709750566895,0.6408163265306124,0.6208616780045353,0.6009070294784582,0.5809523809523811,0.560997732426304,0.5410430839002269,0.5210884353741498,0.5011337868480727,0.48117913832199555,0.46122448979591846,0.44126984126984137,0.4213151927437643,0.4013605442176872,0.3814058956916101,0.361451247165533,0.3414965986394559,0.3215419501133788,0.30158730158730174,0.28163265306122465,0.26167800453514756,0.24172335600907047,0.22176870748299338,0.2018140589569163,0.1818594104308392,0.1619047619047621,0.14195011337868502,0.12199546485260793,0.10204081632653084,0.08208616780045375,0.062131519274376656,0.042176870748299566,0.022222222222222476,0.0022675736961453863,-0.017687074829931815,-0.037641723356008905,-0.057596371882085995,-0.07755102040816308,-0.09750566893424018,-0.11746031746031727,-0.13741496598639436,-0.15736961451247145,-0.17732426303854854,-0.19727891156462563,-0.21723356009070272,-0.2371882086167798,-0.2571428571428569,-0.277097505668934,-0.2970521541950111,-0.31700680272108817,-0.33696145124716526,-0.35691609977324235,-0.37687074829931944,-0.3968253968253965,-0.4167800453514736,-0.4367346938775507,-0.4566893424036278,-0.4766439909297049,-0.496598639455782,-0.5165532879818591,-0.5365079365079362,-0.5564625850340132,-0.5764172335600903,-0.5963718820861674,-0.6163265306122445,-0.6362811791383216,-0.6562358276643987,-0.6761904761904758,-0.6961451247165529,-0.71609977324263,-0.7360544217687071,-0.7560090702947841,-0.7759637188208612,-0.7959183673469383,-0.8158730158730154,-0.8358276643990925,-0.8557823129251696,-0.8757369614512467,-0.8956916099773238,-0.9156462585034009,-0.935600907029478,-0.955555555555555,-0.9755102040816321,-0.9954648526077092,0.9845804988662135,0.9646258503401364,0.9446712018140593,0.9247165532879822,0.9047619047619051,0.884807256235828,0.8648526077097509,0.8448979591836738,0.8249433106575967,0.8049886621315196,0.7850340136054426,0.7650793650793655,0.7451247165532884,0.7251700680272113,0.7052154195011342,0.6852607709750571,0.66530612244898,0.6453514739229029,0.6253968253968258,0.6054421768707487,0.5854875283446717,0.5655328798185946,0.5455782312925175,0.5256235827664404,0.5056689342403633,0.4857142857142862,0.4657596371882091,0.44580498866213203,0.42585034013605494,0.40589569160997785,0.38594104308390076,0.36598639455782367,0.3460317460317466,0.3260770975056695,0.3061224489795924,0.2861678004535153,0.2662131519274382,0.24625850340136113,0.22630385487528404,0.20634920634920695,0.18639455782312986,0.16643990929705277,0.14648526077097568,0.1265306122448986,0.1065759637188215,0.08662131519274441,0.06666666666666732,0.04671201814059023,0.026757369614513138,0.006802721088436048,-0.013151927437641042,-0.03310657596371813,-0.05306122448979522,-0.07301587301587231,-0.0929705215419494,-0.11292517006802649,-0.13287981859410358,-0.15283446712018067,-0.17278911564625776,-0.19274376417233485,-0.21269841269841194,-0.23265306122448903,-0.2526077097505661,-0.2725623582766432,-0.2925170068027203,-0.3124716553287974,-0.3324263038548745,-0.3523809523809516,-0.37233560090702866,-0.39229024943310575,-0.41224489795918284,-0.43219954648525993,-0.452154195011337,-0.4721088435374141,-0.4920634920634912,-0.5120181405895683,-0.5319727891156454,-0.5519274376417225,-0.5718820861677996,-0.5918367346938767,-0.6117913832199537,-0.6317460317460308,-0.6517006802721079,-0.671655328798185,-0.6916099773242621,-0.7115646258503392,-0.7315192743764163,-0.7514739229024934,-0.7714285714285705,-0.7913832199546476,-0.8113378684807246,-0.8312925170068017,-0.8512471655328788,-0.8712018140589559,-0.891156462585033,-0.9111111111111101,-0.9310657596371872,-0.9510204081632643,-0.9709750566893414,-0.9909297052154185,0.9891156462585045,0.9691609977324269,0.9492063492063494,0.9292517006802719,0.9092970521541943,0.8893424036281168,0.8693877551020393,0.8494331065759617,0.8294784580498842,0.8095238095238066,0.7895691609977291,0.7696145124716516,0.749659863945574,0.7297052154194965,0.709750566893419,0.6897959183673414,0.6698412698412639,0.6498866213151864,0.6299319727891088,0.6099773242630313,0.5900226757369538,0.5700680272108762,0.5501133786847987,0.5301587301587212,0.5102040816326436,0.4902494331065661,0.47029478458048857,0.45034013605441103,0.4303854875283335,0.41043083900225596,0.39047619047617843,0.3705215419501009,0.35056689342402336,0.33061224489794583,0.3106575963718683,0.29070294784579076,0.2707482993197132,0.2507936507936357,0.23083900226755816,0.21088435374148062,0.1909297052154031,0.17097505668932556,0.15102040816324802,0.1310657596371705,0.11111111111109295,0.09115646258501542,0.07120181405893788,0.05124716553286035,0.031292517006782816,0.011337868480705282,-0.008616780045372252,-0.028571428571449786,-0.04852607709752732,-0.06848072562360485,-0.08843537414968239,-0.10839002267575992,-0.12834467120183746,-0.148299319727915,-0.16825396825399253,-0.18820861678007006,-0.2081632653061476,-0.22811791383222513,-0.24807256235830266,-0.2680272108843802,-0.28798185941045773,-0.30793650793653526,-0.3278911564626128,-0.34784580498869033,-0.36780045351476787,-0.3877551020408454,-0.40770975056692293,-0.42766439909300047,-0.447619047619078,-0.46757369614515554,-0.48752834467123307,-0.5074829931973106,-0.5274376417233881,-0.5473922902494657,-0.5673469387755432,-0.5873015873016207,-0.6072562358276983,-0.6272108843537758,-0.6471655328798533,-0.6671201814059309,-0.6870748299320084,-0.707029478458086,-0.7269841269841635,-0.746938775510241,-0.7668934240363185,-0.7868480725623961,-0.8068027210884736,-0.8267573696145512,-0.8467120181406287,-0.8666666666667062,-0.8866213151927838,-0.9065759637188613,-0.9265306122449388,-0.9464852607710164,-0.9664399092970939,-0.9863945578231714],\"name\":\"RampDown\"}],\n",
|
24
|
+
" {},\n",
|
25
|
+
" {\"linkText\":\"Export to plot.ly\",\"showLink\":true}\n",
|
26
|
+
")\n",
|
27
|
+
"\n",
|
28
|
+
"window.addEventListener('resize', function() {\n",
|
29
|
+
" Plotly.Plots.resize(document.getElementById('e5d9f583-7308-4775-b496-c3848bcb3384'))\n",
|
30
|
+
"})\n",
|
31
|
+
" }) \n",
|
32
|
+
"</script>"
|
33
|
+
],
|
34
|
+
"text/plain": [
|
35
|
+
"#<Plotly::Offline::HTML:0x00007fd741c63868 @id=\"e5d9f583-7308-4775-b496-c3848bcb3384\", @data=[{:x=>[0, 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], :y=>[0.06264832417874369, 0.1250505236945281, 0.18696144082725336, 0.2481378479437379, 0.3083394030591003, 0.3673295940613788, 0.42487666788983836, 0.4807545410165316, 0.5347436876541295, 0.5866320022005455, 0.6362156325320928, 0.6832997808714386, 0.7276994690840093, 0.7692402653962486, 0.8077589696806922, 0.8431042546155973, 0.8751372602002243, 0.9037321392901133, 0.9287765520091285, 0.9501721070958866, 0.9678347484506664, 0.9816950853641806, 0.991698665130853, 0.9978061869755915, 0.9999936564536084, 0.9982524797167028, 0.992589497275665, 0.9830269571261583, 0.969602427343661, 0.9523686484908523, 0.9313933264172864, 0.9067588662653752, 0.878562048727684, 0.8469136498274179, 0.811938005715857, 0.773772524196507, 0.7325671448950293, 0.688483750195759, 0.6416955292590559, 0.5923862976180484, 0.5407497750278535, 0.48698882440436786, 0.43131465484258347, 0.3739459918455135, 0.31510821802362127, 0.2550324876406651, 0.19395481848461218, 0.13211516463136846, 0.06975647374412641, 0.007123732611892247, -0.055536995323039316, -0.11797953666742966, -0.17995857521140174, -0.24123061569515172, -0.30155494042174913, -0.360694554957803, -0.41841711920665464, -0.4744958601962072, -0.5287104629953566, -0.5808479362589023, -0.6307034490004961, -0.6780811353062289, -0.7227948638273908, -0.76466896902933, -0.8035389413235665, -0.8392520733718676, -0.8716680600231558, -0.9006595495263083, -0.9261126438533073, -0.9479273461671313, -0.9660179536764466, -0.980313394333687, -0.9907575060537568, -0.9973092573563939, -0.999942908565361, -0.9986481129311697, -0.9934299572800558, -0.9843089420295122, -0.9713209006488905, -0.9545168588814844, -0.9339628342811637, -0.9097395768511175, -0.8819422518036468, -0.8506800656873403, -0.8160758373504615, -0.7782655154260834, -0.7373976442346157, -0.6936327802020255, -0.6471428610864344, -0.598110530491217, -0.546728420318345, -0.49319839398099236, -0.43773075334857514, -0.3805434125398613, -0.32186104181006747, -0.26191418489530965, -0.20093835328207885, -0.13917310096006763, -0.07686108329331846, -0.014247103707104703, 0.04842284806422373, 0.11090256239000881, 0.1729465770199531, 0.23431114142458104, 0.2947551744109026, 0.3540412112511445, 0.4119363366035666, 0.4682130995602444, 0.5226504072268886, 0.5750343933241125, 0.625159258397714, 0.672828078337052, 0.7178535780251124, 0.7600588670808597, 0.7992781348033668, 0.835357301587532, 0.8681546242521777, 0.8975412529023916, 0.9234017371383938, 0.9456344796221863, 0.9641521352200848, 0.9788819541530244, 0.9897660678065149, 0.9967617160773984, 0.9998414153642309, 0.9989930665413147, 0.9942200024921843, 0.9855409750158026, 0.9729900811569105, 0.9566166292499501, 0.9364849452028347, 0.912674119781613, 0.8852776978888562, 0.8544033110565005, 0.820172254596957, 0.7827190110737137, 0.7421907219635737, 0.6987466095861797, 0.6525573515718878, 0.6038044103254797, 0.5526793201200546, 0.4993829346218631, 0.4441246378022972, 0.38712152133712957, 0.3285975317247181, 0.268782590473852, 0.20791169081776084, 0.1462239745029878, 0.08396179228010156, 0.021369751787304794, -0.041306243432537484, -0.10381996000604198, -0.16592580209926466, -0.22737977628295955, -0.28794045010251645, -0.3473699005866874, -0.4054346489686911, -0.4619065779475002, -0.5165638278857074, -0.5691916684230731, -0.6195833420814962, -0.6675408765471458, -0.7128758624385838, -0.7554101935052605, -0.794976766348396, -0.831420136915287, -0.8645971311878672, -0.8943774076663356, -0.9206439694380514, -0.9432936238199242, -0.9622373877685281, -0.9774008374652197, -0.9887244007028437, -0.996163590925345, -0.9996891820008162, -0.9992873230413597, -0.9949595928186703, -0.9867229935615612, -0.9746098841597979, -0.9586678530366614, -0.9389595311896851, -0.9155623461340605, -0.888568217715394, -0.8580831969868614, -0.8242270495695003, -0.7871327851324659, -0.7469461348417854, -0.7038249788305359, -0.6579387259397156, -0.6094676481666236, -0.5586021724354711, -0.5055421324726126, -0.45049598372555716, -0.39367998441007296, -0.33531734590276796, -0.27563735581700344, -0.214874477207262, -0.15326742744091962, -0.0910582403562046, -0.028491315390848104, 0.03418754258292727, 0.09673208894492658, 0.15889660674110198, 0.2204368720246652, 0.2811111133316561, 0.34068096152151495, 0.39891238625104486, 0.4555766154026677, 0.5104510338548328, 0.5633200580636295, 0.6139759830196267, 0.6622197982525507, 0.707861969677975, 0.7507231842144073, 0.7906350542454174, 0.8274407791592056, 0.8609957613666404, 0.8911681743776332, 0.917839480704066, 0.9409048975545964, 0.9602738084917902, 0.9758701194343005, 0.9876325576054895, 0.9955149122540178, 0.9994862162006888, 0.9995308674983127, 0.995648690726625, 0.9878549376814562, 0.9761802274554408, 0.9606704261456717, 0.9413864666608904, 0.9184041093361243, 0.8918136442952469, 0.861719536730774, 0.8282400164944765, 0.7915066136111754, 0.7516636415405281, 0.7088676302169064, 0.6632867110947601, 0.6150999566154255, 0.564496676690392, 0.5116756749649229, 0.4568444677839033, 0.400218468928372, 0.34202014332561553, 0.2824781330576296, 0.22182635910157106, 0.16030310233116643, 0.09815006738952108, 0.035611433111064225, -0.02706710677679009, -0.08963930890350012, -0.15185934766461173, -0.2134827809897259, -0.2742675106749982, -0.3339747335073663, -0.39236987944383867, -0.44922353316006025, -0.5043123353476607, -0.5574198602195314, -0.6083374657755762, -0.656865113488495, -0.7028121541893949, -0.7459980770656558, -0.7862532188285695, -0.8234194302645867, -0.8573506975515852, -0.8879137158991414, -0.9149884132592281, -0.9384684220497923, -0.9582614970380094, -0.9742898777414704, -0.9864905939235369, -0.9948157129826994, -0.9992325282640006, -0.9997236875527291, -0.9962872612455639, -0.9889367499313508, -0.9777010313517301, -0.9626242469499838, -0.9437656284538246, -0.9211992651734164, -0.8950138129288354, -0.8653121457505171, -0.8322109517210116, -0.7958402745458943, -0.7563430026547986, -0.7138743078397833, -0.6686010356363735, -0.6207010498423408, -0.5703625337493137, -0.5177832508325304, -0.4631697678031738, -0.4067366430756862, -0.3487055838383405, -0.2893045750385841, -0.22876698370518198, -0.16733064212587995, -0.1052369134825877, -0.042729743614784835], :name=>\"Sine\"}, {:x=>[0, 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], :y=>[0.01995464852607709, 0.03990929705215418, 0.05986394557823127, 0.07981859410430836, 0.09977324263038545, 0.11972789115646254, 0.13968253968253963, 0.15963718820861672, 0.1795918367346938, 0.1995464852607709, 0.219501133786848, 0.23945578231292508, 0.25941043083900217, 0.27936507936507926, 0.29931972789115635, 0.31927437641723344, 0.33922902494331053, 0.3591836734693876, 0.3791383219954647, 0.3990929705215418, 0.4190476190476189, 0.439002267573696, 0.45895691609977307, 0.47891156462585016, 0.49886621315192725, 0.5188208616780043, 0.5387755102040814, 0.5587301587301585, 0.5786848072562356, 0.5986394557823127, 0.6185941043083898, 0.6385487528344669, 0.658503401360544, 0.6784580498866211, 0.6984126984126982, 0.7183673469387752, 0.7383219954648523, 0.7582766439909294, 0.7782312925170065, 0.7981859410430836, 0.8181405895691607, 0.8380952380952378, 0.8580498866213149, 0.878004535147392, 0.897959183673469, 0.9179138321995461, 0.9378684807256232, 0.9578231292517003, 0.9777777777777774, 0.9977324263038545, -0.982312925170068, -0.9623582766439913, -0.9424036281179138, -0.9224489795918371, -0.9024943310657596, -0.882539682539683, -0.8625850340136054, -0.8426303854875288, -0.8226757369614512, -0.8027210884353746, -0.7827664399092971, -0.7628117913832204, -0.7428571428571429, -0.7229024943310662, -0.7029478458049887, -0.6829931972789121, -0.6630385487528345, -0.6430839002267579, -0.6231292517006803, -0.6031746031746037, -0.5832199546485262, -0.5632653061224495, -0.543310657596372, -0.5233560090702953, -0.5034013605442178, -0.48344671201814116, -0.4634920634920636, -0.443537414965987, -0.42358276643990944, -0.4036281179138328, -0.38367346938775526, -0.3637188208616786, -0.3437641723356011, -0.32380952380952444, -0.3038548752834469, -0.28390022675737026, -0.2639455782312927, -0.24399092970521608, -0.22403628117913854, -0.2040816326530619, -0.18412698412698436, -0.16417233560090772, -0.14421768707483018, -0.12426303854875353, -0.104308390022676, -0.08435374149659935, -0.06439909297052182, -0.044444444444445175, -0.02448979591836764, -0.004535147392290995, 0.01541950113378654, 0.03537414965986363, 0.05532879818594072, 0.07528344671201781, 0.0952380952380949, 0.11519274376417199, 0.13514739229024908, 0.15510204081632617, 0.17505668934240326, 0.19501133786848035, 0.21496598639455744, 0.23492063492063453, 0.2548752834467116, 0.2748299319727887, 0.2947845804988658, 0.3147392290249429, 0.33469387755102, 0.35464852607709707, 0.37460317460317416, 0.39455782312925125, 0.41451247165532834, 0.43446712018140543, 0.4544217687074825, 0.4743764172335596, 0.4943310657596367, 0.5142857142857138, 0.5342403628117909, 0.554195011337868, 0.5741496598639451, 0.5941043083900222, 0.6140589569160992, 0.6340136054421763, 0.6539682539682534, 0.6739229024943305, 0.6938775510204076, 0.7138321995464847, 0.7337868480725618, 0.7537414965986389, 0.773696145124716, 0.793650793650793, 0.8136054421768701, 0.8335600907029472, 0.8535147392290243, 0.8734693877551014, 0.8934240362811785, 0.9133786848072556, 0.9333333333333327, 0.9532879818594098, 0.9732426303854869, 0.993197278911564, -0.986848072562359, -0.9668934240362823, -0.9469387755102048, -0.9269841269841272, -0.9070294784580506, -0.887074829931974, -0.8671201814058964, -0.8471655328798189, -0.8272108843537422, -0.8072562358276656, -0.7873015873015881, -0.7673469387755105, -0.7473922902494339, -0.7274376417233572, -0.7074829931972797, -0.6875283446712022, -0.6675736961451255, -0.6476190476190489, -0.6276643990929713, -0.6077097505668938, -0.5877551020408172, -0.5678004535147405, -0.547845804988663, -0.5278911564625854, -0.5079365079365088, -0.48798185941043215, -0.4680272108843546, -0.4480725623582771, -0.42811791383220044, -0.4081632653061238, -0.38820861678004626, -0.3682539682539687, -0.3482993197278921, -0.32834467120181543, -0.3083900226757379, -0.28843537414966036, -0.2684807256235837, -0.24852607709750707, -0.22857142857142954, -0.208616780045352, -0.18866213151927536, -0.1687074829931987, -0.14875283446712118, -0.12879818594104364, -0.108843537414967, -0.08888888888889035, -0.06893424036281282, -0.04897959183673528, -0.029024943310658635, -0.00907029478458199, 0.010884353741495545, 0.03083900226757308, 0.05079365079365061, 0.07074829931972815, 0.09070294784580568, 0.11065759637188322, 0.13061224489796075, 0.15056689342403828, 0.17052154195011582, 0.19047619047619335, 0.2104308390022709, 0.23038548752834842, 0.25034013605442595, 0.2702947845805035, 0.290249433106581, 0.31020408163265856, 0.3301587301587361, 0.3501133786848136, 0.37006802721089116, 0.3900226757369687, 0.40997732426304623, 0.42993197278912376, 0.4498866213152013, 0.46984126984127883, 0.48979591836735636, 0.5097505668934339, 0.5297052154195114, 0.549659863945589, 0.5696145124716665, 0.589569160997744, 0.6095238095238216, 0.6294784580498991, 0.6494331065759766, 0.6693877551020542, 0.6893424036281317, 0.7092970521542092, 0.7292517006802868, 0.7492063492063643, 0.7691609977324418, 0.7891156462585194, 0.8090702947845969, 0.8290249433106744, 0.848979591836752, 0.8689342403628295, 0.888888888888907, 0.9088435374149846, 0.9287981859410621, 0.9487528344671396, 0.9687074829932172, 0.9886621315192947, -0.9913832199546277, -0.9714285714285502, -0.9514739229024727, -0.9315192743763951, -0.9115646258503176, -0.8916099773242401, -0.8716553287981625, -0.851700680272085, -0.8317460317460075, -0.8117913832199299, -0.7918367346938524, -0.7718820861677749, -0.7519274376416973, -0.7319727891156198, -0.7120181405895423, -0.6920634920634647, -0.6721088435373872, -0.6521541950113097, -0.6321995464852321, -0.6122448979591546, -0.5922902494330771, -0.5723356009069995, -0.552380952380922, -0.5324263038548445, -0.5124716553287669, -0.4925170068026894, -0.47256235827661186, -0.4526077097505343, -0.4326530612244568, -0.41269841269837926, -0.3927437641723017, -0.3727891156462242, -0.35283446712014666, -0.3328798185940691, -0.3129251700679916, -0.29297052154191405, -0.2730158730158365, -0.253061224489759, -0.23310657596368145, -0.21315192743760392, -0.19319727891152638, -0.17324263038544885, -0.15328798185937131, -0.13333333333329378, -0.11337868480721625, -0.09342403628113871, -0.07346938775506118, -0.05351473922898364, -0.03356009070290611, -0.013605442176828575], :name=>\"Sawtooth\"}, {:x=>[0, 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], :y=>[1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0], :name=>\"Square\"}, {:x=>[0, 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], :y=>[0.039909297052154194, 0.07981859410430839, 0.11972789115646258, 0.15963718820861678, 0.19954648526077096, 0.23945578231292514, 0.2793650793650793, 0.3192743764172335, 0.3591836734693877, 0.39909297052154186, 0.43900226757369604, 0.4789115646258502, 0.5188208616780045, 0.5587301587301586, 0.5986394557823128, 0.638548752834467, 0.6784580498866212, 0.7183673469387754, 0.7582766439909295, 0.7981859410430837, 0.8380952380952379, 0.8780045351473921, 0.9179138321995463, 0.9578231292517004, 0.9977324263038546, 0.9623582766439911, 0.9224489795918369, 0.8825396825396827, 0.8426303854875286, 0.8027210884353744, 0.7628117913832202, 0.722902494331066, 0.6829931972789118, 0.6430839002267577, 0.6031746031746035, 0.5632653061224493, 0.5233560090702951, 0.48344671201814093, 0.44353741496598675, 0.4036281179138326, 0.3637188208616784, 0.3238095238095242, 0.28390022675737003, 0.24399092970521585, 0.20408163265306167, 0.1641723356009075, 0.12426303854875331, 0.08435374149659913, 0.04444444444444495, 0.004535147392290773, -0.03537414965986363, -0.07528344671201781, -0.11519274376417199, -0.15510204081632617, -0.19501133786848035, -0.23492063492063453, -0.2748299319727887, -0.3147392290249429, -0.35464852607709707, -0.39455782312925125, -0.43446712018140543, -0.4743764172335596, -0.5142857142857138, -0.554195011337868, -0.5941043083900222, -0.6340136054421763, -0.6739229024943305, -0.7138321995464847, -0.7537414965986389, -0.793650793650793, -0.8335600907029472, -0.8734693877551014, -0.9133786848072556, -0.9532879818594098, -0.993197278911564, -0.9668934240362819, -0.9269841269841277, -0.8870748299319735, -0.8471655328798193, -0.8072562358276651, -0.767346938775511, -0.7274376417233568, -0.6875283446712026, -0.6476190476190484, -0.6077097505668942, -0.5678004535147401, -0.5278911564625859, -0.4879818594104317, -0.4480725623582775, -0.40816326530612335, -0.36825396825396917, -0.328344671201815, -0.2884353741496608, -0.24852607709750663, -0.20861678004535245, -0.16870748299319827, -0.12879818594104409, -0.0888888888888899, -0.048979591836735725, -0.009070294784581545, 0.03083900226757308, 0.07074829931972726, 0.11065759637188144, 0.15056689342403562, 0.1904761904761898, 0.23038548752834398, 0.27029478458049816, 0.31020408163265234, 0.3501133786848065, 0.3900226757369607, 0.4299319727891149, 0.46984126984126906, 0.5097505668934232, 0.5496598639455774, 0.5895691609977316, 0.6294784580498858, 0.66938775510204, 0.7092970521541941, 0.7492063492063483, 0.7891156462585025, 0.8290249433106567, 0.8689342403628109, 0.908843537414965, 0.9487528344671192, 0.9886621315192734, 0.9714285714285724, 0.9315192743764182, 0.8916099773242641, 0.8517006802721099, 0.8117913832199557, 0.7718820861678015, 0.7319727891156473, 0.6920634920634932, 0.652154195011339, 0.6122448979591848, 0.5723356009070306, 0.5324263038548764, 0.49251700680272226, 0.4526077097505681, 0.4126984126984139, 0.3727891156462597, 0.33287981859410554, 0.29297052154195136, 0.2530612244897972, 0.213151927437643, 0.17324263038548882, 0.13333333333333464, 0.09342403628118046, 0.053514739229026276, 0.013605442176872096, -0.026303854875282084, -0.06621315192743626, -0.10612244897959044, -0.14603174603174462, -0.1859410430838988, -0.22585034013605298, -0.26575963718820717, -0.30566893424036135, -0.3455782312925155, -0.3854875283446697, -0.4253968253968239, -0.46530612244897807, -0.5052154195011322, -0.5451247165532864, -0.5850340136054406, -0.6249433106575948, -0.664852607709749, -0.7047619047619031, -0.7446712018140573, -0.7845804988662115, -0.8244897959183657, -0.8643990929705199, -0.904308390022674, -0.9442176870748282, -0.9841269841269824, -0.9759637188208634, -0.9360544217687092, -0.896145124716555, -0.8562358276644009, -0.8163265306122467, -0.7764172335600925, -0.7365079365079383, -0.6965986394557842, -0.65668934240363, -0.6167800453514758, -0.5768707482993216, -0.5369614512471674, -0.49705215419501325, -0.45714285714285907, -0.4172335600907049, -0.3773242630385507, -0.33741496598639653, -0.29750566893424235, -0.25759637188208817, -0.217687074829934, -0.1777777777777798, -0.13786848072562563, -0.09795918367347145, -0.05804988662131727, -0.01814058956916309, 0.02176870748299109, 0.06167800453514616, 0.10158730158730123, 0.1414965986394563, 0.18140589569161136, 0.22131519274376643, 0.2612244897959215, 0.30113378684807657, 0.34104308390023164, 0.3809523809523867, 0.4208616780045418, 0.46077097505669684, 0.5006802721088519, 0.540589569161007, 0.580498866213162, 0.6204081632653171, 0.6603174603174722, 0.7002267573696273, 0.7401360544217823, 0.7800453514739374, 0.8199546485260925, 0.8598639455782475, 0.8997732426304026, 0.9396825396825577, 0.9795918367347127, 0.9804988662131322, 0.9405895691609771, 0.9006802721088221, 0.860770975056667, 0.8208616780045119, 0.7809523809523569, 0.7410430839002018, 0.7011337868480467, 0.6612244897958917, 0.6213151927437366, 0.5814058956915815, 0.5414965986394265, 0.5015873015872714, 0.4616780045351163, 0.42176870748296125, 0.3818594104308062, 0.3419501133786511, 0.30204081632649604, 0.262131519274341, 0.2222222222221859, 0.18231292517003084, 0.14240362811787577, 0.1024943310657207, 0.06258503401356563, 0.022675736961410564, -0.017233560090744504, -0.05714285714289957, -0.09705215419505464, -0.1369614512472097, -0.17687074829936478, -0.21678004535151985, -0.2566893424036749, -0.29659863945583, -0.33650793650798505, -0.3764172335601401, -0.4163265306122952, -0.45623582766445026, -0.4961451247166053, -0.5360544217687604, -0.5759637188209155, -0.6158730158730705, -0.6557823129252256, -0.6956916099773807, -0.7356009070295357, -0.7755102040816908, -0.8154195011338459, -0.8553287981860009, -0.895238095238156, -0.9351473922903111, -0.9750566893424661, -0.9850340136053788, -0.9451247165532237, -0.9052154195010687, -0.8653061224489136, -0.8253968253967585, -0.7854875283446034, -0.7455782312924484, -0.7056689342402933, -0.6657596371881382, -0.6258503401359832, -0.5859410430838281, -0.546031746031673, -0.506122448979518, -0.4662131519273629, -0.42630385487520783, -0.38639455782305276, -0.3464852607708977, -0.30657596371874263, -0.26666666666658756, -0.2267573696144325, -0.18684807256227742, -0.14693877551012235, -0.10702947845796729, -0.06712018140581222, -0.02721088435365715], :name=>\"Triangle\"}, {:x=>[0, 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], :y=>[-0.9800453514739229, -0.9600907029478458, -0.9401360544217687, -0.9201814058956916, -0.9002267573696145, -0.8802721088435375, -0.8603174603174604, -0.8403628117913833, -0.8204081632653062, -0.8004535147392291, -0.780498866213152, -0.7605442176870749, -0.7405895691609978, -0.7206349206349207, -0.7006802721088436, -0.6807256235827666, -0.6607709750566895, -0.6408163265306124, -0.6208616780045353, -0.6009070294784582, -0.5809523809523811, -0.560997732426304, -0.5410430839002269, -0.5210884353741498, -0.5011337868480727, -0.48117913832199555, -0.46122448979591846, -0.44126984126984137, -0.4213151927437643, -0.4013605442176872, -0.3814058956916101, -0.361451247165533, -0.3414965986394559, -0.3215419501133788, -0.30158730158730174, -0.28163265306122465, -0.26167800453514756, -0.24172335600907047, -0.22176870748299338, -0.2018140589569163, -0.1818594104308392, -0.1619047619047621, -0.14195011337868502, -0.12199546485260793, -0.10204081632653084, -0.08208616780045375, -0.062131519274376656, -0.042176870748299566, -0.022222222222222476, -0.0022675736961453863, 0.017687074829931815, 0.037641723356008905, 0.057596371882085995, 0.07755102040816308, 0.09750566893424018, 0.11746031746031727, 0.13741496598639436, 0.15736961451247145, 0.17732426303854854, 0.19727891156462563, 0.21723356009070272, 0.2371882086167798, 0.2571428571428569, 0.277097505668934, 0.2970521541950111, 0.31700680272108817, 0.33696145124716526, 0.35691609977324235, 0.37687074829931944, 0.3968253968253965, 0.4167800453514736, 0.4367346938775507, 0.4566893424036278, 0.4766439909297049, 0.496598639455782, 0.5165532879818591, 0.5365079365079362, 0.5564625850340132, 0.5764172335600903, 0.5963718820861674, 0.6163265306122445, 0.6362811791383216, 0.6562358276643987, 0.6761904761904758, 0.6961451247165529, 0.71609977324263, 0.7360544217687071, 0.7560090702947841, 0.7759637188208612, 0.7959183673469383, 0.8158730158730154, 0.8358276643990925, 0.8557823129251696, 0.8757369614512467, 0.8956916099773238, 0.9156462585034009, 0.935600907029478, 0.955555555555555, 0.9755102040816321, 0.9954648526077092, -0.9845804988662135, -0.9646258503401364, -0.9446712018140593, -0.9247165532879822, -0.9047619047619051, -0.884807256235828, -0.8648526077097509, -0.8448979591836738, -0.8249433106575967, -0.8049886621315196, -0.7850340136054426, -0.7650793650793655, -0.7451247165532884, -0.7251700680272113, -0.7052154195011342, -0.6852607709750571, -0.66530612244898, -0.6453514739229029, -0.6253968253968258, -0.6054421768707487, -0.5854875283446717, -0.5655328798185946, -0.5455782312925175, -0.5256235827664404, -0.5056689342403633, -0.4857142857142862, -0.4657596371882091, -0.44580498866213203, -0.42585034013605494, -0.40589569160997785, -0.38594104308390076, -0.36598639455782367, -0.3460317460317466, -0.3260770975056695, -0.3061224489795924, -0.2861678004535153, -0.2662131519274382, -0.24625850340136113, -0.22630385487528404, -0.20634920634920695, -0.18639455782312986, -0.16643990929705277, -0.14648526077097568, -0.1265306122448986, -0.1065759637188215, -0.08662131519274441, -0.06666666666666732, -0.04671201814059023, -0.026757369614513138, -0.006802721088436048, 0.013151927437641042, 0.03310657596371813, 0.05306122448979522, 0.07301587301587231, 0.0929705215419494, 0.11292517006802649, 0.13287981859410358, 0.15283446712018067, 0.17278911564625776, 0.19274376417233485, 0.21269841269841194, 0.23265306122448903, 0.2526077097505661, 0.2725623582766432, 0.2925170068027203, 0.3124716553287974, 0.3324263038548745, 0.3523809523809516, 0.37233560090702866, 0.39229024943310575, 0.41224489795918284, 0.43219954648525993, 0.452154195011337, 0.4721088435374141, 0.4920634920634912, 0.5120181405895683, 0.5319727891156454, 0.5519274376417225, 0.5718820861677996, 0.5918367346938767, 0.6117913832199537, 0.6317460317460308, 0.6517006802721079, 0.671655328798185, 0.6916099773242621, 0.7115646258503392, 0.7315192743764163, 0.7514739229024934, 0.7714285714285705, 0.7913832199546476, 0.8113378684807246, 0.8312925170068017, 0.8512471655328788, 0.8712018140589559, 0.891156462585033, 0.9111111111111101, 0.9310657596371872, 0.9510204081632643, 0.9709750566893414, 0.9909297052154185, -0.9891156462585045, -0.9691609977324269, -0.9492063492063494, -0.9292517006802719, -0.9092970521541943, -0.8893424036281168, -0.8693877551020393, -0.8494331065759617, -0.8294784580498842, -0.8095238095238066, -0.7895691609977291, -0.7696145124716516, -0.749659863945574, -0.7297052154194965, -0.709750566893419, -0.6897959183673414, -0.6698412698412639, -0.6498866213151864, -0.6299319727891088, -0.6099773242630313, -0.5900226757369538, -0.5700680272108762, -0.5501133786847987, -0.5301587301587212, -0.5102040816326436, -0.4902494331065661, -0.47029478458048857, -0.45034013605441103, -0.4303854875283335, -0.41043083900225596, -0.39047619047617843, -0.3705215419501009, -0.35056689342402336, -0.33061224489794583, -0.3106575963718683, -0.29070294784579076, -0.2707482993197132, -0.2507936507936357, -0.23083900226755816, -0.21088435374148062, -0.1909297052154031, -0.17097505668932556, -0.15102040816324802, -0.1310657596371705, -0.11111111111109295, -0.09115646258501542, -0.07120181405893788, -0.05124716553286035, -0.031292517006782816, -0.011337868480705282, 0.008616780045372252, 0.028571428571449786, 0.04852607709752732, 0.06848072562360485, 0.08843537414968239, 0.10839002267575992, 0.12834467120183746, 0.148299319727915, 0.16825396825399253, 0.18820861678007006, 0.2081632653061476, 0.22811791383222513, 0.24807256235830266, 0.2680272108843802, 0.28798185941045773, 0.30793650793653526, 0.3278911564626128, 0.34784580498869033, 0.36780045351476787, 0.3877551020408454, 0.40770975056692293, 0.42766439909300047, 0.447619047619078, 0.46757369614515554, 0.48752834467123307, 0.5074829931973106, 0.5274376417233881, 0.5473922902494657, 0.5673469387755432, 0.5873015873016207, 0.6072562358276983, 0.6272108843537758, 0.6471655328798533, 0.6671201814059309, 0.6870748299320084, 0.707029478458086, 0.7269841269841635, 0.746938775510241, 0.7668934240363185, 0.7868480725623961, 0.8068027210884736, 0.8267573696145512, 0.8467120181406287, 0.8666666666667062, 0.8866213151927838, 0.9065759637188613, 0.9265306122449388, 0.9464852607710164, 0.9664399092970939, 0.9863945578231714], :name=>\"RampUp\"}, {:x=>[0, 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], :y=>[0.9800453514739229, 0.9600907029478458, 0.9401360544217687, 0.9201814058956916, 0.9002267573696145, 0.8802721088435375, 0.8603174603174604, 0.8403628117913833, 0.8204081632653062, 0.8004535147392291, 0.780498866213152, 0.7605442176870749, 0.7405895691609978, 0.7206349206349207, 0.7006802721088436, 0.6807256235827666, 0.6607709750566895, 0.6408163265306124, 0.6208616780045353, 0.6009070294784582, 0.5809523809523811, 0.560997732426304, 0.5410430839002269, 0.5210884353741498, 0.5011337868480727, 0.48117913832199555, 0.46122448979591846, 0.44126984126984137, 0.4213151927437643, 0.4013605442176872, 0.3814058956916101, 0.361451247165533, 0.3414965986394559, 0.3215419501133788, 0.30158730158730174, 0.28163265306122465, 0.26167800453514756, 0.24172335600907047, 0.22176870748299338, 0.2018140589569163, 0.1818594104308392, 0.1619047619047621, 0.14195011337868502, 0.12199546485260793, 0.10204081632653084, 0.08208616780045375, 0.062131519274376656, 0.042176870748299566, 0.022222222222222476, 0.0022675736961453863, -0.017687074829931815, -0.037641723356008905, -0.057596371882085995, -0.07755102040816308, -0.09750566893424018, -0.11746031746031727, -0.13741496598639436, -0.15736961451247145, -0.17732426303854854, -0.19727891156462563, -0.21723356009070272, -0.2371882086167798, -0.2571428571428569, -0.277097505668934, -0.2970521541950111, -0.31700680272108817, -0.33696145124716526, -0.35691609977324235, -0.37687074829931944, -0.3968253968253965, -0.4167800453514736, -0.4367346938775507, -0.4566893424036278, -0.4766439909297049, -0.496598639455782, -0.5165532879818591, -0.5365079365079362, -0.5564625850340132, -0.5764172335600903, -0.5963718820861674, -0.6163265306122445, -0.6362811791383216, -0.6562358276643987, -0.6761904761904758, -0.6961451247165529, -0.71609977324263, -0.7360544217687071, -0.7560090702947841, -0.7759637188208612, -0.7959183673469383, -0.8158730158730154, -0.8358276643990925, -0.8557823129251696, -0.8757369614512467, -0.8956916099773238, -0.9156462585034009, -0.935600907029478, -0.955555555555555, -0.9755102040816321, -0.9954648526077092, 0.9845804988662135, 0.9646258503401364, 0.9446712018140593, 0.9247165532879822, 0.9047619047619051, 0.884807256235828, 0.8648526077097509, 0.8448979591836738, 0.8249433106575967, 0.8049886621315196, 0.7850340136054426, 0.7650793650793655, 0.7451247165532884, 0.7251700680272113, 0.7052154195011342, 0.6852607709750571, 0.66530612244898, 0.6453514739229029, 0.6253968253968258, 0.6054421768707487, 0.5854875283446717, 0.5655328798185946, 0.5455782312925175, 0.5256235827664404, 0.5056689342403633, 0.4857142857142862, 0.4657596371882091, 0.44580498866213203, 0.42585034013605494, 0.40589569160997785, 0.38594104308390076, 0.36598639455782367, 0.3460317460317466, 0.3260770975056695, 0.3061224489795924, 0.2861678004535153, 0.2662131519274382, 0.24625850340136113, 0.22630385487528404, 0.20634920634920695, 0.18639455782312986, 0.16643990929705277, 0.14648526077097568, 0.1265306122448986, 0.1065759637188215, 0.08662131519274441, 0.06666666666666732, 0.04671201814059023, 0.026757369614513138, 0.006802721088436048, -0.013151927437641042, -0.03310657596371813, -0.05306122448979522, -0.07301587301587231, -0.0929705215419494, -0.11292517006802649, -0.13287981859410358, -0.15283446712018067, -0.17278911564625776, -0.19274376417233485, -0.21269841269841194, -0.23265306122448903, -0.2526077097505661, -0.2725623582766432, -0.2925170068027203, -0.3124716553287974, -0.3324263038548745, -0.3523809523809516, -0.37233560090702866, -0.39229024943310575, -0.41224489795918284, -0.43219954648525993, -0.452154195011337, -0.4721088435374141, -0.4920634920634912, -0.5120181405895683, -0.5319727891156454, -0.5519274376417225, -0.5718820861677996, -0.5918367346938767, -0.6117913832199537, -0.6317460317460308, -0.6517006802721079, -0.671655328798185, -0.6916099773242621, -0.7115646258503392, -0.7315192743764163, -0.7514739229024934, -0.7714285714285705, -0.7913832199546476, -0.8113378684807246, -0.8312925170068017, -0.8512471655328788, -0.8712018140589559, -0.891156462585033, -0.9111111111111101, -0.9310657596371872, -0.9510204081632643, -0.9709750566893414, -0.9909297052154185, 0.9891156462585045, 0.9691609977324269, 0.9492063492063494, 0.9292517006802719, 0.9092970521541943, 0.8893424036281168, 0.8693877551020393, 0.8494331065759617, 0.8294784580498842, 0.8095238095238066, 0.7895691609977291, 0.7696145124716516, 0.749659863945574, 0.7297052154194965, 0.709750566893419, 0.6897959183673414, 0.6698412698412639, 0.6498866213151864, 0.6299319727891088, 0.6099773242630313, 0.5900226757369538, 0.5700680272108762, 0.5501133786847987, 0.5301587301587212, 0.5102040816326436, 0.4902494331065661, 0.47029478458048857, 0.45034013605441103, 0.4303854875283335, 0.41043083900225596, 0.39047619047617843, 0.3705215419501009, 0.35056689342402336, 0.33061224489794583, 0.3106575963718683, 0.29070294784579076, 0.2707482993197132, 0.2507936507936357, 0.23083900226755816, 0.21088435374148062, 0.1909297052154031, 0.17097505668932556, 0.15102040816324802, 0.1310657596371705, 0.11111111111109295, 0.09115646258501542, 0.07120181405893788, 0.05124716553286035, 0.031292517006782816, 0.011337868480705282, -0.008616780045372252, -0.028571428571449786, -0.04852607709752732, -0.06848072562360485, -0.08843537414968239, -0.10839002267575992, -0.12834467120183746, -0.148299319727915, -0.16825396825399253, -0.18820861678007006, -0.2081632653061476, -0.22811791383222513, -0.24807256235830266, -0.2680272108843802, -0.28798185941045773, -0.30793650793653526, -0.3278911564626128, -0.34784580498869033, -0.36780045351476787, -0.3877551020408454, -0.40770975056692293, -0.42766439909300047, -0.447619047619078, -0.46757369614515554, -0.48752834467123307, -0.5074829931973106, -0.5274376417233881, -0.5473922902494657, -0.5673469387755432, -0.5873015873016207, -0.6072562358276983, -0.6272108843537758, -0.6471655328798533, -0.6671201814059309, -0.6870748299320084, -0.707029478458086, -0.7269841269841635, -0.746938775510241, -0.7668934240363185, -0.7868480725623961, -0.8068027210884736, -0.8267573696145512, -0.8467120181406287, -0.8666666666667062, -0.8866213151927838, -0.9065759637188613, -0.9265306122449388, -0.9464852607710164, -0.9664399092970939, -0.9863945578231714], :name=>\"RampDown\"}], @layout={}, @config={:linkText=>\"Export to plot.ly\", :showLink=>true}, @embedded=true>"
|
36
|
+
]
|
37
|
+
},
|
38
|
+
"metadata": {},
|
39
|
+
"output_type": "display_data"
|
40
|
+
},
|
41
|
+
{
|
42
|
+
"data": {
|
43
|
+
"text/plain": [
|
44
|
+
"#<CZTop::Socket::PUB:0x7fd7459a90d0 last_endpoint=\"tcp://127.0.0.1:49964\">"
|
45
|
+
]
|
46
|
+
},
|
47
|
+
"execution_count": 2,
|
48
|
+
"metadata": {},
|
49
|
+
"output_type": "execute_result"
|
50
|
+
}
|
51
|
+
],
|
52
|
+
"source": [
|
53
|
+
"$LOAD_PATH << File.dirname(__FILE__) + \"/../lib\"\n",
|
54
|
+
"require 'synthesizer'\n",
|
55
|
+
"\n",
|
56
|
+
"include Synthesizer\n",
|
57
|
+
"\n",
|
58
|
+
"xs = []\n",
|
59
|
+
"ys1 = []\n",
|
60
|
+
"ys2 = []\n",
|
61
|
+
"ys3 = []\n",
|
62
|
+
"ys4 = []\n",
|
63
|
+
"ys5 = []\n",
|
64
|
+
"ys6 = []\n",
|
65
|
+
"\n",
|
66
|
+
"hz = 440.0\n",
|
67
|
+
"sample = 44100.0\n",
|
68
|
+
"delta = hz / sample\n",
|
69
|
+
"pos = ShapePos.new\n",
|
70
|
+
"\n",
|
71
|
+
"300.times {|i|\n",
|
72
|
+
" phase = pos.next(delta)\n",
|
73
|
+
" xs << i\n",
|
74
|
+
" ys1 << Shape::Sine[phase]\n",
|
75
|
+
" ys2 << Shape::Sawtooth[phase]\n",
|
76
|
+
" ys3 << Shape::Square[phase]\n",
|
77
|
+
" ys4 << Shape::Triangle[phase]\n",
|
78
|
+
" ys5 << Shape::RampUp[phase]\n",
|
79
|
+
" ys6 << Shape::RampDown[phase]\n",
|
80
|
+
"}\n",
|
81
|
+
"\n",
|
82
|
+
"traces = [\n",
|
83
|
+
" {x: xs, y: ys1, name: \"Sine\"},\n",
|
84
|
+
" {x: xs, y: ys2, name: \"Sawtooth\"},\n",
|
85
|
+
" {x: xs, y: ys3, name: \"Square\"},\n",
|
86
|
+
" {x: xs, y: ys4, name: \"Triangle\"},\n",
|
87
|
+
" {x: xs, y: ys5, name: \"RampUp\"},\n",
|
88
|
+
" {x: xs, y: ys6, name: \"RampDown\"},\n",
|
89
|
+
"]\n",
|
90
|
+
"Plotly::Plot.new(data: traces).show\n"
|
91
|
+
]
|
92
|
+
},
|
93
|
+
{
|
94
|
+
"cell_type": "code",
|
95
|
+
"execution_count": null,
|
96
|
+
"metadata": {},
|
97
|
+
"outputs": [],
|
98
|
+
"source": []
|
99
|
+
}
|
100
|
+
],
|
101
|
+
"metadata": {
|
102
|
+
"kernelspec": {
|
103
|
+
"display_name": "Ruby 2.7.0",
|
104
|
+
"language": "ruby",
|
105
|
+
"name": "ruby"
|
106
|
+
},
|
107
|
+
"language_info": {
|
108
|
+
"file_extension": ".rb",
|
109
|
+
"mimetype": "application/x-ruby",
|
110
|
+
"name": "ruby",
|
111
|
+
"version": "2.6.3"
|
112
|
+
}
|
113
|
+
},
|
114
|
+
"nbformat": 4,
|
115
|
+
"nbformat_minor": 2
|
116
|
+
}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
module AudioStream
|
2
|
+
class AudioInputSynth < Rx::Subject
|
3
|
+
include AudioInput
|
4
|
+
|
5
|
+
def initialize(synth, soundinfo:)
|
6
|
+
super()
|
7
|
+
|
8
|
+
@synth = synth
|
9
|
+
|
10
|
+
@soundinfo = soundinfo
|
11
|
+
end
|
12
|
+
|
13
|
+
def name
|
14
|
+
"Synth"
|
15
|
+
end
|
16
|
+
|
17
|
+
def each(&block)
|
18
|
+
Enumerator.new do |y|
|
19
|
+
loop {
|
20
|
+
buf = @synth.next
|
21
|
+
y << buf
|
22
|
+
}
|
23
|
+
end.each(&block)
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
data/lib/synthesizer.rb
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
require "synthesizer/version"
|
2
|
+
|
3
|
+
require 'audio_stream'
|
4
|
+
require 'audio_stream/audio_input_synth.rb'
|
5
|
+
|
6
|
+
require 'synthesizer/poly'
|
7
|
+
require 'synthesizer/mono'
|
8
|
+
require 'synthesizer/oscillator'
|
9
|
+
require 'synthesizer/amplifier'
|
10
|
+
require 'synthesizer/shape'
|
11
|
+
require 'synthesizer/shape_pos'
|
12
|
+
require 'synthesizer/modulation_value'
|
13
|
+
require 'synthesizer/modulation'
|
14
|
+
require 'synthesizer/note'
|
15
|
+
require 'synthesizer/note_perform'
|
16
|
+
require 'synthesizer/unison'
|
17
|
+
require 'synthesizer/processor'
|
18
|
+
require 'synthesizer/quality'
|
19
|
+
require 'synthesizer/utils'
|
20
|
+
|
21
|
+
module Synthesizer
|
22
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
module Synthesizer
|
2
|
+
class Amplifier
|
3
|
+
|
4
|
+
attr_reader :volume
|
5
|
+
attr_reader :pan
|
6
|
+
attr_reader :tune_semis
|
7
|
+
attr_reader :tune_cents
|
8
|
+
attr_reader :uni_num
|
9
|
+
attr_reader :uni_detune
|
10
|
+
|
11
|
+
# @param volume [Float] master volume. mute=0.0 max=1.0
|
12
|
+
# @param pan [Float] master pan. left=-1.0 center=0.0 right=1.0 (-1.0~1.0)
|
13
|
+
# @param tune_semis [Integer] master pitch semitone
|
14
|
+
# @param tune_cents [Integer] master pitch cent
|
15
|
+
# @param uni_num [Float] master voicing number (1.0~16.0)
|
16
|
+
# @param uni_detune [Float] master voicing detune percent. 0.01=1cent 1.0=semitone (0.0~1.0)
|
17
|
+
def initialize(shape: Shape::Sine, volume: 1.0, pan: 0.0, tune_semis: 0, tune_cents: 0, uni_num: 1.0, uni_detune: 0.0)
|
18
|
+
@volume = ModulationValue.create(volume)
|
19
|
+
@pan = ModulationValue.create(pan)
|
20
|
+
@tune_semis = ModulationValue.create(tune_semis)
|
21
|
+
@tune_cents = ModulationValue.create(tune_cents)
|
22
|
+
|
23
|
+
@uni_num = ModulationValue.create(uni_num)
|
24
|
+
@uni_detune = ModulationValue.create(uni_detune)
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,136 @@
|
|
1
|
+
module Synthesizer
|
2
|
+
module Modulation
|
3
|
+
class Adsr
|
4
|
+
|
5
|
+
# @param attack [Float] attack sec (0.0~)
|
6
|
+
# @param attack_curve [Synth::Curve]
|
7
|
+
# @param hold [Float] hold sec (0.0~)
|
8
|
+
# @param decay [Float] decay sec (0.0~)
|
9
|
+
# @param sustain_curve [Synth::Curve]
|
10
|
+
# @param sustain [Float] sustain sec (0.0~)
|
11
|
+
# @param release [Float] release sec (0.0~)
|
12
|
+
# @param release_curve [Synth::Curve]
|
13
|
+
def initialize(attack:, attack_curve: Curve::EaseOut, hold: 0.0, decay:, sustain_curve: Curve::EaseOut, sustain:, release:, release_curve: Curve::EaseOut)
|
14
|
+
@attack = attack
|
15
|
+
@attack_curve = attack_curve
|
16
|
+
@hold = hold
|
17
|
+
@decay = decay
|
18
|
+
@sustain_curve = sustain_curve
|
19
|
+
@sustain = sustain
|
20
|
+
@release = release
|
21
|
+
@release_curve = release_curve
|
22
|
+
end
|
23
|
+
|
24
|
+
def note_on_envelope(samplerate, sustain: false, &block)
|
25
|
+
Enumerator.new do |yld|
|
26
|
+
# attack
|
27
|
+
rate = @attack * samplerate
|
28
|
+
rate.to_i.times {|i|
|
29
|
+
x = i.to_f / rate
|
30
|
+
y = @attack_curve[x]
|
31
|
+
yld << y
|
32
|
+
}
|
33
|
+
|
34
|
+
# hold
|
35
|
+
rate = @hold * samplerate
|
36
|
+
rate.to_i.times {|i|
|
37
|
+
yld << 1.0
|
38
|
+
}
|
39
|
+
|
40
|
+
# decay
|
41
|
+
rate = @decay * samplerate
|
42
|
+
rate.to_i.times {|i|
|
43
|
+
x = i.to_f / rate
|
44
|
+
y = 1.0 - @sustain_curve[x] * (1.0 - @sustain)
|
45
|
+
yld << y
|
46
|
+
}
|
47
|
+
|
48
|
+
# sustain
|
49
|
+
if sustain
|
50
|
+
loop {
|
51
|
+
yld << @sustain
|
52
|
+
}
|
53
|
+
end
|
54
|
+
end.each(&block)
|
55
|
+
end
|
56
|
+
|
57
|
+
def note_off_envelope(samplerate, sustain: false, &block)
|
58
|
+
Enumerator.new do |yld|
|
59
|
+
# release
|
60
|
+
rate = @release * samplerate
|
61
|
+
rate.to_i.times {|i|
|
62
|
+
x = i.to_f / rate
|
63
|
+
y = 1.0 - @release_curve[x]
|
64
|
+
yld << y
|
65
|
+
}
|
66
|
+
|
67
|
+
# sustain
|
68
|
+
if sustain
|
69
|
+
loop {
|
70
|
+
yld << 0.0
|
71
|
+
}
|
72
|
+
end
|
73
|
+
end.each(&block)
|
74
|
+
end
|
75
|
+
|
76
|
+
def generator(note_perform, samplerate, release_sustain:, &block)
|
77
|
+
Enumerator.new do |y|
|
78
|
+
note_on = note_on_envelope(samplerate, sustain: true)
|
79
|
+
note_off = note_off_envelope(samplerate, sustain: release_sustain)
|
80
|
+
last = 0.0
|
81
|
+
|
82
|
+
loop {
|
83
|
+
if note_perform.note_on?
|
84
|
+
last = note_on.next
|
85
|
+
y << last
|
86
|
+
else
|
87
|
+
y << note_off.next * last
|
88
|
+
end
|
89
|
+
}
|
90
|
+
end.each(&block)
|
91
|
+
end
|
92
|
+
|
93
|
+
|
94
|
+
def amp_generator(note_perform, samplerate, depth, &block)
|
95
|
+
bottom = 1.0 - depth
|
96
|
+
|
97
|
+
generator(note_perform, samplerate, release_sustain: 0.0<bottom).lazy.map {|val|
|
98
|
+
val * depth + bottom
|
99
|
+
}.each(&block)
|
100
|
+
end
|
101
|
+
|
102
|
+
def balance_generator(note_perform, samplerate, depth, &block)
|
103
|
+
generator(note_perform, samplerate).lazy.map {|val|
|
104
|
+
val * depth
|
105
|
+
}.each(&block)
|
106
|
+
end
|
107
|
+
|
108
|
+
def plot_data(samplerate: 44100)
|
109
|
+
note_on = note_on_envelope(samplerate, sustain: false)
|
110
|
+
note_off = note_off_envelope(samplerate, sustain: false)
|
111
|
+
last = 0.0
|
112
|
+
|
113
|
+
xs = []
|
114
|
+
ys = []
|
115
|
+
|
116
|
+
note_on.each {|y|
|
117
|
+
xs << xs.length
|
118
|
+
ys << y
|
119
|
+
}
|
120
|
+
|
121
|
+
last = ys.last || 0.0
|
122
|
+
note_off.each {|y|
|
123
|
+
xs << xs.length
|
124
|
+
ys << y * last
|
125
|
+
}
|
126
|
+
|
127
|
+
{x: xs, y: ys}
|
128
|
+
end
|
129
|
+
|
130
|
+
def plot(samplerate: 44100)
|
131
|
+
data = plot_data(samplerate: samplerate)
|
132
|
+
Plotly::Plot.new(data: [data])
|
133
|
+
end
|
134
|
+
end
|
135
|
+
end
|
136
|
+
end
|
@@ -0,0 +1,72 @@
|
|
1
|
+
module Synthesizer
|
2
|
+
module Modulation
|
3
|
+
class Glide
|
4
|
+
|
5
|
+
# @param time [Float] glide time sec (0.0~)
|
6
|
+
def initialize(time:)
|
7
|
+
@time = time.to_f
|
8
|
+
|
9
|
+
@base = 0.0
|
10
|
+
@current = 0.0
|
11
|
+
@target = 0.0
|
12
|
+
@diff = 0.0
|
13
|
+
end
|
14
|
+
|
15
|
+
def base=(base)
|
16
|
+
base = base.to_f
|
17
|
+
|
18
|
+
@base = base
|
19
|
+
@current = base
|
20
|
+
@target = base
|
21
|
+
@diff = 0.0
|
22
|
+
end
|
23
|
+
|
24
|
+
def target=(target)
|
25
|
+
@target = target
|
26
|
+
@diff = target - @current
|
27
|
+
end
|
28
|
+
|
29
|
+
def generator(note_perform, samplerate, &block)
|
30
|
+
Enumerator.new do |yld|
|
31
|
+
rate = @time * samplerate
|
32
|
+
|
33
|
+
loop {
|
34
|
+
if note_perform.note_on?
|
35
|
+
# Note On
|
36
|
+
if 0<@time && @target!=@current
|
37
|
+
# Gliding
|
38
|
+
x = @diff / rate
|
39
|
+
if x.abs<(@target-@current).abs
|
40
|
+
@current += x
|
41
|
+
else
|
42
|
+
@current = @target
|
43
|
+
end
|
44
|
+
|
45
|
+
yld << @current - @base
|
46
|
+
else
|
47
|
+
# Stay
|
48
|
+
yld << @target - @base
|
49
|
+
end
|
50
|
+
else
|
51
|
+
# Note Off
|
52
|
+
@current = 0.0
|
53
|
+
@target = 0.0
|
54
|
+
@diff = 0.0
|
55
|
+
yld << 0.0
|
56
|
+
end
|
57
|
+
}
|
58
|
+
end.each(&block)
|
59
|
+
end
|
60
|
+
|
61
|
+
def balance_generator(note_perform, samplerate, depth, &block)
|
62
|
+
generator(note_perform, samplerate).lazy.map {|val|
|
63
|
+
val * depth
|
64
|
+
}.each(&block)
|
65
|
+
end
|
66
|
+
|
67
|
+
def to_modval
|
68
|
+
@modval ||= ModulationValue.create(0).add(self)
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|
@@ -0,0 +1,64 @@
|
|
1
|
+
module Synthesizer
|
2
|
+
module Modulation
|
3
|
+
class Lfo
|
4
|
+
|
5
|
+
# @param shape [Synth::Shape]
|
6
|
+
# @param delay [Float] delay sec (0.0~)
|
7
|
+
# @param attack [Float] attack sec (0.0~)
|
8
|
+
# @param attack_curve [Synth::Curve]
|
9
|
+
# @param phase [Float] phase percent (0.0~1.0)
|
10
|
+
# @param rate [Float] wave freq (0.0~)
|
11
|
+
def initialize(shape: Shape::Sine, delay: 0.0, attack: 0.0, attack_curve: Curve::Straight, phase: 0.0, rate: 3.5)
|
12
|
+
@shape = shape
|
13
|
+
@delay = delay
|
14
|
+
@attack = attack
|
15
|
+
@attack_curve = attack_curve
|
16
|
+
@phase = phase
|
17
|
+
@rate = rate
|
18
|
+
end
|
19
|
+
|
20
|
+
def generator(note_perform, samplerate, &block)
|
21
|
+
Enumerator.new do |yld|
|
22
|
+
delta = @rate / samplerate
|
23
|
+
|
24
|
+
pos = ShapePos.new(phase: @phase)
|
25
|
+
|
26
|
+
# delay
|
27
|
+
rate = @delay * samplerate
|
28
|
+
rate.to_i.times {|i|
|
29
|
+
yld << 0.0
|
30
|
+
}
|
31
|
+
|
32
|
+
# attack
|
33
|
+
rate = @attack * samplerate
|
34
|
+
rate.to_i.times {|i|
|
35
|
+
x = i.to_f / rate
|
36
|
+
y = @attack_curve[x]
|
37
|
+
yld << @shape[pos.next(delta)] * y
|
38
|
+
}
|
39
|
+
|
40
|
+
# sustain
|
41
|
+
loop {
|
42
|
+
val = @shape[pos.next(delta)]
|
43
|
+
yld << val
|
44
|
+
}
|
45
|
+
end.each(&block)
|
46
|
+
end
|
47
|
+
|
48
|
+
def amp_generator(note_perform, samplerate, depth, &block)
|
49
|
+
bottom = 1.0 - depth
|
50
|
+
|
51
|
+
generator(note_perform, samplerate).lazy.map {|val|
|
52
|
+
val = (val + 1) / 2
|
53
|
+
val * depth + bottom
|
54
|
+
}.each(&block)
|
55
|
+
end
|
56
|
+
|
57
|
+
def balance_generator(note_perform, samplerate, depth, &block)
|
58
|
+
generator(note_perform, samplerate).lazy.map {|val|
|
59
|
+
val * depth
|
60
|
+
}.each(&block)
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|