පටුන[සඟවන්න][පෙන්වන්න]
ඔබ විශ්ව විද්යාල ශිෂ්යයෙක් වුවත්, දත්ත විද්යාවේ රැකියාවක් කළත්, ගණිතය වටා යාමක් නැත.
දත්ත විද්යාව යනු ව්යවහාරික ගණිතය/සංඛ්යාලේඛන වර්ගයක් යැයි කෙනෙකුට තර්ක කළ හැකිය. NumPy, SciPy, Scikit- ඉගෙන ගන්න, සහ TensorFlow ප්රමාණාත්මකව ගණිතය සමඟ ගනුදෙනු කරන පයිතන් පුස්තකාලවලින් කිහිපයක් පමණි.
කෙසේ වෙතත්, ගණිතමය සංකේත සමඟ පැහැදිලිව ගනුදෙනු කිරීම සඳහා ඇත්තේ එක් තරඟකරුවෙකු පමණි: SymPy.
අපි SymPy ගැන සියල්ල සොයා බලමු.
මොකක්ද SymPy?
SymPy යනු පයිතන් සංකේතාත්මක ගණිත පුස්තකාලයකි. එය තේරුම් ගත හැකි සහ පහසුවෙන් ප්රසාරණය කළ හැකි පරිදි කේතය හැකිතාක් මූලික ලෙස තබා ගනිමින් සම්පූර්ණ විශේෂාංග සහිත පරිගණක වීජ ගණිත පද්ධතියක් (CAS) වීමට අපේක්ෂා කරයි.
එය සම්පූර්ණයෙන්ම පයිතන් වලින් ලියා ඇත. එය අත්තනෝමතික පාවෙන-ලක්ෂ්ය ගණිතය සඳහා පිරිසිදු පයිතන් පුස්තකාලයක් වන mpmath මත පමණක් රඳා පවතින බැවින් එය භාවිතා කිරීම සරල ය.
පුස්තකාලයක් ලෙස, එය නිර්මාණය කර ඇත්තේ උපයෝගීතාව පිළිබඳ සැලකිය යුතු අවධාරණයක් මනසේ තබාගෙන ය. එහි යෙදුම් වැඩසටහන් අතුරුමුහුණත (API) සැලසුම් කිරීමේදී විස්තීරණතාව ඉතා වැදගත් වේ.
එහි ප්රතිඵලයක් ලෙස එය පයිතන් භාෂාව වැඩිදියුණු කිරීමට කිසිදු උත්සාහයක් නොගනී. පරමාර්ථය වන්නේ පරිශීලකයින්ට එය වෙනත් අය සමඟ භාවිතා කිරීමට හැකි වීමයි පයිතන් පුස්තකාල ඔවුන්ගේ කාර්ය ප්රවාහය තුළ, අන්තර්ක්රියාකාරී පරිසරයක හෝ විශාල පද්ධතියක වැඩසටහන්ගත සංරචකයක් ලෙස වේවා.
SymPy, පුස්තකාලයක් ලෙස, ගොඩනඟන ලද චිත්රක නොමැත පරිශීලක අතුරුමුහුණත (GUI). පුස්තකාලය යනු:
- BSD බලපත්රය යටතේ බලපත්ර ලබා ඇති බැවින්, කථනය සහ බියර් යන දෙකම නොමිලේ.
- Python මත පදනම් වූ: එය සම්පූර්ණයෙන්ම Python හි සංවර්ධනය කර ඇති අතර Python එහි භාෂාව ලෙස භාවිතා කරයි.
- සැහැල්ලු වන්නේ එය පිරිසිදු mpmath මත පමණක් රඳා පවතින බැවිනි පයිතන් පුස්තකාලය අත්තනෝමතික පාවෙන ලක්ෂ්ය අංක ගණිතය සඳහා, එය භාවිතා කිරීම සරල කරයි.
- අන්තර්ක්රියාකාරී මෙවලමක් ලෙස භාවිතා කිරීමට අමතරව වෙනත් වැඩසටහන් වලට ඇතුළත් කර අභිරුචි කාර්යයන් සමඟින් වෙනස් කළ හැක.
SymPy භාවිතා කරන්නේ ඇයි?
Sage, පරිගණක වීජ ගණිත පද්ධතියක්, Python එහි ක්රමලේඛන භාෂාව ලෙස ද භාවිතා කරයි. අනෙක් අතට, Sage අති විශාලයි, ගිගාබයිට් එකකට වඩා බාගත කිරීම අවශ්ය වේ. එය සැහැල්ලු වීම වාසියක් ඇත.
සංයුක්ත වීමට අමතරව, එය Python හැර වෙනත් පරායත්තතාවයක් නොමැත, එය සෑම තැනකම ප්රායෝගිකව භාවිතා කිරීමට ඉඩ සලසයි.
තවද, Sage සහ SymPy හි අරමුණු සමාන නොවේ. Sage පූර්ණ-විශේෂාංග ගණිත පද්ධතියක් වීමට අපේක්ෂා කරයි, එය එසේ කරන්නේ ප්රධාන විවෘත-මූලාශ්ර ගණිත පද්ධති සියල්ල එකකට ඒකාබද්ධ කිරීමෙනි.
ඔබ ඒකාබද්ධ කිරීම වැනි Sage ශ්රිතයක් භාවිතා කරන විට, එය එහි අඩංගු විවෘත මූලාශ්ර පැකේජ වලින් එකක් ඉල්ලා සිටී. යථාර්ථයේ දී, එය Sage තුළ ගොඩනගා ඇත. අනෙක් අතට, SymPy, සියළුම ක්රියාකාරීත්වයන් එය තුළම ක්රියාත්මක කර ස්වයං අන්තර්ගත පද්ධතියක් වීමට අපේක්ෂා කරයි.
පුස්තකාලයක් ලෙස ක්රියා කිරීමට එහි ඇති හැකියාව වැදගත් අංගයකි. බොහෝ පරිගණක වීජ ගණිත පද්ධති අන්තර්ක්රියාකාරී පරිසරවල භාවිතා කිරීමට අදහස් කරන නමුත් ඒවා ස්වයංක්රීය කිරීමට හෝ පුළුල් කිරීමට අපහසු වේ.
එය Python හි අන්තර්ක්රියාකාරී ලෙස භාවිතා කළ හැක හෝ ඔබගේම Python වැඩසටහනකට ආයාත කළ හැක. එය ඔබගේම චර්යාවන් සමඟ පහසුවෙන් දිගු කිරීම සඳහා API ද ඇත.
SymPy ස්ථාපනය කිරීම
ඔබගේ පරිසරයේ ස්ථාපනය කිරීමට පහත විධානය භාවිතා කරන්න.
SymPy සංකේත
අපි දැන් එය සමඟ ආරම්භ කරමු! එහි මූලික වස්තුව සංකේතයකි. SymPy හි, ඔබට ලිවීමෙන් x සංකේතයක් ජනනය කළ හැකිය:
ඉහත කේතය x සංකේතය ජනනය කරයි. එහි ඇති සංකේත නොදන්නා අගයන් නියෝජනය කරන ගණිතමය සංකේත අනුකරණය කිරීමට අදහස් කරයි.
ප්රතිඵලයක් වශයෙන්, පහත ගණනය කිරීම් පහත දැක්වේ:
ඉහත පෙන්වා ඇති පරිදි, x සංකේතය නොදන්නා ප්රමාණයකට සමානව ක්රියා කරයි. ඔබට බොහෝ සංකේත සෑදීමට අවශ්ය නම්, ඒවා පහත පරිදි ලියන්න:
ඔබ මෙම අවස්ථාවෙහි එකම මොහොතේ y, සහ z යන සංකේත දෙකක් සාදා ඇත. මෙම සංකේත දැන් එකතු කිරීමට, අඩු කිරීමට, ගුණ කිරීමට සහ අවශ්ය පරිදි බෙදීමට හැකිය:
SymPy කාර්යයන්
1. sympify() ශ්රිතය
sympify() ක්රමය අත්තනෝමතික ප්රකාශනයක් SymPy ප්රකාශනයක් බවට පරිවර්තනය කරයි. එය නිඛිල වැනි සම්මත පයිතන් වස්තු පරිවර්තනය කරයි.
තන්තු ඒවායේ ප්රකාශන මෙන්ම පූර්ණ සංඛ්යා ආදියට පරිවර්තනය වේ.
2. evalf() ශ්රිතය
මෙම ශ්රිතය ඉලක්කම් 100ක් දක්වා පාවෙන ලක්ෂ්ය නිරවද්යතාවයක් සහිත නිශ්චිත සංඛ්යාත්මක ප්රකාශනයක් ඇගයීමට ලක් කරයි.
ශ්රිතය අතිරේකව සංකේත සඳහා සංඛ්යාත්මක අගයන් සහිත ශබ්දකෝෂ වස්තුවක් උප තර්කයක් ලෙස පිළිගනී. පහත වාක්ය ඛණ්ඩය සලකා බලන්න:
පාවෙන ලක්ෂ්ය නිරවද්යතාවය පෙරනිමියෙන් ඉලක්කම් 15 ට සකසා ඇත. කෙසේ වෙතත්, මෙය 1 සහ 100 අතර ඕනෑම අංකයකට වෙනස් කළ හැකිය.
පහත සමීකරණය ඉලක්කම් 20 ක නිරවද්යතාවයකට ඇගයීමට ලක් කෙරේ.
3. Lambdify() ශ්රිතය
Lambdify යනු එහි ප්රකාශන Python ශ්රිත බවට පරිවර්තනය කරන ශ්රිතයකි. පුළුල් පරාසයක අගයන් හරහා ප්රකාශනයක් ඇගයීමේදී evalf() ක්රමය අකාර්යක්ෂම වේ.
Lambdify Lambda ශ්රිතයකට සමානව ක්රියා කරයි, එය SymPy නම් ලබා දී ඇති සංඛ්යාත්මක පුස්තකාලයේ නම් වලට පරිවර්තනය කරයි, එය සාමාන්යයෙන් NumPy වේ.
පෙරනිමියෙන්, Lambdify ගණිත සම්මත පුස්තකාල ක්රියාත්මක කිරීම් සඳහා යොදනු ලැබේ.
විශේෂාංග
පුස්තකාලයේ වැදගත්ම විශේෂාංග අතලොස්සක් මෙහි ලැයිස්තුගත කර ඇත; තවත් බොහෝ දේ ඇතුළත් කර නැත, නමුත් ඔබට ඒවා පරීක්ෂා කළ හැකිය මෙහි.
1. මූලික හැකියාවන්
- මූලික ගණිතය: +, -, *, /, සහ ** ක්රියාකරුවන්ට සහය දක්වයි (බලය)
- බහුපද ප්රසාරණයකි
- පූර්ණ සංඛ්යා, තාර්කික සහ අත්තනෝමතික නිරවද්යතාවයෙන් පාවෙන
- ත්රිකෝණමිතික, අධිභෞතික සහ ඝාතීය ශ්රිත, මූලයන්, ලඝුගණක, නිරපේක්ෂ අගය, ගෝලාකාර හාර්මොනික්ස්, සාධක සහ ගැමා ශ්රිත, සීටා ශ්රිත, බහුපද, සහ විශේෂ ශ්රිත
- හුවමාරු නොවන සංකේත
- ගැලපෙන රටා
2. ගණනය
- අනුකලනය: මෙම ක්රමය පුළුල් කරන ලද Risch-Norman heuristic භාවිතා කරයි
- අවකලනය.
- සීමා කාර්යයන්
- ලෝරන්ට් ටේලර්ගේ කතා මාලාව
3. බහුපද
- Gröbner පදනම්
- අර්ධ කොටස්වල වියෝජනය
- අංශය, gcd ප්රතිඵල මූලික ගණිතයට උදාහරණ වේ.
4. සංයෝජන
- ප්රේරණයන්
- අළු සහ පෘෆර් කේත
- සංයෝජන, කොටස්, උප කුලක
- Polyhedral, Rubik, Symmetric, සහ වෙනත් Permutation කණ්ඩායම්
5. විවික්ත ගණිතය
- සාරාංශ
- තාර්කික ප්රකාශන
- ද්විපද සංගුණක
- සංඛ්යා න්යාය
අයදුම්පත්
1. ගොඩනැගිලි කැල්ක්යුලේටරය
2. පරිගණක වීජ ගණිත පද්ධති
අනෙකුත් පරිගණක වීජ ගණිත පද්ධති මෙන් නොව, Symbol() ශ්රිතය භාවිතයෙන් එහි ඇති සංකේතාත්මක විචල්යයන් ඔබ අතින් ප්රකාශ කළ යුතුය.
3. ගණනය
සියලුම ආකාරයේ ගණනය කිරීම් සංකේතාත්මකව සිදු කිරීමට සංකේතාත්මක ගණනය කිරීමේ පද්ධතියක ඇති හැකියාව එහි ප්රධාන ශක්තියයි.
එයට ප්රකාශ සරල කිරීම, සංකේතාත්මකව, ව්යුත්පන්නයන්, අනුකලනය සහ සීමාවන් ගණනය කිරීම, සමීකරණ විසඳීම, න්යාස සමඟ අන්තර් ක්රියා කිරීම සහ තවත් බොහෝ දේ කළ හැකිය.
ඔබේ ආහාර රුචිය තෘප්තිමත් කිරීමට, මෙන්න සංකේතාත්මක බලයේ රසය.
SymPy සමඟ ඔබට තවත් කුමක් කළ හැකිද?
අමතර ගැටළු ගැන ගැඹුරින් කල්පනා කරනවා වෙනුවට, ඔබේ කුසලතා වැඩි දියුණු කිරීමට උපකාර වන සම්පත් ලැයිස්තුවක් ඔබට ලබා දීමට මට ඉඩ දෙන්න:
- න්යාස සහ රේඛීය වීජ ගණිතය: එයට න්යාස සමඟ ක්රියා කළ හැකි අතර මූලික රේඛීය වීජ ගණිත මෙහෙයුම් සිදු කළ හැකිය. භාෂාව NumPy හි වාක්ය ඛණ්ඩයට සමාන වේ. කෙසේ වෙතත්, සැලකිය යුතු වෙනස්කම් තිබේ. ආරම්භ කිරීමට, විමර්ශනය කරන්න matrices පුස්තකාලයේ.
- ප්රකාශනය: එය ප්රකාශන පිළිබඳ වාර්තාවක් තබා ගැනීමට ගසක් පදනම් වූ ව්යුහයක් වන ප්රකාශන ගසක් උත්තේජනය කරයි. බලන්න ප්රකාශන ගස් ඔබට ඔවුන්ගේ අභ්යන්තර ක්රියාකාරිත්වය ගැන වැඩිදුර ඉගෙන ගැනීමට අවශ්ය නම්.
- ව්යුත්පන්න සහ අනුකලනය: එය හඳුන්වාදීමේ කලන පන්තියේ (සිතීමේ අඩුව) ඔබ ඉගෙන ගන්නා බොහෝ දේ ඉටු කළ හැක. අපගේ කාර්යය දෙස බැලීමෙන් ඔබට ආරම්භ කළ හැකිය බෙදීම් SymPy හි.
- NumPy සමඟ සම්බන්ධතාවය: NumPy සහ SymPy යන දෙකම ගණිතයට අදාළ පුස්තකාල වේ. කෙසේ වෙතත්, ඔවුන් මූලික වශයෙන් වෙනස් වේ! NumPy සංඛ්යා සමඟ ක්රියා කරන අතර එය සංකේතාත්මක ප්රකාශන සමඟ ක්රියා කරයි.
- සරල කිරීම්: එය ප්රකාශන ස්වයංක්රීයව සරල කිරීමට තරම් බුද්ධිමත් ය. කෙසේ වෙතත්, ඔබට මෙය වඩාත් සියුම් පාලනයක් අවශ්ය නම්, එය දෙස බලන්න සරල කිරීම්.
නිගමනය
SymPy යනු සංකේතාත්මක ගණිතය සඳහා බලවත් පුස්තකාලයකි.
ඔබට විචල්ය සහ ශ්රිත නිර්මාණය කිරීමට මෙන්ම ගණිතමය ප්රකාශයන් සංකේතාත්මකව දිගු කිරීමට සහ සරල කිරීමට සහ සමීකරණ, අසමානතා සහ සමීකරණ/අසමානතා පද්ධති පවා විසඳීමට ඔබට එය භාවිතා කළ හැක.
ඔබට ස්ක්රිප්ට් පෙළෙහි සහ කෙලින්ම ටර්මිනලයේ (හෝ Jupyter සටහන් පොත්) සිදු කරන ලද ගණනය කිරීම් පිළිබඳ ඉක්මන් තක්සේරුවක් සහ වඩා හොඳ චිත්රක නිරූපණයක් ලබා ගැනීමට.
ඔබ SymPy හි තවත් ගවේෂණය කිරීමට සූදානම්ද? අදහස් දැක්වීමේදී අපට දන්වන්න.
ඔබමයි