Aligning a cycle in LaTeX - alignment

I want to create a cycle like this in LaTeX:
http://upload.wikimedia.org/math/0/c/8/0c814b6d3ade0dfd8ea4408af6e07ac6.png
Instead of numbers I want to have b1,b2,...,b9 and m1,m2,...,m9.This is the code I use:
\pi_0 = \binom{b_1\ b_2\ b_3\ b_4\ b_5\ b_6\ b_7\ b_8\ b_9}{m_1\ m_2\ m_3\ m_4\ m_5\ m_6\ m_7\ m_8\ m_9}
But it does not produced the desired result, as the b-s and m-s are not aligned (I want for them to be exactly one above the other):
Could you help me, please?

Try using the array environment to produce a matrix:
\pi_0 = \left(
\begin{array}{cccc}
b_1 & b_2 & b_3 & b_4 \\
m_1 & m_2 & m_3 & m_4
\end{array}
\right)
By the way, there is a separate StackExchange site for LaTeX.

Related

How to number gathered equations using single number

I want to number gathered equations, but single number for several equations. Following is the code I've used. But it results numbering both equations. I want to equations to be justified, not right aligned. Spilt and align environment right align the equations. Is there any way to do this?
\begin{gather}
\eta_{c1} P_{pv}(k) + \eta_{c2} P_{bat}(k) \leq P_{conG,rate} \\\
P_{grid} + P_{load} \geq -P_{conG,rate}
\end{gather}
After \ you can put \nonumber this way you can avoid having both equations numbered
As said by Good Luck, you can add \nonumber at the end of the line before \\.
A problem I encountered was that when adding a \label{label_name} the Eq.~\ref{label_name} showed as (for example) Eq.2.5 instead of Eq.2. I've managed to sort this by moving the \label{label_name} to the row below \begin{gather}. So for example my code would look like this:
\begin{gather}
\label{labe_name}
e=\sum_{n=0}^{\infty}{\frac{1}{n!}}\\
\begin{aligned}
&\textit{\small Where:}\nonumber\\
&\textit{\small $1^{st}$ line and more explanations to fill the line} \nonumber\\
&\textit{\small $2^{nd}$ line}\nonumber\\
&\textit{\small ext \dots}\nonumber\\
\end{aligned}
\end{gather}
Make sure to have this packages:
\usepackage{amsmath,amssymb}
Here is a cleaner solution than using \nonumber. Using gathered or aligned environments inside an equation environment groups the equations and assigns one number to them. This is recommended by the amsmath user guide.
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{equation}
\begin{gathered}
\eta_{c1} P_{pv}(k) + \eta_{c2} P_{bat}(k) \leq P_{conG,rate}
\\
P_{grid} + P_{load} \geq -P_{conG,rate}
\end{gathered}
\end{equation}
\begin{equation}
\begin{aligned}
\eta_{c1} P_{pv}(k) + \eta_{c2} P_{bat}(k) &\leq P_{conG,rate}
\\
P_{grid} + P_{load} &\geq -P_{conG,rate}
\end{aligned}
\end{equation}
\end{document}

How can I have linebreaks in my long LaTeX equations?

