மாத்திரை பார்வையில் குறள்

                    ஆசிரியர்: பரதன் தியாகலிங்கம், முத்து அண்ணாமலை

திருக்குறள் 1330 குறட்பாக்களை மாத்திரை பார்வையில் கணினிவழியாக இயல்மொழி ஆய்வு செய்தால் என்ன கிடைக்கும்? திருக்குறளை மாத்திரை மதிப்பின் வாயிலாக வரிசைப்படுத்திப் பார்த்தால் என்ன கிடைக்கும் ? ஏதேனும் புதிய புரிதல் உண்டாகிறதா? பார்க்கலாம் வாருங்கள்.

செய்முறை – அல்கோரிதம்

குறளின் மாத்திரை அளவு என்பது குறளின் உள்ள அனைத்து சீர்பிரிக்காத சொற்களின் தனி மாத்திரை அளவுகளின் சமன்பாடு என்று கொள்ளலாம். இது நமது ஆய்வின் முன்கூட்டிய புரிதல்.

முதலில் இதற்கு ஒரு தமிழில் உள்ள மாத்திரை விதிகளை கணிக்கும் சார்பு தேவைப்படுகிறது. இதனை open-tamil 0.97 தொகுப்பில் ‘tamil.utf8.total_maththirai’ என்ற நிரல்துண்டு வழுங்குகிறது. மேலும் குறட்பக்களை ‘kural.Thirukkural().get_kural_no()’ என்பதிலிருந்து பெரலாம். இரண்டினையும் சேர்த்து ஒரு சிரிய கோவ்சியன் வளையம் பொருத்தலுடன் இணைத்துப்பார்த்தால் இப்படி தெரிகிறது; இதன் மூல நிரல் kural_mathirai.py என்பதில் காணலாம்.

#!/usr/bin/env python3
# This Python file uses the following encoding: utf-8
from kural import Thirukkural
from tamil.utf8 import get_letters, get_tamil_words, total_maaththirai
from collections import Counter, OrderedDict
from pprint import pprint
import matplotlib.pyplot as plt
import matplotlib
import numpy as np
from scipy.optimize import curve_fit

# Define model function to be used to fit to the data above:
def gauss(x, *p):
    A, mu, sigma = p
    return A*np.exp(-(x-mu)**2/(2.*sigma**2))

def main():
    eq = Counter()
    eqd = {}
    kural = Thirukkural()
    for kural_no in range(1330):
        kural_words = get_tamil_words(get_letters(kural.get_kural_no(kural_no+1).ta))
        mathirai = sum([total_maaththirai(word) for word in kural_words])
        if eq[mathirai] == 0:
                eqd[mathirai] = [kural_no+1]
        else:
            eqd[mathirai].append(kural_no+1)
        eq[mathirai] += 1
    eq_sorted=OrderedDict(sorted(eq.items(),key=lambda x: x))
    print("total = ",sum(eq.values()))
    plt.scatter(eq_sorted.keys(),eq_sorted.values())
    plt.ylabel(u'குறட்பாக்கள் எண்ணிக்கை',{'fontname':'Catamaran'})
    plt.xlabel(u'மாத்திரை அளவு',{'fontname':'Catamaran'}) #Arial Unicode MS'})

    # p0 is the initial guess for the fitting coefficients (A, mu and sigma above)
    p0 = [75., 20., 5.]
    coeff, var_matrix = curve_fit(gauss, list(eq_sorted.keys()), list(eq_sorted.values()), p0=p0)

    # Get the fitted curve
    hist_fit = gauss(list(eq_sorted.keys()), *coeff)
    plt.plot(eq_sorted.keys(), hist_fit, label='Gaussian Fitted data (mean=%g, std=%g)'%(coeff[1],coeff[2]))
    plt.title(r'குறள் மாத்திரை வரிசை (Gauss \mu=%g, \sigma=%g)'%(coeff[1],coeff[2]),{'fontname':'Catamaran'})

    # Finally, lets get the fitting parameters, i.e. the mean and standard deviation:
    print ('Fitted mean = ', coeff[1])
    print('Fitted standard deviation = ', coeff[2])

    plt.show()


if __name__ == "__main__":
    main()
