För att placera ett cases-block mellan justerade steg i en LaTeX-ekvation lägger du cases inuti en rad i aligned och omsluter sedan hela strukturen med equation. Då justeras likhetstecknen och hela härledningen får ett ekvationsnummer.
Den här guiden riktar sig till dig som redigerar ett .tex-dokument på en Mac och vill ha vanliga algebraiska steg ovanför och nedanför ett styckvis definierat uttryck. Huvudexemplet använder bara amsmath; alternativen förklarar när mathtools eller separat centrerade block passar bättre.
Hur håller du stegen och cases i en och samma justerade ekvation?
Använd tre nästlade nivåer: equation innehåller hela visningen, aligned ordnar härledningen och cases tillhandahåller det klamrade uttrycket på en rad. Den officiella guiden beskriver aligned som en byggsten som passar inuti ett omslutande uttryck och kräver att både aligned och cases förekommer i matematikläge. Se avsnitt 3.7 i User’s Guide for the amsmath Package.
Här är ett komplett dokument. Låt n vara ett heltal och a en skalär. Uttrycket har värdet a oavsett om n är jämnt eller udda; cases-blocket gör det mellanliggande resonemanget synligt.
\documentclass{article}
\usepackage{amsmath}
\begin{document}
Let \(n\) be an integer and \(a\) be a scalar.
\begin{equation}
\label{eq:cases-chain}
\begin{aligned}
S(n) &= a\bigl[(-1)^n+1-(-1)^n\bigr] \\
&= a(-1)^n+a\bigl(1-(-1)^n\bigr) \\
&= \begin{cases}
a+0, & \text{if } n \text{ is even}, \\
-a+2a, & \text{if } n \text{ is odd}
\end{cases} \\
&= a.
\end{aligned}
\end{equation}
The result is recorded in \eqref{eq:cases-chain}.
\end{document}
Läs exemplet som fyra yttre rader. De två första utvecklar uttrycket, den tredje utvärderar det utifrån paritet och den fjärde anger det gemensamma resultatet. Båda grenarna förenklas till a, så den sista likheten gäller för varje heltal n. Algebran är illustrativ; byt ut den mot uttrycken och villkoren i din egen härledning.
Vilka et-tecken och radbrytningar hör till respektive miljö?
Det yttre &= markerar justeringspunkten före varje likhetstecken. Inuti cases skiljer et-tecknet ett grenuttryck från dess villkor. De två nivåerna har olika uppgifter: cases-blocket upptar en del av en yttre rad, trots att det innehåller flera grenar på var sin rad. Paketet implementerar cases som en array med två kolumner och en vänsterklammer, vilket visas i amsmath package documentation.
Den avgörande övergången i det här exemplet är \end{cases} \\. När cases stängs avslutas det styckvis definierade uttrycket; det efterföljande \\ avslutar den omgivande raden i aligned. Då kan nästa &= a börja under de tidigare likhetstecknen. En radbrytning inuti cases går bara till nästa gren.
Bevara den strukturen när du anpassar exemplet. Ändra ett grenuttryck eller villkor i taget och granska sedan resultatet. Då blir det lättare att avgöra om en oväntad layout beror på den omgivande härledningen eller själva det styckvis definierade uttrycket.
Hur använder du exemplet på en Mac?
Du behöver en fungerande LaTeX-distribution och en källkodsredigerare. Om du redan använder TeXShop innehåller programmet en redigerare och PDF-förhandsvisning och använder TeX Live för sättning. Enligt utvecklarens sida About TeXShop använder programmets förvalda PDF-arbetsflöde pdftex och pdflatex.
- Skapa ett nytt källdokument och klistra in hela exemplet.
- Spara det som
cases-between-steps.tex. - Använd en LaTeX-sättningsmotor, till exempel
pdflatex. - Välj
Typeseti TeXShops menyTypeset. Kommandot sätter det aktuella dokumentet, enligt dokumentationen i TeXShop Changes. - Sätt dokumentet igen om ekvationsreferensen inte har lösts och granska sedan PDF-filen.
Kontrollera tre saker i förhandsvisningen: de yttre likhetstecknen bildar en lodrät kolumn, klammern omfattar bara de två grenarna och härledningen har ett enda ekvationsnummer. Läs också båda villkoren och den sista raden för att kontrollera att matematiken överlevde redigeringen.
Exemplen granskades mot dokumentationen men kompilerades inte här eftersom en LaTeX-motor saknades. Prova det lilla fristående dokumentet innan du lägger in det i ett större projekt.
Vilka miljöer och paket bör du välja?
Välj den yttre strukturen utifrån hur stegen hänger ihop. För en sammanhängande kedja av likheter behåller du en gemensam justering. För separata grupper som bara behöver stå ovanför och nedanför ett cases-block använder du alternativet med separat centrering i nästa avsnitt.
| Önskat resultat | Struktur | Paket |
|---|---|---|
| Gemensam justering av likhetstecken och ett nummer | equation som innehåller aligned, med nästlad cases |
amsmath |
| Separat centrerade grupper och ett nummer | equation som innehåller gathered, med nästlade block |
amsmath |
| Större bråk genom hela cases-raderna | Byt ut cases mot dcases |
mathtools |
| Villkor i textläge automatiskt | Använd cases* eller dcases* |
mathtools |
De kompakta byggstenarna beskrivs i amsmath user guide; de ytterligare cases-varianterna dokumenteras i avsnitt 3.4.3 i The mathtools package.
När bör du byta ut cases mot dcases?
Vanlig cases använder matematik i textstil. Miljön dcases i mathtools använder visningsstil, vilket är användbart när bråk behöver mer utrymme. Om du laddar mathtools laddas även amsmath. Den stjärnförsedda varianten dcases* gör den andra kolumnen till text; skriv matematiska villkor i matematikavgränsare där. Dessa egenskaper dokumenteras i The mathtools package.
Här är ett komplett alternativ med bråk. För heltalet n är nämnaren på den första raden antingen tre eller ett, så båda grenarna är definierade.
\documentclass{article}
\usepackage{mathtools}
\begin{document}
Let \(n\) be an integer and \(a\) be a scalar.
\begin{equation}
\begin{aligned}
T(n) &= \frac{2a}{2+(-1)^n} \\
&= \begin{dcases}
\frac{2a}{3}, & \text{if } n \text{ is even}, \\
2a, & \text{if } n \text{ is odd}
\end{dcases} \\
&= \frac{a}{1+\frac{1}{2}(-1)^n}.
\end{aligned}
\end{equation}
\end{document}
Här lämnas den yttre layouten oförändrad när grenstilen ändras. Välj cases för kompakta grenar och dcases när bråken har nytta av visningsstil. Med cases eller dcases håller du prosan inuti \text{...}; med de stjärnförsedda varianterna skriver du prosan direkt i den andra kolumnen.
Tänk om blocken bara behöver staplas?
Använd gathered när de övre och nedre grupperna behöver egna lokala justeringar. Det här är en tillämpning av guidens dokumenterade kompakta byggstenar: varje grupp med aligned blir en rad i den omslutande strukturen gathered. Se amsmath alignment building blocks.
\documentclass{article}
\usepackage{amsmath}
\begin{document}
Let \(n\) be an integer and \(a,b\) be scalars.
\begin{equation}
\begin{gathered}
\begin{aligned}
S(n) &= a\bigl[(-1)^n+1-(-1)^n\bigr] \\
&= a(-1)^n+a\bigl(1-(-1)^n\bigr)
\end{aligned} \\
S(n)=\begin{cases}
a+0, & \text{if } n \text{ is even}, \\
-a+2a, & \text{if } n \text{ is odd}
\end{cases} \\
\begin{aligned}
S(n) &= a, \\
S(n)+b &= a+b.
\end{aligned}
\end{gathered}
\end{equation}
\end{document}
Den här layouten ger medvetet den övre gruppen, uttrycket i mitten och den nedre gruppen var sin horisontella placering. Deras likhetstecken behöver inte sammanfalla mellan grupperna. Om du upprepar S(n) blir kopplingen tydlig, medan den sista raden lägger till en följd av resultatet.
Om du behöver en sammanhängande kolumn av likhetstecken återgår du till det första exemplet. Separata grupper med aligned kan inte dela en justeringspunkt bara för att de förekommer i samma ekvation.
Hur felsöker du vanliga layoutproblem?
Arbeta utifrån och in. Identifiera den numrerade visningen, sedan strukturen som skapar dess rader och därefter cases-blocket. Gå igenom följande felsökningssteg innan du justerar avstånden:
- De nedre stegen hamnar bredvid cases-blocket: kontrollera om det yttre
\\står direkt efter\end{cases}. - En rad som ska fortsätta hamnar under klammern: kontrollera om
\end{cases}står före fortsättningen. - De övre och nedre likhetstecknen skiljer sig åt: kontrollera om de tillhör separata grupper med
aligned. Använd ett yttrealignedför gemensam justering. - Dokumentet rapporterar felaktig nästling: kontrollera om
alignfinns inutiequation. Använd den underordnade miljönalignedpå den platsen. - Bråken ser för små ut: överväg
dcasesoch laddamathtools.
Paketets dokumenterade återhämtning vid felaktigt nästlade ekvationsstrukturer stöder nästlingsdiagnosen: då ersätts de med aligned. Se amsmath package documentation. Bråkalternativet följer mathtools cases documentation.
Om du vill ha lite extra utrymme efter cases-blocket byter du ut den yttre radavslutningen mot \end{cases} \\[4pt]. Mängden är en illustrativ utgångspunkt. Undvik också tomrader i matematikmiljön och utelämna en radavslutande \\ efter den sista raden. Dessa konventioner behandlas i avsnitt 3.1 och 3.9 i amsmath user guide.
En viktig begränsning gäller sidbrytningar: aligned och gathered bildar strukturer som inte kan delas upp, så \allowdisplaybreaks delar inte upp dem mellan sidor. Om härledningen är ovanligt lång bör du strukturera om visningen i stället för att räkna med att kommandot delar den här nästlade layouten. Gränsen beskrivs i amsmath’s guidance on page breaks.
För en vanlig, kort härledning börjar du med en equation, en aligned och en nästlad rad med cases. Behåll den yttre radbrytningen efter cases-blocket, kontrollera villkoret för varje gren och byt till en annan struktur bara när du behöver en annan horisontell justering eller matematisk storlek.
Källor
- User’s Guide for the amsmath Package — American Mathematical Society och The LaTeX Project.
- The amsmath package — The LaTeX Project, distribuerat via CTAN.
- The mathtools package — Morten Høgholm, Lars Madsen och The LaTeX3 Project, distribuerat via CTAN.
- About TeXShop — Richard Koch, University of Oregon.
- TeXShop Changes — Richard Koch, University of Oregon.