Saturday, March 15, 2014

ෆ්‍රැක්ටල් (fractal) මෝස්තර සාදන ආකාරය



මෙම ලිපියේ තරමක් සංකීර්න ගණිත සංකල්ප ඇති අතර උසස්පෙල මට්ටමේ ගණිත දැනුමක් තිබීම ප්‍රෙයා්ජනවත් වෙයි
නමුත් හැකි තාක් සරලව ෆ්‍රැක්ටල් මෝස්තරයක් සාදන ආකාරය කියා දීමට බලාපොරොත්තු වෙමි මා දන්නා ආකාරයට මෙය සිංහලෙන් මෙම කරුණ ගැන ලියවෙන පලමු ලිපියයි
සමීකරණය
ෆ්‍රැක්ටල් තැනීමට විශේෂ ගණිත සමීකරණ වර්ගයක් භාවිත කරයි
මුලින් එම සමීකරණ යක් තේරුම් ගනිමු
x නැමති සංඛ්‍යාව සලකන්න මෙයට ආරම්භක අගයක් දෙන්න
x හි අගය f(x)  නැමති ශ්‍රිතයට ආදේශ කර ලැබෙන අගය,  x ට ලබාදෙන්න
නව x හි අගය f(x)  නැමති ශ්‍රිතයට ආදේශ කර ලැබෙන අගය,  x ට ලබාදෙන්න
x හි අගය f(x)  නැමති ශ්‍රිතයට ආදේශ කර ලැබෙන අගය,  x ට ලබාදෙන්න
…………………………………..
………………………………….
x හි අගය යම් ෆ්‍රැක්ටල් සමීකරණයෙන් නියමකර ඇති අගයක් ඉක්මවනතුරු මෙම චක්‍රීය ක්‍රියාවලිය නැවත නැවත කරන්න
ෆ්‍රැක්ටල් සමීකරනයේ ප්‍රතිදානය (output) වන්නේ x හි අගය මෙම නියමකර ඇති අගයක් ඉක්මවනතුරු මෙම චක්‍රීය ක්‍රියාවලිය නැවත නැවත සිදුකලයුතු වාරගනනයි
සමහරවිටෙක x ට දී ඇති අගය ඉක්මවීමට නොහැකි වීමට හෝ ඒ සඳහා විශාල වාර ගනනක් චක්‍රීය ක්‍රියාවලිය නැවත නැවත සිදුකලයුතු විය හැකි බැවින් උපරිම චක්‍ර ගනනක් නියමකල හැක.
මෝස්තර සකසන ආකාරය
ෆ්‍රැක්ටල් මෝස්තර ඇඳීමේදී x සඳහා සංකීර්ණ සංඛ්‍යාවක් යොදාගනී මුලින්ම ආගන්ඩ් සටහනක් ගෙන එහි යම් P ලක්ෂයකට අදාල සංකීර්ණ සංඛ්‍යාව ෆ්‍රැක්ටල් සමීකරණයක x හි ආරම්භක අගයට ආදේශකර  x හි මාපාංකය යම් නිශ්චිත අගයක් ඉක්මවීමට ගන්නා ප්‍රනරාවර්තන ගනන ලබාගනී ඉන්පසු එම පුනරාවර්තන ගණනට අනුරූප වර්ණ යක් එම P ලක්ෂයට ලබා දේ. මෙහිදී වර්ණය ගැලපීම කැමති ආකාරයකට කලහැක
උදාහරණයක් ලෙස  පුනරාවර්තන 0-30 දක්වා රතු වර්ණය ක්‍රමයෙන් වැඩිවී 31-60 අක්වා නිල් වර්නය ක්‍රමයෙන් වැඩි වී 61-90 දක්වා කොල වර්නයත් වැඩිවී ඊට වැඩි පුනරාවර්තන වාර ගණනක් සඳහා සුදු වර්ණයත් යෙදිය හැක.
මෙලෙස ආගන්ඩ් සටහනේ ලක්ෂය හැකි තරම් වර්ණ ගැන්වීමෙන් ෆ්‍රැක්ටල් මෝස්තරයක් ලැබේ.
මෙහිදී ෆ්‍රැක්ටල් මෝස්තරය සඳහා යොදා ගන්නා ආගන්ඩ් සටහනේ අගය පරාසය ගැන ද සැලකිලිමත් විය යුතුය නැතිනම් මෝස්තරයක් නොලැබීමට හෝ මෝස්තරය ඉතා විශාල හෝ කුඩා වීමනිසා නිරීක්ෂනය කල නොහැකි වීමට පුලුවන සාමාන්‍යෙයන් -i, i සහ -1,1 අතර ඇති ඒකක 2×2 ප්‍රමාණයේ සමචතුරස්‍රාකාර කොටස බොහෝ ෆ්‍රැක්ටල් මෝස්තර සඳහා යොදා ගනී wikipeadia විශ්ව කෝෂයෙන් විවිධ ෆ්‍රැක්ටල් මෝස්තරත් ඒවාට අදාළ සමීකරණ සහ අගය පරාස ලබාගත හැක
උදාහරණ
 උදාහරණයක් ලෙස ජූලියා ෆ්‍රැක්ටල් රටාව සලකමු මෙහි ආගන්ඩ් සටහනේ අගය පරාසය -i, i සහ -1,1 අතර වේ.