திருக்குறள் மாத்திரை வரிசை ஒத்திய குறட்பா எண்ணிக்கை

விடைகள்

  1. திருக்குறளில் உள்ள சராசரி குறட்பாவின் மாத்திரை அளவு μ ~ 29.5. இதன் மாற்றமளவு σ ~ 2.5
  2. மாத்திரை பார்வையில் திருக்குறள் ஏரக்குறைய கௌசியன் பரப்பை போல் அமைந்துள்ளது
  3. திருக்குறள் மாத்திரை வடிவிலும் கூட அழகிய சீர்மை கொண்டதாக மிகவும் கோர்வையுடன் அமைந்தது.
  4. குறைந்த அளவு நமாத்திரை  நீளம் (23) கொண்ட குறளானவை குறள் எண்கள், 391, 426, 483, 786

“கற்க கசடறக் கற்பவை கற்றபின்
நிற்க அதற்குத் தக.” குறள் 391.

  1. அதிக அளவு நீளமான மாத்திரை (37.5) கொண்ட குறளானது குறள் வரிகள்,

”காணாதான் காட்டுவான் தான்காணான் காணாதான்
கண்டானாம் தான்கண்ட வாறு.” குறள் 849.

மத்திரை அளவுகுறள் எண்ணிக்கை                 குறள் எண்(கள்)
234391, 426, 483, 786
23.5567, 77, 366, 637, 979
248108, 485, 961, 965, 1042, 1048, 1277, 1304
24.57304, 467, 602, 652, 1118, 1322, 1324
2520133,
193,
331,
360,
412,
477,
546,
559,
576,
592,
616,
771,
796,
846,
947,
1052,
1116,
1239,
1240,
1289
25.52996,
339,
347,
350,
373,
400,
405,
439,
444,
569,
625,
669,
742,
764,
841,
937,
944,
978,
980,
1045,
1072,
1085,
1102,
1108,
1176,
1203,
1258,
1318,
1329
26371,
28,
40,
90,
152,
229,
308,
314,
340,
454,
466,
480,
488,
594,
622,
639,
666,
668,
687,
692,
715,
774,
824,
847,
856,
934,
964,
975,
988,
1008,
1028,
1168,
1238,
1242,
1256,
1279,
1309
26.54645,
54,
107,
168,
175,
196,
236,
296,
364,
451,
484,
516,
518,
531,
540,
571,
572,
598,
608,
611,
623,
628,
700,
706,
708,
738,
769,
838,
854,
877,
935,
954,
1010,
1066,
1071,
1131,
1132,
1134,
1222,
1224,
1227,
1229,
1232,
1233,
1296,
1302
277380,
105,
109,
119,
120,
121,
172,
173,
174,
202,
224,
231,
283,
284,
292,
321,
337,
341,
349,
374,
380,
399,
411,
428,
429,
438,
447,
489,
505,
508,
512,
520,
552,
562,
570,
578,
599,
604,
651,
654,
661,
693,
698,
729,
747,
770,
772,
778,
790,
803,
805,
807,
817,
818,
822,
832,
851,
863,
887,
889,
963,
994,
1019,
1041,
1069,
1107,
1120,
1122,
1159,
1173,
1300,
1321,
1326
27.58821,
34,
39,
64,
73,
87,
95,
98,
111,
115,
124,
131,
140,
157,
205,
207,
208,
210,
215,
239,
261,
270,
272,
280,
293,
309,
315,
336,
388,
394,
419,
431,
457,
465,
468,
469,
482,
491,
494,
495,
542,
543,
545,
554,
558,
574,
575,
581,
629,
653,
657,
679,
690,
705,
739,
759,
788,
811,
821,
823,
835,
876,
878,
882,
883,
904,
918,
949,
1004,
1023,
1039,
1063,
1091,
1105,
1109,
1117,
1138,
1144,
1156,
1165,
1166,
1226,
1257,
1266,
1273,
1281,
1283,
1301
2810413,
14,
60,
63,
75,
85,
89,
101,
103,
123,
145,
158,
167,
186,
191,
195,
213,
218,
230,
234,
302,
327,
369,
408,
410,
416,
425,
434,
463,
464,
472,
475,
478,
500,
504,
521,
522,
535,
549,
563,
580,
595,
596,
609,
618,
620,
621,
636,
664,
677,
703,
741,
748,
752,
767,
793,
797,
802,
816,
844,
873,
880,
884,
917,
925,
943,
984,
1003,
1011,
1013,
1031,
1040,
1043,
1051,
1080,
1086,
1088,
1092,
1096,
1099,
1100,
1114,
1135,
1137,
1141,
1146,
1153,
1157,
1177,
1178,
1184,
1199,
1201,
1208,
1210,
1216,
1221,
1259,
1264,
1295,
1306,
1307,
1327,
1330
28.59529,
68,
102,
104,
112,
114,
116,
132,
137,
153,
203,
223,
227,
238,
244,
255,
265,
267,
268,
274,
277,
295,
303,
316,
333,
342,
372,
381,
385,
392,
393,
398,
401,
403,
407,
437,
493,
506,
511,
517,
553,
577,
591,
601,
605,
631,
655,
671,
674,
696,
710,
723,
727,
740,
744,
749,
757,
763,
781,
809,
819,
829,
839,
852,
871,
941,
986,
996,
1025,
1050,
1061,
1062,
1073,
1093,
1098,
1119,
1142,
1152,
1164,
1170,
1196,
1209,
1213,
1223,
1249,
1250,
1268,
1280,
1287,
1290,
1298,
1308,
1310,
1315,
1328
299123,
26,
59,
76,
99,
113,
169,
181,
184,
197,
214,
233,
237,
254,
262,
264,
289,
313,
329,
334,
335,
338,
384,
427,
503,
539,
544,
547,
588,
590,
597,
607,
619,
630,
634,
638,
672,
707,
709,
712,
728,
754,
779,
785,
787,
791,
810,
812,
813,
826,
830,
837,
848,
853,
879,
888,
898,
905,
920,
942,
955,
971,
1014,
1021,
1034,
1068,
1084,
1089,
1110,
1121,
1126,
1139,
1143,
1147,
1149,
1151,
1172,
1193,
1200,
1211,
1231,
1237,
1245,
1247,
1251,
1253,
1271,
1276,
1292,
1299,
1305
29.51069,
33,
53,
55,
61,
66,
71,
79,
100,
136,
150,
154,
171,
177,
182,
192,
216,
226,
259,
279,
288,
290,
306,
310,
323,
344,
352,
363,
371,
375,
376,
377,
378,
404,
414,
418,
440,
448,
449,
455,
486,
497,
501,
527,
532,
585,
589,
593,
603,
641,
644,
650,
688,
697,
704,
726,
731,
734,
736,
743,
746,
751,
761,
765,
782,
801,
814,
815,
831,
836,
842,
850,
870,
872,
899,
922,
933,
945,
953,
958,
970,
974,
982,
997,
1000,
1038,
1053,
1065,
1067,
1095,
1111,
1113,
1128,
1161,
1171,
1219,
1228,
1234,
1235,
1236,
1244,
1252,
1254,
1261,
1284,
1297
3011619,
22,
48,
49,
57,
78,
97,
117,
122,
125,
129,
142,
151,
178,
180,
201,
217,
220,
241,
245,
250,
257,
260,
269,
273,
276,
286,
300,
332,
348,
353,
362,
365,
370,
420,
421,
432,
435,
436,
443,
470,
474,
479,
490,
498,
499,
507,
509,
524,
529,
534,
556,
565,
568,
610,
613,
626,
633,
640,
647,
659,
663,
676,
684,
714,
725,
750,
775,
776,
784,
798,
799,
800,
828,
864,
869,
885,
886,
890,
891,
892,
893,
902,
907,
916,
946,
948,
951,
962,
999,
1015,
1016,
1044,
1047,
1049,
1055,
1056,
1074,
1076,
1082,
1124,
1125,
1127,
1155,
1175,
1179,
1180,
1183,
1204,
1207,
1217,
1230,
1243,
1263,
1282,
1319
30.58510,
32,
58,
62,
83,
84,
88,
92,
139,
179,
200,
209,
235,
243,
251,
287,
291,
294,
297,
299,
320,
322,
346,
356,
367,
386,
396,
415,
430,
441,
442,
458,
459,
519,
525,
537,
557,
567,
624,
645,
656,
665,
678,
701,
717,
724,
773,
783,
789,
855,
859,
895,
906,
912,
915,
977,
992,
995,
1012,
1024,
1029,
1059,
1078,
1087,
1090,
1094,
1103,
1106,
1115,
1129,
1140,
1145,
1163,
1214,
1225,
1262,
1265,
1274,
1275,
1291,
1293,
1303,
1313,
1320,
1323
319216,
17,
18,
30,
37,
46,
50,
70,
72,
74,
93,
106,
135,
138,
144,
146,
160,
161,
190,
198,
204,
211,
222,
307,
319,
351,
358,
382,
383,
390,
406,
422,
460,
471,
473,
496,
523,
528,
538,
555,
561,
566,
587,
600,
612,
615,
648,
670,
702,
716,
721,
737,
753,
760,
768,
795,
820,
843,
857,
862,
866,
874,
903,
909,
985,
987,
989,
991,
1018,
1020,
1030,
1037,
1054,
1060,
1077,
1123,
1130,
1136,
1154,
1158,
1162,
1169,
1185,
1188,
1189,
1198,
1206,
1218,
1260,
1278,
1288,
1314
31.5703,
4,
11,
36,
41,
65,
69,
81,
110,
189,
242,
258,
263,
275,
278,
324,
354,
355,
359,
361,
379,
413,
417,
476,
481,
510,
536,
541,
573,
579,
586,
614,
617,
649,
658,
680,
694,
718,
722,
755,
766,
794,
804,
845,
858,
860,
867,
913,
914,
923,
926,
928,
936,
952,
956,
957,
976,
990,
998,
1022,
1026,
1027,
1033,
1035,
1075,
1104,
1167,
1182,
1248,
1255
325912,
44,
52,
128,
143,
156,
164,
165,
185,
188,
228,
253,
298,
311,
312,
345,
357,
389,
395,
433,
445,
450,
513,
530,
560,
564,
606,
642,
673,
686,
711,
730,
732,
735,
758,
762,
777,
792,
825,
833,
840,
881,
919,
968,
1036,
1057,
1058,
1081,
1112,
1160,
1174,
1197,
1212,
1215,
1272,
1294,
1311,
1316,
1325
32.5512,
20,
24,
31,
35,
47,
82,
86,
118,
147,
148,
159,
162,
176,
187,
271,
281,
282,
328,
446,
502,
514,
526,
533,
550,
582,
583,
662,
683,
699,
719,
720,
827,
861,
865,
908,
921,
927,
969,
981,
1097,
1150,
1181,
1186,
1187,
1191,
1194,
1195,
1241,
1286,
1312
33378,
155,
170,
183,
206,
212,
225,
248,
249,
318,
325,
368,
402,
462,
492,
548,
627,
646,
675,
685,
756,
780,
808,
834,
911,
939,
1046,
1070,
1083,
1101,
1148,
1190,
1192,
1269,
1270,
1285,
1317
33.53027,
194,
219,
221,
305,
317,
343,
456,
461,
632,
643,
667,
689,
806,
896,
900,
901,
930,
932,
959,
966,
972,
993,
1001,
1005,
1009,
1133,
1205,
1220,
1267
342338,
51,
56,
126,
134,
166,
252,
266,
330,
453,
487,
660,
681,
682,
695,
897,
910,
938,
950,
960,
967,
1007,
1032
34.5125, 42, 130, 149, 232, 387, 424, 733, 931, 983, 1006, 1079
351691,94,141,199,246,247,423,452,635,691,875,924,
973,1002,1017,1064
35.5925, 163, 285, 301, 515, 584, 868, 894, 929
3647, 409, 713, 745
36.56127, 240, 326, 551, 1202, 1246
37215, 940
37.5243, 397
3826, 256
39.51849

மறுமொழியொன்றை இடுங்கள்

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  மாற்று )

Google photo

You are commenting using your Google account. Log Out /  மாற்று )

Twitter picture

You are commenting using your Twitter account. Log Out /  மாற்று )

Facebook photo

You are commenting using your Facebook account. Log Out /  மாற்று )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.