பைத்தானின் சிக்கல் எண்களின் திறனைத் திறந்திடுங்கள். இந்த வழிகாட்டி அடிப்படை செயல்பாடுகள், செவ்வக மற்றும் துருவ வடிவங்கள், மாற்றங்கள் மற்றும் உலகெங்கிலும் உள்ள பொறியாளர்கள் மற்றும் விஞ்ஞானிகளுக்கான மேம்பட்ட பயன்பாடுகளை உள்ளடக்கியது.
பைத்தான் சிக்கல் எண்கள்: கணித செயல்பாடுகள் மற்றும் உலகளாவிய பயன்பாடுகளுக்கான துருவ வடிவத்தில் தேர்ச்சி பெறுதல்
கணிதம் மற்றும் அதன் பயன்பாடுகளான பொறியியல், இயற்பியல், மற்றும் தரவு அறிவியல் ஆகியவற்றின் பரந்த நிலப்பரப்பில், சிக்கல் எண்கள் ஒரு இன்றியமையாத கருவியாக நிற்கின்றன. அவை ஒரு சுருக்கமான கருத்து மட்டுமல்ல, மாற்று மின்னோட்டங்கள், குவாண்டம் நிலைகள் மற்றும் சிக்னல் பகுப்பாய்வு போன்ற மெய் எண்களால் மட்டும் போதுமானதாக விவரிக்க முடியாத நிகழ்வுகளை மாதிரியாக்கப் பயன்படும் ஒரு சக்திவாய்ந்த கட்டமைப்பாகும். பைத்தான், அதன் நேர்த்தியான தொடரியல் மற்றும் வலுவான நிலையான நூலகத்துடன், சிக்கல் எண்களுக்கு முதல் தர ஆதரவை வழங்குகிறது, இது அவற்றின் ஆய்வு மற்றும் பயன்பாட்டிற்கான ஒரு சிறந்த தளமாக அமைகிறது.
இந்த விரிவான வழிகாட்டி பைத்தானில் உள்ள சிக்கல் எண்களை எளிதாக்குவதை நோக்கமாகக் கொண்டுள்ளது, அவற்றின் அடிப்படை பிரதிநிதித்துவம் மற்றும் அடிப்படைக் கணிதத்திலிருந்து அவற்றின் துருவ வடிவத்தின் முக்கிய புரிதல் மற்றும் பயன்பாடு வரையிலான ஒரு பயணத்திற்கு உங்களை அழைத்துச் செல்கிறது. பல்வேறு கணித செயல்பாடுகளை எவ்வாறு திறமையாகச் செய்வது என்பதை நாம் ஆராய்வோம் மற்றும் செவ்வக மற்றும் துருவ பிரதிநிதித்துவத்தை எப்போது பயன்படுத்த வேண்டும் என்பதைப் பற்றி விவாதிப்போம், இது பல்வேறு தொழில்நுட்ப பின்னணிகளைக் கொண்ட உலகளாவிய பார்வையாளர்களுக்கு ஏற்றதாக இருக்கும்.
சிக்கல் எண்களின் சாரம்: ஒரு உலகளாவிய பார்வை
ஒரு சிக்கல் எண் பொதுவாக a + bj என்ற வடிவத்தில் வெளிப்படுத்தப்படுகிறது, இதில் 'a' என்பது மெய்ப் பகுதி, 'b' என்பது கற்பனைப் பகுதி, மற்றும் 'j' (அல்லது கணிதத்தில் 'i') என்பது கற்பனை அலகு, இது -1 இன் வர்க்கமூலமாக வரையறுக்கப்படுகிறது. தூய கணிதத்தில் 'i' என்பது தரநிலையாக இருந்தாலும், பொறியியல் துறைகளில், குறிப்பாக மின் பொறியியலில், மின்னோட்டத்தைக் குறிக்கும் 'i' உடன் குழப்பத்தைத் தவிர்க்க 'j' பொதுவாகப் பயன்படுத்தப்படுகிறது. பைத்தான் 'j' குறியீட்டைப் பின்பற்றுகிறது, இந்த எண்களைக் குறிப்பிட ஒரு நேரடியான மற்றும் உள்ளுணர்வு வழியை வழங்குகிறது.
வரலாற்று ரீதியாக, சிக்கல் எண்களின் வளர்ச்சி மெய் எண்களின் எல்லைக்குள் முன்னர் தீர்க்க முடியாததாகக் கருதப்பட்ட சமன்பாடுகளுக்குத் தீர்வுகளை வழங்கியது. அவற்றின் பயன்பாடு அதிலிருந்து அதிவேகமாக விரிவடைந்துள்ளது, விண்வெளித் துறையில் கட்டுப்பாட்டு அமைப்புகள் வடிவமைப்பு, திரவ இயக்கவியல் உருவகப்படுத்துதல்கள், மற்றும் பட செயலாக்கம் மற்றும் இயந்திர கற்றலின் பின்னணியில் உள்ள அதிநவீன வழிமுறைகள் போன்ற பல்வேறு துறைகளில் தாக்கத்தை ஏற்படுத்துகிறது. பைத்தானில் அவற்றைப் புரிந்துகொள்வது உலகெங்கிலும் உள்ள தொழில்கள் மற்றும் ஆராய்ச்சி நிறுவனங்களில் எதிரொலிக்கும் நடைமுறைப் பயன்பாடுகளுக்கு கதவுகளைத் திறக்கிறது.
பைத்தானில் சிக்கல் எண்களைக் குறிப்பிடுதல்
பைத்தான் சிக்கல் எண்களை வரையறுப்பதை நம்பமுடியாத அளவிற்கு எளிதாக்குகிறது. நீங்கள் கற்பனைப் பகுதிக்கு 'j' ஐ சேர்த்தால் போதும்:
my_complex = 3 + 4j
நீங்கள் complex()
கட்டமைப்பியைப் பயன்படுத்தியும் சிக்கல் எண்களை உருவாக்கலாம்:
another_complex = complex(5, -2) # 5 - 2j ஐக் குறிக்கிறது
பைத்தானில் உள்ள ஒவ்வொரு சிக்கல் எண் பொருளுக்கும் இரண்டு பண்புக்கூறுகள் உள்ளன: real
மற்றும் imag
, அவை முறையே மெய் மற்றும் கற்பனைப் பகுதிகளை மிதவைப் புள்ளி எண்களாகத் தருகின்றன:
print(my_complex.real) # வெளியீடு: 3.0
print(my_complex.imag) # வெளியீடு: 4.0
கூறுகளுக்கான இந்த நேரடி அணுகல் பல கணக்கீடுகளுக்கு அடிப்படையானது, உலகளவில் உருவாக்குநர்கள் மற்றும் விஞ்ஞானிகள் தங்கள் மாதிரிகள் மற்றும் பகுப்பாய்வுகளுக்குத் தேவையான தரவைப் பிரித்தெடுக்க அனுமதிக்கிறது.
சிக்கல் எண்களுடன் அடிப்படை கணித செயல்பாடுகள்
சிக்கல் எண்களுக்கான பைத்தானின் உள்ளமைக்கப்பட்ட ஆதரவு அனைத்து நிலையான எண்கணித செயல்பாடுகளுக்கும் விரிவடைகிறது. இந்த செயல்பாடுகள் சிக்கல் இயற்கணிதத்தின் அடிப்படைக் விதிகளைப் பின்பற்றுகின்றன, கணக்கீடுகள் கணித ரீதியாக சரியானதாகவும் சீரானதாகவும் இருப்பதை உறுதி செய்கின்றன.
1. கூட்டல் மற்றும் கழித்தல்
சிக்கல் எண்களைக் கூட்டுவதும் கழிப்பதும் அவற்றின் மெய் மற்றும் கற்பனைப் பகுதிகளை முறையே கூட்டுவது அல்லது கழிப்பதாகும். இந்த செயல்பாடு செவ்வக வடிவத்தில் நேரடியானது மற்றும் உள்ளுணர்வு மிக்கது.
z₁ = a + bj மற்றும் z₂ = c + dj என்றால்:
- z₁ + z₂ = (a + c) + (b + d)j
- z₁ - z₂ = (a - c) + (b - d)j
பைத்தானில்:
z1 = 3 + 4j
z2 = 1 - 2j
sum_z = z1 + z2
print(f"கூட்டல்: {sum_z}") # வெளியீடு: கூட்டல்: (4-2j)
diff_z = z1 - z2
print(f"வித்தியாசம்: {diff_z}") # வெளியீடு: வித்தியாசம்: (2+6j)
இந்த செயல்பாடுகள் மெய் எண்களைக் கூட்டுவது போலவே அடிப்படையானவை, மேலும் மின்சுற்றுப் பகுப்பாய்வில் சிக்கல் அளவுகளை இணைப்பதற்கோ அல்லது இயற்பியலில் திசையன் கூட்டல்களுக்கோ முக்கியமானவை.
2. பெருக்கல்
செவ்வக வடிவத்தில் சிக்கல் எண்களின் பெருக்கல், இரண்டு ஈருறுப்புக் கோவைகளைப் பெருக்குவதைப் போலவே, பங்கீட்டுப் பண்பைப் பின்பற்றுகிறது:
z₁ = a + bj மற்றும் z₂ = c + dj என்றால்:
- z₁ * z₂ = (ac - bd) + (ad + bc)j
j² = -1 என்பதை நினைவில் கொள்க.
பைத்தானில்:
z1 = 3 + 4j
z2 = 1 - 2j
prod_z = z1 * z2
print(f"பெருக்கல்: {prod_z}") # வெளியீடு: பெருக்கல்: (11-2j)
இந்த செயல்பாடு AC சுற்றுகளில் மின்மறுப்புக் கணக்கீடுகள் போன்ற பகுதிகளில் முக்கியமானது, அங்கு மின்தடையங்கள், மின்தேக்கிகள் மற்றும் மின்தூண்டிகள் ஒட்டுமொத்த மின்மறுப்பிற்கு சிக்கல் மதிப்புகளை வழங்குகின்றன.
3. வகுத்தல்
வகுத்தல் சற்று சிக்கலானது. சிக்கல் எண்களை வகுக்க, நாம் பொதுவாக தொகுதியையும் பகுதியையும் பகுதியின் இணை எண்ணால் பெருக்குகிறோம். இந்த செயல்முறை பகுதியிலிருந்து கற்பனைப் பகுதியை நீக்குகிறது.
z₁ = a + bj மற்றும் z₂ = c + dj என்றால்:
z₁ / z₂ = ( (ac + bd) / (c² + d²) ) + ( (bc - ad) / (c² + d²) )j
பைத்தானில்:
z1 = 3 + 4j
z2 = 1 - 2j
div_z = z1 / z2
print(f"வகுத்தல்: {div_z}") # வெளியீடு: வகுத்தல்: (-1+2j)
சிக்கல் வகுத்தல் வடிகட்டி வடிவமைப்பு மற்றும் அதிர்வெண் களப் பகுப்பாய்வில் அடிக்கடி பயன்படுத்தப்படுகிறது, அங்கு சிக்கல் பரிமாற்ற செயல்பாடுகள் சம்பந்தப்பட்டுள்ளன.
4. சிக்கல் இணை எண்
ஒரு சிக்கல் எண் a + bj இன் இணை எண் a - bj ஆகும். வடிவியல் ரீதியாக, இது சிக்கல் தளத்தில் மெய் அச்சின் குறுக்கே ஒரு பிரதிபலிப்பு ஆகும். இது எண்ணின் மேல் ஒரு கோடு மூலம் குறிக்கப்படுகிறது (எ.கா., z̄).
பைத்தான் இதற்காக conjugate()
முறையை வழங்குகிறது:
z = 3 + 4j
conj_z = z.conjugate()
print(f"{z} இன் இணை எண்: {conj_z}") # வெளியீடு: (3+4j) இன் இணை எண்: (3-4j)
இணை எண் அளவுகளைக் கணக்கிடுவதற்கு (|z|² = z * z̄ ஆக) மற்றும் மேலே காணப்பட்டபடி வகுத்தலுக்கு இன்றியமையாதது. இது குவாண்டம் இயக்கவியல் மற்றும் சிக்னல் செயலாக்கத்தில் பொருத்தப்பட்ட வடிகட்டுதல் போன்ற செயல்பாடுகளுக்கு ஒரு குறிப்பிடத்தக்க பங்கைக் கொண்டுள்ளது.
துருவ வடிவத்தைப் புரிந்துகொள்ளுதல்: அளவு மற்றும் கட்டம்
செவ்வக வடிவம் (a + bj) கூட்டல் மற்றும் கழித்தலுக்கு உள்ளுணர்வு மிக்கதாக இருந்தாலும், பல பயன்பாடுகள், குறிப்பாக சுழற்சி, அளவிடுதல் மற்றும் ஹார்மோனிக் அலைவுகள் சம்பந்தப்பட்டவை, துருவ வடிவத்திலிருந்து பெரிதும் பயனடைகின்றன. துருவ வடிவம் ஒரு சிக்கல் எண் z ஐ அதன் அளவு (அல்லது மட்டு), r அல்லது |z| எனக் குறிக்கப்படுகிறது, மற்றும் அதன் கோணம் (அல்லது கட்டக் கோணம்), θ (தீட்டா) அல்லது arg(z) எனக் குறிக்கப்படுகிறது, ஆகியவற்றின் அடிப்படையில் வெளிப்படுத்துகிறது.
இந்த உறவு z = r * (cos(θ) + j * sin(θ)) மூலம் வழங்கப்படுகிறது. இது பெரும்பாலும் ஆய்லரின் சூத்திரத்தைப் பயன்படுத்தி மிகவும் சுருக்கமாக எழுதப்படுகிறது: z = r * e^(jθ), இங்கு e என்பது ஆய்லரின் எண் (தோராயமாக 2.71828).
வடிவியல் ரீதியாக, r என்பது சிக்கல் தளத்தில் சிக்கல் எண்ணைக் குறிக்கும் புள்ளியிலிருந்து தோற்றத்திற்கான தூரம், மற்றும் θ என்பது நேர்மறை மெய் அச்சிலிருந்து தோற்றத்தை அந்தப் புள்ளியுடன் இணைக்கும் கோட்டுக் கூறு வரை கடிகார எதிர்திசையில் அளவிடப்படும் கோணம் ஆகும்.
பெருக்கல், வகுத்தல், அடுக்குகள் மற்றும் மூலங்களைக் கையாளும்போது துருவ வடிவத்தின் பயன்பாடு தெளிவாகத் தெரிகிறது, ஏனெனில் இந்த செயல்பாடுகள் அவற்றின் செவ்வக வடிவ समकक्षங்களை விட கணிசமாக எளிமையாகின்றன. இந்த எளிமை, அலை நிகழ்வுகள், சுழலும் அமைப்புகள் மற்றும் பல்வேறு துறைகளில் மாற்றங்களுடன் பணிபுரியும் பொறியாளர்கள் மற்றும் விஞ்ஞானிகளுக்கு ஒரு பெரிய நன்மையாகும்.
பைத்தானில் அளவு மற்றும் கட்டத்தைக் கணக்கிடுதல்
பைத்தானின் உள்ளமைக்கப்பட்ட செயல்பாடுகள் மற்றும் cmath
தொகுதி துருவ ஆயங்களுடன் பணிபுரிய அவசியமானவை. cmath
தொகுதி சிக்கல் எண் கணிதத்திற்கான செயல்பாடுகளை வழங்குகிறது, இது math
தொகுதியின் சிக்கல் சமமானதாக செயல்படுகிறது.
அளவு (தனி மதிப்பு)
z = a + bj இன் அளவு r என்பது √(a² + b²) எனக் கணக்கிடப்படுகிறது. பைத்தானில், நீங்கள் உள்ளமைக்கப்பட்ட abs()
செயல்பாட்டைப் பயன்படுத்தலாம்:
import math
z = 3 + 4j
magnitude = abs(z)
print(f"{z} இன் அளவு: {magnitude}") # வெளியீடு: (3+4j) இன் அளவு: 5.0
இது math.sqrt(z.real**2 + z.imag**2)
க்கு சமமானது, ஆனால் சிக்கல் எண்களுக்கு abs()
மிகவும் சுருக்கமானது மற்றும் மரபு சார்ந்தது.
கட்டம் (கோணம்)
கட்டக் கோணம் θ பொதுவாக ஆர்க்டேன்ஜென்ட் செயல்பாட்டைப் பயன்படுத்தி கணக்கிடப்படுகிறது. குறிப்பாக, θ = atan2(b, a), இங்கு atan2
கோணத்தின் காற்பகுதியை சரியாகக் கையாளுகிறது. கோணம் ரேடியன்களில் வெளிப்படுத்தப்படுகிறது.
cmath.phase()
செயல்பாடு கட்டக் கோணத்தைத் தருகிறது:
import cmath
z = 3 + 4j
phase = cmath.phase(z)
print(f"{z} இன் கட்டம் (ரேடியன்கள்): {phase}") # வெளியீடு: (3+4j) இன் கட்டம் (ரேடியன்கள்): 0.9272952180016122
print(f"{z} இன் கட்டம் (பாகைகள்): {math.degrees(phase)}") # வெளியீடு: (3+4j) இன் கட்டம் (பாகைகள்): 53.13010235415598
ஒரு சிக்கல் அளவின் சுழற்சி அல்லது திசையன் அம்சத்தைப் புரிந்துகொள்வதில் கட்டம் முக்கியமானது, எடுத்துக்காட்டாக, ஒரு AC சுற்றின் கட்ட மாற்றம் அல்லது வடிவியல் மாற்றங்களில் சுழற்சிக் கோணம்.
செவ்வக மற்றும் துருவ வடிவங்களுக்கு இடையில் மாற்றுதல்
செவ்வக மற்றும் துருவ வடிவங்களுக்கு இடையில் தடையின்றி மாற்றும் திறன் ஒவ்வொரு பிரதிநிதித்துவத்தின் பலங்களையும் பயன்படுத்துவதற்கு அடிப்படையானது. பைத்தானின் cmath
தொகுதி இந்த மாற்றங்களுக்கு வசதியான செயல்பாடுகளை வழங்குகிறது.
செவ்வகத்திலிருந்து துருவத்திற்கு மாற்றுதல்: cmath.polar()
cmath.polar(z)
செயல்பாடு ஒரு சிக்கல் எண் z ஐ செவ்வக வடிவத்தில் (a + bj) எடுத்து, ஒரு ஜோடி (r, θ) ஐத் தருகிறது, இங்கு r என்பது அளவு மற்றும் θ என்பது ரேடியன்களில் உள்ள கட்டம் ஆகும்.
import cmath
z_rect = 3 + 4j
magnitude, phase_rad = cmath.polar(z_rect)
print(f"செவ்வக வடிவம்: {z_rect}")
print(f"துருவ வடிவம் (அளவு, கட்டம்_ரேடியன்கள்): ({magnitude}, {phase_rad})")
# வெளியீடு: துருவ வடிவம் (அளவு, கட்டம்_ரேடியன்கள்): (5.0, 0.9272952180016122)
ஒரு மின்காந்த அலை அல்லது ஒரு அலைவின் ஒட்டுமொத்த வலிமை மற்றும் திசைப் பண்பு போன்ற சிக்கல் அளவுகளின் உள்ளார்ந்த பண்புகளை பகுப்பாய்வு செய்வதற்கு இந்த மாற்றம் விலைமதிப்பற்றது.
துருவத்திலிருந்து செவ்வகத்திற்கு மாற்றுதல்: cmath.rect()
cmath.rect(r, theta)
செயல்பாடு அளவு r மற்றும் கட்டக் கோணம் θ (ரேடியன்களில்) ஆகியவற்றை எடுத்து, செவ்வக வடிவத்தில் (a + bj) தொடர்புடைய சிக்கல் எண்ணைத் தருகிறது.
import cmath
magnitude = 5.0
phase_rad = 0.9272952180016122 # தோராயமாக 53.13 பாகைகள்
z_polar_converted = cmath.rect(magnitude, phase_rad)
print(f"துருவ வடிவம் (அளவு, கட்டம்_ரேடியன்கள்): ({magnitude}, {phase_rad})")
print(f"மாற்றப்பட்ட செவ்வக வடிவம்: {z_polar_converted}")
# வெளியீடு: மாற்றப்பட்ட செவ்வக வடிவம்: (3.0000000000000004+4j) - மிதவைப் புள்ளி துல்லிய வேறுபாடு இயல்பானது.
இந்த மாற்றம் ஒரு சிக்கல் எண்ணை அதன் அளவு மற்றும் கட்டத்திலிருந்து புனரமைக்க அனுமதிக்கிறது, இது பெரும்பாலும் ஒலிபரப்பியல் அல்லது நில அதிர்வுத் தரவு செயலாக்கம் போன்ற துறைகளில் அளவீடுகள் அல்லது கோட்பாட்டு வருவித்தல்களின் நேரடி விளைவாகும்.
துருவ வடிவத்தில் மேம்பட்ட செயல்பாடுகள் மற்றும் பயன்பாடுகள்
துருவ வடிவத்தின் உண்மையான சக்தி செவ்வக வடிவத்தில் சிரமமான செயல்பாடுகளைச் செய்யும்போது பிரகாசிக்கிறது, குறிப்பாக பெருக்கல், வகுத்தல், அடுக்குக்கு உயர்த்துதல் மற்றும் மூலங்களைக் கண்டறிதல்.
1. துருவ வடிவத்தில் பெருக்கல் மற்றும் வகுத்தல்
z₁ = r₁ * e^(jθ₁) மற்றும் z₂ = r₂ * e^(jθ₂) என்றால்:
- பெருக்கல்: z₁ * z₂ = (r₁ * r₂) * e^(j(θ₁ + θ₂)) * அளவுகளைப் பெருக்கவும். * கட்டங்களைக் கூட்டவும்.
- வகுத்தல்: z₁ / z₂ = (r₁ / r₂) * e^(j(θ₁ - θ₂)) * அளவுகளை வகுக்கவும். * கட்டங்களைக் கழிக்கவும்.
இந்த விதிகள் சுழற்சிகள் மற்றும் அளவிடுதல் சம்பந்தப்பட்ட செயல்பாடுகளை வியத்தகு முறையில் எளிதாக்குகின்றன. சிக்கல் தளத்தில் ஒரு திசையனைச் சுழற்றுவதை கற்பனை செய்து பாருங்கள்; நீங்கள் அதன் கட்டத்திற்கு ஒரு கோணத்தைச் சேர்த்தால் போதும். அதை அளவிடுவது அதன் அளவைப் பெருக்குவதாகும். இது கிராபிக்ஸ், ரோபாட்டிக்ஸ் மற்றும் சிக்னல் மாடுலேஷனில் அடிப்படையானது.
பைத்தானுடன் இதை விளக்குவோம். பைத்தான் உள் பிரதிநிதித்துவத்தைப் பொருட்படுத்தாமல் சிக்கல் எண்களில் பெருக்கல்/வகுத்தலை நேரடியாகச் செய்தாலும், இந்த கணிதக் கொள்கையைப் புரிந்துகொள்வது முக்கியம்.
import cmath
import math
z1_rect = 2 * cmath.rect(1, math.pi/4) # எடுத்துக்காட்டு: 45 பாகைகளில் 2
z2_rect = 3 * cmath.rect(1, math.pi/2) # எடுத்துக்காட்டு: 90 பாகைகளில் 3
# பைத்தானில் நேரடிப் பெருக்கல் (செவ்வக வடிவத்தைக் கையாளுகிறது)
product_rect = z1_rect * z2_rect
print(f"நேரடிப் பெருக்கல்: {product_rect}")
# `cmath.polar(product_rect)` இன் எதிர்பார்க்கப்படும் வெளியீடு: (6.0, 3*pi/4 ரேடியன்கள்)
print(f"பெருக்கலின் அளவு: {abs(product_rect)}, கட்டம்: {cmath.phase(product_rect)}")
# துருவ பண்புகளைப் பயன்படுத்தி கைமுறைப் பெருக்கல்:
r1, theta1 = cmath.polar(z1_rect)
r2, theta2 = cmath.polar(z2_rect)
new_r = r1 * r2
new_theta = theta1 + theta2
# ஒப்பிடுவதற்காக செவ்வக வடிவத்திற்கு மீண்டும் மாற்றவும்
manual_product = cmath.rect(new_r, new_theta)
print(f"கைமுறைப் பெருக்கல்: {manual_product}")
# முடிவுகள் எண்ணியல் ரீதியாக மிகவும் நெருக்கமாக இருக்கும்:
# நேரடிப் பெருக்கல்: (-4.242640687119286+4.242640687119285j)
# பெருக்கலின் அளவு: 6.0, கட்டம்: 2.356194490192345
# கைமுறைப் பெருக்கல்: (-4.242640687119286+4.242640687119285j)
பைத்தான் சிக்கலான தன்மையை எப்படி மறைக்கிறது என்பதை இது நிரூபிக்கிறது, ஆனால் அடிப்படை கணித செயல்பாடுகள் இந்த துருவ பண்புகளில் வேரூன்றியுள்ளன. வகுத்தலுக்கு, தர்க்கம் தலைகீழானது: அளவுகளை வகுக்கவும், கட்டங்களைக் கழிக்கவும்.
2. அடுக்குக்கு உயர்த்துதல் (அடுக்குகள்)
ஒரு சிக்கல் எண்ணை ஒரு அடுக்குக்கு உயர்த்துவது டி மாய்வரின் தேற்றத்தால் நேர்த்தியாகக் கையாளப்படுகிறது, இது கூறுகிறது:
z = r * e^(jθ) என்றால், z^n = (r^n) * e^(j*n*θ)
வார்த்தைகளில்: அளவை 'n' அடுக்குக்கு உயர்த்தவும் மற்றும் கட்டத்தை 'n' ஆல் பெருக்கவும்.
பைத்தானின் உள்ளமைக்கப்பட்ட **
செயலி சிக்கல் எண்களுக்கு வேலை செய்கிறது:
z = 2 * cmath.rect(1, math.pi/6) # 30 பாகைகளில் 2 (2 * (sqrt(3)/2 + j*1/2))
print(f"அசல் z: {z}")
z_squared = z ** 2
print(f"z இன் வர்க்கம்: {z_squared}")
# z_squared க்கான எதிர்பார்க்கப்படும் துருவ வடிவம்: அளவு = 2^2 = 4, கட்டம் = 2 * pi/6 = pi/3 (60 பாகைகள்)
print(f"z_squared இன் அளவு: {abs(z_squared)}, z_squared இன் கட்டம்: {cmath.phase(z_squared)}")
# z_squared க்கான வெளியீடு தோராயமாக (2 + 3.464j) ஆக இருக்க வேண்டும்
இது பல்லுறுப்புக் கோவை மூலம் கண்டறிதல், சிக்னல் பகுப்பாய்வு (எ.கா., ஃபோரியர் தொடர்), மற்றும் AC சுற்றுகளில் அடுக்குகளைக் கணக்கிடுவதில் மிகவும் பயனுள்ளதாக இருக்கும்.
3. சிக்கல் எண்களின் மூலங்கள்
ஒரு சிக்கல் எண்ணின் n-ஆம் மூலங்களைக் கண்டறிவது துருவ வடிவம் இன்றியமையாத மற்றொரு பகுதியாகும். ஒரு சிக்கல் எண்ணுக்கு 'n' தனித்துவமான n-ஆம் மூலங்கள் உள்ளன.
z = r * e^(jθ) க்கு, அதன் n-ஆம் மூலங்கள் பின்வருமாறு வழங்கப்படுகின்றன:
w_k = (r^(1/n)) * e^(j(θ + 2πk) / n) என்பது k = 0, 1, ..., n-1 க்கு
இங்கு, நாம் அளவின் n-ஆம் மூலத்தை எடுத்து, கட்டத்தை 'n' ஆல் வகுக்கிறோம், அனைத்து தனித்துவமான மூலங்களையும் கண்டறிய 2π இன் மடங்குகளைச் சேர்க்கிறோம். பைத்தானின் cmath.sqrt()
செயல்பாடு முதன்மை வர்க்கமூலத்தை வழங்குகிறது. அனைத்து மூலங்களையும் கண்டறிய, ஒருவர் பொதுவாக துருவ வடிவத்தைப் பயன்படுத்தி 'k' மதிப்புகள் வழியாக மீண்டும் மீண்டும் செய்கிறார்.
import cmath
import math
# -1 இன் வர்க்கமூலங்களைக் கண்டறியவும் (அவை j மற்றும் -j)
z = -1 + 0j
# முதன்மை மூலத்திற்கு cmath.sqrt() ஐப் பயன்படுத்துதல்
principal_sqrt = cmath.sqrt(z)
print(f"{z} இன் முதன்மை வர்க்கமூலம்: {principal_sqrt}") # வெளியீடு: 1j (தோராயமாக)
# துருவ வடிவத்தைப் பயன்படுத்தி அனைத்து மூலங்களையும் கண்டறிதல் (n-ஆம் மூலங்களுக்கு மிகவும் பொதுவானது)
r, theta = cmath.polar(z)
n = 2 # வர்க்கமூலங்களுக்கு
roots = []
for k in range(n):
root_magnitude = r**(1/n)
root_phase = (theta + 2 * math.pi * k) / n
roots.append(cmath.rect(root_magnitude, root_phase))
print(f"{z} இன் அனைத்து {n} வர்க்கமூலங்களும்: {roots}")
# வெளியீடு: [0.0+1j, -0.0-1j] (தோராயமாக)
இந்த முறை உயர்-வரிசை பல்லுறுப்புக் கோவை சமன்பாடுகளைத் தீர்ப்பதிலும், கட்டுப்பாட்டு அமைப்புகளில் நிலைத்தன்மையை பகுப்பாய்வு செய்வதிலும், குவாண்டம் இயந்திர அலை செயல்பாடுகளைப் புரிந்துகொள்வதிலும் அடிப்படையானது.
4. அடுக்குக்குறி வடிவம்: cmath.exp()
ஆய்லரின் சூத்திரம், e^(jθ) = cos(θ) + j * sin(θ), சிக்கல் பகுப்பாய்வின் ஒரு மூலக்கல்லாகும். இது அடுக்குக்குறி செயல்பாடுகளை முக்கோணவியல் செயல்பாடுகளுடன் இணைக்கிறது. பைத்தானின் cmath.exp()
செயல்பாடு ஒரு சிக்கல் எண் z க்கு e^z ஐக் கணக்கிடுகிறது.
import cmath
import math
# எடுத்துக்காட்டு: e^(j*pi) = cos(pi) + j*sin(pi) = -1 + 0j
result = cmath.exp(0 + 1j * math.pi)
print(f"e^(j*pi): {result}") # வெளியீடு: (-1+1.2246467991473532e-16j) - -1 க்கு மிக அருகில்
இந்த செயல்பாடு ஃபோரியர் பகுப்பாய்வு, லாப்லாஸ் மாற்றங்கள் மற்றும் வகையீட்டுச் சமன்பாடுகளைத் தீர்ப்பதில் இன்றியமையாதது, அலைவு சமிக்ஞைகள் மற்றும் நிலையற்ற மறுமொழிகளை ஒரு சுருக்கமான மற்றும் கணித ரீதியாகக் கையாளக்கூடிய வடிவத்தில் பிரதிநிதித்துவப்படுத்த உதவுகிறது.
எந்த வடிவத்தை எப்போது பயன்படுத்துவது? செவ்வக வடிவம் vs. துருவ வடிவம்
செவ்வக மற்றும் துருவ வடிவங்களுக்கு இடையிலான தேர்வு பெரும்பாலும் குறிப்பிட்ட செயல்பாடு அல்லது தீர்க்கப்படும் சிக்கலின் தன்மையைப் பொறுத்தது. ஒரு உலகளாவிய பயிற்சியாளர் ஒவ்வொன்றின் சூழல் சார்ந்த நன்மைகளைப் புரிந்து கொள்ள வேண்டும்.
செவ்வக வடிவத்தை (a + bj) இதற்காகப் பயன்படுத்தவும்:
- கூட்டல் மற்றும் கழித்தல்: மெய் மற்றும் கற்பனைக் கூறுகளுடன் நேரடியாகக் கையாளும்போது இந்த செயல்பாடுகள் எளிமையானவை மற்றும் உள்ளுணர்வு மிக்கவை. வெவ்வேறு கோணங்களில் செயல்படும் இரண்டு விசைகளைக் கூட்டுவதை கற்பனை செய்து பாருங்கள்; அவற்றை x மற்றும் y கூறுகளாக (மெய் மற்றும் கற்பனைப் பகுதிகளுக்கு ஒப்பானது) பிரித்து, பின்னர் கூட்டுவது அர்த்தமுள்ளதாகிறது.
- இயற்கணிதக் கையாளுதல்கள்: சமன்பாடுகளில் பல சிக்கல் எண்கள் கூட்டப்படும் அல்லது கழிக்கப்படும்போது, செவ்வக வடிவம் பொதுவாக எளிமையான இயற்கணிதப் படிகளுக்கு வழிவகுக்கிறது.
- ஒரு நிலையான புள்ளி அல்லது இடப்பெயர்ச்சியைக் குறிப்பிடுதல்: இது சிக்கல் தளத்தில் ஆயங்களை நேரடியாக வழங்குகிறது.
எடுத்துக்காட்டு பயன்பாடுகள்:
- தொடர் சுற்றுகளில் மொத்த மின்மறுப்பைக் கணக்கிடுதல் (இங்கு மின்மறுப்புகள் கூட்டப்படுகின்றன).
- ஒரு குறிப்பிட்ட நேரத்தில் இரண்டு சிக்கல்-மதிப்பிடப்பட்ட சிக்னல்களின் கூட்டுத்தொகையைக் கண்டறிதல்.
- சிக்கல் குணகங்களைக் கொண்ட நேரியல் சமன்பாடுகளைத் தீர்ப்பது.
துருவ வடிவத்தை (r * e^(jθ)) இதற்காகப் பயன்படுத்தவும்:
- பெருக்கல் மற்றும் வகுத்தல்: இந்த செயல்பாடுகள் துருவ வடிவத்தில் கணிசமாக எளிமையாகின்றன, அளவுகளின் பெருக்கல்/வகுத்தல் மற்றும் கட்டங்களின் கூட்டல்/கழித்தல் ஆகியவற்றை மட்டுமே உள்ளடக்கியது. இது சிக்னல் செயலாக்கத்தில் குறிப்பாக அனுகூலமானது, அங்கு வீச்சு அளவிடுதல் மற்றும் கட்ட மாற்றம் பொதுவானவை.
- அடுக்குக்கு உயர்த்துதல் (அடுக்குகள் மற்றும் மூலங்கள்): டி மாய்வரின் தேற்றம் மற்றும் n-ஆம் மூலங்களைக் கண்டறிவதற்கான முறை துருவ வடிவத்தில் இயல்பாகவே நேர்த்தியானவை. அலைவுகள், கணினி நிலைத்தன்மை மற்றும் குவாண்டம் நிலைகளைப் பகுப்பாய்வு செய்வதற்கு இது முக்கியமானது.
- சுழற்சிகள் மற்றும் மாற்றங்கள்: கட்டக் கோணம் சிக்கல் தளத்தில் சுழற்சியை நேரடியாகக் குறிக்கிறது. துருவ வடிவத்தில் ஒரு சிக்கல் எண்ணால் பெருக்குவது மற்றொரு சிக்கல் எண்ணை திறம்பட சுழற்றுகிறது மற்றும் அளவிடுகிறது. இது 2D கிராபிக்ஸ், ரோபாட்டிக்ஸ் மற்றும் கட்டுப்பாட்டு அமைப்புகளில் பரவலாகப் பயன்படுத்தப்படுகிறது.
- அதிர்வெண் களப் பகுப்பாய்வு: மின் பொறியியல் மற்றும் ஒலிபரப்பியலில், சிக்னல்கள் பெரும்பாலும் அவற்றின் அளவு (வீச்சு) மற்றும் கட்டம் (நேர மாற்றம்) மூலம் வெவ்வேறு அதிர்வெண்களில் குறிப்பிடப்படுகின்றன.
- அலை நிகழ்வுகளின் பகுப்பாய்வு: ஒளி அலைகள், ஒலி அலைகள் மற்றும் மின்காந்த அலைகள் அவற்றின் வீச்சு (அளவு) மற்றும் கட்டம் (பரவல் திசை/நேரம்) ஆகியவற்றால் இயல்பாக விவரிக்கப்படுகின்றன, இது துருவ வடிவத்தை আদর্শமாக ஆக்குகிறது.
எடுத்துக்காட்டு பயன்பாடுகள்:
- மாறுபடும் அதிர்வெண்களுடன் AC சுற்றுகளைப் பகுப்பாய்வு செய்தல் (ஃபேசர் பகுப்பாய்வு).
- அலைப் பரவல் மற்றும் குறுக்கீட்டு வடிவங்களை மாதிரியாக்குதல்.
- டிஜிட்டல் வடிகட்டிகளை வடிவமைத்தல் (எ.கா., Z-தளத்தில் துருவ-பூஜ்ய வரைபடங்கள்).
- குவாண்டம் இயக்கவியல் அலை செயல்பாடுகள் மற்றும் நிகழ்தகவு வீச்சுகளைக் குறிப்பிடுவதற்கு.
- தொலைத்தொடர்புகளில் சிக்னல் மாடுலேஷன் மற்றும் டிமாடுலேஷன்.
பெரும்பாலும், ஒரு நடைமுறை அணுகுமுறை எண்களை தற்போதைய செயல்பாட்டிற்கு மிகவும் பொருத்தமான வடிவத்திற்கு மாற்றுவது, செயல்பாட்டைச் செய்வது, பின்னர் தேவைப்பட்டால் மீண்டும் மாற்றுவது ஆகியவற்றை உள்ளடக்கியது. பைத்தானின் cmath
தொகுதி இந்த தடையற்ற பணிப்பாய்வுக்கு உதவுகிறது, உலகளாவிய அறிவியல் மற்றும் பொறியியல் குழுக்கள் தங்கள் குறிப்பிட்ட பணிகளுக்கு மிகவும் திறமையான பிரதிநிதித்துவத்தைத் தேர்வு செய்ய உதவுகிறது.
சிறந்த நடைமுறைகள் மற்றும் உலகளாவிய பரிசீலனைகள்
பைத்தானில் சிக்கல் எண்களுடன் பணிபுரியும்போது, குறிப்பாக உலகளாவிய பயன்பாடுகளுக்கு, இந்த சிறந்த நடைமுறைகளை மனதில் கொள்ளுங்கள்:
- சிக்கல் செயல்பாடுகளுக்கு
cmath
ஐப் பயன்படுத்தவும்: சிக்கல் எண்ணுக்குரிய கணித செயல்பாடுகளுக்கு (எ.கா.,cmath.sin()
,cmath.log()
,cmath.sqrt()
,cmath.polar()
,cmath.rect()
) எப்போதும்cmath
தொகுதியைப் பயன்படுத்தவும். நிலையானmath
தொகுதி செயல்பாடுகளை சிக்கல் உள்ளீடுகளுடன் பயன்படுத்துவதைத் தவிர்க்கவும், ஏனெனில் அவை பொதுவாகTypeError
ஐ எழுப்புகின்றன அல்லது தவறான முடிவுகளைத் தருகின்றன. - மிதவைப் புள்ளி துல்லியத்தைப் புரிந்துகொள்ளுங்கள்: அனைத்து மிதவைப் புள்ளி எண்கணிதத்தைப் போலவே, சிக்கல் எண்களுடனான கணக்கீடுகள் சிறிய துல்லியப் பிழைகளை அறிமுகப்படுத்தலாம். சமத்துவத்திற்காக சிக்கல் எண்களை ஒப்பிடும்போது இவற்றைக் கவனத்தில் கொள்ளுங்கள். ஒரு சிறிய சகிப்புத்தன்மை
epsilon
க்குabs(z1 - z2) < epsilon
என்பதைச் சரிபார்ப்பது பெரும்பாலும் சிறந்தது. - ரேடியன்கள் vs. பாகைகள்:
cmath
தொகுதி, பெரும்பாலான அறிவியல் நூலகங்களைப் போலவே, கோணங்களுக்கு ரேடியன்களைப் பயன்படுத்துகிறது. உங்கள் உள்ளீடு அல்லது விரும்பிய வெளியீடு பாகைகளில் இருந்தால்,math.degrees()
மற்றும்math.radians()
ஐப் பயன்படுத்தி மாற்ற நினைவில் கொள்ளுங்கள். இது வெவ்வேறு கோண அலகுகளுக்குப் பழகிய சர்வதேச குழுக்களுக்கு ஒரு பொதுவான பிழைப் புள்ளியாகும். - தெளிவான குறியீட்டுக் கருத்துகள்: உங்கள் குறியீட்டை ஆவணப்படுத்துங்கள், குறிப்பாக சிக்கலான மாற்றங்களைச் செய்யும்போது அல்லது குறிப்பிட்ட கணித அடையாளங்களைப் பயன்படுத்தும்போது. இது பல்வேறு பின்னணியைச் சேர்ந்த கூட்டுப்பணியாளர்கள் உங்கள் தர்க்கத்தைப் புரிந்துகொள்ள உதவுகிறது.
- அலகுச் சோதனை: முக்கியமான பயன்பாடுகளுக்கு, உங்கள் சிக்கல் எண் கணக்கீடுகளை அறியப்பட்ட மதிப்புகளுடன் முழுமையாகச் சோதித்து, சரியான தன்மை மற்றும் வலிமையை உறுதிப்படுத்தவும்.
முடிவுரை: பைத்தானுடன் சிக்கல் எண்களின் சக்தியை கட்டவிழ்த்து விடுதல்
சிக்கல் எண்கள் நவீன அறிவியல் மற்றும் பொறியியலின் ஒரு மூலக்கல்லாகும், இது மெய் எண்களால் தீர்க்க முடியாத சிக்கல்களுக்கு நேர்த்தியான தீர்வுகளை வழங்குகிறது. பைத்தானின் சிக்கல் எண்களுக்கான இயல்பான ஆதரவு, சக்திவாய்ந்த cmath
தொகுதியுடன் இணைந்து, இந்த கணித நிறுவனங்களை செவ்வக மற்றும் துருவ வடிவங்களில் கையாளுவதற்கான ஒரு விதிவிலக்காக பல்துறை கருவியாக ஆக்குகிறது.
அடிப்படை கணித செயல்பாடுகள் மற்றும் ஒவ்வொரு பிரதிநிதித்துவத்தின் தனித்துவமான நன்மைகளைப் புரிந்துகொள்வதன் மூலம், உலகெங்கிலும் உள்ள உருவாக்குநர்கள், பொறியாளர்கள் மற்றும் விஞ்ஞானிகள் சிக்கல் எண்களின் முழு திறனையும் பயன்படுத்திக் கொள்ளலாம். நீங்கள் சிக்கலான AC சுற்றுகளை மாதிரியாக்குகிறீர்களா, குவாண்டம் இயந்திர அமைப்புகளை பகுப்பாய்வு செய்கிறீர்களா, டிஜிட்டல் சிக்னல்களைச் செயலாக்குகிறீர்களா, அல்லது மேம்பட்ட கட்டுப்பாட்டு அமைப்புகளை வடிவமைக்கிறீர்களா, பைத்தான் இந்த கணக்கீடுகளை திறமையாகவும் துல்லியமாகவும் செய்யத் தேவையான வலுவான கட்டமைப்பை வழங்குகிறது.
செவ்வக மற்றும் துருவ வடிவங்களின் இருமையை அரவணைக்கவும்; அவற்றின் மாற்றங்கள் மற்றும் செயல்பாடுகளில் தேர்ச்சி பெறவும். இந்தத் திறமை உங்கள் கணிதப் புரிதலை ஆழப்படுத்துவதோடு மட்டுமல்லாமல், சிக்கலான, நிஜ-உலக சவால்களை நம்பிக்கையுடனும் துல்லியத்துடனும் சமாளிக்க உங்களுக்கு அதிகாரம் அளிக்கும், இது கண்டங்கள் மற்றும் துறைகளில் பரவியுள்ள கண்டுபிடிப்புகளுக்கு பங்களிக்கும்.
cmath
தொகுதியின் முழு திறன்களையும் தொடர்ந்து ஆராய்ந்து, உங்கள் பைத்தான் திட்டங்களில் சிக்கல் எண் கோட்பாட்டை ஒருங்கிணைக்கவும். பெறப்பட்ட நுண்ணறிவுகள் சந்தேகத்திற்கு இடமின்றி உங்கள் உலகளாவிய தொழில்நுட்ப முயற்சிகளில் ஒரு மதிப்புமிக்க சொத்தாக இருக்கும்.