複数行にわたる数式の左寄せについて

複数行にわたる数式の左寄せについて

- 赤名 完治 の投稿
返信数: 11
お世話になります。emathを使ってます。

初歩的なことなのですが、別行立ての数式は基本的に中央寄せになると思います。

部分的に複数行にわたる数式を左寄せ(数式番号振りなし)にするには、どうすればいいのでしょうか?

例えば

(a + b)^2
=(a + b)(a + b)
=a^2 + 2ab + b^2

のような場合で、=で揃えたいのです。
できれば、1行目の( と2行目の最初の( が揃うと綺麗?なのですが。

よろしくお願いいたします。
赤名 完治 への返信

Re: 複数行にわたる数式の左寄せについて

- 和田 勇 の投稿

emath の環境を利用していないのでその環境での検証はできていないのですが、数式という観点から回答します。

今回の質問は過去にもこのフォーラムで話題となっておりますので参考にしてください。
https://okumuralab.org/tex/mod/forum/discuss.php?d=1303
https://okumuralab.org/tex/mod/forum/discuss.php?d=1065

「latex 数式 左詰め」や「LaTeX 別行立て数式」などでインタネット検索でもいくつか見つかるとおもいます。

また LateX2e 美文書作成入門7版をお持ちなら「6.5別行立て数式」の項も参考になります。

さて、三つの質問への対応方法ですが、

1) 部分的に複数行にわたる数式を左寄せ
「部分的に云々」とあるのをどのように解釈するかによりますが、
「全部の数式」を対象にするなら \documentclass[fleqn]{jarticle} というように fleqn のオプションを。
一部の式のみであれば、\usepackage{nccmath} することで利用できる
\begin{fleqn}...\end{fleqn} で実現可能とおもいます。

2) 数式番号振りなし
align* か equation* を利用します。
「*」 を使わない方法もありますが以下を参考にしてください
https://medemanabu.net/latex/nonumber-notag/
自動数式番号の解除・キャンセル - nonumber, notag