My equation is very long. How do I get it to continue on the next line rather than go off the page?
If your equation does not fit on a single line, then the multline (note that that's multline without an "i", not "multiline") environment probably is what you need:
\begin{multline}
first part of the equation \\
= second part of the equation
\end{multline}
If you also need some alignment respect to the first part, you can use split:
\begin{equation}
\begin{split}
first part &= second part #1 \\
&= second part #2
\end{split}
\end{equation}
Both environments require the amsmath package.
See also aligned as pointed out in an answer below.
Not yet mentioned here, another choice is environment aligned, again from package amsmath:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{equation}
\begin{aligned}
A & = B + C\\
& = D + E + F\\
& = G
\end{aligned}
\end{equation}
\end{document}
This outputs:
Without configuring your math environment to clip, you could force a new line with two backslashes in a sequence like this:
Bla Bla \\ Bla Bla in another line
The problem with this is that you will need to determine where a line is likely to end and force to always have a line break there. With equations, rather than text, I prefer this manual way.
You could also use \\* to prevent a new page from being started.
If it is inline equation, then use \allowbreak. Use it like:
$x_1,x_2,x_3,\allowbreak x_4,x_5$.
Latex will break equation in this place only if necessary.
There are a couple ways you can deal with this. First, and perhaps best, is to rework your equation so that it is not so long; it is likely unreadable if it is that long.
If it must be so, check out the AMS Short Math Guide for some ways to handle it. (on the second page)
Personally, I'd use an align environment, so that the breaking and alignment can be precisely controlled. e.g.
\begin{align*}
x&+y+\dots+\dots+x_100000000\\
&+x_100000001+\dots+\dots
\end{align*}
which would line up the first plus signs of each line... but obviously, you can set the alignments wherever you like.
I think I usually used eqnarray or something. It lets you say
\begin{eqnarray*}
x &=& blah blah blah \\
& & more blah blah blah \\
& & even more blah blah
\end{eqnarray*}
and it will be aligned by the & &... As pkaeding mentioned, it's hard to read, but when you've got an equation thats that long, it's gonna be hard to read no matter what... (The * makes it not have an equation number, IIRC)
I used the \begin{matrix}
\begin{equation}
\begin{matrix}
line_1 \\
line_2 \\
line_3
\end{matrix}
\end{equation}
multline is best to use. Instead, you can use dmath, split as well.
Here is an example:
\begin{multline}
{\text {\bf \emph {T(u)}}} ={ \alpha *}{\frac{\sum_{i=1}^{\text{\bf \emph {I(u)}}}{{\text{\bf \emph {S(u,i)}}}* {\text {\bf \emph {Cr(P(u,i))}}} * {\text {\bf \emph {TF(u,i)}}}}}{\text {\bf \emph {I(u)}}}} \\
+{ \beta *}{\frac{\sum_{i=1}^{\text{\bf \emph {$I_h$(u)}}}{{\text{\bf \emph {S(u,i)}}}* {\text {\bf \emph {Cr(P(u,i))}}} * {\text {\bf \emph {TF(u,i)}}}}}{\text {\bf \emph {$I_h$(u)}}}}
\end{multline}
This worked for me while using mathtools package.
\documentclass{article}
\usepackage{mathtools}
\begin{document}
\begin{equation}
\begin{multlined}
first term \\
second term
\end{multlined}
\end{equation}
\end{document}
Use eqnarray and \nonumber
example:
\begin{eqnarray}
sample = R(s,\pi(s),s') + \gamma V^{\pi} (s') \nonumber \\
\label{eq:temporal-difference}
V^{\pi}_{k+1}(s) = (1-\alpha)V^{\pi}(s) - \alpha[sample]
\end{eqnarray}
SIMPLE ANSWER HERE
\begin{equation}
\begin{split}
equation \\
here
\end{split}
\end{equation}
To solve this issue, I used the array environment inside the equation environment like this:
\begin{equation}
\begin{array}{r c l}
first Term&=&Second Term\\
&=&Third Term
\end{array}
\end{equation}
You do not need any extra package to do this:
\begin{equation}
\begin{gathered}
first formula\\
second formula
\end{gathered}
\end{equation}

Typesetting logic proofs in LaTeX

I'm trying to typeset some basic logic proofs in LaTeX. I need a multiple column layout, and I need the lines numbered on the right. I want to reset the numbering for each proof. The output should look like this:
1) (x)¬F A
2) (Ex)F
3) ...
What is the easiest way to do this? enumerate doesn't seem a good idea, since it's not going to like the multiple column things. I need everything to be in mathmode as well.
Is there an easy way to do this?
[edit]
Here is what I've managed to do so far, but it is far from elegant.
\begin{minipage}{\linewidth}
\boldmath \center{$ \forall x \neg F \to \neg \exists x F $} \unboldmath
\begin{math}
\begin{array}{llr}
1. &\forall x \neg F & \\
2. &\exists x F & A \\
3. &F[\alpha / x ] & ES 2 \\
4. &\neg F[\alpha / x] & US \\
5. &\exists x F \to F[\alpha / x ] & CP 2,4 \\
6. &\neg \exists x F & TI 4,5
\end{array}
\end{math}
\end{minipage}
Ideally I want something that automatically numbers steps and makes the "title" line easier...
See the packages for Fitch-style proofs here. You simply don't need any subproofs. LaTeX for Logicians also covers other proof styles, logical symbols, etc.
\newcount\mycount
\def\nextnum{\global\advance\mycount 1 \the\mycount.}
\def\logicx#1{\halign{$\nextnum##$\quad \hfil&$##$\hfil
&\qquad\hfil##\crcr#1\crcr}\endgroup}
\def\logic{\begingroup \global\mycount 0 \let\\\cr \logicx}
\logic{
&\forall x \neg F & \\
&\exists x F & A \\
&F[\alpha / x ] & ES 2 \\
&\neg F[\alpha / x] & US \\
&\exists x F \to F[\alpha / x ] & CP 2,4 \\
&\neg \exists x F & TI 4,5 \\
}
Check out section 3.6 of the amsmath package documentation.
Sorry, don't have a \LaTeX compiler now, so my code may be not compileable or contain silly mistakes.
You need a new counter for your lines:
\newcount\logicproofline
Then, you need a command to start it:
\def\proofline#1{
\global\advance\logicproofline by 1
\shoveright{\text{\the\logicproofline}\qquad#1}
}
Now, you would need to redefine proof to reset your counter:
\AtBeginDocument{
\let\myoldproof=\proof
\def\proof{\myoldproof\logicproofline=0\relax}
}
The redefinition is needed because proof is not associated with any counter, so we cannot make that one a master counter.

