मैट्रिक्स की अभिव्यक्ति को कई लाइनों में विभाजित करें

Aug 17 2020

मैट्रिक्स अभिव्यक्ति दी

testm = {a + b, c + d, e};

{# , testm[[ # ]] // Simplify} & /@ Range[ Length[testm] ] // MatrixForm

\ start {समीकरण} \ start {pmatrix} 1 & a + b \\ 2 & c + d \\ 3 & e \\\ end {pmatrix} \ end {समीकरण} मैं इसे फिर से लिखना शुरू करना चाहता हूँ \ समीकरण {समीकरण} \ start {pmatrix} 1.1 और a \\ 1.2 & b \\ 2.1 & c \\ 2.2 & d \\ 3 और e \\\ अंत {pmatrix} \ end {समीकरण}

मैं यह कैसे करु? आखिरकार, मैं इसे और अधिक जटिल मामले में विस्तारित करना चाहता हूं, जहां मेरे पास {समीकरण {प्रारंभ} (a + b) = A exp [I (k + l) m (n + o + p \ q)] Cos (r \) है s) + A exp (I (k + l) m (n + o + p \ q)) पाप (t \ u) \ end {समीकरण} 1.1 के आगे cosine शब्द और 1.2 के आगे sine शब्द प्रदर्शित करता है।

जवाब

2 cvgmt Aug 17 2020 at 15:16
List @@@ {a + b, c + d}
testm = {Cos[a] + Sin[a], 5 + Sin[a]};
List @@@ testm

निम्नलिखित आप चाहते हैं?

testm = {Cos[a] + Sin[a], 5 + Sin[a]};
m = List @@@ testm
Flatten[Table[{i.j, m[[i, j]]}, {i, 2}, {j, 2}], 1]

अद्यतन

शायद MapIndexedकाम करना चाहिए

 Clear["Global`*"];
testm = {a + b, c + d, e};
mat = List @@@ testm
Flatten[MapIndexed[f @@ {Dot @@ #2, #1} &, mat, {-1}]] /. 
  f -> List // MatrixForm
1 ΑλέξανδροςΖεγγ Aug 17 2020 at 18:30
testm = {a + b, c + d, e};
index = StringTemplate[If[Length[#] == 2, "``.``", "``"]] @@ # &;
{index @ Position[testm, #, {-1}][[1]], #} & /@ Cases[testm, _Symbol, -1] // MatrixForm

अपडेट करें

testm = {A Exp[I (k + l) m (n + o + p q)] Cos[r s] + A Exp[I (k + l) m (n + o + p q)] Sin[t u], c + d, e};
{index @ Position[testm, #, 2][[1]], #} & /@ Cases[testm, (_Symbol | _Times), 2] // MatrixForm
1 kglr Aug 18 2020 at 15:04
ClearAll[indexedMonomials]
indexedMonomials = Join @@
  (MapIndexed[{Dot @@ #2, #} &, MonomialList@#, {2}] /. {{a_, b_}} :> {{First@a, b}}) &;

उदाहरण:

testm2 = {A E^(I (k + l) m (n + o + p q)) Cos[r s] + 
    A E^(I (k + l) m (n + o + p q)) Sin[t u], a + b + x, c + d, e};

MapIndexed[{#2[[1]], #} &, testm2] // MatrixForm // TeXForm

$\left( \begin{array}{cc} 1 & A \cos (r s) e^{i m (k+l) (n+o+p q)}+A \sin (t u) e^{i m (k+l) (n+o+p q)} \\ 2 & a+b+x \\ 3 & c+d \\ 4 & e \\ \end{array} \right)$

indexedMonomials @ testm2 // MatrixForm // TeXForm

$\left( \begin{array}{cc} 1.1 & A \cos (r s) e^{i m (k+l) (n+o+p q)} \\ 1.2 & A \sin (t u) e^{i m (k+l) (n+o+p q)} \\ 2.1 & a \\ 2.2 & b \\ 2.3 & x \\ 3.1 & c \\ 3.2 & d \\ 4 & e \\ \end{array} \right)$