මෙහි දී x සඳහා අගයක් ආගන්ඩ් සටහනෙන් ගන්න
එය ශ්‍රිතයට ආදේශ කරන්න ලැබෙන අගයේ මාපාංකය යම් අගයක් ඉක්මවන තුරු  ලැබෙන අගය x ට ආදේශ කරමින් නැවතත් ශ්‍රිතය ට ආදේශ කරන්න
xn+1=f(xn)+c මෙහි c නියතයක් වන අතර
|xn+1|>උපරිම අගය,    වෙන තෙක් මෙය නැවත නැවත කල යුතුය
උදාහරණයක් ලෙස f(x)=x2  හා c=1 ලෙසත් xn+1 හි මාපාංකය ඉක්මවිය යුතු අගය 2 ලෙසත් ගන්න
ආර්ගන්ඩ් සටහනේ එක් ලක්ෂයක් ලෙස 0+0i සලකමු
එවිට
xn+1=(0+0i)2+1
xn+1=1
|xn+1|=1
|xn+1|<2   ,ඉක්මවිය යුතු අගය වඩා |xn+1|අඩුය එම නිසා නැවත වරක් මෙම ක්‍රියාවලිය කල යුතු ය
දැන්
x=1+0i
ඒ නිසා
xn+1=(1+0i)2+1
xn+1=2
|xn+1|=2  ,මෙවර |xn+1|අපේක්ෂිත අගයට ලඟාවූ බැවින් එනම් වාර දෙකක දී අවශ්‍ය අගය ගත් නිසා 0+0i ලක්ෂයට අදාළ පුතිදානය  2 වේ. 2 අදාල වර්ණය එම ලක්ෂයට යෙදිය යුතු ය. මෙලෙස එක් එක් ලක්ෂයට අදාළ වර්ණය යෙදීමෙන් මෝස්තරය ලැබේ.

මැන්ඩල්බ්‍රෝල්ට් මෝස්තරය ද මෙයට බොහෝ සමාන වේ නමුත් එහිදි ආරම්භක අගය ලෙස 0+0i ගන්නා අතර ආගන්ඩ් සටහනේ ලක්ෂයකින් නිරූපනයවන සංඛ්‍යාව නියතය වෙනුවට යොදා ගනී. එනම්,
xn+1=f(xn)+c හි c හි අගය ලක්ෂයෙන් ලක්ෂයට වෙනස් වේ xn හැම විටම ශූන්‍යෙයන් ආරම්භ වේ
අනිත් කරුණු පෙර පරිදි ම වේ

රිගණක භාවිතය
මෙම මෝස්තර සැකසීම සඳහා පරිගණක පාවිච්චි නො කර කිරීම ඉතා දුෂ්කර වේ
නමුත් පරිගණකයෙන් මෙය ඉතා පහසුවෙන් කල හැක
මේ සඳහා visual basic .net හි ඇති SetPixel(x,y,color) මෙතර්ඩය යොදා ගත හැක
මා මෙහි දී ඉදිරිපත් කලේ ෆ්‍රැක්ටල් සෑදීමට අදාළ තාක්ෂණික කරුණු වන අතර මෙම විශ්‍යයට අයත් දාර්ශනික කරුණු ගණිතය ගැන දැනුම ඇත්තන් විසින් සිංහල භාෂාවෙන් පල කරනු ඇතැයි බලාපොරොත්තු වෙමි.



No comments:

Post a Comment