aligning math equations in Latex

I am trying to align the following equations around the equal sign. What can I do? Thanks! I am using the AMSMath package
$$m\ddot{x}_{1}-K(x_{2}+x_{12})+C(\dot{x}_{12}+\dot{x}_{2})+2C\dot{x}_{1} = fx_{1}$$
$$m\ddot{x}_{2}-K(x_{3}+x_{1})+C(\dot{x}_{1}+\dot{x}_{3})+2C\dot{x}_{2} = fx_{2}$$
$$m\ddot{x}_{3}-K(x_{4}+x_{2})+C(\dot{x}_{2}+\dot{x}_{4})+2C\dot{x}_{3} = fx_{3}$$
\begin{align}
m\ddot{x}_{1}-K(x_{2}+x_{12})+C(\dot{x}_{12}+\dot{x}_{2})+2C\dot{x}_{1} &= fx_{1} \\
m\ddot{x}_{2}-K(x_{3}+x_{1})+C(\dot{x}_{1}+\dot{x}_{3})+2C\dot{x}_{2} &= fx_{2} \\
m\ddot{x}_{3}-K(x_{4}+x_{2})+C(\dot{x}_{2}+\dot{x}_{4})+2C\dot{x}_{3} &= fx_{3}
\end{align}
See the user's guide.
To make a long story short... the following idea of using eqnarray is kind of obvious, but turns out to be a really bad idea. eqnarray brings lots of issues which are solved in amsmath and related packages. Read Lars Madsen: Avoid eqnarray for the details.
\begin{eqnarray*} %% Do avoid eqnarray if possible.
x_1 & = & 1 \\
x_2 & = & 2 \\
x_3 & = & 3
\end{eqnarray*}
(Answer revised with information from Arthur Reutenauer, Thomas and the Madsen paper linked to by Thomas.)
There are several packages to do what you want, one of the most widely used is the AMS' align environment from the amsmath package.
Simplified extract from amsldoc.pdf:
\begin{align}
x&=y \\
x’&=y’ \\
x+x’&=y+y’
\end{align}
The equations are aligned around the symbols that follow & (the equals signs, in this case).

