Difference between revisions of "Multiline equations"

From Wiki
Jump to navigation Jump to search
m
(Replaced content with "moved to Math/Multiline_equations")
Tag: Replaced
 
(58 intermediate revisions by 6 users not shown)
Line 1: Line 1:
< [[Main Page]] | [[Math]] | [[Math with newmat]] | [[MathML]] >
+
moved to [[Math/Multiline_equations]]
 
 
Be sure to also read [http://dl.contextgarden.net/myway/mathalign.pdf Using \startalign and friends] written by Aditya Mahajan.
 
 
 
== Basic Alignment ==
 
 
 
 
 
Two modes of input
 
 
 
* Latex style
 
<texcode>
 
\startformula \startalign
 
v &= u + at \\
 
h &= ut + \frac12 gt^2 \\
 
\stopalign \stopformula
 
</texcode>
 
 
 
Note the \\ in the last line, above.
 
 
 
This appears as follows:
 
 
 
<context>
 
\startformula \startalign
 
v &= u + at \\
 
h &= ut + \frac12 gt^2 \\
 
\stopalign \stopformula
 
</context>
 
 
 
* Context Style
 
 
 
<texcode>
 
\startformula \startalign
 
\NC v \NC = u + at \NR
 
\NC h \NC= ut + \frac12 gt^2 \NR
 
\stopalign \stopformula
 
</texcode>
 
 
 
<context>
 
\startformula \startalign
 
\NC v \NC = u + at \NR
 
\NC h \NC = ut + \frac12 gt^2 \NR
 
\stopalign \stopformula
 
</context>
 
 
 
(The examples here will focus on the context style, having two styles can be confusing --[[User:Adityam| Aditya ]] )
 
 
 
== Changing the number of columns ==
 
 
 
The above equations were aligned at <code>=</code>. Suppose you also want the <code>+</code> to align. Well, this is simple in context, simply specify the number of columns with <code>\startalign</code>
 
 
 
 
 
<texcode>
 
\startformula \startalign[n=3]
 
\NC v \NC = u \NC+ at \NR
 
\NC h \NC= ut \NC+ \frac12 gt^2 \NR
 
\stopalign \stopformula
 
</texcode>
 
 
 
<context>
 
\startformula \startalign[n=3]
 
\NC v \NC = u \NC+ at \NR
 
\NC h \NC= ut \NC+ \frac12 gt^2 \NR
 
\stopalign \stopformula
 
</context>
 
 
 
== Alignment of each column ==
 
If you want more control over the formatting, and want the middle column to be center aligned, you can do that by
 
<texcode>
 
\startformula \startalign[n=3,align={right,middle,left}]
 
\NC v \NC = u \NC+ at \NR
 
\NC h \NC= ut \NC+ \frac12 gt^2 \NR
 
\stopalign \stopformula
 
</texcode>
 
 
 
<context>
 
\startformula \startalign[n=3,align={right,middle,left}]
 
\NC v \NC = u \NC+ at \NR
 
\NC h \NC= ut \NC+ \frac12 gt^2 \NR
 
\stopalign \stopformula
 
</context>
 
 
 
This mechanism allows fancier alignments like
 
 
 
<texcode>
 
\startformula \startalign[n=4,align={left,right,middle,left}]
 
\NC \text{We have} \quad \NC v \NC = u \NC+ at \NR
 
\NC \text{and}          \NC h \NC= ut \NC+ \frac12 gt^2 \NR
 
\stopalign \stopformula
 
</texcode>
 
 
 
 
 
<context>
 
\startformula \startalign[n=4,align={left,right,middle,left}]
 
\NC \text{We have} \quad \NC v \NC = u \NC+ at \NR
 
\NC \text{and}          \NC h \NC= ut \NC+ \frac12 gt^2 \NR
 
\stopalign \stopformula
 
</context>
 
 
 
== Working with equation numbering ==
 
 
 
aligned equations can be numbered by placing a tag after {{cmd|NR}}
 
 
 
<texcode>
 
\placeformula \startformula \startalign
 
\NC v \NC = u + at \NR[eq:v]
 
\NC h \NC = ut + \frac12 gt^2 \NR[eq:h]
 
\stopalign \stopformula
 
Equation (\in[eq:v]) tells the final velocity after
 
time $t$ and equation (\in[eq:h]) tells the distance
 
travelled in time $t$.
 
</texcode>
 
 
 
<context>
 
\setuplayout[scale=0.8,width=13cm]
 
\placeformula \startformula \startalign
 
\NC v \NC = u + at \NR[eq:v]
 
\NC h \NC = ut + \frac12 gt^2 \NR[eq:h]
 
\stopalign \stopformula
 
Equation (\in[eq:v]) tells the final velocity after time $t$ and equation (\in[eq:h]) tells the distance travelled in time $t$.
 
</context>
 
 
 
== Changing the number of columns ==
 
 
 
== Defining new alignment structures ==
 
 
 
New alignment can be defined using {{cmd|definemathalignment}}. For example, to emulate <code>gather</code> environment of amsmath, we can use
 
<texcode>
 
\definemathalignment
 
    [gather]
 
    [n=1,align={middle}]
 
 
 
\startformula \startgather
 
\NC  ax^2 + bx + c = 0 \NR
 
\NC \text{roots} = \frac{ -b \pm \sqrt{b^2 - 4ac}}{2a} \NR
 
\stopgather \stopformula
 
</texcode>
 
 
 
<context>
 
\definemathalignment
 
    [gather]
 
    [n=1,align={middle}]
 
 
 
\startformula \startgather
 
\NC  ax^2 + bx + c = 0 \NR
 
\NC \text{roots} = \frac{ -b \pm \sqrt{b^2 - 4ac}}{2a} \NR
 
\stopgather \stopformula
 
 
 
</context>
 
 
 
 
== Cases ==
 
 
 
Context provides a {{cmd|startmathcases}} {{cmd|stopmathcases}} pair to make it easy get cases.
 
<texcode>
 
\startformula
 
f(x) = \startmathcases
 
  \NC x, \NC if $0 \le x \le \frac12$ \NR
 
  \NC 1-x ,\NC if $\frac12 \le x \le 1$ \NR
 
\stopmathcases
 
\stopformula
 
</texcode>
 
 
 
gives
 
 
 
<context>
 
\startformula
 
f(x) = \startmathcases
 
  \NC x, \NC if $0 \le x \le \frac12$ \NR
 
  \NC 1-x ,\NC if $\frac12 \le x \le 1$ \NR
 
\stopmathcases
 
\stopformula
 
</context>
 
 
 
The cases environment consists of two columns, separated by {{cmd|NC}}. The second column is by default in text mode. An alternative way of getting the same result is to define the second column as a mathcolumn with {{cmd|MC}} like so:
 
 
 
<texcode>
 
\startformula
 
f(x) = \startmathcases
 
  \NC x, \MC \text{if } 0 \le x \le \frac12 \NR
 
  \NC 1-x ,\MC \text{if } \frac12 \le x \le 1 \NR
 
\stopmathcases
 
\stopformula
 
</texcode>
 
 
 
Each line must end with a {{cmd|NR<}}.
 
 
 
== Numbered Cases ==
 
 
 
[[Category:Math]]
 

Latest revision as of 10:40, 12 May 2024