3) できれば、1行目の( と2行目の最初の( が揃うと綺麗
align か equation + split で対応可能かとおもいます。

以上を踏まえて簡単なサンプルを示しますので参考にしてください。
documentclass のオプションのケースは割愛しています。
なお、今回はサンプルのため同じ数式等を何度も使うため簡易マクロを使っています。

\documentclass{jsarticle}
\usepackage{amsmath}
\usepackage{nccmath} % fleqn を使うため
\begin{document}

\def\SUUSHIKI{
&(a + b)^2 \\%表組みを想定し、揃えたいところに & を
=&(a + b)(a + b)\\
=&a^2 + 2ab + b^2
}
\def\ALIGN{
\begin{align*}
\SUUSHIKI
\end{align*}
}
\def\EQUATION_SPLIT{
\begin{equation*}
\begin{split}
\SUUSHIKI
\end{split}
\end{equation*}
}

\section{中央寄せ ALIGN}
\ALIGN

\section{中央寄せ EQUATION+SPLIT}
\EQUATION_SPLIT

%%以下は documentclass[fleqn]{...} とした時は使えない

\section{左寄せ ALIGN}
\begin{fleqn}
\ALIGN
\end{fleqn}

\section{左寄せ EQUATION+SPLIT}
\begin{fleqn}
\EQUATION_SPLIT
\end{fleqn}
\end{document}
和田 勇 への返信

Re^2: 複数行にわたる数式の左寄せについて

- 赤名 完治 の投稿
とても丁寧なご回答感謝申し上げます。
まだまだ使い慣れておりませんので、ご回答を参考にいろいろ試してみたいと思います。

不明なことがあれば、またご教示くださいませ。

まずはお礼まで。ありがとうございました。

和田 勇 への返信

Re^2: 複数行にわたる数式の左寄せについて

- 赤名 完治 の投稿
お世話になります。懇切丁寧なご教示ありがとうございました。
和田様に返信するところを誤って自信に返信していました。(汗)
たいへん失礼をいたしました。<(_ _)>

TeX初心者であり、わからないところだらけです。
今後ともいろいろとご教示いただけますとありがたいです。
で、昨日の質問とは異なり、超初歩的なことを教えてください。

1数式をインラインで記述する場合
例えば、x^2-1=0 という数式をインラインで記述する場合、半角スペースをどのようなタイミングで入れた方がいいのでしょうか?

ア.あああああ$x^2-1=0$いいいいい
イ.あああああ $x^2-1=0$ いいいいい
ウ.あああああ$ x^2-1=0 $いいいいい
エ.あああああ $ x^2-1=0 $ いいいいい

どの場合も同じ結果になると思います。TeXの世界の常識的な書き方を教えてください。

2マクロパッケージについて
emathは勝手が良さそうだと思い、とりあえず導入しています。
が、emathを組み込まなくても今のところ全然問題なさそうです。

和田様はemath環境がないとのことですが、純正のTeXだけでほぼ事足りるのでしょうか?
つまり、導入(インストール)しておくとよいマクロパッケージがあればどのようなものがあるのでしょうか?(ただ、導入による副作用があるのも困りますが。。。)
私の場合、大学数学レベル(特に代数学)までの文書作成が主となります。

超初歩的な質問で申し訳ありません。
ネットで検索すると膨大な情報がヒットし、逆に混乱してしまいます。
よろしくお願いいたします。

※ちなみに、私は、あべのりさんのページから、TeXインストーラ3でTeXを導入しました。

赤名 完治 への返信

Re: Re^2: 複数行にわたる数式の左寄せについて

- 和田 勇 の投稿
回答になっているかな?私なりの考え方ですので
参考にしていただければ幸いです。


\documentclass{jsarticle}
\begin{document}

\begin{itemize}
\item 半角スペースをどのようなタイミングで入れるか

私の個人的な感じでは \verb/あああああ $x^2 - 1 = 0$ いいいいい/ とするのが好き
ですが、人に伝えるというのがドキュメント化作業での大切なことだと考えています。
同時に自分またはほかの人が半年後見ても正しく読み取れるようにすることも大切です。
というので「いわゆる引っ掛け」を意図しない通常の場合は、誤解されないように適宜
入れるようにしています。

その上で、組版後の結果を見て適宜「空白」を組み込んでゆきます。
その際「LaTeX2e 美文書作成7版」の「5.8 字間や高さの微調整」を参考にしています。
\item マクロパッケージについて

\begin{itemize}

\item 大学数学レベル

私にはよくわかりませんが、周りで LaTeX を利用している方を見つけてお話ししてみ
てはいかがでしょうか?学会指定のスタイルもあると聞いていますので、調べてみて
ください。

\item emath なくていいの

emath で公開されている sample.pdf の一番最初の「等しくない記号」の斜め線を左か
ら右下へというような要求や複雑な回り込み制御等々が必要であれば、emath 利用も
検討はしますが、今の所フルでインストールした TeXLive のパッケージだけで済んで
います。

\item お勧めパッケージ

\begin{itemize}
\item tikz

図ですが、以前は picture 環境で対応していましたが、tikz を利用すると複雑な
図も描けます。

\item beamer

プレゼンテーションツールには beamer をお勧めします。

\end{itemize}
\end{itemize}

\item ネットで検索すると膨大な情報がヒットし、逆に混乱

これに関しては、経験によるところが大としか言いようがないです。

以前は、50 とか 100 ヒットから選ぼうとしていましたが、現在はデフォルトの 10 に
しています。これで目ぼしいものがなければ別の用語を加えたり引いたりしています。

+ や - などを併用するのが正当なんだろうけど、私は上のような自分なりのルールで検
索して目ぼしいものを見つけています。

\end{itemize}
\end{document}
赤名 完治 への返信

Re: Re^2: 複数行にわたる数式の左寄せについて

- 和田 勇 の投稿
回答になっているかな?私なりの考え方ですので
参考にしていただければ幸いです。


\documentclass{jsarticle}
\begin{document}

\begin{itemize}
\item 半角スペースをどのようなタイミングで入れるか

私の個人的な感じでは \verb/あああああ $x^2 - 1 = 0$ いいいいい/ とするのが好き
ですが、人に伝えるというのがドキュメント化作業での大切なことだと考えています。
同時に自分またはほかの人が半年後見ても正しく読み取れるようにすることも大切です。
というので「いわゆる引っ掛け」を意図しない通常の場合は、誤解されないように適宜
入れるようにしています。

その上で、組版後の結果を見て適宜「空白」を組み込んでゆきます。
その際「LaTeX2e 美文書作成7版」の「5.8 字間や高さの微調整」を参考にしています。
\item マクロパッケージについて

\begin{itemize}

\item 大学数学レベル

私にはよくわかりませんが、周りで LaTeX を利用している方を見つけてお話ししてみ
てはいかがでしょうか?学会指定のスタイルもあると聞いていますので、調べてみて
ください。

\item emath なくていいの

emath で公開されている sample.pdf の一番最初の「等しくない記号」の斜め線を左か
ら右下へというような要求や複雑な回り込み制御等々が必要であれば、emath 利用も
検討はしますが、今の所フルでインストールした TeXLive のパッケージだけで済んで
います。

\item お勧めパッケージ

\begin{itemize}
\item tikz

図ですが、以前は picture 環境で対応していましたが、tikz を利用すると複雑な
図も描けます。

\item beamer

プレゼンテーションツールには beamer をお勧めします。

\end{itemize}
\end{itemize}

\item ネットで検索すると膨大な情報がヒットし、逆に混乱

これに関しては、経験によるところが大としか言いようがないです。

以前は、50 とか 100 ヒットから選ぼうとしていましたが、現在はデフォルトの 10 に
しています。これで目ぼしいものがなければ別の用語を加えたり引いたりしています。

+ や - などを併用するのが正当なんだろうけど、私は上のような自分なりのルールで検
索して目ぼしいものを見つけています。

\end{itemize}
\end{document}
和田 勇 への返信

Re: 複数行にわたる数式の左寄せについて

- 帯田 木偶太 の投稿
》 \def\EQUATION_SPLIT{

こういう掲示板で、こういうアンダースコアの使い方をしたソースを
投稿するのはいかがなものかと。まして TeX に習熟していない質問者に
対して提示すると、おかしなことを刷り込むことになりかねないと懸念します。
帯田 木偶太 への返信

Re: 複数行にわたる数式の左寄せについて

- 和田 勇 の投稿
アンダースコアを不用意に用いてしまったことを反省しております。
和田 勇 への返信

Re: 複数行にわたる数式の左寄せについて

- 北見 けん の投稿
これだけだと何が不味いのか分からないので、
なぜアンダースコアが良くないのかをちょっと書いてみます。

それは、TeX ではマクロの名前を構成する文字としてアンダースコア(_)は
使えないからです。(特殊な操作を組み合わせれば可能ですが)

したがって、「\def\EQUATION_SPLIT{」というマクロ定義では、
定義されるマクロの名称は \EQUATION となり、
_SPLIT の部分はマクロの名前の一部と見なされません。
それなのにエラーもなく動作するのはなぜかというと、
\EQUATION というマクロは「\def\EQUATION_SPLIT{」によって、
「使うときには _SPLIT という文字列を添えて使われるべきマクロ」
として定義され、実際に本文中でもそうやって使われるからです。

これだけだとエラーも出ないので、
「TeX でもアンダースコアを使った分かりやすいマクロ名を使える」
と思われがちですが、そうでないことは次のように
アンダースコア以降の文字列が異なるマクロを定義しようとすると分かります。

今回、equation 環境と split 環境を入れ子にしたものとして
マクロ名を「\def\EQUATION_SPLIT{」のようにしたわけですが、
例えばこの他にも equation 環境と pmatrix 環境を入れ子にした
「\def\EQUATION_PMATRIX{」のようなマクロを定義したとします。
この二つのマクロ定義はどちらも同じマクロ \EQUATION を、
片や
「使うときには _SPLIT という文字列を添えて使われるべきマクロ」
として、片や
「使うときには _PMATRIX という文字列を添えて使われるべきマクロ」
として定義します。
TeX では新しいマクロ定義が前の定義を上書きしますので、
後に定義したほうだけ有効になって、
本文中で \EQUATION_PMATRIX は機能しますが、
\EQUATION_SPLIT のほうは、「使い方が定義と合っていない」というエラーになります。
! Use of \EQUATION doesn't match its definition.
北見 けん への返信

Re: 複数行にわたる数式の左寄せについて

- 和田 勇 の投稿
詳しい解説ありがとうございます。

「TeX ではマクロの名前を構成する文字としてアンダースコア(_)は
使えない」というところを再確認まではしましたが、「何故今回はエラーにならなかった」までを追求するに至らなかったことを反省しています。
和田 勇 への返信

Re: 複数行にわたる数式の左寄せについて

- 北見 けん の投稿
あれれ。
これまでの投稿を見るに和田さんはお詳しそうなので
ご承知のことかと思っていました。
帯田さんの指摘が簡潔だったのも、
同じように見ていたからかなぁと思いました。

アンダースコアの件は良くある誤解なので
知らなかったのであれば、お気になさらず。
フォローし合うのはお互いさまです。
赤名 完治 への返信

Re: 複数行にわたる数式の左寄せについて

- 帯田 木偶太 の投稿
》 できれば、1行目の( と2行目の最初の( が揃うと綺麗?なのですが。

「綺麗」でしょうか? 1 行目(最左辺)が埋もれてしまって、読みにくいと
思いますが…。少なくとも、一般的に行なわれている慣習を破るだけのメリットが
あるようには思えません。

LaTeX 組み込みの eqnarray 環境はさておくとしても、amsmath パッケージの
align 環境(式番号をつけないのなら align* 環境)で記述しておけば
済む話のように思われます。

================

\begin{align*}
(a+b)^2 &= (a+b)(a+b)\\
&= a^2 + 2ab + b^2
\end{align*}