Collapsible minibox environment in LaTeX

I'm trying to learn LaTeX, currently because otherwise, my professors will be nearly unable to read my homework assignments. I've come across something I want to do, but don't seem to be able to, ie. I have searched google (possibly with a poor keyword set) and not found a solution.
The specific case is as follows: I want to put an ams flalign environment inside a box and have multiple such environments side by side. I have achieved this using minipage, but minipage asks for a width. I would like to use the smallest width in which the flalign environment fits. I realize that I can set the width to 0pt, but I can't help wondering if there's something that is intended to do this.
Also, should I be using minipage? Is there another command I don't know?
Thanks for your reply.
EDIT:
An attempted clarification as to what I want to do. I want equations which are standard, known, given, etc. and short on the left. To the right of those, I want relevant derived equations (and maybe their derivations. Further right, I want actual calculations plugged in.
I feel like what I want is a tabular environment with 3 columns, but I don't think I can put an equation environment in a tabular environment.
This looks like what I want when I render it.
\begin{minipage}[t]{0pt}
\begin{flalign*}
\sigma & = F / A&\\
A & = \pi \left(d/2\right)^2&\\
\epsilon &= \frac{\sigma}{E}&\\
\epsilon_{trans} &= - \nu \epsilon_{longi}& \\
\epsilon &= \frac{\Delta l}{l}&\\
l &= \left( \epsilon + 1 \right) \times l_0&
\end{flalign*}
\end{minipage}
\hspace*{0pt}
\begin{minipage}[t]{0pt}
\begin{flalign*}
d & = \unit[1.8]{mm} = \unit[1.8\e{-3}]{m} &\\
F_T & = \unit[1300]{N}&\\
E_{\text{stainless steel}}&=\unit[193\e9]{Pa}&\\
l_0 & = \unit[.2530]{m}&\\
\nu & = .33&\\
\sigma &= \frac{\unit[1300]{N}}{\pi \times \unit[3.24\e{-6}]{m^2}}&&= \boxed{\unit[127.7\e6]{Pa}}\\
&&&=\boxed{\unit[18,524]{psi}}\\
\epsilon &= \frac{\unit[127.7\e6]{Pa}}{\unit[193\e9]{Pa}} &&= \boxed{6.6\e{-2}}\\
\epsilon_{trans} &= -.33 \times 6.6\e{-2} &&=\boxed{-2.2\e{-2}}\\
l &= \left( 6.6\e{-2} + 1 \right) \times \unit[.2530]{m} &&= \boxed{\unit[.2797]{m}}
\end{flalign*}
\end{minipage}
I'm not sure exactly what you're trying to achieve, but amsmath's align* environment might do what you want (without resorting to minipages):
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{align*}
x&=y & X&=Y & a&=b+c & mn&=ab\\
x’&=y’ & X’&=Y’ & a’&=b & m'n'&=a'b'\\
x+x’&=y+y’ & X+X’&=Y+Y’ & a’b&=c’b & m'&=a'
\end{align*}
\end{document}
As to your minipage question: it requires a width because TeX needs to know where to break the lines. If you don't want the line-breaking algorithm to be used, you probably don't want a minipage.
Edit:
If you want multiple columns and don't care about the vertical alignment of material across the columns, that can be obtained easily enough with the multicols package:
\documentclass{article}
\usepackage{multicols}
\usepackage{lipsum}% just for some example text
\begin{document}
% The * version allows the columns to have ragged bottoms.
% The argument 2 is the number of columns.
\begin{multicols*}{2}
\lipsum[1]% one paragraph of Lorem ipsum.. filler text
\vfil% fills the remainder of the column with white space
\columnbreak% force a column break
\lipsum[2]% another paragraph of text
\vfil% fills the remainder of the column with white space
\end{multicols*}
\end{document}
You might find something to help you in the empheq and mathtools packages. empheq allows you to box equations and mathtools should provide some useful environments for stacking them horizontally.

Resources