मुफ़्त मैट्रिक्स कैलकुलेटर
मैट्रिक्स ऑपरेशन करें: जोड़, घटाव, गुणा, ट्रांसपोज़, डिटरमिनेंट और इनवर्स।
मैट्रिक्स A
मैट्रिक्स B
यह कैसे काम करता है
मैट्रिक्स A और B के आयाम सेट करें, मान दर्ज करें और एक ऑपरेशन चुनें। कैलकुलेटर आयामों की जाँच करता है।
समर्थित ऑपरेशन
- जोड़ और घटाव · समान आयामों की मैट्रिक्स आवश्यक
- गुणन · A के कॉलम B की पंक्तियों के बराबर होने चाहिए
- स्थानांतरण · पंक्तियाँ और कॉलम उलटे (A^T, B^T)
- निर्धारक · केवल वर्ग मैट्रिक्स (det(A), det(B))
- व्युत्क्रम · शून्येतर निर्धारक वाले वर्ग मैट्रिक्स (A^−1, B^−1)
अक्सर पूछे जाने वाले प्रश्न
कौन से मैट्रिक्स आयाम समर्थित हैं?
6×6 तक की मैट्रिक्स समर्थित हैं। मान दर्ज करने से पहले प्रत्येक मैट्रिक्स के लिए पंक्तियों और कॉलम की संख्या चुनें।
मैं व्युत्क्रम की गणना कब कर सकता हूँ?
मैट्रिक्स का व्युत्क्रम केवल वर्ग मैट्रिक्स (समान पंक्तियाँ और कॉलम) के लिए शून्येतर निर्धारक के साथ मौजूद है। एकल मैट्रिक्स का व्युत्क्रम नहीं होता।
क्या मेरा डेटा सहेजा जाता है?
नहीं। सभी गणनाएँ आपके ब्राउज़र में चलती हैं। कुछ भी सहेजा या सर्वर पर नहीं भेजा जाता।
Matrix वास्तव में क्या है
Matrix rows और columns में व्यवस्थित numbers का एक rectangular array है जिसे एक single mathematical object के रूप में treat किया जाता है। Shape को m × n के रूप में लिखा जाता है जहां m rows की संख्या है और n columns की संख्या, हमेशा rows पहले। अंदर के individual numbers entries या elements हैं; row i, column j पर एक entry को 1-based indexing का उपयोग करके aij के रूप में referenced किया जाता है। (Math papers को code में port करने में सबसे आम bugs में से एक इस 1-based convention और C, Python तथा JavaScript द्वारा उपयोग की जाने वाली 0-based indexing के बीच mismatch है।)
Vector एक matrix है जिसमें एक row (1 × n, «row vector») या एक column (m × 1, «column vector») होती है। Scalar एक 1 × 1 matrix है। यह nesting important है: इसका मतलब है कि linear algebra का हर operation (dot products, projections, transformations) को uniformly matrix arithmetic के रूप में express किया जा सकता है, यही कारण है कि matrices 1900 के बाद applied mathematics की universal language बन गई।
एक संक्षिप्त इतिहास
सबसे पहला ज्ञात predecessor चीनी Nine Chapters on the Mathematical Art (लगभग 2nd century BC) में है, जिसने simultaneous linear equations हल करने के लिए fangcheng नामक एक tabular Gaussian-elimination method का उपयोग किया। आधुनिक शब्द «matrix» English mathematician James Joseph Sylvester ने 1850 में coined किया, «womb» के Latin शब्द पर आधारित, एक ऐसी structure जिसके भीतर subdeterminants grow कर सकते थे। आधारभूत paper Sylvester के मित्र और collaborator Arthur Cayley की 1858 की «A Memoir on the Theory of Matrices,» था, जिसने matrix multiplication, identity matrix, zero matrix और inverse को formalize किया, matrices को एक notational convenience से अपने आप में एक algebra में बदल दिया।
19th सदी के अंत और 20th सदी की शुरुआत में Gauss-Jordan elimination, eigenvalue theory और spectral theorem ने matrices को linear algebra का central tool confirm किया। 20th-century turning points थे: Werner Heisenberg का 1925 का matrix mechanics formulation of quantum theory (यही कारण है कि physicists ने matrices को seriously लेना शुरू किया), John von Neumann और Herman Goldstine का 1947 का high-order matrices के numerical inversion पर paper जिसने modern numerical linear algebra की नींव रखी, और 1979 में BLAS (Basic Linear Algebra Subprograms) का release और 1992 में LAPACK का release: optimised libraries जिन्हें MATLAB से NumPy तक हर scientific-computing platform ultimately call करती है।
छह core operations, explained
Addition और subtraction। दोनों matrices की identical dimensions होनी चाहिए। Result का same shape होता है और हर entry entrywise sum है: cij = aij + bij। आप 2×3 को 3×2 में add नहीं कर सकते; operation undefined है। Matrix addition commutative और associative है, ठीक ordinary number addition की तरह।
Matrix multiplication। वह operation जो matrices को powerful बनाता है, और जिसे अधिकांश लोग पहली encounter में गलत करते हैं। C = A × B define होने के लिए, inner dimensions match होनी चाहिए: यदि A, m × n है, B को n × p होना चाहिए, और result C, m × p है। बीच का «n» cancel होता है; बाहरी «m» और «p» survive करते हैं। प्रत्येक entry A की एक row और B के एक column के dot product के रूप में computed है: cij = Σ aik · bkj, k पर summed।
एक 2×2 उदाहरण:
A = [1 2] B = [5 6] A·B = [1·5+2·7 1·6+2·8] = [19 22]
[3 4] [7 8] [3·5+4·7 3·6+4·8] [43 50]
Matrix multiplication commutative नहीं है: A·B ≠ B·A generally, और कभी-कभी दोनों products अलग-अलग shapes के भी होते हैं। (यदि A, 2×3 है और B, 3×2, तो A·B, 2×2 है लेकिन B·A, 3×3।) यह non-commutativity linear algebra की richness का source है और यही कारण है कि Cayley का 1858 का paper foundational माना जाता है।
Transpose: AT के रूप में लिखा जाता है: rows और columns swap करता है। Row i, column j पर जो entry थी वह row j, column i पर entry बन जाती है। तो यदि A, m × n है, AT, n × m है। Useful identity: (A·B)T = BT·AT, order reversed के साथ।
Determinant: एक single scalar जो square matrix को summarise करता है। 2×2 के लिए यह ad − bc है; बड़ी matrices के लिए यह cofactor expansion के माध्यम से recursively expand होता है (4×4 से परे impractical) या LU decomposition के माध्यम से (वह algorithm जो computers उपयोग करते हैं, O(n³))। Geometrically, determinant का absolute value वह factor है जिससे linear map areas scale करता है (2D में), volumes (3D में), और इसी तरह। 2 का determinant मतलब unit square area 2 के parallelogram पर map करता है; negative determinant मतलब orientation flip (mirror reflection); zero का determinant मतलब transformation सब कुछ एक line या point पर collapse करता है, matrix singular (non-invertible) है।
Inverse: A⁻¹ के रूप में लिखा जाता है: वह unique matrix जो A · A⁻¹ = A⁻¹ · A = I को satisfy करती है, जहां I identity matrix है। Inverse वह करता है जो A करता है उसे «undo» करता है। यह केवल non-zero determinant वाली square matrices के लिए exist करता है। Computers inverses को Gauss-Jordan elimination या LU decomposition के माध्यम से compute करते हैं। 2×2 के लिए formula प्रसिद्ध (1/det) × [d, -b; -c, a] है।
Textbook math के बाहर matrices क्यों important हैं
Matrices modern computing में हर जगह हैं क्योंकि हर linear transformation एक matrix है:
- 3D graphics: हर position, rotation, scale और projection एक 4×4 homogeneous matrix है। आपका GPU जो भी frame render करता है उसमें हजारों का multiply होता है। OpenGL और Direct3D दोनों explicit matrix stacks expose करते हैं; modern engines उन्हें wrap करते हैं लेकिन math unchanged है।
- Machine learning: हर neural network layer एक matrix multiplication है। 70 billion parameters वाला एक modern large language model structurally, per forward pass कुछ सौ matrix multiplications है। cuBLAS, cuDNN, NVIDIA के Tensor Cores और Google के TPUs scale पर matrix multiply के लिए dedicated hardware हैं, पूरा AI boom एक sentence में यह realisation है कि GPUs matrix multiplication को बहुत, बहुत fast बनाते हैं।
- Computer vision: Principal Component Analysis (PCA) और Singular Value Decomposition (SVD) high-dimensional pixel data को low-dimensional features तक reduce करते हैं। Image compression (JPEG का DCT) matrix arithmetic है।
- Web search: Google का original PageRank algorithm (Brin और Page, 1998) एक 30-million-by-30-million link matrix का principal eigenvector compute करता है। यह काम करता है क्योंकि matrices Markov chains को exactly model करती हैं।
- Statistics: linear regression की normal equations
β = (XTX)−1XTyहैं। हर statistical software package उन्हें QR या SVD decomposition के माध्यम से solve करता है। - Cryptography: AES जैसे block ciphers finite fields पर matrix transformations involve करते हैं। Quantum computing के gates unitary matrices हैं।
- Vibrations और structural engineering: modal analysis (किसी bridge की natural vibration frequencies find करना) stiffness और mass matrices पर एक eigenvalue problem है।
जानने योग्य special matrices
- Identity matrix I: square, diagonal पर 1s और बाकी जगह 0s।
A·I = I·A = A। «do nothing» matrix। - Diagonal: केवल main diagonal पर non-zero entries। Diagonal matrix से multiply करने पर हर row या column independently scale होती है।
- Triangular (upper या lower), केवल diagonal पर या उससे ऊपर (या नीचे) non-zero entries। Invert करना और linear systems solve करना आसान।
- Symmetric:
A = AT। सभी eigenvalues real हैं; optimisation और statistics में central। - Orthogonal:
AT·A = I, अर्थात् inverse transpose के बराबर है। Rotation matrices orthogonal हैं; orthogonal transformations length और angle preserve करते हैं। - Sparse बनाम dense: sparse matrices में अधिकतर zero entries होती हैं (graph adjacency matrices, finite-element stiffness matrices का typical)। Specialised sparse storage और algorithms उन्हें scale पर naive dense methods से dramatically faster बनाते हैं।
Numerical-stability नोट्स
Floating-point में matrix arithmetic ऐसे traps छुपाती है जो textbook examples में नहीं दिखते। Matrix का condition number मापता है कि इसका inverse input में small perturbations को कितना amplify करता है, एक ill-conditioned matrix के लिए, एक entry में 0.1% error result में 1000% error cause कर सकती है। Classic pathological example Hilbert matrix है (entries 1/(i+j-1)), जिसका condition number size के साथ exponentially explode होता है; एक 6×6 Hilbert matrix का पहले से ही condition number लगभग 10⁷ है, जिसका मतलब है कि inverse में precision के सात decimal digits खो जाते हैं।
व्यवहार में, computational scientists लगभग कभी A⁻¹ explicitly compute नहीं करते। A·x = b solve करने के लिए, वे LU या QR decomposition उपयोग करते हैं; inverse को implicitly उपयोग करने के लिए, वे A⁻¹·b decomposition के माध्यम से multiply करते हैं बजाय पहले A⁻¹ build करने के। Ill-conditioned या rectangular systems के लिए, SVD-based pseudoinverse (Moore-Penrose inverse) preferred है। यह calculator educational use के लिए explicit inverse compute करता है, जो small sizes पर fine है लेकिन scaling up करते समय ध्यान देने योग्य है।
ईमानदार scope
यह calculator matrices up to 6×6 पर add / subtract / multiply / transpose / determinant / inverse cover करता है, वे operations जो एक student पहले linear algebra course में encounter करता है। यह eigenvalues, eigenvectors, या matrix decompositions (LU, QR, SVD) compute नहीं करता; यह row-reduction steps display नहीं करता; यह symbolic या fractional entries support नहीं करता; यह complex numbers handle नहीं करता; और यह A²·BT जैसे matrix expressions accept नहीं करता। उन features के लिए, dedicated tools (Symbolab, Wolfram Alpha, MATLAB, NumPy, Octave, SageMath) सही next step हैं।
और प्रश्न
Matrix multiplication commute क्यों नहीं करता?
क्योंकि matrices transformations को represent करती हैं, और जिस order में आप transformations apply करते हैं वह important है। Rotating फिर translating, translating फिर rotating के समान नहीं है, translation एक अलग starting orientation से अलग तरह से drag करती है। Matrix multiplication की non-commutativity इस physical fact का algebraic encoding है, और यही 3D graphics और quantum mechanics को interesting (और tricky) बनाती है।
Matrix invertible कब नहीं होती?
जब इसका determinant zero हो (equivalent रूप से, जब इसकी rows (या columns) linearly dependent हों), जब वह linear transformation जो यह represent करती है किसी non-zero vector को zero पर collapse कर दे। Geometrically, matrix एक higher-dimensional space को lower-dimensional subspace पर map करती है और आप lost dimension को recover नहीं कर सकते। ऐसी matrices को «singular» कहा जाता है। Ill-conditioned-but-technically-invertible matrices के लिए, inverse theory में exist करता है लेकिन floating point में wildly inaccurate है, ऊपर numerical stability section देखें।
Math में 1-based indexing लेकिन code में 0-based क्यों?
Mathematical convention सदियों पुरानी है, पहली row row 1 है क्योंकि counting 1 से शुरू होती है। Programming languages ने 0-based indexing इसलिए चुनी क्योंकि यह array memory पर pointer arithmetic को simplify करती है: offset i पर element base + i × element_size पर है, बिना -1 fudge factor के। दोनों conventions deeply entrenched हैं; सबसे reliable bug sources में से एक ऐसे paper को code में translate करना है जो «row 3» कहता है, जिसके लिए code में matrix[2] चाहिए।
क्या matrix multiplication का सबसे fast algorithm है?
Naive triple-loop algorithm O(n³) में चलता है। Volker Strassen ने 1969 में दिखाया कि 2×2 के लिए 7 multiplications पर्याप्त हैं (8 के बजाय), जो recursively apply होने पर asymptotic O(n^2.807) देता है। दशकों में successive refinements ने theoretical bound को roughly O(n^2.371) तक push किया, लेकिन constants इतने बड़े हैं कि किसी भी matrix के लिए जो आप actually encounter करेंगे, BLAS / cuBLAS के अंदर implement किया गया naive O(n³) जीतता है। Lower bound mathematically open है: यह कम से कम O(n²) है लेकिन कोई exact answer नहीं जानता।
क्या कुछ server पर भेजा जाता है?
नहीं। Arithmetic आपके browser में compute किए गए JavaScript में straightforward floating-point operations हैं। आपकी matrices के बारे में कुछ भी page नहीं छोड़ता; एक बार load होने पर tool offline काम करता है।