# -*- t-utils-ts-parse-tree -*-
(source_file<1,1571> (comment[1,20]@{% -*- matlab-ts -*-}@) (comment[22,726]@{%% MATLAB code sections menu and keybindings\n%\n%...}@) (comment[728,739]@{%% Preamble}@)
 (command<740,743> (command_name[740,743]@{clc}@))
 \n[743,744]
 (command<744,753> (command_name[744,749]@{clear}@) (command_argument[750,753]@{all}@))
 \n[753,755]
 (function_call<755,805> name: (identifier[755,758]@{set}@) ([758,759]
  (arguments<759,804> argument: (number[759,760]@{0}@) ,[760,761]
   (string<761,794> '[761,762] (string_content[762,793]@{defaultAxesTickLabelInterpreter}@) '[793,794])
   ,[794,795]
   (string<795,804> '[795,796] (string_content[796,803]@{default}@) '[803,804]))
  )[804,805])
 ;[805,806]
 (function_call<807,846> name: (identifier[807,810]@{set}@) ([810,811]
  (arguments<811,845> argument: (number[811,812]@{0}@) ,[812,813]
   (string<813,837> '[813,814] (string_content[814,836]@{defaultTextInterpreter}@) '[836,837])
   ,[837,838]
   (string<838,845> '[838,839] (string_content[839,844]@{latex}@) '[844,845]))
  )[845,846])
 ;[846,847]
 (function_call<848,889> name: (identifier[848,851]@{set}@) ([851,852]
  (arguments<852,888> argument: (number[852,853]@{0}@) ,[853,854]
   (string<854,880> '[854,855] (string_content[855,879]@{DefaultLegendInterpreter}@) '[879,880])
   ,[880,881]
   (string<881,888> '[881,882] (string_content[882,887]@{latex}@) '[887,888]))
  )[888,889])
 ;[889,890]
 (function_call<891,922> name: (identifier[891,894]@{set}@) ([894,895]
  (arguments<895,921> argument: (number[895,896]@{0}@) ,[896,897]
   (string<897,918> '[897,898] (string_content[898,917]@{defaultAxesFontSize}@) '[917,918])
   ,[918,919] (number[919,921]@{13}@))
  )[921,922])
 ;[922,923] (comment[925,973]@{%% This is the first section, setting parameters}@)
 (assignment<975,982> left: (identifier[975,976]@{m}@) =[977,978] right: (number[979,982]@{1.0}@))
 ;[982,983]
 (assignment<984,989> left: (identifier[984,985]@{k}@) =[986,987] right: (number[988,989]@{4}@))
 ;[989,990]
 (assignment<991,1011> left: (identifier[991,992]@{c}@) =[993,994]
  right: 
   (binary_operator<995,1011>
    left: (binary_operator<995,1001> left: (number[995,996]@{2}@) *[996,997] right: (number[997,1001]@{0.01}@))
    *[1001,1002]
    right: 
     (function_call<1002,1011> name: (identifier[1002,1006]@{sqrt}@) ([1006,1007]
      (arguments<1007,1010>
       argument: (binary_operator<1007,1010> left: (identifier[1007,1008]@{k}@) *[1008,1009] right: (identifier[1009,1010]@{m}@)))
      )[1010,1011])))
 ;[1011,1012]
 (assignment<1014,1021> left: (identifier[1014,1015]@{F}@) =[1016,1017] right: (number[1018,1021]@{1.0}@))
 ;[1021,1022]
 (assignment<1023,1031> left: (identifier[1023,1025]@{Om}@) =[1026,1027] right: (number[1028,1031]@{4.0}@))
 ;[1031,1032] (comment[1034,1072]@{%% Second section - Transient Analysis}@)
 (assignment<1073,1085> left: (identifier[1073,1078]@{fsamp}@) =[1079,1080] right: (number[1081,1085]@{1024}@))
 ;[1085,1086]
 (assignment<1087,1105> left: (identifier[1087,1091]@{Tmax}@) =[1092,1093]
  right: 
   (binary_operator<1094,1105>
    left: 
     (binary_operator<1094,1102>
      left: (binary_operator<1094,1099> left: (number[1094,1097]@{250}@) *[1097,1098] right: (number[1098,1099]@{2}@))
      *[1099,1100] right: (identifier[1100,1102]@{pi}@))
    /[1102,1103] right: (identifier[1103,1105]@{Om}@)))
 ;[1105,1106]
 (assignment<1107,1127> left: (identifier[1107,1109]@{Nt}@) =[1110,1111]
  right: 
   (function_call<1112,1127> name: (identifier[1112,1115]@{fix}@) ([1115,1116]
    (arguments<1116,1126>
     argument: (binary_operator<1116,1126> left: (identifier[1116,1120]@{Tmax}@) *[1120,1121] right: (identifier[1121,1126]@{fsamp}@)))
    )[1126,1127]))
 ;[1127,1128]
 (assignment<1130,1233>
  left: (multioutput_variable<1130,1135> [[1130,1131] (identifier[1131,1132]@{t}@) ,[1132,1133] (identifier[1133,1134]@{y}@) ][1134,1135])
  =[1136,1137]
  right: 
   (function_call<1138,1233> name: (identifier[1138,1143]@{ode45}@) ([1143,1144]
    (arguments<1144,1232>
     argument: 
      (lambda<1144,1191> @[1144,1145] ([1145,1146]
       (arguments<1146,1149> (identifier[1146,1147]@{t}@) ,[1147,1148] (identifier[1148,1149]@{y}@))
       )[1149,1150]
       expression: 
        (matrix<1151,1191> [[1151,1152]
         (row<1152,1156>
          (function_call<1152,1156> name: (identifier[1152,1153]@{y}@) ([1153,1154]
           (arguments<1154,1155> argument: (number[1154,1155]@{2}@))
           )[1155,1156]))
         (row<1158,1190>
          (binary_operator<1158,1190>
           left: 
            (binary_operator<1158,1176>
             left: 
              (binary_operator<1158,1167>
               left: 
                (binary_operator<1158,1162>
                 left: (unary_operator<1158,1160> -[1158,1159] operand: (identifier[1159,1160]@{c}@))
                 /[1160,1161] right: (identifier[1161,1162]@{m}@))
               *[1162,1163]
               right: 
                (function_call<1163,1167> name: (identifier[1163,1164]@{y}@) ([1164,1165]
                 (arguments<1165,1166> argument: (number[1165,1166]@{2}@))
                 )[1166,1167]))
             -[1167,1168]
             right: 
              (binary_operator<1168,1176>
               left: (binary_operator<1168,1171> left: (identifier[1168,1169]@{k}@) /[1169,1170] right: (identifier[1170,1171]@{m}@))
               *[1171,1172]
               right: 
                (function_call<1172,1176> name: (identifier[1172,1173]@{y}@) ([1173,1174]
                 (arguments<1174,1175> argument: (number[1174,1175]@{1}@))
                 )[1175,1176])))
           -[1176,1177]
           right: 
            (binary_operator<1177,1190>
             left: (binary_operator<1177,1180> left: (identifier[1177,1178]@{F}@) /[1178,1179] right: (identifier[1179,1180]@{m}@))
             *[1180,1181]
             right: 
              (function_call<1181,1190> name: (identifier[1181,1184]@{cos}@) ([1184,1185]
               (arguments<1185,1189>
                argument: (binary_operator<1185,1189> left: (identifier[1185,1187]@{Om}@) *[1187,1188] right: (identifier[1188,1189]@{t}@)))
               )[1189,1190]))))
         ][1190,1191]))
     ,[1191,1192] (line_continuation[1193,1197]@{...\n}@)
     (binary_operator<1211,1225>
      left: 
       (binary_operator<1211,1222>
        left: 
         (parenthesis<1211,1217> ([1211,1212]
          (range<1212,1216> (number[1212,1213]@{0}@) :[1213,1214] (identifier[1214,1216]@{Nt}@))
          )[1216,1217])
        *[1217,1218] right: (identifier[1218,1222]@{Tmax}@))
      /[1222,1223] right: (identifier[1223,1225]@{Nt}@))
     ,[1225,1226]
     (matrix<1227,1232> [[1227,1228]
      (row<1228,1229> (number[1228,1229]@{0}@))
      ;[1229,1230]
      (row<1230,1231> (number[1230,1231]@{0}@))
      ][1231,1232]))
    )[1232,1233]))
 ;[1233,1234]
 (assignment<1236,1244> left: (identifier[1236,1239]@{fsz}@) =[1240,1241] right: (number[1242,1244]@{14}@))
 ;[1244,1245]
 (function_call<1246,1255> name: (identifier[1246,1252]@{figure}@) ([1252,1253]
  (arguments<1253,1254> argument: (number[1253,1254]@{1}@))
  )[1254,1255])
 \n[1255,1256]
 (function_call<1256,1261> name: (identifier[1256,1259]@{clf}@) ([1259,1260] )[1260,1261])
 \n[1261,1262]
 (assignment<1262,1314> left: (identifier[1262,1264]@{sp}@) =[1265,1266]
  right: 
   (function_call<1267,1314> name: (identifier[1267,1278]@{stackedplot}@) ([1278,1279]
    (arguments<1279,1313> argument: (identifier[1279,1280]@{t}@) ,[1280,1281] (identifier[1282,1283]@{y}@) ,[1283,1284]
     (string<1285,1300> '[1285,1286] (string_content[1286,1299]@{DisplayLabels}@) '[1299,1300])
     ,[1300,1301]
     (cell<1302,1313> {[1302,1303]
      (row<1303,1312>
       (string<1303,1307> '[1303,1304] (string_content[1304,1306]@{y1}@) '[1306,1307])
       ,[1307,1308]
       (string<1308,1312> '[1308,1309] (string_content[1309,1311]@{y2}@) '[1311,1312]))
      }[1312,1313]))
    )[1313,1314]))
 ;[1314,1315]
 (function_call<1316,1334> name: (identifier[1316,1322]@{xlabel}@) ([1322,1323]
  (arguments<1323,1333>
   argument: (string<1323,1333> '[1323,1324] (string_content[1324,1332]@{Time (s)}@) '[1332,1333]))
  )[1333,1334])
 \n[1334,1335]
 (function_call<1335,1360> name: (identifier[1335,1338]@{set}@) ([1338,1339]
  (arguments<1339,1359> argument: (identifier[1339,1342]@{gca}@) ,[1342,1343]
   (string<1344,1354> '[1344,1345] (string_content[1345,1353]@{FontSize}@) '[1353,1354])
   ,[1354,1355] (identifier[1356,1359]@{fsz}@))
  )[1359,1360])
 \n[1360,1361]
 (command<1361,1368> (command_name[1361,1365]@{grid}@) (command_argument[1366,1368]@{on}@))
 ;[1368,1369] (comment[1371,1387]@{%% Third section}@)
 (assignment<1388,1396> left: (identifier[1388,1389]@{N}@) =[1390,1391] right: (number[1392,1396]@{1000}@))
 ;[1396,1397]
 (assignment<1398,1406> left: (identifier[1398,1401]@{fsz}@) =[1402,1403] right: (number[1404,1406]@{14}@))
 ;[1406,1407]
 (function_call<1408,1417> name: (identifier[1408,1414]@{figure}@) ([1414,1415]
  (arguments<1415,1416> argument: (number[1415,1416]@{2}@))
  )[1416,1417])
 \n[1417,1418]
 (function_call<1418,1423> name: (identifier[1418,1421]@{clf}@) ([1421,1422] )[1422,1423])
 \n[1423,1424]
 (function_call<1424,1458> name: (identifier[1424,1428]@{plot}@) ([1428,1429]
  (arguments<1429,1457>
   argument: 
    (binary_operator<1429,1452>
     left: 
      (function_call<1429,1444> name: (identifier[1429,1432]@{eig}@) ([1432,1433]
       (arguments<1433,1443>
        argument: 
         (function_call<1433,1443> name: (identifier[1433,1438]@{randn}@) ([1438,1439]
          (arguments<1439,1442> argument: (identifier[1439,1440]@{N}@) ,[1440,1441] (identifier[1441,1442]@{N}@))
          )[1442,1443]))
       )[1443,1444])
     /[1444,1445]
     right: 
      (function_call<1445,1452> name: (identifier[1445,1449]@{sqrt}@) ([1449,1450]
       (arguments<1450,1451> argument: (identifier[1450,1451]@{N}@))
       )[1451,1452]))
   ,[1452,1453]
   (string<1454,1457> '[1454,1455] (string_content[1455,1456]@{.}@) '[1456,1457]))
  )[1457,1458])
 ;[1458,1459]
 (command<1460,1467> (command_name[1460,1464]@{hold}@) (command_argument[1465,1467]@{on}@))
 \n[1467,1468]
 (function_call<1468,1523> name: (identifier[1468,1472]@{plot}@) ([1472,1473]
  (arguments<1473,1522>
   argument: 
    (function_call<1473,1494> name: (identifier[1473,1476]@{cos}@) ([1476,1477]
     (arguments<1477,1493>
      argument: 
       (binary_operator<1477,1493>
        left: 
         (binary_operator<1477,1489>
          left: 
           (binary_operator<1477,1486>
            left: 
             (parenthesis<1477,1484> ([1477,1478]
              (range<1478,1483> (number[1478,1479]@{0}@) :[1479,1480] (number[1480,1483]@{100}@))
              )[1483,1484])
            *[1484,1485] right: (number[1485,1486]@{2}@))
          *[1486,1487] right: (identifier[1487,1489]@{pi}@))
        /[1489,1490] right: (number[1490,1493]@{100}@)))
     )[1493,1494])
   ,[1494,1495]
   (function_call<1496,1517> name: (identifier[1496,1499]@{sin}@) ([1499,1500]
    (arguments<1500,1516>
     argument: 
      (binary_operator<1500,1516>
       left: 
        (binary_operator<1500,1512>
         left: 
          (binary_operator<1500,1509>
           left: 
            (parenthesis<1500,1507> ([1500,1501]
             (range<1501,1506> (number[1501,1502]@{0}@) :[1502,1503] (number[1503,1506]@{100}@))
             )[1506,1507])
           *[1507,1508] right: (number[1508,1509]@{2}@))
         *[1509,1510] right: (identifier[1510,1512]@{pi}@))
       /[1512,1513] right: (number[1513,1516]@{100}@)))
    )[1516,1517])
   ,[1517,1518]
   (string<1519,1522> '[1519,1520] (string_content[1520,1521]@{-}@) '[1521,1522]))
  )[1522,1523])
 ;[1523,1524]
 (command<1525,1535> (command_name[1525,1529]@{axis}@) (command_argument[1530,1535]@{equal}@))
 ;[1535,1536]
 (command<1537,1544> (command_name[1537,1541]@{grid}@) (command_argument[1542,1544]@{on}@))
 \n[1544,1545]
 (function_call<1545,1570> name: (identifier[1545,1548]@{set}@) ([1548,1549]
  (arguments<1549,1569> argument: (identifier[1549,1552]@{gca}@) ,[1552,1553]
   (string<1554,1564> '[1554,1555] (string_content[1555,1563]@{FontSize}@) '[1563,1564])
   ,[1564,1565] (identifier[1566,1569]@{fsz}@))
  )[1569,1570])
 \n[1570,1571])
